From 4fca5ff9a24c91d2dc55f76eb261fc1881bfbe34 Mon Sep 17 00:00:00 2001 From: Suhaib Date: Wed, 13 Nov 2024 12:57:42 +0300 Subject: [PATCH 01/60] Enhance comment time formatting with localized time ago display - Implemented dynamic time ago formatting for comment timestamps - Added localization support for both English and Arabic --- .../CmsKit/Localization/Resources/ar.json | 13 ++++ .../CmsKit/Localization/Resources/en.json | 13 ++++ .../Components/Commenting/Default.cshtml | 2 +- .../Shared/Components/Commenting/default.js | 75 +++++++++++++++++++ 4 files changed, 102 insertions(+), 1 deletion(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json index c86c314d87..8bd7267109 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json @@ -237,6 +237,19 @@ "CssClass": "فئة CSS", "TagsHelpText": "يجب أن تكون العلامات مفصولة بفواصل (على سبيل المثال: tag1، tag2، tag3)", "ThisPartOfContentCouldntBeLoaded": "لا يمكن تحميل هذا الجزء من المحتوى.", + "JustNow": "الآن", + "MinuteAgo": "دقيقة واحدة مضت", + "MinutesAgo": "{0} دقائق مضت", + "HourAgo": "ساعة واحدة مضت", + "HoursAgo": "{0} ساعات مضت", + "YesterdayAt": "أمس في {0}", + "DayAt": "{0} في {1}", + "MonthDayAt": "{0} {1} في {2}", + "FullDate": "{0} {1} {2}", + "Minute": "د", + "Hour": "س", + "Day": "ي", + "Week": "أ", "DuplicateCommentAttemptMessage": "تم اكتشاف محاولة نشر تعليق مكررة. لقد تم بالفعل تقديم تعليقك." } } \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json index 149f1072bf..5805d87c6b 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json @@ -255,6 +255,19 @@ "CommentAlertMessage": "There are {0} comments waiting for approval", "Settings:Menu:CmsKit": "CMS", "CommentsAwaitingApproval": "Comments Awaiting Approval", + "JustNow": "Just now", + "MinuteAgo": "1 minute ago", + "MinutesAgo": "{0} minutes ago", + "HourAgo": "1 hour ago", + "HoursAgo": "{0} hours ago", + "YesterdayAt": "Yesterday at {0}", + "DayAt": "{0} at {1}", + "MonthDayAt": "{0} {1} at {2}", + "FullDate": "{0} {1} {2}", + "Minute": "m", + "Hour": "h", + "Day": "d", + "Week": "w", "CommentSubmittedForApproval": "Your comment has been submitted for approval." } } \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/Default.cshtml b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/Default.cshtml index 1b86ade0a8..c181872586 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/Default.cshtml +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/Default.cshtml @@ -22,7 +22,7 @@ @((string.IsNullOrWhiteSpace(author.Name) ? author.UserName : author.Name + " " + author.Surname).Trim()) - @creationTime.ToString() + ; } @{ diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/default.js b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/default.js index e9ddda97f3..1307c0f26c 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/default.js +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Commenting/default.js @@ -13,6 +13,79 @@ }; } + function isDoubleClicked(element) { + if (element.data("isclicked")) return true; + + element.data("isclicked", true); + setTimeout(function () { + element.removeData("isclicked"); + }, 2000); + } + + function registerCommentTime($container) { + $container.find('[comment-time]').each(function () { + const $timeElement = $(this); + + const creationTime = moment.utc($timeElement.attr('comment-time')); + var timeAgo = formatTime(creationTime); + var readableTime = formatReadableTimestamp(creationTime); + + $timeElement.text(timeAgo); + $timeElement.on('click', function () { + if (isDoubleClicked($timeElement)) return; + + $timeElement.text(readableTime); + setTimeout(function () { + $timeElement.trigger('focusout'); + }, 2000); + + }); + + $timeElement.on('focusout', function () { + $timeElement.text(timeAgo); + }); + }); + } + + function formatTime(creationTime) { + let now = moment(); + let duration = moment.duration(now.diff(creationTime)); + if (duration.asMinutes() < 1) { + return l('JustNow'); + } else if (duration.asMinutes() < 60) { + return `${Math.floor(duration.asMinutes())} ${l('Minute')}`; + } else if (duration.asHours() < 24) { + return `${Math.floor(duration.asHours())} ${l('Hour')}`; + } else if (duration.asDays() < 7) { + return `${Math.floor(duration.asDays())} ${l('Day')}`; + } else { + return `${Math.floor(duration.asWeeks())} ${l('Week')}`; + } + } + + function formatReadableTimestamp(creationTime) { + const now = moment(); + const diffInMinutes = now.diff(creationTime, 'minutes'); + const diffInHours = now.diff(creationTime, 'hours'); + const diffInDays = now.diff(creationTime, 'days'); + + if (diffInMinutes < 1) { + return l('JustNow'); + } else if (diffInMinutes < 60) { + return l('MinutesAgo', diffInMinutes); + } else if (diffInHours < 24) { + return diffInHours === 1 ? l('HourAgo') : l('HoursAgo', diffInHours); + } else if (diffInDays === 1) { + return l('YesterdayAt', creationTime.local().format('h:mm a')); + } else if (diffInDays < 7) { + return l('DayAt', creationTime.local().format('dddd'), creationTime.local().format('h:mm a')); + } else if (now.isSame(creationTime, 'year')) { + return l('MonthDayAt', creationTime.local().format('D'), creationTime.local().format('MMMM'), creationTime.local().format('h:mm a') ); + } else { + return l('FullDate', creationTime.local().format('D'), creationTime.local().format('MMMM'), creationTime.local().format('YYYY')); + } + } + function registerEditLinks($container) { $container.find('.comment-edit-link').each(function () { let $link = $(this); @@ -216,6 +289,8 @@ registerUpdateOfNewComment($widget); registerSubmissionOfNewComment($widget); + registerCommentTime($widget); + focusOnHash($widget); } From b4a50eb4ef6dcd017839dada0e8b10a62177d967 Mon Sep 17 00:00:00 2001 From: Suhaib <93185683+suhaib-mousa@users.noreply.github.com> Date: Tue, 26 Nov 2024 09:53:07 +0300 Subject: [PATCH 02/60] delete duplicated localization --- .../Volo/CmsKit/Localization/Resources/ar.json | 1 - .../Volo/CmsKit/Localization/Resources/en.json | 1 - 2 files changed, 2 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json index 6f20a52e38..517e3f4c8e 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/ar.json @@ -251,7 +251,6 @@ "Day": "ي", "Week": "أ", "DuplicateCommentAttemptMessage": "تم اكتشاف محاولة نشر تعليق مكررة. لقد تم بالفعل تقديم تعليقك.", - "DuplicateCommentAttemptMessage": "تم اكتشاف محاولة نشر تعليق مكررة. لقد تم بالفعل تقديم تعليقك.", "ChooseAnActionForBlog": "اختر إجراءً للمدونة", "AssignBlogPostsToOtherBlog": "تعيين مشاركات المدونة إلى مدونة أخرى", "SelectAnBlogToAssign": "حدد مدونة لتعيين مشاركات المدونة إليها", diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json index 09b671bb53..26cea2c98a 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json +++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo/CmsKit/Localization/Resources/en.json @@ -269,7 +269,6 @@ "Day": "d", "Week": "w", "CommentSubmittedForApproval": "Your comment has been submitted for approval.", - "CommentSubmittedForApproval": "Your comment has been submitted for approval.", "ChooseAnActionForBlog": "Choose an action for the blog", "AssignBlogPostsToOtherBlog": "Assign blog posts to another blog", "SelectAnBlogToAssign": "Select a blog to assign", From a23fc0c3354d776f190a7c725467204b2c28071d Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 3 Jan 2025 17:51:02 +0800 Subject: [PATCH 03/60] Upgrade `MongoDB.Driver` to `3.1.0`. --- Directory.Packages.props | 6 +- .../domain-driven-design/repositories.md | 6 +- docs/en/guides/microservice-mongodb.md | 4 +- docs/en/tutorials/book-store/part-07.md | 3 +- .../MongoDB/IMongoDbRepository.cs | 5 +- .../Repositories/MongoDB/MongoDbRepository.cs | 11 +- .../MongoDbCoreRepositoryExtensions.cs | 5 +- .../MongoDB/AbpMongoDbDateTimeSerializer.cs | 2 +- .../Volo/Abp/MongoDB/AbpMongoDbModule.cs | 5 + .../MongoDbContextEventInbox.cs | 1 - .../MongoDbContextEventOutbox.cs | 1 - .../MongoDB/MongoDbAsyncQueryableProvider.cs | 141 +++++++++--------- .../Volo.Abp.MongoDB.Tests.csproj | 8 +- .../Volo/Abp/MongoDB/MongoDbFixture.cs | 5 +- .../Repositories/Repository_Basic_Tests.cs | 6 +- .../Abp/TestApp/MongoDb/CityRepository.cs | 1 + .../MongoDB/MongoAuditLogRepository.cs | 12 +- ...Volo.Abp.AuditLogging.MongoDB.Tests.csproj | 8 +- .../AuditLogging/MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/MongoBackgroundJobRepository.cs | 3 +- ...lo.Abp.BackgroundJobs.MongoDB.Tests.csproj | 8 +- .../BackgroundJobs/MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/MongoDbFixture.cs | 2 +- ....BlobStoring.Database.MongoDB.Tests.csproj | 8 +- .../Comments/MongoCommentRepository.cs | 1 + .../Blogging/Posts/MongoPostRepository.cs | 1 + .../Blogging/Users/MongoBlogUserRepository.cs | 1 + .../Volo.Blogging.MongoDB.Tests.csproj | 8 +- .../Volo/Blogging/MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/Blogs/MongoBlogPostRepository.cs | 12 +- .../MongoDB/Blogs/MongoBlogRepository.cs | 5 +- .../Comments/MongoCommentRepository.cs | 10 +- .../MongoDB/Pages/MongoPageRepository.cs | 7 +- .../CmsKit/MongoDB/Tags/MongoTagRepository.cs | 5 +- .../MongoDB/MongoDbFixture.cs | 2 +- .../Volo.CmsKit.MongoDB.Tests.csproj | 8 +- .../Docs/Documents/MongoDocumentRepository.cs | 92 ++++++------ .../Docs/Projects/MongoProjectRepository.cs | 3 +- .../Volo.Docs.MongoDB.Tests.csproj | 8 +- .../Volo/Docs/MongoDB/MongoDbFixture.cs | 2 +- .../MongoFeatureDefinitionRecordRepository.cs | 1 + ...Abp.FeatureManagement.MongoDB.Tests.csproj | 8 +- .../MongoDB/MongoDbFixture.cs | 2 +- .../MongoIdentityClaimTypeRepository.cs | 8 +- .../MongoDB/MongoIdentityRoleRepository.cs | 4 +- .../MongoIdentitySecurityLogRepository.cs | 6 +- .../MongoDB/MongoIdentitySessionRepository.cs | 5 - .../MongoIdentityUserDelegationRepository.cs | 2 - .../MongoDB/MongoIdentityUserRepository.cs | 37 +++-- .../MongoOrganizationUnitRepository.cs | 29 ++-- .../Volo.Abp.Identity.MongoDB.Tests.csproj | 8 +- .../Abp/Identity/MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/MongoApiResourceRepository.cs | 5 +- .../MongoDB/MongoApiScopeRepository.cs | 5 +- .../MongoDB/MongoClientRepository.cs | 5 +- .../MongoDB/MongoDeviceFlowCodesRepository.cs | 1 + .../MongoIdentityResourceRepository.cs | 5 +- .../MongoDB/MongoPersistentGrantRepository.cs | 11 +- ...lo.Abp.IdentityServer.MongoDB.Tests.csproj | 8 +- .../Volo/Abp/IdentityServer/MongoDbFixture.cs | 2 +- .../MongoOpenIddictApplicationRepository.cs | 5 +- .../MongoOpenIddictAuthorizationRepository.cs | 3 +- .../Scopes/MongoOpenIddictScopeRepository.cs | 5 - .../Tokens/MongoOpenIddictTokenRepository.cs | 5 - .../Volo.Abp.OpenIddict.MongoDB.Tests.csproj | 8 +- .../Abp/OpenIddict/MongoDB/MongoDbFixture.cs | 2 +- ...ngoPermissionDefinitionRecordRepository.cs | 1 + ....PermissionManagement.MongoDB.Tests.csproj | 8 +- .../MongoDb/MongoDbFixture.cs | 2 +- .../MongoSettingDefinitionRecordRepository.cs | 1 + ...Abp.SettingManagement.MongoDB.Tests.csproj | 8 +- .../MongoDB/MongoDbFixture.cs | 2 +- .../MongoDb/MongoTenantRepository.cs | 7 +- ....Abp.TenantManagement.MongoDB.Tests.csproj | 8 +- .../MongoDb/MongoDbFixture.cs | 2 +- .../Users/MongoDB/MongoUserRepositoryBase.cs | 7 +- .../MongoDb/MyProjectNameMongoDbFixture.cs | 2 +- ...anyName.MyProjectName.MongoDB.Tests.csproj | 8 +- .../MongoDB/MongoDbFixture.cs | 2 +- ...anyName.MyProjectName.MongoDB.Tests.csproj | 8 +- 80 files changed, 312 insertions(+), 358 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 0b60bf9e60..371b8edc4a 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -37,6 +37,10 @@ + + + + @@ -111,7 +115,7 @@ - + diff --git a/docs/en/framework/architecture/domain-driven-design/repositories.md b/docs/en/framework/architecture/domain-driven-design/repositories.md index 9050e7d3c3..3b540d335f 100644 --- a/docs/en/framework/architecture/domain-driven-design/repositories.md +++ b/docs/en/framework/architecture/domain-driven-design/repositories.md @@ -395,13 +395,13 @@ This method is suggested; #### MongoDB Case -If you are using [MongoDB](../../data/mongodb), you need to add the [Volo.Abp.MongoDB](https://www.nuget.org/packages/Volo.Abp.MongoDB) NuGet package to your project. Even in this case, you can't directly use async LINQ extensions (like `ToListAsync`) because MongoDB doesn't provide async extension methods for `IQueryable`, but provides for `IMongoQueryable`. You need to cast the query to `IMongoQueryable` first to be able to use the async extension methods. +If you are using [MongoDB](../../data/mongodb), you need to add the [Volo.Abp.MongoDB](https://www.nuget.org/packages/Volo.Abp.MongoDB) NuGet package to your project. Even in this case, you can't directly use async LINQ extensions (like `ToListAsync`) because MongoDB doesn't provide async extension methods for `IQueryable`, but provides for `IQueryable`. You need to cast the query to `IQueryable` first to be able to use the async extension methods. -**Example: Cast `IQueryable` to `IMongoQueryable` and use `ToListAsync()`** +**Example: Cast `IQueryable` to `IQueryable` and use `ToListAsync()`** ````csharp var queryable = await _personRepository.GetQueryableAsync(); -var people = ((IMongoQueryable) queryable +var people = ((IQueryable) queryable .Where(p => p.Name.Contains(nameFilter))) .ToListAsync(); ```` diff --git a/docs/en/guides/microservice-mongodb.md b/docs/en/guides/microservice-mongodb.md index c9b63ecf4e..dfb32a2a81 100644 --- a/docs/en/guides/microservice-mongodb.md +++ b/docs/en/guides/microservice-mongodb.md @@ -99,7 +99,7 @@ Here we use `BookStore.ProductService` project as an example: { var query = ApplyFilter(await GetMongoQueryableAsync(cancellationToken), filterText, name, priceMin, priceMax); query = query.OrderBy(string.IsNullOrWhiteSpace(sorting) ? ProductConsts.GetDefaultSorting(false) : sorting); - return await query.As>().PageBy>(skipCount, maxResultCount).ToListAsync(cancellationToken); + return await query.PageBy>(skipCount, maxResultCount).ToListAsync(cancellationToken); } public async Task GetCountAsync( @@ -110,7 +110,7 @@ Here we use `BookStore.ProductService` project as an example: CancellationToken cancellationToken = default) { var query = ApplyFilter(await GetMongoQueryableAsync(cancellationToken), filterText, name, priceMin, priceMax); - return await query.As>().LongCountAsync(GetCancellationToken(cancellationToken)); + return await query.LongCountAsync(GetCancellationToken(cancellationToken)); } protected virtual IQueryable ApplyFilter( diff --git a/docs/en/tutorials/book-store/part-07.md b/docs/en/tutorials/book-store/part-07.md index 0708ecfcb9..8304cc4b46 100644 --- a/docs/en/tutorials/book-store/part-07.md +++ b/docs/en/tutorials/book-store/part-07.md @@ -192,12 +192,11 @@ public class MongoDbAuthorRepository { var queryable = await GetMongoQueryableAsync(); return await queryable - .WhereIf>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), author => author.Name.Contains(filter) ) .OrderBy(sorting) - .As>() .Skip(skipCount) .Take(maxResultCount) .ToListAsync(); diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs index a687ba2bf9..3adb9c52c1 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.Threading; using System.Threading.Tasks; using MongoDB.Driver; @@ -21,9 +22,9 @@ public interface IMongoDbRepository : IRepository Task> GetCollectionAsync(CancellationToken cancellationToken = default); [Obsolete("Use GetMongoQueryableAsync method.")] - IMongoQueryable GetMongoQueryable(); + IQueryable GetMongoQueryable(); - Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); + Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); Task> GetAggregateAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); } diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs index 45629f76e5..56c0d207e4 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs @@ -481,8 +481,7 @@ public class MongoDbRepository return await (await GetMongoQueryableAsync(cancellationToken)) .OrderByIf>(!sorting.IsNullOrWhiteSpace(), sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(cancellationToken); } @@ -548,7 +547,7 @@ public class MongoDbRepository } [Obsolete("Use GetMongoQueryableAsync method.")] - public virtual IMongoQueryable GetMongoQueryable() + public virtual IQueryable GetMongoQueryable() { return ApplyDataFilters( SessionHandle != null @@ -557,19 +556,19 @@ public class MongoDbRepository ); } - public virtual Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + public virtual Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) { return GetMongoQueryableAsync(cancellationToken, aggregateOptions); } - protected virtual async Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + protected virtual async Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) { cancellationToken = GetCancellationToken(cancellationToken); var dbContext = await GetDbContextAsync(cancellationToken); var collection = dbContext.Collection(); - return ApplyDataFilters, TOtherEntity>( + return ApplyDataFilters, TOtherEntity>( dbContext.SessionHandle != null ? collection.AsQueryable(dbContext.SessionHandle, aggregateOptions) : collection.AsQueryable(aggregateOptions) diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs index 676450a5b8..257092512f 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.Threading; using System.Threading.Tasks; using MongoDB.Driver; @@ -37,13 +38,13 @@ public static class MongoDbCoreRepositoryExtensions } [Obsolete("Use GetMongoQueryableAsync method.")] - public static IMongoQueryable GetMongoQueryable(this IReadOnlyBasicRepository repository) + public static IQueryable GetMongoQueryable(this IReadOnlyBasicRepository repository) where TEntity : class, IEntity { return repository.ToMongoDbRepository().GetMongoQueryable(); } - public static Task> GetMongoQueryableAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + public static Task> GetMongoQueryableAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) where TEntity : class, IEntity { return repository.ToMongoDbRepository().GetMongoQueryableAsync(cancellationToken, aggregateOptions); 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 c1d8b8f514..6ad2b0b359 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbDateTimeSerializer.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbDateTimeSerializer.cs @@ -5,7 +5,7 @@ using MongoDB.Bson.Serialization.Serializers; namespace Volo.Abp.MongoDB; -public class AbpMongoDbDateTimeSerializer : DateTimeSerializer +public class AbpMongoDbDateTimeSerializer : StructSerializerBase { protected DateTimeKind DateTimeKind { get; set; } protected bool DisableDateTimeNormalization { get; set; } diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs index f61e9ddb45..91d2808010 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/AbpMongoDbModule.cs @@ -1,5 +1,8 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; +using MongoDB.Bson; +using MongoDB.Bson.Serialization; +using MongoDB.Bson.Serialization.Serializers; using Volo.Abp.Domain; using Volo.Abp.Domain.Repositories.MongoDB; using Volo.Abp.Modularity; @@ -19,6 +22,8 @@ public class AbpMongoDbModule : AbpModule public override void ConfigureServices(ServiceConfigurationContext context) { + BsonSerializer.TryRegisterSerializer(new GuidSerializer(GuidRepresentation.Standard)); + context.Services.TryAddTransient( typeof(IMongoDbContextProvider<>), typeof(UnitOfWorkMongoDbContextProvider<>) diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventInbox.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventInbox.cs index 6a73af27f5..9d1b706d8b 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventInbox.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventInbox.cs @@ -68,7 +68,6 @@ public class MongoDbContextEventInbox : IMongoDbContextEventInb .WhereIf(transformedFilter != null, transformedFilter!) .OrderBy(x => x.CreationTime) .Take(maxCount) - .As>() .ToListAsync(cancellationToken: cancellationToken); return outgoingEventRecords diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventOutbox.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventOutbox.cs index 57b59038b5..6dc8817f02 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventOutbox.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/DistributedEvents/MongoDbContextEventOutbox.cs @@ -56,7 +56,6 @@ public class MongoDbContextEventOutbox : IMongoDbContextEventOu .WhereIf(transformedFilter != null, transformedFilter!) .OrderBy(x => x.CreationTime) .Take(maxCount) - .As>() .ToListAsync(cancellationToken: cancellationToken); return outgoingEventRecords diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/MongoDbAsyncQueryableProvider.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/MongoDbAsyncQueryableProvider.cs index 287f3ced0e..b7e896a27a 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/MongoDbAsyncQueryableProvider.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/MongoDbAsyncQueryableProvider.cs @@ -6,9 +6,7 @@ using System.Threading; using System.Threading.Tasks; using Volo.Abp.DependencyInjection; using Volo.Abp.Linq; -using MongoDB.Driver; using MongoDB.Driver.Linq; -using Volo.Abp.DynamicProxy; namespace Volo.Abp.MongoDB; @@ -16,344 +14,339 @@ public class MongoDbAsyncQueryableProvider : IAsyncQueryableProvider, ISingleton { public bool CanExecute(IQueryable queryable) { - return ProxyHelper.UnProxy(queryable) is IMongoQueryable; - } - - protected virtual IMongoQueryable GetMongoQueryable(IQueryable queryable) - { - return ProxyHelper.UnProxy(queryable).As>(); + return queryable.Provider is IMongoQueryProvider; } public Task ContainsAsync(IQueryable queryable, T item, CancellationToken cancellationToken = default) { - return Task.FromResult(GetMongoQueryable(queryable).Contains(item)); + return Task.FromResult(queryable.Contains(item)); } public Task AnyAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AnyAsync(cancellationToken); + return queryable.AnyAsync(cancellationToken); } public Task AnyAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AnyAsync(predicate, cancellationToken); + return queryable.AnyAsync(predicate, cancellationToken); } public Task AllAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return Task.FromResult(GetMongoQueryable(queryable).All(predicate)); + return Task.FromResult(queryable.All(predicate)); } public Task CountAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).CountAsync(cancellationToken); + return queryable.CountAsync(cancellationToken); } public Task CountAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).CountAsync(predicate, cancellationToken); + return queryable.CountAsync(predicate, cancellationToken); } public Task LongCountAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).LongCountAsync(cancellationToken); + return queryable.LongCountAsync(cancellationToken); } public Task LongCountAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).LongCountAsync(predicate, cancellationToken); + return queryable.LongCountAsync(predicate, cancellationToken); } public Task FirstAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).FirstAsync(cancellationToken); + return queryable.FirstAsync(cancellationToken); } public Task FirstAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).FirstAsync(predicate, cancellationToken); + return queryable.FirstAsync(predicate, cancellationToken); } public Task FirstOrDefaultAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).FirstOrDefaultAsync(cancellationToken)!; + return queryable.FirstOrDefaultAsync(cancellationToken)!; } public Task FirstOrDefaultAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).FirstOrDefaultAsync(predicate, cancellationToken)!; + return queryable.FirstOrDefaultAsync(predicate, cancellationToken)!; } public Task LastAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return Task.FromResult(GetMongoQueryable(queryable).Last()); + return Task.FromResult(queryable.Last()); } public Task LastAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return Task.FromResult(GetMongoQueryable(queryable).Last(predicate)); + return Task.FromResult(queryable.Last(predicate)); } public Task LastOrDefaultAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return Task.FromResult(GetMongoQueryable(queryable).LastOrDefault()); + return Task.FromResult(queryable.LastOrDefault()); } public Task LastOrDefaultAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return Task.FromResult(GetMongoQueryable(queryable).LastOrDefault(predicate)); + return Task.FromResult(queryable.LastOrDefault(predicate)); } public Task SingleAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SingleAsync(cancellationToken); + return queryable.SingleAsync(cancellationToken); } public Task SingleAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SingleAsync(predicate, cancellationToken); + return queryable.SingleAsync(predicate, cancellationToken); } public Task SingleOrDefaultAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SingleOrDefaultAsync(cancellationToken)!; + return queryable.SingleOrDefaultAsync(cancellationToken)!; } public Task SingleOrDefaultAsync(IQueryable queryable, Expression> predicate, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SingleOrDefaultAsync(predicate, cancellationToken)!; + return queryable.SingleOrDefaultAsync(predicate, cancellationToken)!; } public Task MinAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).MinAsync(cancellationToken); + return queryable.MinAsync(cancellationToken); } public Task MinAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).MinAsync(selector, cancellationToken); + return queryable.MinAsync(selector, cancellationToken); } public Task MaxAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).MaxAsync(cancellationToken); + return queryable.MaxAsync(cancellationToken); } public Task MaxAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).MaxAsync(selector, cancellationToken); + return queryable.MaxAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(cancellationToken); + return queryable.SumAsync(cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task SumAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).SumAsync(selector, cancellationToken); + return queryable.SumAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(cancellationToken); + return queryable.AverageAsync(cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task AverageAsync(IQueryable queryable, Expression> selector, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).AverageAsync(selector, cancellationToken); + return queryable.AverageAsync(selector, cancellationToken); } public Task> ToListAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return GetMongoQueryable(queryable).ToListAsync(cancellationToken); + return queryable.ToListAsync(cancellationToken); } public async Task ToArrayAsync(IQueryable queryable, CancellationToken cancellationToken = default) { - return (await GetMongoQueryable(queryable).ToListAsync(cancellationToken)).ToArray(); + return (await queryable.ToListAsync(cancellationToken)).ToArray(); } } 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 ae688f1640..e2328fdca3 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,10 +15,10 @@ - - - - + + + + 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 9b70fe2681..ff6fe1face 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,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.MongoDB; @@ -11,7 +11,8 @@ public class MongoDbFixture : IDisposable { MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions { - UseSingleNodeReplicaSet = true + UseSingleNodeReplicaSet = true, + ReplicaSetSetupTimeout = TimeSpan.FromSeconds(30) }); } diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs index 0d5122228d..a6976b3be6 100644 --- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs +++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs @@ -18,9 +18,9 @@ public class Repository_Basic_Tests : Repository_Basic_Tests>().ShouldNotBeNull(); - ((IMongoQueryable)(await PersonRepository.GetQueryableAsync()).Where(p => p.Name == "Douglas")).ShouldNotBeNull(); - (await PersonRepository.GetQueryableAsync()).Where(p => p.Name == "Douglas").As>().ShouldNotBeNull(); + (await PersonRepository.GetQueryableAsync()).ShouldNotBeNull(); + ((IQueryable)(await PersonRepository.GetQueryableAsync()).Where(p => p.Name == "Douglas")).ShouldNotBeNull(); + (await PersonRepository.GetQueryableAsync()).Where(p => p.Name == "Douglas").ShouldNotBeNull(); } [Fact] diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/TestApp/MongoDb/CityRepository.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/TestApp/MongoDb/CityRepository.cs index f8355b5466..1f0c0aa24d 100644 --- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/TestApp/MongoDb/CityRepository.cs +++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/TestApp/MongoDb/CityRepository.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; using MongoDB.Driver; using MongoDB.Driver.Linq; 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 b406e83d5c..860c8a2f4c 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 @@ -64,8 +64,7 @@ public class MongoAuditLogRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -104,8 +103,7 @@ public class MongoAuditLogRepository : MongoDbRepository>() - .LongCountAsync(GetCancellationToken(cancellationToken)); + var count = await query.LongCountAsync(GetCancellationToken(cancellationToken)); return count; } @@ -199,8 +197,7 @@ public class MongoAuditLogRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -215,7 +212,7 @@ public class MongoAuditLogRepository : MongoDbRepository>().LongCountAsync(GetCancellationToken(cancellationToken)); + var count = await query.LongCountAsync(GetCancellationToken(cancellationToken)); return count; } @@ -242,7 +239,6 @@ public class MongoAuditLogRepository : MongoDbRepository x.EntityChanges.Any(y => y.EntityId == entityId && y.EntityTypeFullName == entityTypeFullName)) - .As>() .OrderByDescending(x => x.ExecutionTime) .ToListAsync(GetCancellationToken(cancellationToken)); 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 41718fda4e..a33c1c74f8 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,10 +14,10 @@ - - - - + + + + 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 a68f246c78..569bf3ad2d 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,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.AuditLogging.MongoDB; diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs index 5993fdf9ba..16d49e980d 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using System.Linq; using MongoDB.Driver; using MongoDB.Driver.Linq; using Volo.Abp.Domain.Repositories.MongoDB; @@ -29,7 +30,7 @@ public class MongoBackgroundJobRepository : MongoDbRepository> GetWaitingListQuery(int maxResultCount, CancellationToken cancellationToken = default) + protected virtual async Task> GetWaitingListQuery(int maxResultCount, CancellationToken cancellationToken = default) { var now = Clock.Now; return (await GetMongoQueryableAsync(cancellationToken)) 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 c6a4b35a66..a3f84bb18a 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,10 +14,10 @@ - - - - + + + + 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 97bd35c6fa..b41e255cb8 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,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.BackgroundJobs.MongoDB; 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 8952236f43..7c086e0bb4 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,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.BlobStoring.Database.MongoDB; 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 1bd05f4357..61c0d81d02 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,10 +7,10 @@ - - - - + + + + diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs index 89e5b6b575..432cecb1b0 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using System.Linq; using MongoDB.Driver; using MongoDB.Driver.Linq; using Volo.Abp.Domain.Repositories.MongoDB; diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs index 3cdcccc5fd..b53693722f 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using System.Linq; using MongoDB.Driver; using MongoDB.Driver.Linq; using Nito.AsyncEx; diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs index 3595620f54..3fec9a2627 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using System.Linq; using Volo.Abp.MongoDB; using Volo.Abp.Users.MongoDB; using Volo.Blogging.MongoDB; 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 88cd171a55..7dcac50e69 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,10 +7,10 @@ - - - - + + + + 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 ad1fce80e5..e1a4d00ce3 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,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; public class MongoDbFixture : IDisposable { diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs index 0212e5975c..22b9df51e5 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs @@ -65,12 +65,12 @@ public class MongoBlogPostRepository : MongoDbRepository>(tagFilteredEntityIds.Any(), x => tagFilteredEntityIds.Contains(x.Id)) - .WhereIf>(favoriteUserFilteredEntityIds.Any(), x => favoriteUserFilteredEntityIds.Contains(x.Id)) - .WhereIf>(!string.IsNullOrWhiteSpace(filter), x => x.Title.Contains(filter) || x.Slug.Contains(filter)) - .WhereIf>(blogId.HasValue, x => x.BlogId == blogId) - .WhereIf>(authorId.HasValue, x => x.AuthorId == authorId) - .WhereIf>(statusFilter.HasValue, x => x.Status == statusFilter) + .WhereIf>(tagFilteredEntityIds.Any(), x => tagFilteredEntityIds.Contains(x.Id)) + .WhereIf>(favoriteUserFilteredEntityIds.Any(), x => favoriteUserFilteredEntityIds.Contains(x.Id)) + .WhereIf>(!string.IsNullOrWhiteSpace(filter), x => x.Title.Contains(filter) || x.Slug.Contains(filter)) + .WhereIf>(blogId.HasValue, x => x.BlogId == blogId) + .WhereIf>(authorId.HasValue, x => x.AuthorId == authorId) + .WhereIf>(statusFilter.HasValue, x => x.Status == statusFilter) .CountAsync(cancellationToken); } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs index 98567899e5..ce86257a29 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs @@ -44,8 +44,7 @@ public class MongoBlogRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(token); } @@ -82,7 +81,7 @@ public class MongoBlogRepository : MongoDbRepository>().LongCountAsync(token); + return await query.LongCountAsync(token); } public virtual Task GetBySlugAsync([NotNull] string slug, CancellationToken cancellationToken = default) diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs index fab729fcd2..66fc3137bd 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs @@ -61,8 +61,7 @@ public class MongoCommentRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(token); var commentIds = comments.Select(x => x.Id).ToList(); @@ -73,7 +72,7 @@ public class MongoCommentRepository : MongoDbRepository, CmsUser>(authorsQuery).ToListAsync(token); + var authors = await ApplyDataFilters, CmsUser>(authorsQuery).ToListAsync(token); return comments .Select( @@ -104,8 +103,7 @@ public class MongoCommentRepository : MongoDbRepository>() - .LongCountAsync(GetCancellationToken(cancellationToken)); + return await query.LongCountAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> GetListWithAuthorsAsync( @@ -123,7 +121,7 @@ public class MongoCommentRepository : MongoDbRepository, CmsUser>(authorsQuery).ToListAsync(GetCancellationToken(cancellationToken)); + var authors = await ApplyDataFilters, CmsUser>(authorsQuery).ToListAsync(GetCancellationToken(cancellationToken)); var commentsQuery = (await GetMongoQueryableAsync(cancellationToken)) .Where(c => c.EntityId == entityId && c.EntityType == entityType); diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs index 1b49ac48bb..09b1f289a8 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs @@ -27,7 +27,7 @@ public class MongoPageRepository : MongoDbRepository>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.Title.ToLower().Contains(filter.ToLower()) || u.Slug.Contains(filter) @@ -44,12 +44,11 @@ public class MongoPageRepository : MongoDbRepository>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.Title.ToLower().Contains(filter) || u.Slug.Contains(filter)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(Page.Title) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(cancellation); } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs index e8f702dbb2..fd6de60bc0 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs @@ -116,8 +116,7 @@ public class MongoTagRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -126,7 +125,7 @@ public class MongoTagRepository : MongoDbRepository> GetQueryableByFilterAsync(string filter, CancellationToken cancellationToken = default) + private async Task> GetQueryableByFilterAsync(string filter, CancellationToken cancellationToken = default) { var mongoQueryable = await GetMongoQueryableAsync(cancellationToken: cancellationToken); diff --git a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs index 22f63a3780..53c9457a30 100644 --- a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs +++ b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.CmsKit.MongoDB; diff --git a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/Volo.CmsKit.MongoDB.Tests.csproj b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/Volo.CmsKit.MongoDB.Tests.csproj index 17c6dfe717..9c8dc44660 100644 --- a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/Volo.CmsKit.MongoDB.Tests.csproj +++ b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/Volo.CmsKit.MongoDB.Tests.csproj @@ -7,10 +7,10 @@ - - - - + + + + diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs index 7f55ef63b0..d9db61a0c4 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs @@ -89,12 +89,13 @@ namespace Volo.Docs.Documents bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.ProjectId == projectId && - x.Name == name && - x.LanguageCode == languageCode && - x.Version == version, GetCancellationToken(cancellationToken)); + return await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => + x.ProjectId == projectId && + x.Name == name && + x.LanguageCode == languageCode && + x.Version == version, GetCancellationToken(cancellationToken)); } - + public virtual async Task FindAsync(Guid projectId, List possibleNames, string languageCode, string version, bool includeDetails = true, CancellationToken cancellationToken = default) @@ -118,7 +119,6 @@ namespace Volo.Docs.Documents .WhereIf(version != null, x => x.Version == version) .WhereIf(name != null, x => x.Name == name) .WhereIf(projectId.HasValue, x => x.ProjectId == projectId) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -142,26 +142,25 @@ namespace Volo.Docs.Documents int skipCount = 0, CancellationToken cancellationToken = default) { - return await (await ApplyFilterForGetAll( - await GetMongoQueryableAsync(cancellationToken), - projectId: projectId, - name: name, - version: version, - languageCode: languageCode, - fileName: fileName, - format: format, - creationTimeMin: creationTimeMin, - creationTimeMax: creationTimeMax, - lastUpdatedTimeMin: lastUpdatedTimeMin, - lastUpdatedTimeMax: lastUpdatedTimeMax, - lastSignificantUpdateTimeMin: lastSignificantUpdateTimeMin, - lastSignificantUpdateTimeMax: lastSignificantUpdateTimeMax, - lastCachedTimeMin: lastCachedTimeMin, lastCachedTimeMax: lastCachedTimeMax)) - .OrderBy(string.IsNullOrWhiteSpace(sorting) ? "name asc" : sorting).As>() - .PageBy>(skipCount, maxResultCount) - .ToListAsync(GetCancellationToken(cancellationToken)); + await GetMongoQueryableAsync(cancellationToken), + projectId: projectId, + name: name, + version: version, + languageCode: languageCode, + fileName: fileName, + format: format, + creationTimeMin: creationTimeMin, + creationTimeMax: creationTimeMax, + lastUpdatedTimeMin: lastUpdatedTimeMin, + lastUpdatedTimeMax: lastUpdatedTimeMax, + lastSignificantUpdateTimeMin: lastSignificantUpdateTimeMin, + lastSignificantUpdateTimeMax: lastSignificantUpdateTimeMax, + lastCachedTimeMin: lastCachedTimeMin, lastCachedTimeMax: lastCachedTimeMax, cancellationToken: cancellationToken)) + .OrderBy(string.IsNullOrWhiteSpace(sorting) ? "name asc" : sorting) + .PageBy>(skipCount, maxResultCount) + .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetAllCountAsync( @@ -184,36 +183,35 @@ namespace Volo.Docs.Documents int skipCount = 0, CancellationToken cancellationToken = default) { - - return await (await ApplyFilterForGetAll( - await GetMongoQueryableAsync(cancellationToken), - projectId: projectId, - name: name, - version: version, - languageCode: languageCode, - fileName: fileName, - format: format, - creationTimeMin: creationTimeMin, - creationTimeMax: creationTimeMax, - lastUpdatedTimeMin: lastUpdatedTimeMin, - lastUpdatedTimeMax: lastUpdatedTimeMax, - lastSignificantUpdateTimeMin: lastSignificantUpdateTimeMin, - lastSignificantUpdateTimeMax: lastSignificantUpdateTimeMax, - lastCachedTimeMin: lastCachedTimeMin, lastCachedTimeMax: lastCachedTimeMax)) - .OrderBy(string.IsNullOrWhiteSpace(sorting) ? "name asc" : sorting).As>() - .PageBy>(skipCount, maxResultCount) - .LongCountAsync(GetCancellationToken(cancellationToken)); + await GetMongoQueryableAsync(cancellationToken), + projectId: projectId, + name: name, + version: version, + languageCode: languageCode, + fileName: fileName, + format: format, + creationTimeMin: creationTimeMin, + creationTimeMax: creationTimeMax, + lastUpdatedTimeMin: lastUpdatedTimeMin, + lastUpdatedTimeMax: lastUpdatedTimeMax, + lastSignificantUpdateTimeMin: lastSignificantUpdateTimeMin, + lastSignificantUpdateTimeMax: lastSignificantUpdateTimeMax, + lastCachedTimeMin: lastCachedTimeMin, lastCachedTimeMax: lastCachedTimeMax, + cancellationToken: cancellationToken)) + .OrderBy(string.IsNullOrWhiteSpace(sorting) ? "name asc" : sorting) + .PageBy(skipCount, maxResultCount) + .LongCountAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetAsync(Guid id, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.Id == id).SingleAsync(GetCancellationToken(cancellationToken)); } - - protected virtual async Task> ApplyFilterForGetAll( - IMongoQueryable query, + + protected virtual async Task> ApplyFilterForGetAll( + IQueryable query, Guid? projectId, string name, string version, @@ -254,7 +252,7 @@ namespace Volo.Docs.Documents { query = query.Where(d => d.FileName != null && d.FileName.Contains(fileName)); } - + if (format != null) { query = query.Where(d => d.Format != null && d.Format == format); diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs index 3960b07eb3..52a9875936 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs @@ -22,8 +22,7 @@ namespace Volo.Docs.Projects public virtual async Task> GetListAsync(string sorting, int maxResultCount, int skipCount, CancellationToken cancellationToken = default) { - var projects = await (await GetMongoQueryableAsync(cancellationToken)).OrderBy(sorting.IsNullOrEmpty() ? "Id desc" : sorting).As>() - .PageBy>(skipCount, maxResultCount) + var projects = await (await GetMongoQueryableAsync(cancellationToken)).OrderBy(sorting.IsNullOrEmpty() ? "Id desc" : sorting).PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); return projects; diff --git a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo.Docs.MongoDB.Tests.csproj b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo.Docs.MongoDB.Tests.csproj index 5c3f98c351..90df72d01d 100644 --- a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo.Docs.MongoDB.Tests.csproj +++ b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo.Docs.MongoDB.Tests.csproj @@ -7,10 +7,10 @@ - - - - + + + + diff --git a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs index ad1fce80e5..e1a4d00ce3 100644 --- a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs +++ b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; public class MongoDbFixture : IDisposable { diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs index cb7f48aeb4..a564e7792d 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs @@ -1,6 +1,7 @@ using System; using System.Threading; using System.Threading.Tasks; +using System.Linq; using MongoDB.Driver.Linq; using Volo.Abp.Domain.Repositories.MongoDB; using Volo.Abp.MongoDB; diff --git a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo.Abp.FeatureManagement.MongoDB.Tests.csproj b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo.Abp.FeatureManagement.MongoDB.Tests.csproj index bfc01a429f..2f7f5ee7d0 100644 --- a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo.Abp.FeatureManagement.MongoDB.Tests.csproj +++ b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo.Abp.FeatureManagement.MongoDB.Tests.csproj @@ -14,10 +14,10 @@ - - - - + + + + diff --git a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs index 8088afee7b..23a5403281 100644 --- a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs +++ b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.FeatureManagement.MongoDB; diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs index ac0b86dee9..899975f9c6 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs @@ -44,14 +44,13 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) ) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(IdentityClaimType.CreationTime) + " desc" : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -60,12 +59,11 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) ) - .As>() .LongCountAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs index 3a57f69902..9979c0de0c 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs @@ -95,7 +95,6 @@ public class MongoIdentityRoleRepository : MongoDbRepository x.Name.Contains(filter) || x.NormalizedName.Contains(filter)) - .As>() .LongCountAsync(GetCancellationToken(cancellationToken)); } @@ -126,8 +125,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository x.Name.Contains(filter) || x.NormalizedName.Contains(filter)) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(IdentityRole.CreationTime) + " desc" : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs index f173272009..bfe4cf1983 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs @@ -51,8 +51,7 @@ public class MongoIdentitySecurityLogRepository : ); return await query.OrderBy(sorting.IsNullOrWhiteSpace() ? $"{nameof(IdentitySecurityLog.CreationTime)} desc" : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -83,8 +82,7 @@ public class MongoIdentitySecurityLogRepository : cancellationToken ); - return await query.As>() - .LongCountAsync(GetCancellationToken(cancellationToken)); + return await query.LongCountAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs index a1a8f94c49..23db911fe2 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs @@ -24,7 +24,6 @@ public class MongoIdentitySessionRepository : MongoDbRepository FindAsync(string sessionId, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) - .As>() .FirstOrDefaultAsync(x => x.SessionId == sessionId, GetCancellationToken(cancellationToken)); } @@ -42,14 +41,12 @@ public class MongoIdentitySessionRepository : MongoDbRepository ExistAsync(Guid id, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) - .As>() .AnyAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); } public virtual async Task ExistAsync(string sessionId, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) - .As>() .AnyAsync(x => x.SessionId == sessionId, GetCancellationToken(cancellationToken)); } @@ -68,7 +65,6 @@ public class MongoIdentitySessionRepository : MongoDbRepository x.ClientId == clientId) .OrderBy(sorting.IsNullOrWhiteSpace() ? $"{nameof(IdentitySession.LastAccessed)} desc" : sorting) .PageBy(skipCount, maxResultCount) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -82,7 +78,6 @@ public class MongoIdentitySessionRepository : MongoDbRepository x.UserId == userId) .WhereIf(!device.IsNullOrWhiteSpace(), x => x.Device == device) .WhereIf(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) - .As>() .LongCountAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs index 56cc48121e..abdab16289 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs @@ -27,7 +27,6 @@ public class MongoIdentityUserDelegationRepository : MongoDbRepository x.SourceUserId == sourceUserId) .WhereIf(targetUserId.HasValue, x => x.TargetUserId == targetUserId) - .As>() .ToListAsync(cancellationToken: cancellationToken); } @@ -36,7 +35,6 @@ public class MongoIdentityUserDelegationRepository : MongoDbRepository x.TargetUserId == targetUserId) .Where(x => x.StartTime <= Clock.Now && x.EndTime >= Clock.Now) - .As>() .ToListAsync(cancellationToken: cancellationToken); } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs index 58486893ec..624bf9dd3f 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs @@ -201,8 +201,7 @@ public class MongoIdentityUserRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -422,7 +421,7 @@ public class MongoIdentityUserRepository : MongoDbRepository> GetFilteredQueryableAsync( + protected virtual async Task> GetFilteredQueryableAsync( string filter = null, Guid? roleId = null, Guid? organizationUnitId = null, @@ -455,7 +454,7 @@ public class MongoIdentityUserRepository : MongoDbRepository>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.NormalizedUserName.Contains(upperFilter) || @@ -464,20 +463,20 @@ public class MongoIdentityUserRepository : MongoDbRepository>(organizationUnitId.HasValue, identityUser => identityUser.OrganizationUnits.Any(x => x.OrganizationUnitId == organizationUnitId.Value)) - .WhereIf>(!string.IsNullOrWhiteSpace(userName), x => x.UserName == userName) - .WhereIf>(!string.IsNullOrWhiteSpace(phoneNumber), x => x.PhoneNumber == phoneNumber) - .WhereIf>(!string.IsNullOrWhiteSpace(emailAddress), x => x.Email == emailAddress) - .WhereIf>(!string.IsNullOrWhiteSpace(name), x => x.Name == name) - .WhereIf>(!string.IsNullOrWhiteSpace(surname), x => x.Surname == surname) - .WhereIf>(isLockedOut.HasValue && isLockedOut.Value, x => x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow) - .WhereIf>(isLockedOut.HasValue && !isLockedOut.Value, x => !(x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow)) - .WhereIf>(notActive.HasValue, x => x.IsActive == !notActive.Value) - .WhereIf>(emailConfirmed.HasValue, x => x.EmailConfirmed == emailConfirmed.Value) - .WhereIf>(isExternal.HasValue, x => x.IsExternal == isExternal.Value) - .WhereIf>(maxCreationTime != null, p => p.CreationTime <= maxCreationTime) - .WhereIf>(minCreationTime != null, p => p.CreationTime >= minCreationTime) - .WhereIf>(maxModifitionTime != null, p => p.LastModificationTime <= maxModifitionTime) - .WhereIf>(minModifitionTime != null, p => p.LastModificationTime >= minModifitionTime); + .WhereIf>(organizationUnitId.HasValue, identityUser => identityUser.OrganizationUnits.Any(x => x.OrganizationUnitId == organizationUnitId.Value)) + .WhereIf>(!string.IsNullOrWhiteSpace(userName), x => x.UserName == userName) + .WhereIf>(!string.IsNullOrWhiteSpace(phoneNumber), x => x.PhoneNumber == phoneNumber) + .WhereIf>(!string.IsNullOrWhiteSpace(emailAddress), x => x.Email == emailAddress) + .WhereIf>(!string.IsNullOrWhiteSpace(name), x => x.Name == name) + .WhereIf>(!string.IsNullOrWhiteSpace(surname), x => x.Surname == surname) + .WhereIf>(isLockedOut.HasValue && isLockedOut.Value, x => x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow) + .WhereIf>(isLockedOut.HasValue && !isLockedOut.Value, x => !(x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow)) + .WhereIf>(notActive.HasValue, x => x.IsActive == !notActive.Value) + .WhereIf>(emailConfirmed.HasValue, x => x.EmailConfirmed == emailConfirmed.Value) + .WhereIf>(isExternal.HasValue, x => x.IsExternal == isExternal.Value) + .WhereIf>(maxCreationTime != null, p => p.CreationTime <= maxCreationTime) + .WhereIf>(minCreationTime != null, p => p.CreationTime >= minCreationTime) + .WhereIf>(maxModifitionTime != null, p => p.LastModificationTime <= maxModifitionTime) + .WhereIf>(minModifitionTime != null, p => p.LastModificationTime >= minModifitionTime); } } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs index c3a168033b..d871ca8b70 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs @@ -72,8 +72,7 @@ public class MongoOrganizationUnitRepository { return await (await GetMongoQueryableAsync(cancellationToken)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(OrganizationUnit.CreationTime) + " desc" : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -103,8 +102,7 @@ public class MongoOrganizationUnitRepository return await (await GetMongoQueryableAsync(cancellationToken)) .Where(r => roleIds.Contains(r.Id)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -125,8 +123,7 @@ public class MongoOrganizationUnitRepository return await (await GetMongoQueryableAsync(cancellationToken)) .Where(r => roleIds.Contains(r.Id)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -154,8 +151,7 @@ public class MongoOrganizationUnitRepository .Where(r => !roleIds.Contains(r.Id)) .WhereIf(!filter.IsNullOrWhiteSpace(), r => r.Name.Contains(filter)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -169,7 +165,6 @@ public class MongoOrganizationUnitRepository return await (await GetMongoQueryableAsync(cancellationToken)) .Where(r => !roleIds.Contains(r.Id)) .WhereIf(!filter.IsNullOrWhiteSpace(), r => r.Name.Contains(filter)) - .As>() .CountAsync(GetCancellationToken(cancellationToken)); } @@ -186,8 +181,7 @@ public class MongoOrganizationUnitRepository var query = await CreateGetMembersFilteredQueryAsync(organizationUnit, filter, cancellationToken); return await query .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityUser.UserName) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(cancellationToken); } @@ -221,7 +215,7 @@ public class MongoOrganizationUnitRepository return await (await GetMongoQueryableAsync(cancellationToken)) .Where(u => !u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) - .WhereIf>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || @@ -229,8 +223,7 @@ public class MongoOrganizationUnitRepository (u.PhoneNumber != null && u.PhoneNumber.Contains(filter)) ) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityUser.UserName) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -239,14 +232,13 @@ public class MongoOrganizationUnitRepository { return await (await GetMongoQueryableAsync(cancellationToken)) .Where(u => !u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) - .WhereIf>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || u.Email.Contains(filter) || (u.PhoneNumber != null && u.PhoneNumber.Contains(filter)) ) - .As>() .CountAsync(GetCancellationToken(cancellationToken)); } @@ -263,7 +255,6 @@ public class MongoOrganizationUnitRepository var dbContext = await GetDbContextAsync(cancellationToken); var users = await userQueryable .Where(u => u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) - .As>() .ToListAsync(cancellationToken); foreach (var user in users) @@ -273,14 +264,14 @@ public class MongoOrganizationUnitRepository } } - protected virtual async Task> CreateGetMembersFilteredQueryAsync( + protected virtual async Task> CreateGetMembersFilteredQueryAsync( OrganizationUnit organizationUnit, string filter = null, CancellationToken cancellationToken = default) { return (await GetMongoQueryableAsync(cancellationToken)) .Where(u => u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) - .WhereIf>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || diff --git a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo.Abp.Identity.MongoDB.Tests.csproj b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo.Abp.Identity.MongoDB.Tests.csproj index cc463e1cc8..311ee9fa69 100644 --- a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo.Abp.Identity.MongoDB.Tests.csproj +++ b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo.Abp.Identity.MongoDB.Tests.csproj @@ -20,10 +20,10 @@ - - - - + + + + diff --git a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs index 732500214c..90b0f60b14 100644 --- a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs +++ b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.Identity.MongoDB; diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs index 24dc519a40..ff58d8b984 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs @@ -50,15 +50,14 @@ public class MongoApiResourceRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf>(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || x.DisplayName.Contains(filter)) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs index 01c1ecad07..90a4b214ae 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs @@ -45,15 +45,14 @@ public class MongoApiScopeRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf>(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || x.DisplayName.Contains(filter)) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs index c7f81f51e2..f26a6c7805 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs @@ -42,15 +42,14 @@ public class MongoClientRepository : MongoDbRepository x.ClientId.Contains(filter)) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(Client.ClientName) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf>(!filter.IsNullOrWhiteSpace(), x => x.ClientId.Contains(filter)) .LongCountAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs index 921225a5ae..976b1478b7 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using System.Linq; using MongoDB.Driver; using MongoDB.Driver.Linq; using Volo.Abp.Domain.Repositories.MongoDB; diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs index faf3d66d96..c2217c31dc 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs @@ -25,15 +25,14 @@ public class MongoIdentityResourceRepository : MongoDbRepository>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf>(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || x.DisplayName.Contains(filter)) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs index e3f3cc8368..9af3db126b 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs @@ -87,7 +87,7 @@ public class MongoPersistentGrantRepository : MongoDbRepository> FilterAsync( + private async Task> FilterAsync( string subjectId, string sessionId, string clientId, @@ -95,10 +95,9 @@ public class MongoPersistentGrantRepository : MongoDbRepository>(!subjectId.IsNullOrWhiteSpace(), x => x.SubjectId == subjectId) - .WhereIf>(!sessionId.IsNullOrWhiteSpace(), x => x.SessionId == sessionId) - .WhereIf>(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) - .WhereIf>(!type.IsNullOrWhiteSpace(), x => x.Type == type) - .As>(); + .WhereIf>(!subjectId.IsNullOrWhiteSpace(), x => x.SubjectId == subjectId) + .WhereIf>(!sessionId.IsNullOrWhiteSpace(), x => x.SessionId == sessionId) + .WhereIf>(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) + .WhereIf>(!type.IsNullOrWhiteSpace(), x => x.Type == type); } } diff --git a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo.Abp.IdentityServer.MongoDB.Tests.csproj b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo.Abp.IdentityServer.MongoDB.Tests.csproj index d2d7bf8a0e..07377805af 100644 --- a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo.Abp.IdentityServer.MongoDB.Tests.csproj +++ b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo.Abp.IdentityServer.MongoDB.Tests.csproj @@ -20,10 +20,10 @@ - - - - + + + + diff --git a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs index 2f6d52d255..6611beb635 100644 --- a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs +++ b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.IdentityServer; diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs index ad9064e8cf..a07a1951c1 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs @@ -25,7 +25,6 @@ public class MongoOpenIddictApplicationRepository : MongoDbRepository x.ClientId.Contains(filter)) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(OpenIddictApplication.CreationTime) + " desc" : sorting) .PageBy(skipCount, maxResultCount) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -33,7 +32,6 @@ public class MongoOpenIddictApplicationRepository : MongoDbRepository x.ClientId.Contains(filter)) - .As>() .LongCountAsync(GetCancellationToken(cancellationToken)); } @@ -55,7 +53,7 @@ public class MongoOpenIddictApplicationRepository : MongoDbRepository GetAsync(Func, TState, IQueryable> query, TState state, CancellationToken cancellationToken = default) { - return await query(await GetMongoQueryableAsync(cancellationToken), state).As>().FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); + return await query(await GetMongoQueryableAsync(cancellationToken), state).FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> ListAsync(int? count, int? offset, CancellationToken cancellationToken = default) @@ -64,7 +62,6 @@ public class MongoOpenIddictApplicationRepository : MongoDbRepository x.Id) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } } diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs index f4bd5f4817..d17fe36c0e 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs @@ -34,7 +34,6 @@ public class MongoOpenIddictAuthorizationRepository : MongoDbRepository x.ApplicationId == client) .WhereIf(!status.IsNullOrWhiteSpace(), x => x.Status == status) .WhereIf(!type.IsNullOrWhiteSpace(), x => x.Type == type) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -59,7 +58,7 @@ public class MongoOpenIddictAuthorizationRepository : MongoDbRepository authorization.Id!) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) - .As>().ToListAsync(GetCancellationToken(cancellationToken)); + .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task PruneAsync(DateTime date, CancellationToken cancellationToken = default) diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs index 3e16df4e9b..40d6d56179 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs @@ -28,7 +28,6 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -39,7 +38,6 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository>() .LongCountAsync(GetCancellationToken(cancellationToken)); } @@ -57,7 +55,6 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository names.Contains(x.Name)) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -65,7 +62,6 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository x.Resources.Contains(resource)) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -75,7 +71,6 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository x.Id) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } } diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs index 175b137515..4758a96920 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs @@ -54,7 +54,6 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.ApplicationId == client) .WhereIf(!status.IsNullOrWhiteSpace(), x => x.Status == status) .WhereIf(!type.IsNullOrWhiteSpace(), x => x.Type == type) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -62,7 +61,6 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.ApplicationId == applicationId) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -70,7 +68,6 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.AuthorizationId == authorizationId) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -88,7 +85,6 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.Subject == subject) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -98,7 +94,6 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.Id) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) - .As>() .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo.Abp.OpenIddict.MongoDB.Tests.csproj b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo.Abp.OpenIddict.MongoDB.Tests.csproj index 56512b464c..d5f8903293 100644 --- a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo.Abp.OpenIddict.MongoDB.Tests.csproj +++ b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo.Abp.OpenIddict.MongoDB.Tests.csproj @@ -9,10 +9,10 @@ - - - - + + + + diff --git a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs index ddceaf8104..1716d478a5 100644 --- a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs +++ b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.OpenIddict.MongoDB; diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs index 529f56511c..2871c47e65 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs @@ -1,6 +1,7 @@ using System; using System.Threading; using System.Threading.Tasks; +using System.Linq; using MongoDB.Driver.Linq; using Volo.Abp.Domain.Repositories.MongoDB; using Volo.Abp.MongoDB; diff --git a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo.Abp.PermissionManagement.MongoDB.Tests.csproj b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo.Abp.PermissionManagement.MongoDB.Tests.csproj index 757b0f164c..0f9e0169e8 100644 --- a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo.Abp.PermissionManagement.MongoDB.Tests.csproj +++ b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo.Abp.PermissionManagement.MongoDB.Tests.csproj @@ -19,10 +19,10 @@ - - - - + + + + diff --git a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs index fc039d7ee2..05fae7288c 100644 --- a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs +++ b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.PermissionManagement.MongoDB; diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs index d2500cccd2..07d32bae81 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs @@ -1,6 +1,7 @@ using System; using System.Threading; using System.Threading.Tasks; +using System.Linq; using MongoDB.Driver.Linq; using Volo.Abp.Domain.Repositories.MongoDB; using Volo.Abp.MongoDB; diff --git a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo.Abp.SettingManagement.MongoDB.Tests.csproj b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo.Abp.SettingManagement.MongoDB.Tests.csproj index 65ea9436ee..9c2c2f36a9 100644 --- a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo.Abp.SettingManagement.MongoDB.Tests.csproj +++ b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo.Abp.SettingManagement.MongoDB.Tests.csproj @@ -18,10 +18,10 @@ - - - - + + + + diff --git a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs index 625b66b328..bc5feb98b1 100644 --- a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs +++ b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace Volo.Abp.SettingManagement.MongoDB; diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs index 049dc5e57c..1762bcb666 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs @@ -51,21 +51,20 @@ public class MongoTenantRepository : MongoDbRepository>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) ) .OrderBy(sorting.IsNullOrEmpty() ? nameof(Tenant.Name) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) diff --git a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo.Abp.TenantManagement.MongoDB.Tests.csproj b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo.Abp.TenantManagement.MongoDB.Tests.csproj index c22da31998..2913a0ed53 100644 --- a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo.Abp.TenantManagement.MongoDB.Tests.csproj +++ b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo.Abp.TenantManagement.MongoDB.Tests.csproj @@ -18,10 +18,10 @@ - - - - + + + + diff --git a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs index 7b12dc33e7..4610234bf6 100644 --- a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs +++ b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; using MongoDB.Driver; using Volo.Abp.MongoDB; diff --git a/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs b/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs index d0e1e76873..335c46c94e 100644 --- a/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs +++ b/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs @@ -46,7 +46,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi { cancellationToken = GetCancellationToken(cancellationToken); return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || @@ -55,8 +55,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi (u.Surname != null && u.Surname.Contains(filter)) ) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IUserData.UserName) : sorting) - .As>() - .PageBy>(skipCount, maxResultCount) + .PageBy>(skipCount, maxResultCount) .ToListAsync(cancellationToken); } @@ -64,7 +63,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi { cancellationToken = GetCancellationToken(cancellationToken); return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>( + .WhereIf>( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs index 55387d7ba5..e69539eff8 100644 --- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs +++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace MyCompanyName.MyProjectName.MongoDB; diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj index 53cc18991c..e18c27a2de 100644 --- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj +++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj @@ -15,10 +15,10 @@ - - - - + + + + diff --git a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs index 07cfd77583..63a2f598c5 100644 --- a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs +++ b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs @@ -1,5 +1,5 @@ using System; -using EphemeralMongo; +using MongoSandbox; namespace MyCompanyName.MyProjectName.MongoDB; diff --git a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj index fed5495bbe..5e43f82146 100644 --- a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj +++ b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MyCompanyName.MyProjectName.MongoDB.Tests.csproj @@ -10,10 +10,10 @@ - - - - + + + + From a0d75fc6fb7e894cf62253204037ee4c966c197a Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 3 Jan 2025 17:54:53 +0800 Subject: [PATCH 04/60] Update repositories.md --- .../domain-driven-design/repositories.md | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/docs/en/framework/architecture/domain-driven-design/repositories.md b/docs/en/framework/architecture/domain-driven-design/repositories.md index 3b540d335f..04848a59e8 100644 --- a/docs/en/framework/architecture/domain-driven-design/repositories.md +++ b/docs/en/framework/architecture/domain-driven-design/repositories.md @@ -393,19 +393,6 @@ This method is suggested; * If you are developing an application and you **don't plan to change** EF Core in the future, or you can **tolerate** it if you need to change it later. We believe that's reasonable if you are developing a final application. -#### MongoDB Case - -If you are using [MongoDB](../../data/mongodb), you need to add the [Volo.Abp.MongoDB](https://www.nuget.org/packages/Volo.Abp.MongoDB) NuGet package to your project. Even in this case, you can't directly use async LINQ extensions (like `ToListAsync`) because MongoDB doesn't provide async extension methods for `IQueryable`, but provides for `IQueryable`. You need to cast the query to `IQueryable` first to be able to use the async extension methods. - -**Example: Cast `IQueryable` to `IQueryable` and use `ToListAsync()`** - -````csharp -var queryable = await _personRepository.GetQueryableAsync(); -var people = ((IQueryable) queryable - .Where(p => p.Name.Contains(nameFilter))) - .ToListAsync(); -```` - ### Option-2: Use the IRepository Async Extension Methods ABP provides async extension methods for the repositories, just similar to async LINQ extension methods. From c2a5fa390c604ca29919b2a293c5796591a82cde Mon Sep 17 00:00:00 2001 From: maliming Date: Sat, 4 Jan 2025 12:44:15 +0800 Subject: [PATCH 05/60] Remove unnecessary generic type parameter. --- docs/en/guides/microservice-mongodb.md | 2 +- .../MongoDB/MongoAuditLogRepository.cs | 4 +-- .../MongoDB/Blogs/MongoBlogPostRepository.cs | 12 +++---- .../MongoDB/Blogs/MongoBlogRepository.cs | 2 +- .../Comments/MongoCommentRepository.cs | 2 +- .../MongoDB/Pages/MongoPageRepository.cs | 6 ++-- .../CmsKit/MongoDB/Tags/MongoTagRepository.cs | 2 +- .../Docs/Documents/MongoDocumentRepository.cs | 2 +- .../Docs/Projects/MongoProjectRepository.cs | 2 +- .../MongoIdentityClaimTypeRepository.cs | 6 ++-- .../MongoDB/MongoIdentityRoleRepository.cs | 2 +- .../MongoIdentitySecurityLogRepository.cs | 2 +- .../MongoDB/MongoIdentityUserRepository.cs | 34 +++++++++---------- .../MongoOrganizationUnitRepository.cs | 18 +++++----- .../MongoDB/MongoApiResourceRepository.cs | 4 +-- .../MongoDB/MongoApiScopeRepository.cs | 4 +-- .../MongoDB/MongoClientRepository.cs | 4 +-- .../MongoIdentityResourceRepository.cs | 4 +-- .../MongoDB/MongoPersistentGrantRepository.cs | 8 ++--- .../MongoDb/MongoTenantRepository.cs | 6 ++-- .../Users/MongoDB/MongoUserRepositoryBase.cs | 6 ++-- 21 files changed, 66 insertions(+), 66 deletions(-) diff --git a/docs/en/guides/microservice-mongodb.md b/docs/en/guides/microservice-mongodb.md index dfb32a2a81..476637f605 100644 --- a/docs/en/guides/microservice-mongodb.md +++ b/docs/en/guides/microservice-mongodb.md @@ -99,7 +99,7 @@ Here we use `BookStore.ProductService` project as an example: { var query = ApplyFilter(await GetMongoQueryableAsync(cancellationToken), filterText, name, priceMin, priceMax); query = query.OrderBy(string.IsNullOrWhiteSpace(sorting) ? ProductConsts.GetDefaultSorting(false) : sorting); - return await query.PageBy>(skipCount, maxResultCount).ToListAsync(cancellationToken); + return await query.PageBy(skipCount, maxResultCount).ToListAsync(cancellationToken); } public async Task GetCountAsync( 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 860c8a2f4c..50336aa8cc 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 @@ -64,7 +64,7 @@ public class MongoAuditLogRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -197,7 +197,7 @@ public class MongoAuditLogRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs index 22b9df51e5..3cd5d5dd82 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs @@ -65,12 +65,12 @@ public class MongoBlogPostRepository : MongoDbRepository>(tagFilteredEntityIds.Any(), x => tagFilteredEntityIds.Contains(x.Id)) - .WhereIf>(favoriteUserFilteredEntityIds.Any(), x => favoriteUserFilteredEntityIds.Contains(x.Id)) - .WhereIf>(!string.IsNullOrWhiteSpace(filter), x => x.Title.Contains(filter) || x.Slug.Contains(filter)) - .WhereIf>(blogId.HasValue, x => x.BlogId == blogId) - .WhereIf>(authorId.HasValue, x => x.AuthorId == authorId) - .WhereIf>(statusFilter.HasValue, x => x.Status == statusFilter) + .WhereIf(tagFilteredEntityIds.Any(), x => tagFilteredEntityIds.Contains(x.Id)) + .WhereIf(favoriteUserFilteredEntityIds.Any(), x => favoriteUserFilteredEntityIds.Contains(x.Id)) + .WhereIf(!string.IsNullOrWhiteSpace(filter), x => x.Title.Contains(filter) || x.Slug.Contains(filter)) + .WhereIf(blogId.HasValue, x => x.BlogId == blogId) + .WhereIf(authorId.HasValue, x => x.AuthorId == authorId) + .WhereIf(statusFilter.HasValue, x => x.Status == statusFilter) .CountAsync(cancellationToken); } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs index ce86257a29..dfb33e5c16 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs @@ -44,7 +44,7 @@ public class MongoBlogRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(token); } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs index 66fc3137bd..1cb38abc97 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs @@ -61,7 +61,7 @@ public class MongoCommentRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(token); var commentIds = comments.Select(x => x.Id).ToList(); diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs index 09b1f289a8..f1879090e5 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs @@ -27,7 +27,7 @@ public class MongoPageRepository : MongoDbRepository>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.Title.ToLower().Contains(filter.ToLower()) || u.Slug.Contains(filter) @@ -44,11 +44,11 @@ public class MongoPageRepository : MongoDbRepository>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.Title.ToLower().Contains(filter) || u.Slug.Contains(filter)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(Page.Title) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(cancellation); } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs index fd6de60bc0..8f091f30c8 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoTagRepository.cs @@ -116,7 +116,7 @@ public class MongoTagRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs index d9db61a0c4..1714773aec 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs @@ -159,7 +159,7 @@ namespace Volo.Docs.Documents lastSignificantUpdateTimeMax: lastSignificantUpdateTimeMax, lastCachedTimeMin: lastCachedTimeMin, lastCachedTimeMax: lastCachedTimeMax, cancellationToken: cancellationToken)) .OrderBy(string.IsNullOrWhiteSpace(sorting) ? "name asc" : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs index 52a9875936..e2df71ed84 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs @@ -22,7 +22,7 @@ namespace Volo.Docs.Projects public virtual async Task> GetListAsync(string sorting, int maxResultCount, int skipCount, CancellationToken cancellationToken = default) { - var projects = await (await GetMongoQueryableAsync(cancellationToken)).OrderBy(sorting.IsNullOrEmpty() ? "Id desc" : sorting).PageBy>(skipCount, maxResultCount) + var projects = await (await GetMongoQueryableAsync(cancellationToken)).OrderBy(sorting.IsNullOrEmpty() ? "Id desc" : sorting).PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); return projects; diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs index 899975f9c6..fecda84465 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs @@ -44,13 +44,13 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) ) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(IdentityClaimType.CreationTime) + " desc" : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -59,7 +59,7 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs index 9979c0de0c..023d91396e 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs @@ -125,7 +125,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository x.Name.Contains(filter) || x.NormalizedName.Contains(filter)) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(IdentityRole.CreationTime) + " desc" : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs index bfe4cf1983..a8a984bb63 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs @@ -51,7 +51,7 @@ public class MongoIdentitySecurityLogRepository : ); return await query.OrderBy(sorting.IsNullOrWhiteSpace() ? $"{nameof(IdentitySecurityLog.CreationTime)} desc" : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs index 624bf9dd3f..4c085918cb 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs @@ -201,7 +201,7 @@ public class MongoIdentityUserRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -454,7 +454,7 @@ public class MongoIdentityUserRepository : MongoDbRepository>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.NormalizedUserName.Contains(upperFilter) || @@ -463,20 +463,20 @@ public class MongoIdentityUserRepository : MongoDbRepository>(organizationUnitId.HasValue, identityUser => identityUser.OrganizationUnits.Any(x => x.OrganizationUnitId == organizationUnitId.Value)) - .WhereIf>(!string.IsNullOrWhiteSpace(userName), x => x.UserName == userName) - .WhereIf>(!string.IsNullOrWhiteSpace(phoneNumber), x => x.PhoneNumber == phoneNumber) - .WhereIf>(!string.IsNullOrWhiteSpace(emailAddress), x => x.Email == emailAddress) - .WhereIf>(!string.IsNullOrWhiteSpace(name), x => x.Name == name) - .WhereIf>(!string.IsNullOrWhiteSpace(surname), x => x.Surname == surname) - .WhereIf>(isLockedOut.HasValue && isLockedOut.Value, x => x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow) - .WhereIf>(isLockedOut.HasValue && !isLockedOut.Value, x => !(x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow)) - .WhereIf>(notActive.HasValue, x => x.IsActive == !notActive.Value) - .WhereIf>(emailConfirmed.HasValue, x => x.EmailConfirmed == emailConfirmed.Value) - .WhereIf>(isExternal.HasValue, x => x.IsExternal == isExternal.Value) - .WhereIf>(maxCreationTime != null, p => p.CreationTime <= maxCreationTime) - .WhereIf>(minCreationTime != null, p => p.CreationTime >= minCreationTime) - .WhereIf>(maxModifitionTime != null, p => p.LastModificationTime <= maxModifitionTime) - .WhereIf>(minModifitionTime != null, p => p.LastModificationTime >= minModifitionTime); + .WhereIf(organizationUnitId.HasValue, identityUser => identityUser.OrganizationUnits.Any(x => x.OrganizationUnitId == organizationUnitId.Value)) + .WhereIf(!string.IsNullOrWhiteSpace(userName), x => x.UserName == userName) + .WhereIf(!string.IsNullOrWhiteSpace(phoneNumber), x => x.PhoneNumber == phoneNumber) + .WhereIf(!string.IsNullOrWhiteSpace(emailAddress), x => x.Email == emailAddress) + .WhereIf(!string.IsNullOrWhiteSpace(name), x => x.Name == name) + .WhereIf(!string.IsNullOrWhiteSpace(surname), x => x.Surname == surname) + .WhereIf(isLockedOut.HasValue && isLockedOut.Value, x => x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow) + .WhereIf(isLockedOut.HasValue && !isLockedOut.Value, x => !(x.LockoutEnabled && x.LockoutEnd != null && x.LockoutEnd > DateTimeOffset.UtcNow)) + .WhereIf(notActive.HasValue, x => x.IsActive == !notActive.Value) + .WhereIf(emailConfirmed.HasValue, x => x.EmailConfirmed == emailConfirmed.Value) + .WhereIf(isExternal.HasValue, x => x.IsExternal == isExternal.Value) + .WhereIf(maxCreationTime != null, p => p.CreationTime <= maxCreationTime) + .WhereIf(minCreationTime != null, p => p.CreationTime >= minCreationTime) + .WhereIf(maxModifitionTime != null, p => p.LastModificationTime <= maxModifitionTime) + .WhereIf(minModifitionTime != null, p => p.LastModificationTime >= minModifitionTime); } } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs index d871ca8b70..43d9f04f78 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs @@ -72,7 +72,7 @@ public class MongoOrganizationUnitRepository { return await (await GetMongoQueryableAsync(cancellationToken)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(OrganizationUnit.CreationTime) + " desc" : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -102,7 +102,7 @@ public class MongoOrganizationUnitRepository return await (await GetMongoQueryableAsync(cancellationToken)) .Where(r => roleIds.Contains(r.Id)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -123,7 +123,7 @@ public class MongoOrganizationUnitRepository return await (await GetMongoQueryableAsync(cancellationToken)) .Where(r => roleIds.Contains(r.Id)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -151,7 +151,7 @@ public class MongoOrganizationUnitRepository .Where(r => !roleIds.Contains(r.Id)) .WhereIf(!filter.IsNullOrWhiteSpace(), r => r.Name.Contains(filter)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -181,7 +181,7 @@ public class MongoOrganizationUnitRepository var query = await CreateGetMembersFilteredQueryAsync(organizationUnit, filter, cancellationToken); return await query .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityUser.UserName) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(cancellationToken); } @@ -215,7 +215,7 @@ public class MongoOrganizationUnitRepository return await (await GetMongoQueryableAsync(cancellationToken)) .Where(u => !u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) - .WhereIf>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || @@ -223,7 +223,7 @@ public class MongoOrganizationUnitRepository (u.PhoneNumber != null && u.PhoneNumber.Contains(filter)) ) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityUser.UserName) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -232,7 +232,7 @@ public class MongoOrganizationUnitRepository { return await (await GetMongoQueryableAsync(cancellationToken)) .Where(u => !u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) - .WhereIf>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || @@ -271,7 +271,7 @@ public class MongoOrganizationUnitRepository { return (await GetMongoQueryableAsync(cancellationToken)) .Where(u => u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) - .WhereIf>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs index ff58d8b984..d9b6f7af01 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs @@ -50,14 +50,14 @@ public class MongoApiResourceRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || x.DisplayName.Contains(filter)) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs index 90a4b214ae..218155e4c6 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs @@ -45,14 +45,14 @@ public class MongoApiScopeRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || x.DisplayName.Contains(filter)) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs index f26a6c7805..2fa2e1ccec 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs @@ -42,14 +42,14 @@ public class MongoClientRepository : MongoDbRepository x.ClientId.Contains(filter)) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(Client.ClientName) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.ClientId.Contains(filter)) .LongCountAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs index c2217c31dc..1f672dc709 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs @@ -25,14 +25,14 @@ public class MongoIdentityResourceRepository : MongoDbRepository>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>(!filter.IsNullOrWhiteSpace(), + .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || x.DisplayName.Contains(filter)) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs index 9af3db126b..8763b80a2e 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs @@ -95,9 +95,9 @@ public class MongoPersistentGrantRepository : MongoDbRepository>(!subjectId.IsNullOrWhiteSpace(), x => x.SubjectId == subjectId) - .WhereIf>(!sessionId.IsNullOrWhiteSpace(), x => x.SessionId == sessionId) - .WhereIf>(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) - .WhereIf>(!type.IsNullOrWhiteSpace(), x => x.Type == type); + .WhereIf(!subjectId.IsNullOrWhiteSpace(), x => x.SubjectId == subjectId) + .WhereIf(!sessionId.IsNullOrWhiteSpace(), x => x.SessionId == sessionId) + .WhereIf(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) + .WhereIf(!type.IsNullOrWhiteSpace(), x => x.Type == type); } } diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs index 1762bcb666..04b87d40bb 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs @@ -51,20 +51,20 @@ public class MongoTenantRepository : MongoDbRepository>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) ) .OrderBy(sorting.IsNullOrEmpty() ? nameof(Tenant.Name) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.Name.Contains(filter) diff --git a/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs b/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs index 335c46c94e..d700665c90 100644 --- a/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs +++ b/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs @@ -46,7 +46,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi { cancellationToken = GetCancellationToken(cancellationToken); return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || @@ -55,7 +55,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi (u.Surname != null && u.Surname.Contains(filter)) ) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IUserData.UserName) : sorting) - .PageBy>(skipCount, maxResultCount) + .PageBy(skipCount, maxResultCount) .ToListAsync(cancellationToken); } @@ -63,7 +63,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi { cancellationToken = GetCancellationToken(cancellationToken); return await (await GetMongoQueryableAsync(cancellationToken)) - .WhereIf>( + .WhereIf( !filter.IsNullOrWhiteSpace(), u => u.UserName.Contains(filter) || From 9ede7b43403440af3d526ce070e538d7a8e24e78 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 6 Jan 2025 13:37:37 +0800 Subject: [PATCH 06/60] Rename `GetMongoQueryable` to `GetQueryable`. --- .../best-practices/mongodb-integration.md | 8 +-- docs/en/guides/microservice-mongodb.md | 4 +- docs/en/tutorials/book-store/part-07.md | 4 +- .../MongoDB/IMongoDbRepository.cs | 5 +- .../Repositories/MongoDB/MongoDbRepository.cs | 42 +++++++-------- .../MongoDbCoreRepositoryExtensions.cs | 10 ++-- .../Repositories/Repository_Basic_Tests.cs | 6 +-- .../MongoDB/MongoAuditLogRepository.cs | 12 ++--- .../MongoDB/MongoBackgroundJobRepository.cs | 2 +- .../MongoDB/MongoDbDatabaseBlobRepository.cs | 4 +- .../Blogging/Blogs/MongoBlogRepository.cs | 2 +- .../Comments/MongoCommentRepository.cs | 8 +-- .../Blogging/Posts/MongoPostRepository.cs | 12 ++--- .../Blogging/Tagging/MongoTagRepository.cs | 10 ++-- .../Blogging/Users/MongoBlogUserRepository.cs | 2 +- .../Blogs/MongoBlogFeatureRepository.cs | 4 +- .../MongoDB/Blogs/MongoBlogPostRepository.cs | 10 ++-- .../MongoDB/Blogs/MongoBlogRepository.cs | 8 +-- .../Comments/MongoCommentRepository.cs | 14 ++--- .../MongoUserMarkedItemRepository.cs | 6 +-- .../MongoDB/Pages/MongoPageRepository.cs | 8 +-- .../MongoDB/Ratings/MongoRatingRepository.cs | 4 +- .../Reactions/MongoUserReactionRepository.cs | 6 +-- .../MongoDB/Tags/MongoEntityTagRepository.cs | 2 +- .../CmsKit/MongoDB/Tags/MongoTagRepository.cs | 12 ++--- .../Docs/Documents/MongoDocumentRepository.cs | 22 ++++---- .../Docs/Projects/MongoProjectRepository.cs | 8 +-- .../MongoFeatureDefinitionRecordRepository.cs | 2 +- .../MongoDB/MongoFeatureValueRepository.cs | 6 +-- .../MongoIdentityClaimTypeRepository.cs | 10 ++-- .../MongoIdentityLinkUserRepository.cs | 6 +-- .../MongoDB/MongoIdentityRoleRepository.cs | 14 ++--- .../MongoIdentitySecurityLogRepository.cs | 4 +- .../MongoDB/MongoIdentitySessionRepository.cs | 10 ++-- .../MongoIdentityUserDelegationRepository.cs | 6 +-- .../MongoDB/MongoIdentityUserRepository.cs | 54 +++++++++---------- .../MongoOrganizationUnitRepository.cs | 34 ++++++------ .../MongoDB/MongoApiResourceRepository.cs | 12 ++--- .../MongoDB/MongoApiScopeRepository.cs | 10 ++-- .../MongoDB/MongoClientRepository.cs | 10 ++-- .../MongoDB/MongoDeviceFlowCodesRepository.cs | 6 +-- .../MongoIdentityResourceRepository.cs | 10 ++-- .../MongoDB/MongoPersistentGrantRepository.cs | 8 +-- .../MongoOpenIddictApplicationRepository.cs | 14 ++--- .../MongoOpenIddictAuthorizationRepository.cs | 16 +++--- .../Scopes/MongoOpenIddictScopeRepository.cs | 14 ++--- .../Tokens/MongoOpenIddictTokenRepository.cs | 24 ++++----- ...ngoPermissionDefinitionRecordRepository.cs | 2 +- .../MongoDb/MongoPermissionGrantRepository.cs | 6 +-- .../MongoSettingDefinitionRecordRepository.cs | 2 +- .../MongoDB/MongoSettingRepository.cs | 6 +-- .../MongoDb/MongoTenantRepository.cs | 10 ++-- .../Users/MongoDB/MongoUserRepositoryBase.cs | 8 +-- .../MongoDb/Samples/SampleRepositoryTests.cs | 2 +- 54 files changed, 266 insertions(+), 275 deletions(-) diff --git a/docs/en/framework/architecture/best-practices/mongodb-integration.md b/docs/en/framework/architecture/best-practices/mongodb-integration.md index 1930984e2e..68793766f0 100644 --- a/docs/en/framework/architecture/best-practices/mongodb-integration.md +++ b/docs/en/framework/architecture/best-practices/mongodb-integration.md @@ -114,7 +114,7 @@ public async Task FindByNormalizedUserNameAsync( bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync()) + return await (await GetQueryableAsync()) .FirstOrDefaultAsync( u => u.NormalizedUserName == normalizedUserName, GetCancellationToken(cancellationToken) @@ -125,10 +125,10 @@ public async Task FindByNormalizedUserNameAsync( `GetCancellationToken` fallbacks to the `ICancellationTokenProvider.Token` to obtain the cancellation token if it is not provided by the caller code. * **Do** ignore the `includeDetails` parameters for the repository implementation since MongoDB loads the aggregate root as a whole (including sub collections) by default. -* **Do** use the `GetMongoQueryableAsync()` method to obtain an `IQueryable` to perform queries wherever possible. Because; - * `GetMongoQueryableAsync()` method automatically uses the `ApplyDataFilters` method to filter the data based on the current data filters (like soft delete and multi-tenancy). +* **Do** use the `GetQueryableAsync()` method to obtain an `IQueryable` to perform queries wherever possible. Because; + * `GetQueryableAsync()` method automatically uses the `ApplyDataFilters` method to filter the data based on the current data filters (like soft delete and multi-tenancy). * Using `IQueryable` makes the code as much as similar to the EF Core repository implementation and easy to write and read. -* **Do** implement data filtering if it is not possible to use the `GetMongoQueryable()` method. +* **Do** implement data filtering if it is not possible to use the `GetQueryable()` method. ## Module Class diff --git a/docs/en/guides/microservice-mongodb.md b/docs/en/guides/microservice-mongodb.md index 476637f605..087668ba7a 100644 --- a/docs/en/guides/microservice-mongodb.md +++ b/docs/en/guides/microservice-mongodb.md @@ -97,7 +97,7 @@ Here we use `BookStore.ProductService` project as an example: int skipCount = 0, CancellationToken cancellationToken = default) { - var query = ApplyFilter(await GetMongoQueryableAsync(cancellationToken), filterText, name, priceMin, priceMax); + var query = ApplyFilter(await GetQueryableAsync(cancellationToken), filterText, name, priceMin, priceMax); query = query.OrderBy(string.IsNullOrWhiteSpace(sorting) ? ProductConsts.GetDefaultSorting(false) : sorting); return await query.PageBy(skipCount, maxResultCount).ToListAsync(cancellationToken); } @@ -109,7 +109,7 @@ Here we use `BookStore.ProductService` project as an example: float? priceMax = null, CancellationToken cancellationToken = default) { - var query = ApplyFilter(await GetMongoQueryableAsync(cancellationToken), filterText, name, priceMin, priceMax); + var query = ApplyFilter(await GetQueryableAsync(cancellationToken), filterText, name, priceMin, priceMax); return await query.LongCountAsync(GetCancellationToken(cancellationToken)); } diff --git a/docs/en/tutorials/book-store/part-07.md b/docs/en/tutorials/book-store/part-07.md index 8304cc4b46..92108c4a35 100644 --- a/docs/en/tutorials/book-store/part-07.md +++ b/docs/en/tutorials/book-store/part-07.md @@ -180,7 +180,7 @@ public class MongoDbAuthorRepository public async Task FindByNameAsync(string name) { - var queryable = await GetMongoQueryableAsync(); + var queryable = await GetQueryableAsync(); return await queryable.FirstOrDefaultAsync(author => author.Name == name); } @@ -190,7 +190,7 @@ public class MongoDbAuthorRepository string sorting, string filter = null) { - var queryable = await GetMongoQueryableAsync(); + var queryable = await GetQueryableAsync(); return await queryable .WhereIf>( !filter.IsNullOrWhiteSpace(), diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs index 3adb9c52c1..d1c152c98f 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs @@ -21,10 +21,7 @@ public interface IMongoDbRepository : IRepository Task> GetCollectionAsync(CancellationToken cancellationToken = default); - [Obsolete("Use GetMongoQueryableAsync method.")] - IQueryable GetMongoQueryable(); - - Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); + Task> GetQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); Task> GetAggregateAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); } diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs index 56c0d207e4..dcbe447f99 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs @@ -455,19 +455,19 @@ public class MongoDbRepository public async override Task> GetListAsync(bool includeDetails = false, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)).ToListAsync(cancellationToken); + return await (await GetQueryableAsync(cancellationToken)).ToListAsync(cancellationToken); } public async override Task> GetListAsync(Expression> predicate, bool includeDetails = false, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)).Where(predicate).ToListAsync(cancellationToken); + return await (await GetQueryableAsync(cancellationToken)).Where(predicate).ToListAsync(cancellationToken); } public async override Task GetCountAsync(CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)).LongCountAsync(cancellationToken); + return await (await GetQueryableAsync(cancellationToken)).LongCountAsync(cancellationToken); } public async override Task> GetPagedListAsync( @@ -479,7 +479,7 @@ public class MongoDbRepository { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderByIf>(!sorting.IsNullOrWhiteSpace(), sorting) .PageBy>(skipCount, maxResultCount) .ToListAsync(cancellationToken); @@ -492,7 +492,7 @@ public class MongoDbRepository { cancellationToken = GetCancellationToken(cancellationToken); - var entities = await (await GetMongoQueryableAsync(cancellationToken)) + var entities = await (await GetQueryableAsync(cancellationToken)) .Where(predicate) .ToListAsync(cancellationToken); @@ -523,17 +523,6 @@ public class MongoDbRepository } } - [Obsolete("Use GetQueryableAsync method.")] - protected override IQueryable GetQueryable() - { - return GetMongoQueryable(); - } - - public async override Task> GetQueryableAsync() - { - return await GetMongoQueryableAsync(); - } - public async override Task FindAsync( Expression> predicate, bool includeDetails = true, @@ -541,13 +530,13 @@ public class MongoDbRepository { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(predicate) .SingleOrDefaultAsync(cancellationToken); } - [Obsolete("Use GetMongoQueryableAsync method.")] - public virtual IQueryable GetMongoQueryable() + [Obsolete("Use GetQueryableAsync method.")] + protected override IQueryable GetQueryable() { return ApplyDataFilters( SessionHandle != null @@ -556,12 +545,17 @@ public class MongoDbRepository ); } - public virtual Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + public async override Task> GetQueryableAsync() + { + return await GetQueryableAsync(); + } + + public async Task> GetQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null) { - return GetMongoQueryableAsync(cancellationToken, aggregateOptions); + return await GetQueryableAsync(cancellationToken, options); } - protected virtual async Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + protected virtual async Task> GetQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) { cancellationToken = GetCancellationToken(cancellationToken); @@ -809,7 +803,7 @@ public class MongoDbRepository { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.Id!.Equals(id)) .FirstOrDefaultAsync(cancellationToken); } @@ -826,7 +820,7 @@ public class MongoDbRepository { cancellationToken = GetCancellationToken(cancellationToken); - var entities = await (await GetMongoQueryableAsync(cancellationToken)) + var entities = await (await GetQueryableAsync(cancellationToken)) .Where(x => ids.Contains(x.Id)) .ToListAsync(cancellationToken); diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs index 257092512f..0c1f900066 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs @@ -37,17 +37,17 @@ public static class MongoDbCoreRepositoryExtensions return repository.ToMongoDbRepository().GetCollectionAsync(cancellationToken); } - [Obsolete("Use GetMongoQueryableAsync method.")] - public static IQueryable GetMongoQueryable(this IReadOnlyBasicRepository repository) + [Obsolete("Use GetQueryableAsync method.")] + public static IQueryable GetQueryable(this IReadOnlyBasicRepository repository) where TEntity : class, IEntity { - return repository.ToMongoDbRepository().GetMongoQueryable(); + return repository.ToMongoDbRepository().GetQueryable(); } - public static Task> GetMongoQueryableAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + public static Task> GetQueryableAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) where TEntity : class, IEntity { - return repository.ToMongoDbRepository().GetMongoQueryableAsync(cancellationToken, aggregateOptions); + return repository.ToMongoDbRepository().GetQueryableAsync(cancellationToken, aggregateOptions); } public static Task> GetAggregateAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs index a6976b3be6..e2ad9088cb 100644 --- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs +++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Repositories/Repository_Basic_Tests.cs @@ -69,9 +69,9 @@ public class Repository_Basic_Tests : Repository_Basic_Tests c.Name == "ISTANBUL").ShouldBeNull(); - (await CityRepository.GetMongoQueryableAsync()).FirstOrDefault(c => c.Name == "istanbul").ShouldBeNull(); - (await CityRepository.GetMongoQueryableAsync()).FirstOrDefault(c => c.Name == "Istanbul").ShouldNotBeNull(); + (await CityRepository.GetQueryableAsync()).FirstOrDefault(c => c.Name == "ISTANBUL").ShouldBeNull(); + (await CityRepository.GetQueryableAsync()).FirstOrDefault(c => c.Name == "istanbul").ShouldBeNull(); + (await CityRepository.GetQueryableAsync()).FirstOrDefault(c => c.Name == "Istanbul").ShouldNotBeNull(); (await PersonRepository.GetQueryableAsync()).FirstOrDefault(p => p.Name == "douglas").ShouldNotBeNull(); (await PersonRepository.GetQueryableAsync()).FirstOrDefault(p => p.Name == "DOUGLAS").ShouldNotBeNull(); 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 50336aa8cc..92416174ae 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 @@ -126,7 +126,7 @@ public class MongoAuditLogRepository : MongoDbRepository auditLog.ExecutionTime >= startTime) .WhereIf(endTime.HasValue, auditLog => auditLog.ExecutionTime <= endTime) .WhereIf(hasException.HasValue && hasException.Value, auditLog => auditLog.Exceptions != null && auditLog.Exceptions != "") @@ -149,7 +149,7 @@ public class MongoAuditLogRepository : MongoDbRepository a.ExecutionTime < endDate.AddDays(1) && a.ExecutionTime > startDate) .OrderBy(t => t.ExecutionTime) .GroupBy(t => new { @@ -167,7 +167,7 @@ public class MongoAuditLogRepository : MongoDbRepository x.EntityChanges.Any(y => y.Id == entityChangeId)) .OrderBy(x => x.Id) .FirstAsync(GetCancellationToken(cancellationToken))).EntityChanges.FirstOrDefault(x => x.Id == entityChangeId); @@ -221,7 +221,7 @@ public class MongoAuditLogRepository : MongoDbRepository x.EntityChanges.Any(y => y.Id == entityChangeId)) .FirstAsync(GetCancellationToken(cancellationToken)); @@ -237,7 +237,7 @@ public class MongoAuditLogRepository : MongoDbRepository x.EntityChanges.Any(y => y.EntityId == entityId && y.EntityTypeFullName == entityTypeFullName)) .OrderByDescending(x => x.ExecutionTime) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -259,7 +259,7 @@ public class MongoAuditLogRepository : MongoDbRepository x.EntityChanges) .WhereIf(auditLogId.HasValue, e => e.Id == auditLogId) .WhereIf(startTime.HasValue, e => e.ChangeTime >= startTime) diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs index 16d49e980d..a3f46643fe 100644 --- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs +++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.MongoDB/Volo/Abp/BackgroundJobs/MongoDB/MongoBackgroundJobRepository.cs @@ -33,7 +33,7 @@ public class MongoBackgroundJobRepository : MongoDbRepository> GetWaitingListQuery(int maxResultCount, CancellationToken cancellationToken = default) { var now = Clock.Now; - return (await GetMongoQueryableAsync(cancellationToken)) + return (await GetQueryableAsync(cancellationToken)) .Where(t => !t.IsAbandoned && t.NextTryTime <= now) .OrderByDescending(t => t.Priority) .ThenBy(t => t.TryCount) diff --git a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo/Abp/BlobStoring/Database/MongoDB/MongoDbDatabaseBlobRepository.cs b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo/Abp/BlobStoring/Database/MongoDB/MongoDbDatabaseBlobRepository.cs index 4610043405..6b2663013d 100644 --- a/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo/Abp/BlobStoring/Database/MongoDB/MongoDbDatabaseBlobRepository.cs +++ b/modules/blob-storing-database/src/Volo.Abp.BlobStoring.Database.MongoDB/Volo/Abp/BlobStoring/Database/MongoDB/MongoDbDatabaseBlobRepository.cs @@ -17,7 +17,7 @@ public class MongoDbDatabaseBlobRepository : MongoDbRepository x.ContainerId == containerId && x.Name == name, cancellationToken @@ -28,7 +28,7 @@ public class MongoDbDatabaseBlobRepository : MongoDbRepository x.ContainerId == containerId && x.Name == name, cancellationToken diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Blogs/MongoBlogRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Blogs/MongoBlogRepository.cs index 42c8bb467a..c15ef4d0cb 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Blogs/MongoBlogRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Blogs/MongoBlogRepository.cs @@ -16,7 +16,7 @@ namespace Volo.Blogging.Blogs public virtual async Task FindByShortNameAsync(string shortName, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(p => p.ShortName == shortName, GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(p => p.ShortName == shortName, GetCancellationToken(cancellationToken)); } } } diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs index 432cecb1b0..77c443e485 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Comments/MongoCommentRepository.cs @@ -19,7 +19,7 @@ namespace Volo.Blogging.Comments public virtual async Task> GetListOfPostAsync(Guid postId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(a => a.PostId == postId) .OrderBy(a => a.CreationTime) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -27,19 +27,19 @@ namespace Volo.Blogging.Comments public virtual async Task GetCommentCountOfPostAsync(Guid postId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .CountAsync(a => a.PostId == postId, GetCancellationToken(cancellationToken)); } public virtual async Task> GetRepliesOfComment(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(a => a.RepliedCommentId == id).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task DeleteOfPost(Guid id, CancellationToken cancellationToken = default) { - var recordsToDelete = (await GetMongoQueryableAsync(cancellationToken)).Where(pt => pt.PostId == id); + var recordsToDelete = (await GetQueryableAsync(cancellationToken)).Where(pt => pt.PostId == id); foreach (var record in recordsToDelete) { diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs index b53693722f..b3083cbd5f 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Posts/MongoPostRepository.cs @@ -21,13 +21,13 @@ namespace Volo.Blogging.Posts public virtual async Task> GetPostsByBlogId(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(p => p.BlogId == id).OrderByDescending(p => p.CreationTime).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(p => p.BlogId == id).OrderByDescending(p => p.CreationTime).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task IsPostUrlInUseAsync(Guid blogId, string url, Guid? excludingPostId = null, CancellationToken cancellationToken = default) { - var query = (await GetMongoQueryableAsync(cancellationToken)).Where(p => blogId == p.BlogId && p.Url == url); + var query = (await GetQueryableAsync(cancellationToken)).Where(p => blogId == p.BlogId && p.Url == url); if (excludingPostId != null) { @@ -39,7 +39,7 @@ namespace Volo.Blogging.Posts public virtual async Task GetPostByUrl(Guid blogId, string url, CancellationToken cancellationToken = default) { - var post = await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(p => p.BlogId == blogId && p.Url == url, GetCancellationToken(cancellationToken)); + var post = await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(p => p.BlogId == blogId && p.Url == url, GetCancellationToken(cancellationToken)); if (post == null) { @@ -51,7 +51,7 @@ namespace Volo.Blogging.Posts public virtual async Task> GetOrderedList(Guid blogId, bool @descending = false, CancellationToken cancellationToken = default) { - var query = (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.BlogId == blogId); + var query = (await GetQueryableAsync(cancellationToken)).Where(x => x.BlogId == blogId); if (!descending) { @@ -63,7 +63,7 @@ namespace Volo.Blogging.Posts public virtual async Task> GetListByUserIdAsync(Guid userId, CancellationToken cancellationToken = default) { - var query = (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.CreatorId == userId) + var query = (await GetQueryableAsync(cancellationToken)).Where(x => x.CreatorId == userId) .OrderByDescending(x => x.CreationTime); return await query.ToListAsync(GetCancellationToken(cancellationToken)); @@ -71,7 +71,7 @@ namespace Volo.Blogging.Posts public virtual async Task> GetLatestBlogPostsAsync(Guid blogId, int count, CancellationToken cancellationToken = default) { - var query = (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.BlogId == blogId) + var query = (await GetQueryableAsync(cancellationToken)).Where(x => x.BlogId == blogId) .OrderByDescending(x => x.CreationTime) .Take(count); diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Tagging/MongoTagRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Tagging/MongoTagRepository.cs index bfa0c9fb4d..2e60faaccc 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Tagging/MongoTagRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Tagging/MongoTagRepository.cs @@ -20,27 +20,27 @@ namespace Volo.Blogging.Tagging public virtual async Task> GetListAsync(Guid blogId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(t => t.BlogId == blogId).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(t => t.BlogId == blogId).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetByNameAsync(Guid blogId, string name, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(t => t.BlogId == blogId && t.Name == name).FirstAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(t => t.BlogId == blogId && t.Name == name).FirstAsync(GetCancellationToken(cancellationToken)); } public virtual async Task FindByNameAsync(Guid blogId, string name, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(t => t.BlogId == blogId && t.Name == name).FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(t => t.BlogId == blogId && t.Name == name).FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> GetListAsync(IEnumerable ids, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(t => ids.Contains(t.Id)).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(t => ids.Contains(t.Id)).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task DecreaseUsageCountOfTagsAsync(List ids, CancellationToken cancellationToken = default) { - var tags = await (await GetMongoQueryableAsync(cancellationToken)) + var tags = await (await GetQueryableAsync(cancellationToken)) .Where(t => ids.Contains(t.Id)) .ToListAsync(GetCancellationToken(cancellationToken)); diff --git a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs index 3fec9a2627..b68e77c9fd 100644 --- a/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs +++ b/modules/blogging/src/Volo.Blogging.MongoDB/Volo/Blogging/Users/MongoBlogUserRepository.cs @@ -18,7 +18,7 @@ namespace Volo.Blogging.Users public virtual async Task> GetUsersAsync(int maxCount, string filter, CancellationToken cancellationToken = default) { - var query = await GetMongoQueryableAsync(cancellationToken); + var query = await GetQueryableAsync(cancellationToken); if (!string.IsNullOrWhiteSpace(filter)) { diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogFeatureRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogFeatureRepository.cs index 334debe8c8..606c3e28ff 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogFeatureRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogFeatureRepository.cs @@ -25,14 +25,14 @@ public class MongoBlogFeatureRepository : MongoDbRepository> GetListAsync(Guid blogId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.BlogId == blogId) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> GetListAsync(Guid blogId, List featureNames, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.BlogId == blogId && featureNames.Contains(x.FeatureName)) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs index 3cd5d5dd82..b47abe1115 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs @@ -44,7 +44,7 @@ public class MongoBlogPostRepository : MongoDbRepository(token)).FirstOrDefaultAsync(x => x.Id == blogPost.AuthorId, token); + blogPost.Author = await (await GetQueryableAsync(token)).FirstOrDefaultAsync(x => x.Id == blogPost.AuthorId, token); return blogPost; } @@ -64,7 +64,7 @@ public class MongoBlogPostRepository : MongoDbRepository tagFilteredEntityIds.Contains(x.Id)) .WhereIf(favoriteUserFilteredEntityIds.Any(), x => favoriteUserFilteredEntityIds.Contains(x.Id)) .WhereIf(!string.IsNullOrWhiteSpace(filter), x => x.Title.Contains(filter) || x.Slug.Contains(filter)) @@ -174,7 +174,7 @@ public class MongoBlogPostRepository : MongoDbRepository x.BlogId == blogId && x.Slug.ToLower() == slug, cancellationToken); } @@ -225,14 +225,14 @@ public class MongoBlogPostRepository : MongoDbRepository x.Status == BlogPostStatus.WaitingForReview, cancellationToken); } public async Task UpdateBlogAsync(Guid sourceBlogId, Guid? targetBlogId, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - var blogPosts = await (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.BlogId == sourceBlogId).ToListAsync(cancellationToken); + var blogPosts = await (await GetQueryableAsync(cancellationToken)).Where(x => x.BlogId == sourceBlogId).ToListAsync(cancellationToken); if (targetBlogId.HasValue) { foreach (var blogPost in blogPosts) diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs index dfb33e5c16..c25bc688b7 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogRepository.cs @@ -23,13 +23,13 @@ public class MongoBlogRepository : MongoDbRepository ExistsAsync(Guid id, CancellationToken cancellationToken = default) { var token = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(token)).AnyAsync(x => x.Id == id, token); + return await (await GetQueryableAsync(token)).AnyAsync(x => x.Id == id, token); } public virtual async Task SlugExistsAsync(string slug, CancellationToken cancellationToken = default) { var token = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(token)).AnyAsync(x => x.Slug == slug, token); + return await (await GetQueryableAsync(token)).AnyAsync(x => x.Slug == slug, token); } public virtual async Task> GetListAsync( @@ -62,7 +62,7 @@ public class MongoBlogRepository : MongoDbRepository x.Id).ToList(); - var blogPostCount = await (await GetMongoQueryableAsync(token)) + var blogPostCount = await (await GetQueryableAsync(token)) .Where(blogPost => blogIds.Contains(blogPost.Id)) .GroupBy(blogPost => blogPost.BlogId) .Select(x => new @@ -92,7 +92,7 @@ public class MongoBlogRepository : MongoDbRepository> GetListQueryAsync(string filter = null, CancellationToken cancellationToken = default) { - return (await GetMongoQueryableAsync(cancellationToken)) + return (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), b => b.Name.Contains(filter)); } } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs index 1cb38abc97..5b4566ecb8 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Comments/MongoCommentRepository.cs @@ -66,7 +66,7 @@ public class MongoCommentRepository : MongoDbRepository x.Id).ToList(); - var authorsQuery = from comment in (await GetMongoQueryableAsync(token)) + var authorsQuery = from comment in (await GetQueryableAsync(token)) join user in (await GetDbContextAsync(token)).CmsUsers on comment.CreatorId equals user.Id where commentIds.Contains(comment.Id) orderby comment.CreationTime @@ -115,7 +115,7 @@ public class MongoCommentRepository : MongoDbRepository, CmsUser>(authorsQuery).ToListAsync(GetCancellationToken(cancellationToken)); - var commentsQuery = (await GetMongoQueryableAsync(cancellationToken)) + var commentsQuery = (await GetQueryableAsync(cancellationToken)) .Where(c => c.EntityId == entityId && c.EntityType == entityType); commentsQuery = commentApproveState switch { @@ -150,7 +150,7 @@ public class MongoCommentRepository : MongoDbRepository x.RepliedCommentId == comment.Id) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -170,7 +170,7 @@ public class MongoCommentRepository : MongoDbRepository ExistsAsync(string idempotencyToken, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .AnyAsync(x => x.IdempotencyToken == idempotencyToken, GetCancellationToken(cancellationToken)); } @@ -185,11 +185,11 @@ public class MongoCommentRepository : MongoDbRepository(cancellationToken)).FirstOrDefaultAsync(x => x.UserName == authorUsername, cancellationToken: cancellationToken); + var author = await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.UserName == authorUsername, cancellationToken: cancellationToken); var authorId = author?.Id ?? Guid.Empty; diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/MarkedItems/MongoUserMarkedItemRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/MarkedItems/MongoUserMarkedItemRepository.cs index 91fbbf996e..ea81fe03ff 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/MarkedItems/MongoUserMarkedItemRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/MarkedItems/MongoUserMarkedItemRepository.cs @@ -24,7 +24,7 @@ public class MongoUserMarkedItemRepository : MongoDbRepository x.CreatorId == userId && x.EntityType == entityType && @@ -39,7 +39,7 @@ public class MongoUserMarkedItemRepository : MongoDbRepository x.CreatorId == userId && x.EntityType == entityType) @@ -49,7 +49,7 @@ public class MongoUserMarkedItemRepository : MongoDbRepository> GetEntityIdsFilteredByUserAsync([NotNull] Guid userId, [NotNull] string entityType, [CanBeNull] Guid? tenantId = null, CancellationToken cancellationToken = default) { var dbContext = await GetDbContextAsync(); - var userMarkedItemQueryable = await GetMongoQueryableAsync(GetCancellationToken(cancellationToken)); + var userMarkedItemQueryable = await GetQueryableAsync(GetCancellationToken(cancellationToken)); var resultQueryable = userMarkedItemQueryable .Where(x => x.CreatorId == userId diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs index f1879090e5..7c2f9a3891 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs @@ -26,7 +26,7 @@ public class MongoPageRepository : MongoDbRepository @@ -43,7 +43,7 @@ public class MongoPageRepository : MongoDbRepository u.Title.ToLower().Contains(filter) || u.Slug.Contains(filter)) @@ -67,7 +67,7 @@ public class MongoPageRepository : MongoDbRepository ExistsAsync([NotNull] string slug, CancellationToken cancellationToken = default) { Check.NotNullOrEmpty(slug, nameof(slug)); - return await (await GetMongoQueryableAsync(cancellationToken)).AnyAsync(x => x.Slug == slug, + return await (await GetQueryableAsync(cancellationToken)).AnyAsync(x => x.Slug == slug, GetCancellationToken(cancellationToken)); } @@ -78,7 +78,7 @@ public class MongoPageRepository : MongoDbRepository FindTitleAsync(Guid pageId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.Id == pageId).Select(x => x.Title) + return await (await GetQueryableAsync(cancellationToken)).Where(x => x.Id == pageId).Select(x => x.Title) .FirstOrDefaultAsync(cancellationToken); } } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Ratings/MongoRatingRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Ratings/MongoRatingRepository.cs index 3a18f31719..d93cad27be 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Ratings/MongoRatingRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Ratings/MongoRatingRepository.cs @@ -25,7 +25,7 @@ public class MongoRatingRepository : MongoDbRepository r.EntityType == entityType && r.EntityId == entityId && r.CreatorId == userId, GetCancellationToken(cancellationToken)); @@ -39,7 +39,7 @@ public class MongoRatingRepository : MongoDbRepository x.CreatorId == userId && x.EntityType == entityType && @@ -47,7 +47,7 @@ public class MongoUserReactionRepository : MongoDbRepository x.CreatorId == userId && x.EntityType == entityType && @@ -63,7 +63,7 @@ public class MongoUserReactionRepository : MongoDbRepository x.EntityType == entityType && x.EntityId == entityId) diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoEntityTagRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoEntityTagRepository.cs index 2e8dc96d01..1ce2319a49 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoEntityTagRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Tags/MongoEntityTagRepository.cs @@ -67,7 +67,7 @@ public class MongoEntityTagRepository : MongoDbRepository x.EntityType == entityType && x.Name == name, @@ -69,12 +69,12 @@ public class MongoTagRepository : MongoDbRepository(cancellationToken)) + var entityTagIds = await (await GetQueryableAsync(cancellationToken)) .Where(q => q.EntityId == entityId) .Select(q => q.TagId) .ToListAsync(cancellationToken: GetCancellationToken(cancellationToken)); - var query = (await GetMongoQueryableAsync(cancellationToken)) + var query = (await GetQueryableAsync(cancellationToken)) .Where(x => x.EntityType == entityType && entityTagIds.Contains(x.Id)); @@ -86,14 +86,14 @@ public class MongoTagRepository : MongoDbRepository> GetPopularTagsAsync(string entityType, int maxCount, CancellationToken cancellationToken = default) { - var tags = await (await GetMongoQueryableAsync(cancellationToken)) + var tags = await (await GetQueryableAsync(cancellationToken)) .Where(x => x.EntityType == entityType) .Select(x => new { x.Id, x.Name }) .ToListAsync(cancellationToken: GetCancellationToken(cancellationToken)); var tagIds = tags.Select(x => x.Id); - var entityTagCounts = await (await GetMongoQueryableAsync(cancellationToken)) + var entityTagCounts = await (await GetQueryableAsync(cancellationToken)) .Where(q => tagIds.Contains(q.TagId)) .GroupBy(q => q.TagId) .Select(q => new { TagId = q.Key, Count = q.Count() }) @@ -127,7 +127,7 @@ public class MongoTagRepository : MongoDbRepository> GetQueryableByFilterAsync(string filter, CancellationToken cancellationToken = default) { - var mongoQueryable = await GetMongoQueryableAsync(cancellationToken: cancellationToken); + var mongoQueryable = await GetQueryableAsync(cancellationToken: cancellationToken); if (!filter.IsNullOrWhiteSpace()) { diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs index 1714773aec..081e920cff 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Documents/MongoDocumentRepository.cs @@ -22,7 +22,7 @@ namespace Volo.Docs.Documents public virtual async Task> GetListWithoutDetailsByProjectId(Guid projectId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(d => d.ProjectId == projectId) .Select(x => new DocumentWithoutDetails { @@ -37,7 +37,7 @@ namespace Volo.Docs.Documents public virtual async Task> GetUniqueListDocumentInfoAsync(CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Select(x=> new DocumentInfo { ProjectId = x.ProjectId, Version = x.Version, @@ -51,13 +51,13 @@ namespace Volo.Docs.Documents public virtual async Task> GetListByProjectId(Guid projectId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(d => d.ProjectId == projectId).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(d => d.ProjectId == projectId).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> GetUniqueDocumentsByProjectIdPagedAsync(Guid projectId, int skipCount, int maxResultCount, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(d => d.ProjectId == projectId) .OrderBy(x => x.LastCachedTime) .GroupBy(x => new { x.Name, x.LanguageCode, x.Version }) @@ -69,7 +69,7 @@ namespace Volo.Docs.Documents public virtual async Task GetUniqueDocumentCountByProjectIdAsync(Guid projectId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(d => d.ProjectId == projectId) + return await (await GetQueryableAsync(cancellationToken)).Where(d => d.ProjectId == projectId) .GroupBy(x => new { x.Name, x.LanguageCode, x.Version }) .LongCountAsync(GetCancellationToken(cancellationToken)); } @@ -89,7 +89,7 @@ namespace Volo.Docs.Documents bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => + return await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.ProjectId == projectId && x.Name == name && x.LanguageCode == languageCode && @@ -100,7 +100,7 @@ namespace Volo.Docs.Documents bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.ProjectId == projectId && + return await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.ProjectId == projectId && possibleNames.Contains(x.Name) && x.LanguageCode == languageCode && x.Version == version, GetCancellationToken(cancellationToken)); @@ -115,7 +115,7 @@ namespace Volo.Docs.Documents public virtual async Task> GetListAsync(Guid? projectId, string version, string name, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(version != null, x => x.Version == version) .WhereIf(name != null, x => x.Name == name) .WhereIf(projectId.HasValue, x => x.ProjectId == projectId) @@ -144,7 +144,7 @@ namespace Volo.Docs.Documents { return await (await ApplyFilterForGetAll( - await GetMongoQueryableAsync(cancellationToken), + await GetQueryableAsync(cancellationToken), projectId: projectId, name: name, version: version, @@ -185,7 +185,7 @@ namespace Volo.Docs.Documents { return await (await ApplyFilterForGetAll( - await GetMongoQueryableAsync(cancellationToken), + await GetQueryableAsync(cancellationToken), projectId: projectId, name: name, version: version, @@ -207,7 +207,7 @@ namespace Volo.Docs.Documents public virtual async Task GetAsync(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.Id == id).SingleAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(x => x.Id == id).SingleAsync(GetCancellationToken(cancellationToken)); } protected virtual async Task> ApplyFilterForGetAll( diff --git a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs index e2df71ed84..af54bd6bc5 100644 --- a/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs +++ b/modules/docs/src/Volo.Docs.MongoDB/Volo/Docs/Projects/MongoProjectRepository.cs @@ -22,7 +22,7 @@ namespace Volo.Docs.Projects public virtual async Task> GetListAsync(string sorting, int maxResultCount, int skipCount, CancellationToken cancellationToken = default) { - var projects = await (await GetMongoQueryableAsync(cancellationToken)).OrderBy(sorting.IsNullOrEmpty() ? "Id desc" : sorting).PageBy(skipCount, maxResultCount) + var projects = await (await GetQueryableAsync(cancellationToken)).OrderBy(sorting.IsNullOrEmpty() ? "Id desc" : sorting).PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); return projects; @@ -30,7 +30,7 @@ namespace Volo.Docs.Projects public virtual async Task> GetListWithoutDetailsAsync(CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Select(x=> new ProjectWithoutDetails { Id = x.Id, Name = x.Name, @@ -43,7 +43,7 @@ namespace Volo.Docs.Projects { var normalizeShortName = NormalizeShortName(shortName); - var project = await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(p => p.ShortName == normalizeShortName, GetCancellationToken(cancellationToken)); + var project = await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(p => p.ShortName == normalizeShortName, GetCancellationToken(cancellationToken)); if (project == null) { @@ -57,7 +57,7 @@ namespace Volo.Docs.Projects { var normalizeShortName = NormalizeShortName(shortName); - return await (await GetMongoQueryableAsync(cancellationToken)).AnyAsync(x => x.ShortName == normalizeShortName, GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).AnyAsync(x => x.ShortName == normalizeShortName, GetCancellationToken(cancellationToken)); } private string NormalizeShortName(string shortName) diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs index a564e7792d..e89a68a710 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureDefinitionRecordRepository.cs @@ -21,7 +21,7 @@ public class MongoFeatureDefinitionRecordRepository : public virtual async Task FindByNameAsync(string name, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync( s => s.Name == name, diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureValueRepository.cs b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureValueRepository.cs index 3b52fe2634..0eb4f07e2f 100644 --- a/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureValueRepository.cs +++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.MongoDB/Volo/Abp/FeatureManagement/MongoDB/MongoFeatureValueRepository.cs @@ -27,7 +27,7 @@ public class MongoFeatureValueRepository : string providerKey, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync(s => s.Name == name && s.ProviderName == providerName && s.ProviderKey == providerKey, GetCancellationToken(cancellationToken)); } @@ -38,7 +38,7 @@ public class MongoFeatureValueRepository : string providerKey, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(s => s.Name == name && s.ProviderName == providerName && s.ProviderKey == providerKey).ToListAsync(GetCancellationToken(cancellationToken)); } @@ -47,7 +47,7 @@ public class MongoFeatureValueRepository : string providerKey, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(s => s.ProviderName == providerName && s.ProviderKey == providerKey) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs index fecda84465..6a24fd8ed9 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs @@ -24,13 +24,13 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository ct.Name == name) .AnyAsync(GetCancellationToken(cancellationToken)); } else { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(ct => ct.Id != ignoredId && ct.Name == name) .AnyAsync(GetCancellationToken(cancellationToken)); } @@ -43,7 +43,7 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository @@ -58,7 +58,7 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository @@ -69,7 +69,7 @@ public class MongoIdentityClaimTypeRepository : MongoDbRepository> GetListByNamesAsync(IEnumerable names, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => names.Contains(x.Name)) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityLinkUserRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityLinkUserRepository.cs index 20116fdd0b..46cfc60eb3 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityLinkUserRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityLinkUserRepository.cs @@ -18,7 +18,7 @@ public class MongoIdentityLinkUserRepository : MongoDbRepository FindAsync(IdentityLinkUserInfo sourceLinkUserInfo, IdentityLinkUserInfo targetLinkUserInfo, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id).FirstOrDefaultAsync(x => x.SourceUserId == sourceLinkUserInfo.UserId && x.SourceTenantId == sourceLinkUserInfo.TenantId && x.TargetUserId == targetLinkUserInfo.UserId && x.TargetTenantId == targetLinkUserInfo.TenantId || @@ -30,7 +30,7 @@ public class MongoIdentityLinkUserRepository : MongoDbRepository> GetListAsync(IdentityLinkUserInfo linkUserInfo, List excludes = null, CancellationToken cancellationToken = default) { - var query = (await GetMongoQueryableAsync(cancellationToken)).Where(x => + var query = (await GetQueryableAsync(cancellationToken)).Where(x => x.SourceUserId == linkUserInfo.UserId && x.SourceTenantId == linkUserInfo.TenantId || x.TargetUserId == linkUserInfo.UserId && x.TargetTenantId == linkUserInfo.TenantId); @@ -49,7 +49,7 @@ public class MongoIdentityLinkUserRepository : MongoDbRepository + var linkUsers = await (await GetQueryableAsync(cancellationToken)).Where(x => x.SourceUserId == linkUserInfo.UserId && x.SourceTenantId == linkUserInfo.TenantId || x.TargetUserId == linkUserInfo.UserId && x.TargetTenantId == linkUserInfo.TenantId) .ToListAsync(cancellationToken: GetCancellationToken(cancellationToken)); diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs index 023d91396e..f977572a04 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityRoleRepository.cs @@ -23,7 +23,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository x.Id) .FirstOrDefaultAsync(r => r.NormalizedName == normalizedRoleName, GetCancellationToken(cancellationToken)); } @@ -38,7 +38,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository x.Id).ToList(); - var userCount = await (await GetMongoQueryableAsync(cancellationToken)) + var userCount = await (await GetQueryableAsync(cancellationToken)) .Where(user => user.Roles.Any(role => roleIds.Contains(role.RoleId))) .SelectMany(user => user.Roles) .GroupBy(userRole => userRole.RoleId) @@ -73,7 +73,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository ids, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(t => ids.Contains(t.Id)) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -82,7 +82,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository r.IsDefault) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -91,7 +91,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository x.Name.Contains(filter) || x.NormalizedName.Contains(filter)) @@ -100,7 +100,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository r.Claims.Any(c => c.ClaimType == claimType)) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -120,7 +120,7 @@ public class MongoIdentityRoleRepository : MongoDbRepository x.Name.Contains(filter) || x.NormalizedName.Contains(filter)) diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs index a8a984bb63..388c059f1f 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySecurityLogRepository.cs @@ -89,7 +89,7 @@ public class MongoIdentitySecurityLogRepository : public virtual async Task GetByUserIdAsync(Guid id, Guid userId, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).OrderBy(x => x.Id).FirstOrDefaultAsync(x => x.Id == id && x.UserId == userId, + return await (await GetQueryableAsync(cancellationToken)).OrderBy(x => x.Id).FirstOrDefaultAsync(x => x.Id == id && x.UserId == userId, GetCancellationToken(cancellationToken)); } @@ -106,7 +106,7 @@ public class MongoIdentitySecurityLogRepository : string clientIpAddress = null, CancellationToken cancellationToken = default) { - return (await GetMongoQueryableAsync(cancellationToken)) + return (await GetQueryableAsync(cancellationToken)) .WhereIf(startTime.HasValue, securityLog => securityLog.CreationTime >= startTime.Value) .WhereIf(endTime.HasValue, securityLog => securityLog.CreationTime < endTime.Value.AddDays(1).Date) .WhereIf(!applicationName.IsNullOrWhiteSpace(), securityLog => securityLog.ApplicationName == applicationName) diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs index 23db911fe2..eb3f99e688 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentitySessionRepository.cs @@ -23,7 +23,7 @@ public class MongoIdentitySessionRepository : MongoDbRepository FindAsync(string sessionId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .FirstOrDefaultAsync(x => x.SessionId == sessionId, GetCancellationToken(cancellationToken)); } @@ -40,13 +40,13 @@ public class MongoIdentitySessionRepository : MongoDbRepository ExistAsync(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .AnyAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); } public virtual async Task ExistAsync(string sessionId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .AnyAsync(x => x.SessionId == sessionId, GetCancellationToken(cancellationToken)); } @@ -59,7 +59,7 @@ public class MongoIdentitySessionRepository : MongoDbRepository x.UserId == userId) .WhereIf(!device.IsNullOrWhiteSpace(), x => x.Device == device) .WhereIf(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) @@ -74,7 +74,7 @@ public class MongoIdentitySessionRepository : MongoDbRepository x.UserId == userId) .WhereIf(!device.IsNullOrWhiteSpace(), x => x.Device == device) .WhereIf(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs index abdab16289..1855069b4a 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserDelegationRepository.cs @@ -24,7 +24,7 @@ public class MongoIdentityUserDelegationRepository : MongoDbRepository> GetListAsync(Guid? sourceUserId, Guid? targetUserId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(sourceUserId.HasValue, x => x.SourceUserId == sourceUserId) .WhereIf(targetUserId.HasValue, x => x.TargetUserId == targetUserId) .ToListAsync(cancellationToken: cancellationToken); @@ -32,7 +32,7 @@ public class MongoIdentityUserDelegationRepository : MongoDbRepository> GetActiveDelegationsAsync(Guid targetUserId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.TargetUserId == targetUserId) .Where(x => x.StartTime <= Clock.Now && x.EndTime >= Clock.Now) .ToListAsync(cancellationToken: cancellationToken); @@ -40,7 +40,7 @@ public class MongoIdentityUserDelegationRepository : MongoDbRepository FindActiveDelegationByIdAsync(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .FirstOrDefaultAsync(x => x.Id == id && x.StartTime <= Clock.Now && diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs index 4c085918cb..c93a41e21d 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityUserRepository.cs @@ -25,7 +25,7 @@ public class MongoIdentityUserRepository : MongoDbRepository x.Id) .FirstOrDefaultAsync( u => u.NormalizedUserName == normalizedUserName, @@ -43,13 +43,13 @@ public class MongoIdentityUserRepository : MongoDbRepository r.OrganizationUnitId) .ToArray(); - var organizationUnits = await (await GetMongoQueryableAsync(cancellationToken)) + var organizationUnits = await (await GetQueryableAsync(cancellationToken)) .Where(ou => organizationUnitIds.Contains(ou.Id)) .ToListAsync(cancellationToken: cancellationToken); var orgUnitRoleIds = organizationUnits.SelectMany(x => x.Roles.Select(r => r.RoleId)).ToArray(); var roleIds = user.Roles.Select(r => r.RoleId).ToArray(); var allRoleIds = orgUnitRoleIds.Union(roleIds); - return await (await GetMongoQueryableAsync(cancellationToken)).Where(r => allRoleIds.Contains(r.Id)).Select(r => r.Name).ToListAsync(cancellationToken); + return await (await GetQueryableAsync(cancellationToken)).Where(r => allRoleIds.Contains(r.Id)).Select(r => r.Name).ToListAsync(cancellationToken); } public virtual async Task> GetRoleNamesInOrganizationUnitAsync( @@ -63,13 +63,13 @@ public class MongoIdentityUserRepository : MongoDbRepository r.OrganizationUnitId) .ToArray(); - var organizationUnits = await (await GetMongoQueryableAsync(cancellationToken)) + var organizationUnits = await (await GetQueryableAsync(cancellationToken)) .Where(ou => organizationUnitIds.Contains(ou.Id)) .ToListAsync(cancellationToken: cancellationToken); var roleIds = organizationUnits.SelectMany(x => x.Roles.Select(r => r.RoleId)).ToArray(); - var queryable = await GetMongoQueryableAsync(cancellationToken); + var queryable = await GetQueryableAsync(cancellationToken); return await queryable .Where(r => roleIds.Contains(r.Id)) @@ -83,7 +83,7 @@ public class MongoIdentityUserRepository : MongoDbRepository u.Logins.Any(login => login.LoginProvider == loginProvider && login.ProviderKey == providerKey)) .OrderBy(x => x.Id) .FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); @@ -94,7 +94,7 @@ public class MongoIdentityUserRepository : MongoDbRepository x.Id).FirstOrDefaultAsync(u => u.NormalizedEmail == normalizedEmail, GetCancellationToken(cancellationToken)); } @@ -103,14 +103,14 @@ public class MongoIdentityUserRepository : MongoDbRepository u.Claims.Any(c => c.ClaimType == claim.Type && c.ClaimValue == claim.Value)) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task RemoveClaimFromAllUsersAsync(string claimType, bool autoSave, CancellationToken cancellationToken = default) { - var users = await (await GetMongoQueryableAsync(cancellationToken)) + var users = await (await GetQueryableAsync(cancellationToken)) .Where(u => u.Claims.Any(c => c.ClaimType == claimType)) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -129,7 +129,7 @@ public class MongoIdentityUserRepository : MongoDbRepository(cancellationToken); + var queryable = await GetQueryableAsync(cancellationToken); var role = await queryable .Where(x => x.NormalizedName == normalizedRoleName) @@ -141,7 +141,7 @@ public class MongoIdentityUserRepository : MongoDbRepository(); } - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(u => u.Roles.Any(r => r.RoleId == role.Id)) .ToListAsync(cancellationToken); } @@ -150,7 +150,7 @@ public class MongoIdentityUserRepository : MongoDbRepository u.Roles.Any(r => r.RoleId == roleId)) .Select(x => x.Id) .ToListAsync(cancellationToken); @@ -216,13 +216,13 @@ public class MongoIdentityUserRepository : MongoDbRepository r.OrganizationUnitId) .ToArray(); - var organizationUnits = await (await GetMongoQueryableAsync(cancellationToken)) + var organizationUnits = await (await GetQueryableAsync(cancellationToken)) .Where(ou => organizationUnitIds.Contains(ou.Id)) .ToListAsync(cancellationToken: cancellationToken); var orgUnitRoleIds = organizationUnits.SelectMany(x => x.Roles.Select(r => r.RoleId)).ToArray(); var roleIds = user.Roles.Select(r => r.RoleId).ToArray(); var allRoleIds = orgUnitRoleIds.Union(roleIds); - return await (await GetMongoQueryableAsync(cancellationToken)).Where(r => allRoleIds.Contains(r.Id)).ToListAsync(cancellationToken); + return await (await GetQueryableAsync(cancellationToken)).Where(r => allRoleIds.Contains(r.Id)).ToListAsync(cancellationToken); } public virtual async Task> GetOrganizationUnitsAsync( @@ -234,7 +234,7 @@ public class MongoIdentityUserRepository : MongoDbRepository r.OrganizationUnitId); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(ou => organizationUnitIds.Contains(ou.Id)) .ToListAsync(cancellationToken); } @@ -285,7 +285,7 @@ public class MongoIdentityUserRepository : MongoDbRepository u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnitId)) .ToListAsync(GetCancellationToken(cancellationToken)); return result; @@ -295,7 +295,7 @@ public class MongoIdentityUserRepository : MongoDbRepository organizationUnitIds, CancellationToken cancellationToken = default) { - var result = await (await GetMongoQueryableAsync(cancellationToken)) + var result = await (await GetQueryableAsync(cancellationToken)) .Where(u => u.OrganizationUnits.Any(uou => organizationUnitIds.Contains(uou.OrganizationUnitId))) .ToListAsync(GetCancellationToken(cancellationToken)); return result; @@ -307,12 +307,12 @@ public class MongoIdentityUserRepository : MongoDbRepository(cancellationToken)) + var organizationUnitIds = await (await GetQueryableAsync(cancellationToken)) .Where(ou => ou.Code.StartsWith(code)) .Select(ou => ou.Id) .ToListAsync(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(u => u.OrganizationUnits.Any(uou => organizationUnitIds.Contains(uou.OrganizationUnitId))) .ToListAsync(cancellationToken); } @@ -323,7 +323,7 @@ public class MongoIdentityUserRepository : MongoDbRepository u.TenantId == tenantId && u.UserName == userName, GetCancellationToken(cancellationToken) @@ -332,14 +332,14 @@ public class MongoIdentityUserRepository : MongoDbRepository> GetListByIdsAsync(IEnumerable ids, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => ids.Contains(x.Id)) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task UpdateRoleAsync(Guid sourceRoleId, Guid? targetRoleId, CancellationToken cancellationToken = default) { - var users = await (await GetMongoQueryableAsync(cancellationToken)) + var users = await (await GetQueryableAsync(cancellationToken)) .Where(x => x.Roles.Any(r => r.RoleId == sourceRoleId)) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -357,7 +357,7 @@ public class MongoIdentityUserRepository : MongoDbRepository x.OrganizationUnits.Any(r => r.OrganizationUnitId == sourceOrganizationId)) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -389,7 +389,7 @@ public class MongoIdentityUserRepository : MongoDbRepository x.Value); var roleIds = userAndRoleIds.SelectMany(x => x.Value); - var organizationUnitAndRoleIds = await (await GetMongoQueryableAsync(cancellationToken)).Where(ou => organizationUnitIds.Contains(ou.Id)) + var organizationUnitAndRoleIds = await (await GetQueryableAsync(cancellationToken)).Where(ou => organizationUnitIds.Contains(ou.Id)) .Select(userOrganizationUnit => new { userOrganizationUnit.Id, @@ -398,7 +398,7 @@ public class MongoIdentityUserRepository : MongoDbRepository x.Roles.Select(r => r.RoleId)).ToList(); var allRoleIds = roleIds.Union(allOrganizationUnitRoleIds); - var roles = await (await GetMongoQueryableAsync(cancellationToken)).Where(r => allRoleIds.Contains(r.Id)).Select(r => new{ r.Id, r.Name }).ToListAsync(cancellationToken); + var roles = await (await GetQueryableAsync(cancellationToken)).Where(r => allRoleIds.Contains(r.Id)).Select(r => new{ r.Id, r.Name }).ToListAsync(cancellationToken); var userRoles = userAndRoleIds.ToDictionary(x => x.Key, x => roles.Where(r => x.Value.Contains(r.Id)).Select(r => r.Name).ToArray()); var result = userRoles.Select(x => new IdentityUserIdWithRoleNames { Id = x.Key, RoleNames = x.Value }).ToList(); @@ -441,11 +441,11 @@ public class MongoIdentityUserRepository : MongoDbRepository(cancellationToken)) + var organizationUnitIds = (await GetQueryableAsync(cancellationToken)) .Where(ou => ou.Roles.Any(r => r.RoleId == roleId.Value)) .Select(userOrganizationUnit => userOrganizationUnit.Id) .ToArray(); diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs index 43d9f04f78..a59369005b 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs @@ -27,7 +27,7 @@ public class MongoOrganizationUnitRepository bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(ou => ou.ParentId == parentId) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -38,7 +38,7 @@ public class MongoOrganizationUnitRepository bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(ou => ou.Code.StartsWith(code) && ou.Id != parentId) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -48,7 +48,7 @@ public class MongoOrganizationUnitRepository bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(t => ids.Contains(t.Id)) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -58,7 +58,7 @@ public class MongoOrganizationUnitRepository bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.Roles.Any(r => r.RoleId == roleId)) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -70,7 +70,7 @@ public class MongoOrganizationUnitRepository bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(OrganizationUnit.CreationTime) + " desc" : sorting) .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -81,7 +81,7 @@ public class MongoOrganizationUnitRepository bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync( ou => ou.DisplayName == displayName, @@ -99,7 +99,7 @@ public class MongoOrganizationUnitRepository { var roleIds = organizationUnit.Roles.Select(r => r.RoleId).ToArray(); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(r => roleIds.Contains(r.Id)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) .PageBy(skipCount, maxResultCount) @@ -114,13 +114,13 @@ public class MongoOrganizationUnitRepository bool includeDetails = false, CancellationToken cancellationToken = default) { - var organizationUnits = await (await GetMongoQueryableAsync(cancellationToken)) + var organizationUnits = await (await GetQueryableAsync(cancellationToken)) .Where(ou => organizationUnitIds.Contains(ou.Id)) .ToListAsync(GetCancellationToken(cancellationToken)); var roleIds = organizationUnits.SelectMany(ou => ou.Roles.Select(r => r.RoleId)).ToArray(); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(r => roleIds.Contains(r.Id)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) .PageBy(skipCount, maxResultCount) @@ -133,7 +133,7 @@ public class MongoOrganizationUnitRepository { var roleIds = organizationUnit.Roles.Select(r => r.RoleId).ToArray(); - return await (await GetMongoQueryableAsync(cancellationToken)).Where(r => roleIds.Contains(r.Id)).CountAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(r => roleIds.Contains(r.Id)).CountAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> GetUnaddedRolesAsync( @@ -147,7 +147,7 @@ public class MongoOrganizationUnitRepository { var roleIds = organizationUnit.Roles.Select(r => r.RoleId).ToArray(); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(r => !roleIds.Contains(r.Id)) .WhereIf(!filter.IsNullOrWhiteSpace(), r => r.Name.Contains(filter)) .OrderBy(sorting.IsNullOrEmpty() ? nameof(IdentityRole.Name) : sorting) @@ -162,7 +162,7 @@ public class MongoOrganizationUnitRepository { var roleIds = organizationUnit.Roles.Select(r => r.RoleId).ToArray(); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(r => !roleIds.Contains(r.Id)) .WhereIf(!filter.IsNullOrWhiteSpace(), r => r.Name.Contains(filter)) .CountAsync(GetCancellationToken(cancellationToken)); @@ -188,7 +188,7 @@ public class MongoOrganizationUnitRepository public virtual async Task> GetMemberIdsAsync(Guid id, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(u => u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == id)).Select(x => x.Id) .ToListAsync(cancellationToken); } @@ -213,7 +213,7 @@ public class MongoOrganizationUnitRepository CancellationToken cancellationToken = default) { return await - (await GetMongoQueryableAsync(cancellationToken)) + (await GetQueryableAsync(cancellationToken)) .Where(u => !u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) .WhereIf( !filter.IsNullOrWhiteSpace(), @@ -230,7 +230,7 @@ public class MongoOrganizationUnitRepository public virtual async Task GetUnaddedUsersCountAsync(OrganizationUnit organizationUnit, string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(u => !u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) .WhereIf( !filter.IsNullOrWhiteSpace(), @@ -251,7 +251,7 @@ public class MongoOrganizationUnitRepository public virtual async Task RemoveAllMembersAsync(OrganizationUnit organizationUnit, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - var userQueryable = await GetMongoQueryableAsync(cancellationToken); + var userQueryable = await GetQueryableAsync(cancellationToken); var dbContext = await GetDbContextAsync(cancellationToken); var users = await userQueryable .Where(u => u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) @@ -269,7 +269,7 @@ public class MongoOrganizationUnitRepository string filter = null, CancellationToken cancellationToken = default) { - return (await GetMongoQueryableAsync(cancellationToken)) + return (await GetQueryableAsync(cancellationToken)) .Where(u => u.OrganizationUnits.Any(uou => uou.OrganizationUnitId == organizationUnit.Id)) .WhereIf( !filter.IsNullOrWhiteSpace(), diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs index d9b6f7af01..42379b44f9 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiResourceRepository.cs @@ -20,7 +20,7 @@ public class MongoApiResourceRepository : MongoDbRepository FindByNameAsync(string apiResourceName, bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(ar => ar.Id) .FirstOrDefaultAsync(ar => ar.Name == apiResourceName, GetCancellationToken(cancellationToken)); } @@ -28,7 +28,7 @@ public class MongoApiResourceRepository : MongoDbRepository> FindByNameAsync(string[] apiResourceNames, bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(ar => apiResourceNames.Contains(ar.Name)) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -36,7 +36,7 @@ public class MongoApiResourceRepository : MongoDbRepository> GetListByScopesAsync(string[] scopeNames, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(ar => ar.Scopes.Any(x => scopeNames.Contains(x.Scope))) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -44,7 +44,7 @@ public class MongoApiResourceRepository : MongoDbRepository> GetListAsync(string sorting, int skipCount, int maxResultCount, string filter, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || @@ -56,7 +56,7 @@ public class MongoApiResourceRepository : MongoDbRepository GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || @@ -66,7 +66,7 @@ public class MongoApiResourceRepository : MongoDbRepository CheckNameExistAsync(string name, Guid? expectedId = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .AnyAsync(ar => ar.Id != expectedId && ar.Name == name, GetCancellationToken(cancellationToken)); } } diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs index 218155e4c6..760bd0522c 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoApiScopeRepository.cs @@ -22,7 +22,7 @@ public class MongoApiScopeRepository : MongoDbRepository FindByNameAsync(string scopeName, bool includeDetails = true, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync(x => x.Name == scopeName, GetCancellationToken(cancellationToken)); } @@ -30,7 +30,7 @@ public class MongoApiScopeRepository : MongoDbRepository> GetListByNameAsync(string[] scopeNames, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(scope => scopeNames.Contains(scope.Name)) .OrderBy(scope => scope.Id) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -39,7 +39,7 @@ public class MongoApiScopeRepository : MongoDbRepository> GetListAsync(string sorting, int skipCount, int maxResultCount, string filter = null, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || @@ -51,7 +51,7 @@ public class MongoApiScopeRepository : MongoDbRepository GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || @@ -61,7 +61,7 @@ public class MongoApiScopeRepository : MongoDbRepository CheckNameExistAsync(string name, Guid? expectedId = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .AnyAsync(x => x.Id != expectedId && x.Name == name, GetCancellationToken(cancellationToken)); } } diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs index 2fa2e1ccec..d266ac7c52 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoClientRepository.cs @@ -26,7 +26,7 @@ public class MongoClientRepository : MongoDbRepository x.Id) .FirstOrDefaultAsync(x => x.ClientId == clientId, GetCancellationToken(cancellationToken)); } @@ -39,7 +39,7 @@ public class MongoClientRepository : MongoDbRepository x.ClientId.Contains(filter)) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(Client.ClientName) : sorting) .PageBy(skipCount, maxResultCount) @@ -48,7 +48,7 @@ public class MongoClientRepository : MongoDbRepository GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.ClientId.Contains(filter)) .LongCountAsync(GetCancellationToken(cancellationToken)); @@ -57,7 +57,7 @@ public class MongoClientRepository : MongoDbRepository> GetAllDistinctAllowedCorsOriginsAsync( CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .SelectMany(x => x.AllowedCorsOrigins) .Select(y => y.Origin) .Distinct() @@ -66,7 +66,7 @@ public class MongoClientRepository : MongoDbRepository CheckClientIdExistAsync(string clientId, Guid? expectedId = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .AnyAsync(c => c.Id != expectedId && c.ClientId == clientId, GetCancellationToken(cancellationToken)); } } diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs index 976b1478b7..65d74b975a 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoDeviceFlowCodesRepository.cs @@ -24,7 +24,7 @@ public class MongoDeviceFlowCodesRepository : string userCode, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(d => d.UserCode == userCode) .OrderBy(x => x.Id) .FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); @@ -32,7 +32,7 @@ public class MongoDeviceFlowCodesRepository : public virtual async Task FindByDeviceCodeAsync(string deviceCode, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(d => d.DeviceCode == deviceCode) .OrderBy(x => x.Id) .FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); @@ -43,7 +43,7 @@ public class MongoDeviceFlowCodesRepository : int maxResultCount, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.Expiration != null && x.Expiration < maxExpirationDate) .OrderBy(x => x.ClientId) .Take(maxResultCount) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs index 1f672dc709..9a3ee0f815 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoIdentityResourceRepository.cs @@ -20,7 +20,7 @@ public class MongoIdentityResourceRepository : MongoDbRepository> GetListAsync(string sorting, int skipCount, int maxResultCount, string filter, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || x.DisplayName.Contains(filter)) @@ -31,7 +31,7 @@ public class MongoIdentityResourceRepository : MongoDbRepository GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.Description.Contains(filter) || @@ -44,7 +44,7 @@ public class MongoIdentityResourceRepository : MongoDbRepository x.Name == name) .OrderBy(x => x.Id) .FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); @@ -53,14 +53,14 @@ public class MongoIdentityResourceRepository : MongoDbRepository> GetListByScopeNameAsync(string[] scopeNames, bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(ar => scopeNames.Contains(ar.Name)) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task CheckNameExistAsync(string name, Guid? expectedId = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .AnyAsync(ir => ir.Id != expectedId && ir.Name == name, GetCancellationToken(cancellationToken)); } } diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs index 8763b80a2e..4ac0844bbe 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.MongoDB/Volo/Abp/IdentityServer/MongoDB/MongoPersistentGrantRepository.cs @@ -27,7 +27,7 @@ public class MongoPersistentGrantRepository : MongoDbRepository FindByKeyAsync(string key, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.Key == key) .OrderBy(x => x.Id) .FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); @@ -35,7 +35,7 @@ public class MongoPersistentGrantRepository : MongoDbRepository> GetListBySubjectIdAsync(string subjectId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.SubjectId == subjectId) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -43,7 +43,7 @@ public class MongoPersistentGrantRepository : MongoDbRepository> GetListByExpirationAsync(DateTime maxExpirationDate, int maxResultCount, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => x.Expiration != null && x.Expiration < maxExpirationDate) .OrderBy(x => x.ClientId) .Take(maxResultCount) @@ -94,7 +94,7 @@ public class MongoPersistentGrantRepository : MongoDbRepository x.SubjectId == subjectId) .WhereIf(!sessionId.IsNullOrWhiteSpace(), x => x.SessionId == sessionId) .WhereIf(!clientId.IsNullOrWhiteSpace(), x => x.ClientId == clientId) diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs index a07a1951c1..867bbe71c5 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Applications/MongoOpenIddictApplicationRepository.cs @@ -21,7 +21,7 @@ public class MongoOpenIddictApplicationRepository : MongoDbRepository> GetListAsync(string sorting, int skipCount, int maxResultCount, string filter = null, CancellationToken cancellationToken = default) { - return await ((await GetMongoQueryableAsync(cancellationToken))) + return await ((await GetQueryableAsync(cancellationToken))) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.ClientId.Contains(filter)) .OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(OpenIddictApplication.CreationTime) + " desc" : sorting) .PageBy(skipCount, maxResultCount) @@ -30,35 +30,35 @@ public class MongoOpenIddictApplicationRepository : MongoDbRepository GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { - return await ((await GetMongoQueryableAsync(cancellationToken))) + return await ((await GetQueryableAsync(cancellationToken))) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.ClientId.Contains(filter)) .LongCountAsync(GetCancellationToken(cancellationToken)); } public virtual async Task FindByClientIdAsync(string clientId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .FirstOrDefaultAsync(x => x.ClientId == clientId, cancellationToken); } public virtual async Task> FindByPostLogoutRedirectUriAsync(string address, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.PostLogoutRedirectUris.Contains(address)).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(x => x.PostLogoutRedirectUris.Contains(address)).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> FindByRedirectUriAsync(string address, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.RedirectUris.Contains(address)).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).Where(x => x.RedirectUris.Contains(address)).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task GetAsync(Func, TState, IQueryable> query, TState state, CancellationToken cancellationToken = default) { - return await query(await GetMongoQueryableAsync(cancellationToken), state).FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); + return await query(await GetQueryableAsync(cancellationToken), state).FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> ListAsync(int? count, int? offset, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs index d17fe36c0e..87ed933f00 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Authorizations/MongoOpenIddictAuthorizationRepository.cs @@ -29,7 +29,7 @@ public class MongoOpenIddictAuthorizationRepository : MongoDbRepository> FindAsync(string subject, Guid? client, string status, string type, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!subject.IsNullOrWhiteSpace(), x => x.Subject == subject) .WhereIf(client.HasValue, x => x.ApplicationId == client) .WhereIf(!status.IsNullOrWhiteSpace(), x => x.Status == status) @@ -39,22 +39,22 @@ public class MongoOpenIddictAuthorizationRepository : MongoDbRepository> FindByApplicationIdAsync(Guid applicationId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))).Where(x => x.ApplicationId == applicationId).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))).Where(x => x.ApplicationId == applicationId).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task FindByIdAsync(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))).FirstOrDefaultAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))).FirstOrDefaultAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); } public virtual async Task> FindBySubjectAsync(string subject, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))).Where(x => x.Subject == subject).ToListAsync(GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))).Where(x => x.Subject == subject).ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> ListAsync(int? count, int? offset, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .OrderBy(authorization => authorization.Id!) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) @@ -63,18 +63,18 @@ public class MongoOpenIddictAuthorizationRepository : MongoDbRepository PruneAsync(DateTime date, CancellationToken cancellationToken = default) { - var tokenIds = await (await GetMongoQueryableAsync(cancellationToken)) + var tokenIds = await (await GetQueryableAsync(cancellationToken)) .Where(x => x.AuthorizationId != null) .Select(x => x.AuthorizationId.Value) .ToListAsync(GetCancellationToken(cancellationToken)); - var authorizations = await (await GetMongoQueryableAsync(cancellationToken)) + var authorizations = await (await GetQueryableAsync(cancellationToken)) .Where(x => x.CreationDate < date) .Where(x => x.Status != OpenIddictConstants.Statuses.Valid || (x.Type == OpenIddictConstants.AuthorizationTypes.AdHoc && !tokenIds.Contains(x.Id))) .Select(x => x.Id) .ToListAsync(cancellationToken: cancellationToken); - var tokens = await (await GetMongoQueryableAsync(cancellationToken)) + var tokens = await (await GetQueryableAsync(cancellationToken)) .Where(x => x.AuthorizationId != null && authorizations.Contains(x.AuthorizationId.Value)) .ToListAsync(cancellationToken: cancellationToken); diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs index 40d6d56179..7323b3f272 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Scopes/MongoOpenIddictScopeRepository.cs @@ -21,7 +21,7 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository> GetListAsync(string sorting, int skipCount, int maxResultCount, string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.DisplayName.Contains(filter) || @@ -33,7 +33,7 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!filter.IsNullOrWhiteSpace(), x => x.Name.Contains(filter) || x.DisplayName.Contains(filter) || @@ -43,31 +43,31 @@ public class MongoOpenIddictScopeRepository : MongoDbRepository FindByIdAsync(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); } public virtual async Task FindByNameAsync(string name, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.Name == name, GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(cancellationToken)).FirstOrDefaultAsync(x => x.Name == name, GetCancellationToken(cancellationToken)); } public virtual async Task> FindByNamesAsync(string[] names, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .Where(x => names.Contains(x.Name)) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> FindByResourceAsync(string resource, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .Where(x => x.Resources.Contains(resource)) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> ListAsync(int? count, int? offset, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .OrderBy(x => x.Id) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs index 4758a96920..2b2a9bec12 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.MongoDB/Volo/Abp/OpenIddict/Tokens/MongoOpenIddictTokenRepository.cs @@ -21,7 +21,7 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.ApplicationId == applicationId) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -31,7 +31,7 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.AuthorizationId == authorizationId) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -40,7 +40,7 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository x.AuthorizationId != null && authorizationIds.Contains(x.AuthorizationId.Value)) .ToListAsync(GetCancellationToken(cancellationToken)); @@ -49,7 +49,7 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository> FindAsync(string subject, Guid? client, string status, string type, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf(!subject.IsNullOrWhiteSpace(), x => x.Subject == subject) .WhereIf(client.HasValue, x => x.ApplicationId == client) .WhereIf(!status.IsNullOrWhiteSpace(), x => x.Status == status) @@ -59,38 +59,38 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository> FindByApplicationIdAsync(Guid applicationId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .Where(x => x.ApplicationId == applicationId) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> FindByAuthorizationIdAsync(Guid authorizationId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .Where(x => x.AuthorizationId == authorizationId) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task FindByIdAsync(Guid id, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))).FirstOrDefaultAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))).FirstOrDefaultAsync(x => x.Id == id, GetCancellationToken(cancellationToken)); } public virtual async Task FindByReferenceIdAsync(string referenceId, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))).FirstOrDefaultAsync(x => x.ReferenceId == referenceId, GetCancellationToken(cancellationToken)); + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))).FirstOrDefaultAsync(x => x.ReferenceId == referenceId, GetCancellationToken(cancellationToken)); } public virtual async Task> FindBySubjectAsync(string subject, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .Where(x => x.Subject == subject) .ToListAsync(GetCancellationToken(cancellationToken)); } public virtual async Task> ListAsync(int? count, int? offset, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + return await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .OrderBy(x => x.Id) .SkipIf>(offset.HasValue, offset) .TakeIf>(count.HasValue, count) @@ -99,12 +99,12 @@ public class MongoOpenIddictTokenRepository : MongoDbRepository PruneAsync(DateTime date, CancellationToken cancellationToken = default) { - var authorizationIds = await (await GetMongoQueryableAsync(cancellationToken)) + var authorizationIds = await (await GetQueryableAsync(cancellationToken)) .Where(x => x.Status != OpenIddictConstants.Statuses.Valid) .Select(x => x.Id) .ToListAsync(GetCancellationToken(cancellationToken)); - var tokens = await (await GetMongoQueryableAsync(GetCancellationToken(cancellationToken))) + var tokens = await (await GetQueryableAsync(GetCancellationToken(cancellationToken))) .Where(x => x.CreationDate < date) .Where(x => (x.Status != OpenIddictConstants.Statuses.Inactive && x.Status != OpenIddictConstants.Statuses.Valid) || diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs index 2871c47e65..2f98db4f60 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionDefinitionRecordRepository.cs @@ -23,7 +23,7 @@ public class MongoPermissionDefinitionRecordRepository : CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync( s => s.Name == name, diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionGrantRepository.cs b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionGrantRepository.cs index aa7694b7d5..d83d916890 100644 --- a/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionGrantRepository.cs +++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.MongoDB/Volo/Abp/PermissionManagement/MongoDb/MongoPermissionGrantRepository.cs @@ -27,7 +27,7 @@ public class MongoPermissionGrantRepository : CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync(s => s.Name == name && @@ -43,7 +43,7 @@ public class MongoPermissionGrantRepository : CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(s => s.ProviderName == providerName && s.ProviderKey == providerKey @@ -54,7 +54,7 @@ public class MongoPermissionGrantRepository : CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(s => names.Contains(s.Name) && s.ProviderName == providerName && diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs index 07d32bae81..3ea0206759 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingDefinitionRecordRepository.cs @@ -17,7 +17,7 @@ public class MongoSettingDefinitionRecordRepository : MongoDbRepository FindByNameAsync(string name, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync(s => s.Name == name, GetCancellationToken(cancellationToken)); } diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingRepository.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingRepository.cs index 74c680e7e2..ea264b254e 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingRepository.cs +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.MongoDB/Volo/Abp/SettingManagement/MongoDB/MongoSettingRepository.cs @@ -24,7 +24,7 @@ public class MongoSettingRepository : MongoDbRepository x.Id) .FirstOrDefaultAsync( s => s.Name == name && s.ProviderName == providerName && s.ProviderKey == providerKey, @@ -36,7 +36,7 @@ public class MongoSettingRepository : MongoDbRepository s.ProviderName == providerName && s.ProviderKey == providerKey) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -47,7 +47,7 @@ public class MongoSettingRepository : MongoDbRepository names.Contains(s.Name) && s.ProviderName == providerName && s.ProviderKey == providerKey) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs index 04b87d40bb..758ece4d71 100644 --- a/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs +++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs @@ -24,21 +24,21 @@ public class MongoTenantRepository : MongoDbRepository t.NormalizedName == normalizedName, GetCancellationToken(cancellationToken)); } [Obsolete("Use FindByNameAsync method.")] public virtual Tenant FindByName(string normalizedName, bool includeDetails = true) { - return GetMongoQueryable() + return GetQueryable() .FirstOrDefault(t => t.NormalizedName == normalizedName); } [Obsolete("Use FindAsync method.")] public virtual Tenant FindById(Guid id, bool includeDetails = true) { - return GetMongoQueryable() + return GetQueryable() .FirstOrDefault(t => t.Id == id); } @@ -50,7 +50,7 @@ public class MongoTenantRepository : MongoDbRepository @@ -63,7 +63,7 @@ public class MongoTenantRepository : MongoDbRepository GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf( !filter.IsNullOrWhiteSpace(), u => diff --git a/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs b/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs index d700665c90..2e657227b1 100644 --- a/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs +++ b/modules/users/src/Volo.Abp.Users.MongoDB/Volo/Abp/Users/MongoDB/MongoUserRepositoryBase.cs @@ -24,7 +24,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi public virtual async Task FindByUserNameAsync(string userName, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .OrderBy(x => x.Id) .FirstOrDefaultAsync(u => u.UserName == userName, cancellationToken); } @@ -32,7 +32,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi public virtual async Task> GetListAsync(IEnumerable ids, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(u => ids.Contains(u.Id)) .ToListAsync(cancellationToken); } @@ -45,7 +45,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf( !filter.IsNullOrWhiteSpace(), u => @@ -62,7 +62,7 @@ public abstract class MongoUserRepositoryBase : MongoDbReposi public async Task GetCountAsync(string filter = null, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .WhereIf( !filter.IsNullOrWhiteSpace(), u => diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/Samples/SampleRepositoryTests.cs b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/Samples/SampleRepositoryTests.cs index 9f51c616ec..f705959e83 100644 --- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/Samples/SampleRepositoryTests.cs +++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/Samples/SampleRepositoryTests.cs @@ -32,7 +32,7 @@ public class SampleRepositoryTests : MyProjectNameMongoDbTestBase await WithUnitOfWorkAsync(async () => { //Act - var adminUser = await (await _appUserRepository.GetMongoQueryableAsync()) + var adminUser = await (await _appUserRepository.GetQueryableAsync()) .FirstOrDefaultAsync(u => u.UserName == "admin"); //Assert From fd505f2090be0c034016a2ad24e9ad74834f73d6 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 6 Jan 2025 17:05:18 +0800 Subject: [PATCH 07/60] Remove `wpf` from build process if os is not windows. --- build/common.ps1 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/build/common.ps1 b/build/common.ps1 index 85f18edb21..f1cc59cf6c 100644 --- a/build/common.ps1 +++ b/build/common.ps1 @@ -34,11 +34,13 @@ if ($full -eq "-f") "../templates/module/aspnet-core", "../templates/app/aspnet-core", "../templates/console", - "../templates/wpf", "../templates/app-nolayers/aspnet-core", "../abp_io/AbpIoLocalization", "../source-code" - ) + ) + if ($env:OS -eq "Windows_NT") { + solutionPaths += "../templates/wpf" + } }else{ Write-host "" Write-host ":::::::::::::: !!! You are in development mode !!! ::::::::::::::" -ForegroundColor red -BackgroundColor yellow From 17c4e6be5364c13fe788216d68dbcab8a5b63fac Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 10 Jan 2025 20:13:10 +0800 Subject: [PATCH 08/60] Get the before and after changes of navigation properties. --- .../AbpEfCoreNavigationHelper.cs | 24 +++++++ .../ChangeTrackers/AbpEntityEntry.cs | 64 +++++++++++++++++ .../EntityHistory/EntityHistoryHelper.cs | 54 +++++++++++++- .../Volo/Abp/Auditing/Auditing_Tests.cs | 72 +++++++++++++++++-- 4 files changed, 206 insertions(+), 8 deletions(-) diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEfCoreNavigationHelper.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEfCoreNavigationHelper.cs index d56660be57..63ddc222bd 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEfCoreNavigationHelper.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEfCoreNavigationHelper.cs @@ -31,6 +31,14 @@ public class AbpEfCoreNavigationHelper : ITransientDependency protected virtual void EntityEntryTrackedOrStateChanged(EntityEntry entityEntry) { + if (entityEntry.State is EntityState.Unchanged or EntityState.Modified) + { + foreach (var entry in EntityEntries.Values.Where(x => x.NavigationEntries.Any())) + { + entry.UpdateNavigationEntries(); + } + } + if (entityEntry.State != EntityState.Unchanged) { return; @@ -189,6 +197,22 @@ public class AbpEfCoreNavigationHelper : ITransientDependency return navigationEntryProperty != null && navigationEntryProperty.IsModified; } + public virtual AbpNavigationEntry? GetNavigationEntry(EntityEntry entityEntry, int navigationEntryIndex) + { + var entryId = GetEntityEntryIdentity(entityEntry); + if (entryId == null) + { + return null; + } + + if (!EntityEntries.TryGetValue(entryId, out var abpEntityEntry)) + { + return null; + } + + return abpEntityEntry.NavigationEntries.ElementAtOrDefault(navigationEntryIndex); + } + protected virtual string? GetEntityEntryIdentity(EntityEntry entityEntry) { if (entityEntry.Entity is IEntity entryEntity && entryEntity.GetKeys().Length == 1) diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEntityEntry.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEntityEntry.cs index 0aef48e0d1..4b8a531db1 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEntityEntry.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/ChangeTrackers/AbpEntityEntry.cs @@ -1,3 +1,4 @@ +using System.Collections; using System.Collections.Generic; using System.Linq; using Microsoft.EntityFrameworkCore; @@ -32,6 +33,49 @@ public class AbpEntityEntry EntityEntry = entityEntry; NavigationEntries = EntityEntry.Navigations.Select(x => new AbpNavigationEntry(x, x.Metadata.Name)).ToList(); } + + public void UpdateNavigationEntries() + { + foreach (var navigationEntry in NavigationEntries) + { + if (IsModified || + EntityEntry.State == EntityState.Modified || + navigationEntry.IsModified || + navigationEntry.NavigationEntry.IsModified) + { + continue; + } + + var navigation = EntityEntry.Navigations.FirstOrDefault(n => n.Metadata.Name == navigationEntry.Name); + + var currentValue = AbpNavigationEntry.GetOriginalValue(navigation?.CurrentValue); + if (currentValue == null) + { + continue; + } + + switch (navigationEntry.OriginalValue) + { + case null: + navigationEntry.OriginalValue = currentValue; + break; + case IEnumerable originalValueCollection when currentValue is IEnumerable currentValueCollection: + { + var existingList = originalValueCollection.Cast().ToList(); + var newList = currentValueCollection.Cast().ToList(); + if (newList.Count > existingList.Count) + { + navigationEntry.OriginalValue = currentValue; + } + + break; + } + default: + navigationEntry.OriginalValue = currentValue; + break; + } + } + } } public class AbpNavigationEntry @@ -42,9 +86,29 @@ public class AbpNavigationEntry public bool IsModified { get; set; } + public List? OriginalValue { get; set; } + + public object? CurrentValue => NavigationEntry.CurrentValue; + public AbpNavigationEntry(NavigationEntry navigationEntry, string name) { NavigationEntry = navigationEntry; Name = name; + OriginalValue = GetOriginalValue(navigationEntry.CurrentValue); + } + + public static List? GetOriginalValue(object? currentValue) + { + if (currentValue is null) + { + return null; + } + + if (currentValue is IEnumerable enumerable) + { + return enumerable.Cast().ToList(); + } + + return new List { currentValue }; } } diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs index a52ac2f437..e9dd794d73 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs @@ -1,4 +1,5 @@ using System; +using System.Collections; using System.Collections.Generic; using System.Linq; using System.Reflection; @@ -199,10 +200,14 @@ public class EntityHistoryHelper : IEntityHistoryHelper, ITransientDependency { if (AbpEfCoreNavigationHelper.IsNavigationEntryModified(entityEntry, index)) { + var abpNavigationEntry = AbpEfCoreNavigationHelper.GetNavigationEntry(entityEntry, index); + var isCollection = navigationEntry.Metadata.IsCollection; propertyChanges.Add(new EntityPropertyChangeInfo { PropertyName = navigationEntry.Metadata.Name, - PropertyTypeFullName = navigationEntry.Metadata.ClrType.GetFirstGenericArgumentIfNullable().FullName! + PropertyTypeFullName = navigationEntry.Metadata.ClrType.GetFirstGenericArgumentIfNullable().FullName!, + OriginalValue = GetNavigationPropertyValue(abpNavigationEntry?.OriginalValue, isCollection), + NewValue = GetNavigationPropertyValue(abpNavigationEntry?.CurrentValue, isCollection) }); } } @@ -211,6 +216,53 @@ public class EntityHistoryHelper : IEntityHistoryHelper, ITransientDependency return propertyChanges; } + protected virtual string? GetNavigationPropertyValue(object? entity, bool isCollection) + { + switch (entity) + { + case null: + return null; + + case IEntity entryEntity: + var keys = entryEntity.GetKeys(); + if (keys.Length == 0) + { + return null; + } + + var serializedKeys = keys.Length == 1 && !isCollection + ? keys[0]?.ToString() + : JsonSerializer.Serialize(keys); + + return serializedKeys?.TruncateWithPostfix(EntityPropertyChangeInfo.MaxValueLength); + + case IEnumerable enumerable: + var keysList = new List(); + foreach (var item in enumerable) + { + var id = GetNavigationPropertyValue(item, false); + if (id != null) + { + keysList.Add(id); + } + } + + if (keysList.Count == 0) + { + return null; + } + + var serializedKeysEnumerable = keysList.Count == 1 && !isCollection + ? keysList.First() + : JsonSerializer.Serialize(keysList); + + return serializedKeysEnumerable.TruncateWithPostfix(EntityPropertyChangeInfo.MaxValueLength); + + default: + return null; + } + } + protected virtual bool IsCreated(EntityEntry entityEntry) { return entityEntry.State == EntityState.Added; diff --git a/framework/test/Volo.Abp.Auditing.Tests/Volo/Abp/Auditing/Auditing_Tests.cs b/framework/test/Volo.Abp.Auditing.Tests/Volo/Abp/Auditing/Auditing_Tests.cs index 954e6222ee..aa11d7ffde 100644 --- a/framework/test/Volo.Abp.Auditing.Tests/Volo/Abp/Auditing/Auditing_Tests.cs +++ b/framework/test/Volo.Abp.Auditing.Tests/Volo/Abp/Auditing/Auditing_Tests.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Text.Json; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; @@ -512,7 +513,9 @@ public class Auditing_Tests : AbpAuditingTestBase x.EntityChanges[1].EntityTypeFullName == typeof(AppEntityWithNavigations).FullName && x.EntityChanges[1].PropertyChanges.Count == 1 && x.EntityChanges[1].PropertyChanges[0].PropertyName == nameof(AppEntityWithNavigations.OneToOne) && - x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(AppEntityWithNavigationChildOneToOne).FullName)); + x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(AppEntityWithNavigationChildOneToOne).FullName && + x.EntityChanges[1].PropertyChanges[0].OriginalValue == null && + x.EntityChanges[1].PropertyChanges[0].NewValue == entityId.ToString())); AuditingStore.ClearReceivedCalls(); #pragma warning restore 4014 @@ -539,10 +542,13 @@ public class Auditing_Tests : AbpAuditingTestBase x.EntityChanges[1].EntityTypeFullName == typeof(AppEntityWithNavigations).FullName && x.EntityChanges[1].PropertyChanges.Count == 1 && x.EntityChanges[1].PropertyChanges[0].PropertyName == nameof(AppEntityWithNavigations.OneToOne) && - x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(AppEntityWithNavigationChildOneToOne).FullName)); + x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(AppEntityWithNavigationChildOneToOne).FullName && + x.EntityChanges[1].PropertyChanges[0].OriginalValue == entityId.ToString() && + x.EntityChanges[1].PropertyChanges[0].NewValue == null)); AuditingStore.ClearReceivedCalls(); #pragma warning restore 4014 + var oneToManyId = ""; using (var scope = _auditingManager.BeginScope()) { using (var uow = _unitOfWorkManager.Begin()) @@ -561,6 +567,8 @@ public class Auditing_Tests : AbpAuditingTestBase await repository.UpdateAsync(entity); await uow.CompleteAsync(); await scope.SaveAsync(); + + oneToManyId = entity.OneToMany.First().Id.ToString(); } } @@ -572,36 +580,80 @@ public class Auditing_Tests : AbpAuditingTestBase x.EntityChanges[1].EntityTypeFullName == typeof(AppEntityWithNavigations).FullName && x.EntityChanges[1].PropertyChanges.Count == 1 && x.EntityChanges[1].PropertyChanges[0].PropertyName == nameof(AppEntityWithNavigations.OneToMany) && - x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName)); + x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName && + x.EntityChanges[1].PropertyChanges[0].OriginalValue == null && + x.EntityChanges[1].PropertyChanges[0].NewValue == $"[\"{oneToManyId}\"]")); AuditingStore.ClearReceivedCalls(); #pragma warning restore 4014 + var newOneToManyId = ""; using (var scope = _auditingManager.BeginScope()) { using (var uow = _unitOfWorkManager.Begin()) { var entity = await repository.GetAsync(entityId); - entity.OneToMany = null; + entity.OneToMany.Add(new AppEntityWithNavigationChildOneToMany + { + AppEntityWithNavigationId = entity.Id, + ChildName = "ChildName2" + }); await repository.UpdateAsync(entity); await uow.CompleteAsync(); await scope.SaveAsync(); + + newOneToManyId = JsonSerializer.Serialize(entity.OneToMany.Select(x => x.Id).ToList()); } } #pragma warning disable 4014 AuditingStore.Received().SaveAsync(Arg.Is(x => x.EntityChanges.Count == 2 && - x.EntityChanges[0].ChangeType == EntityChangeType.Deleted && + x.EntityChanges[0].ChangeType == EntityChangeType.Created && x.EntityChanges[0].EntityTypeFullName == typeof(AppEntityWithNavigationChildOneToMany).FullName && x.EntityChanges[1].ChangeType == EntityChangeType.Updated && x.EntityChanges[1].EntityTypeFullName == typeof(AppEntityWithNavigations).FullName && x.EntityChanges[1].PropertyChanges.Count == 1 && x.EntityChanges[1].PropertyChanges[0].PropertyName == nameof(AppEntityWithNavigations.OneToMany) && - x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName)); + x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName && + x.EntityChanges[1].PropertyChanges[0].OriginalValue == $"[\"{oneToManyId}\"]" && + x.EntityChanges[1].PropertyChanges[0].NewValue == newOneToManyId)); + AuditingStore.ClearReceivedCalls(); +#pragma warning restore 4014 + + using (var scope = _auditingManager.BeginScope()) + { + using (var uow = _unitOfWorkManager.Begin()) + { + var entity = await repository.GetAsync(entityId); + + newOneToManyId = JsonSerializer.Serialize(entity.OneToMany.Select(x => x.Id).ToList()); + + entity.OneToMany = null; + + await repository.UpdateAsync(entity); + await uow.CompleteAsync(); + await scope.SaveAsync(); + } + } + +#pragma warning disable 4014 + AuditingStore.Received().SaveAsync(Arg.Is(x => x.EntityChanges.Count == 3 && + x.EntityChanges[0].ChangeType == EntityChangeType.Deleted && + x.EntityChanges[0].EntityTypeFullName == typeof(AppEntityWithNavigationChildOneToMany).FullName && + x.EntityChanges[1].ChangeType == EntityChangeType.Deleted && + x.EntityChanges[1].EntityTypeFullName == typeof(AppEntityWithNavigationChildOneToMany).FullName && + x.EntityChanges[2].ChangeType == EntityChangeType.Updated && + x.EntityChanges[2].EntityTypeFullName == typeof(AppEntityWithNavigations).FullName && + x.EntityChanges[2].PropertyChanges.Count == 1 && + x.EntityChanges[2].PropertyChanges[0].PropertyName == nameof(AppEntityWithNavigations.OneToMany) && + x.EntityChanges[2].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName && + x.EntityChanges[2].PropertyChanges[0].OriginalValue == newOneToManyId && + x.EntityChanges[2].PropertyChanges[0].NewValue == null)); AuditingStore.ClearReceivedCalls(); #pragma warning restore 4014 + var manyToManyId = ""; using (var scope = _auditingManager.BeginScope()) { using (var uow = _unitOfWorkManager.Begin()) @@ -619,6 +671,8 @@ public class Auditing_Tests : AbpAuditingTestBase await repository.UpdateAsync(entity); await uow.CompleteAsync(); await scope.SaveAsync(); + + manyToManyId = entity.ManyToMany.First().Id.ToString(); } } @@ -630,7 +684,9 @@ public class Auditing_Tests : AbpAuditingTestBase x.EntityChanges[1].EntityTypeFullName == typeof(AppEntityWithNavigations).FullName && x.EntityChanges[1].PropertyChanges.Count == 1 && x.EntityChanges[1].PropertyChanges[0].PropertyName == nameof(AppEntityWithNavigations.ManyToMany) && - x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName)); + x.EntityChanges[1].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName && + x.EntityChanges[1].PropertyChanges[0].OriginalValue == null && + x.EntityChanges[1].PropertyChanges[0].NewValue == $"[\"{manyToManyId}\"]")); #pragma warning restore 4014 @@ -655,6 +711,8 @@ public class Auditing_Tests : AbpAuditingTestBase x.EntityChanges[0].PropertyChanges.Count == 1 && x.EntityChanges[0].PropertyChanges[0].PropertyName == nameof(AppEntityWithNavigations.ManyToMany) && x.EntityChanges[0].PropertyChanges[0].PropertyTypeFullName == typeof(List).FullName && + x.EntityChanges[0].PropertyChanges[0].OriginalValue == $"[\"{manyToManyId}\"]" && + x.EntityChanges[0].PropertyChanges[0].NewValue == null && x.EntityChanges[1].ChangeType == EntityChangeType.Updated && x.EntityChanges[1].EntityTypeFullName == typeof(AppEntityWithNavigationChildManyToMany).FullName && From bc4af031857d6dbe57f0b749cd1531a8ad752f2a Mon Sep 17 00:00:00 2001 From: maliming Date: Sun, 12 Jan 2025 13:59:53 +0800 Subject: [PATCH 09/60] Update EntityHistoryHelper.cs --- .../EntityHistory/EntityHistoryHelper.cs | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs index e9dd794d73..6b64c0c51a 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs @@ -225,16 +225,7 @@ public class EntityHistoryHelper : IEntityHistoryHelper, ITransientDependency case IEntity entryEntity: var keys = entryEntity.GetKeys(); - if (keys.Length == 0) - { - return null; - } - - var serializedKeys = keys.Length == 1 && !isCollection - ? keys[0]?.ToString() - : JsonSerializer.Serialize(keys); - - return serializedKeys?.TruncateWithPostfix(EntityPropertyChangeInfo.MaxValueLength); + return keys.Length == 0 ? null : string.Join(", ",keys).TruncateWithPostfix(EntityPropertyChangeInfo.MaxValueLength); case IEnumerable enumerable: var keysList = new List(); From 1806e30b59b85974cec92138cc57aeba8951d3dc Mon Sep 17 00:00:00 2001 From: maliming Date: Sun, 12 Jan 2025 16:49:08 +0800 Subject: [PATCH 10/60] Added `AuditLogEntityTypeFullNameConverter`. --- .../AuditLogEntityTypeFullNameConverter.cs | 39 ++++++++++++++++ .../AuditLogInfoToAuditLogConverter.cs | 18 +++++++- ...ditLogEntityTypeFullNameConverter_Tests.cs | 6 +++ ...ditLogEntityTypeFullNameConverter_Tests.cs | 9 ++++ ...ditLogEntityTypeFullNameConverter_Tests.cs | 46 +++++++++++++++++++ 5 files changed, 117 insertions(+), 1 deletion(-) create mode 100644 modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter.cs create mode 100644 modules/audit-logging/test/Volo.Abp.AuditLogging.EntityFrameworkCore.Tests/Volo/Abp/AuditLogging/EntityFrameworkCore/AuditLogEntityTypeFullNameConverter_Tests.cs create mode 100644 modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AuditLogEntityTypeFullNameConverter_Tests.cs create mode 100644 modules/audit-logging/test/Volo.Abp.AuditLogging.TestBase/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter_Tests.cs diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter.cs b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter.cs new file mode 100644 index 0000000000..f50aec3d92 --- /dev/null +++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter.cs @@ -0,0 +1,39 @@ +using System; +using System.Text.RegularExpressions; +using Volo.Abp.DependencyInjection; + +namespace Volo.Abp.AuditLogging; + +public class AuditLogEntityTypeFullNameConverter : ITransientDependency +{ + public virtual string Convert(string typeFullName) + { + var genericType = Regex.Match(typeFullName, @"(.+?)`1\[\["); + if (!genericType.Success) + { + return ReplaceGenericSymbol(typeFullName); + } + + var type = Regex.Match(typeFullName, @"`1\[\[(.+?), "); + if (!type.Success) + { + return typeFullName; + } + + if (type.Groups[1].Value.Contains("System.Nullable`1[[")) + { + return genericType.Groups[1].Value + "<" + type.Groups[1].Value.Replace("System.Nullable`1[[", "") + "?>"; + } + + return genericType.Groups[1].Value.Contains("System.Nullable") + ? type.Groups[1].Value + "?" + : genericType.Groups[1].Value + "<" + ReplaceGenericSymbol(type.Groups[1].Value) + ">"; + } + + protected virtual string ReplaceGenericSymbol(string typeFullName) + { + return typeFullName.Contains("`1+") + ? typeFullName.Substring(0, typeFullName.IndexOf("[[", StringComparison.Ordinal)).Replace("`1+", ".") + : typeFullName; + } +} diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogInfoToAuditLogConverter.cs b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogInfoToAuditLogConverter.cs index 94f0622714..30b0495658 100644 --- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogInfoToAuditLogConverter.cs +++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditLogInfoToAuditLogConverter.cs @@ -19,12 +19,19 @@ public class AuditLogInfoToAuditLogConverter : IAuditLogInfoToAuditLogConverter, protected IExceptionToErrorInfoConverter ExceptionToErrorInfoConverter { get; } protected IJsonSerializer JsonSerializer { get; } protected AbpExceptionHandlingOptions ExceptionHandlingOptions { get; } + protected AuditLogEntityTypeFullNameConverter AuditLogEntityTypeFullNameConverter { get; } - public AuditLogInfoToAuditLogConverter(IGuidGenerator guidGenerator, IExceptionToErrorInfoConverter exceptionToErrorInfoConverter, IJsonSerializer jsonSerializer, IOptions exceptionHandlingOptions) + public AuditLogInfoToAuditLogConverter( + IGuidGenerator guidGenerator, + IExceptionToErrorInfoConverter exceptionToErrorInfoConverter, + IJsonSerializer jsonSerializer, + IOptions exceptionHandlingOptions, + AuditLogEntityTypeFullNameConverter auditLogEntityTypeFullNameConverter) { GuidGenerator = guidGenerator; ExceptionToErrorInfoConverter = exceptionToErrorInfoConverter; JsonSerializer = jsonSerializer; + AuditLogEntityTypeFullNameConverter = auditLogEntityTypeFullNameConverter; ExceptionHandlingOptions = exceptionHandlingOptions.Value; } @@ -41,6 +48,15 @@ public class AuditLogInfoToAuditLogConverter : IAuditLogInfoToAuditLogConverter, } } + foreach (var entityChange in auditLogInfo.EntityChanges ?? Enumerable.Empty()) + { + entityChange.EntityTypeFullName = AuditLogEntityTypeFullNameConverter.Convert(entityChange.EntityTypeFullName); + foreach (var propertyChange in entityChange.PropertyChanges ?? Enumerable.Empty()) + { + propertyChange.PropertyTypeFullName = AuditLogEntityTypeFullNameConverter.Convert(propertyChange.PropertyTypeFullName); + } + } + var entityChanges = auditLogInfo .EntityChanges? .Select(entityChangeInfo => new EntityChange(GuidGenerator, auditLogId, entityChangeInfo, tenantId: auditLogInfo.TenantId)) diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.EntityFrameworkCore.Tests/Volo/Abp/AuditLogging/EntityFrameworkCore/AuditLogEntityTypeFullNameConverter_Tests.cs b/modules/audit-logging/test/Volo.Abp.AuditLogging.EntityFrameworkCore.Tests/Volo/Abp/AuditLogging/EntityFrameworkCore/AuditLogEntityTypeFullNameConverter_Tests.cs new file mode 100644 index 0000000000..db57347815 --- /dev/null +++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.EntityFrameworkCore.Tests/Volo/Abp/AuditLogging/EntityFrameworkCore/AuditLogEntityTypeFullNameConverter_Tests.cs @@ -0,0 +1,6 @@ +namespace Volo.Abp.AuditLogging.EntityFrameworkCore; + +public class AuditLogEntityTypeFullNameConverter_Tests : AuditLogEntityTypeFullNameConverter_Tests +{ + +} diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AuditLogEntityTypeFullNameConverter_Tests.cs b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AuditLogEntityTypeFullNameConverter_Tests.cs new file mode 100644 index 0000000000..5c803a2a44 --- /dev/null +++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AuditLogEntityTypeFullNameConverter_Tests.cs @@ -0,0 +1,9 @@ +using Xunit; + +namespace Volo.Abp.AuditLogging.MongoDB; + +[Collection(MongoTestCollection.Name)] +public class AuditLogEntityTypeFullNameConverter_Tests : AuditLogEntityTypeFullNameConverter_Tests +{ + +} diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.TestBase/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter_Tests.cs b/modules/audit-logging/test/Volo.Abp.AuditLogging.TestBase/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter_Tests.cs new file mode 100644 index 0000000000..2aac19cd42 --- /dev/null +++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.TestBase/Volo/Abp/AuditLogging/AuditLogEntityTypeFullNameConverter_Tests.cs @@ -0,0 +1,46 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using Shouldly; +using Volo.Abp.Modularity; +using Xunit; + +namespace Volo.Abp.AuditLogging; + +public abstract class AuditLogEntityTypeFullNameConverter_Tests : AuditLoggingTestBase + where TStartupModule : IAbpModule +{ + private readonly AuditLogEntityTypeFullNameConverter _typeFullNameConverter; + + protected AuditLogEntityTypeFullNameConverter_Tests() + { + _typeFullNameConverter = GetRequiredService(); + } + + [Fact] + public void AuditLogEntityTypeFullNameConverter_Test() + { + _typeFullNameConverter.Convert("MyType").ShouldBe("MyType"); + + _typeFullNameConverter.Convert(typeof(string).FullName!).ShouldBe("System.String"); + _typeFullNameConverter.Convert(typeof(Guid).FullName!).ShouldBe("System.Guid"); + _typeFullNameConverter.Convert(typeof(Guid?).FullName!).ShouldBe("System.Guid?"); + _typeFullNameConverter.Convert(typeof(int).FullName!).ShouldBe("System.Int32"); + _typeFullNameConverter.Convert(typeof(long?).FullName!).ShouldBe("System.Int64?"); + _typeFullNameConverter.Convert(typeof(MyClass).FullName!).ShouldBe("Volo.Abp.AuditLogging.AuditLogEntityTypeFullNameConverter_Tests.MyClass"); + + _typeFullNameConverter.Convert(typeof(ICollection).FullName!).ShouldBe($"System.Collections.Generic.ICollection"); + _typeFullNameConverter.Convert(typeof(Collection).FullName!).ShouldBe($"System.Collections.ObjectModel.Collection"); + _typeFullNameConverter.Convert(typeof(List).FullName!).ShouldBe($"System.Collections.Generic.List"); + _typeFullNameConverter.Convert(typeof(List).FullName!).ShouldBe($"System.Collections.Generic.List"); + + _typeFullNameConverter.Convert(typeof(ICollection).FullName!).ShouldBe($"System.Collections.Generic.ICollection"); + _typeFullNameConverter.Convert(typeof(Collection).FullName!).ShouldBe($"System.Collections.ObjectModel.Collection"); + _typeFullNameConverter.Convert(typeof(List).FullName!).ShouldBe($"System.Collections.Generic.List"); + } + + public class MyClass + { + + } +} From 6dc51e21f01e4f18937ab5a0032515fd938841f5 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 13 Jan 2025 10:19:24 +0800 Subject: [PATCH 11/60] Update en.json --- .../Volo/Abp/AuditLogging/Localization/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json index d4b3ef586c..3351816d31 100644 --- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json +++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json @@ -48,7 +48,7 @@ "ChangeType": "Change type", "ChangeTime": "Time", "NewValue": "New value", - "OriginalValue": "Original value", + "OriginalValue": "Old value", "PropertyName": "Property name", "PropertyTypeFullName": "Property Type Full Name", "Yes": "Yes", From deba83b9eb6fe3a2246e75151a4bd9748f4cbd7f Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 13 Jan 2025 15:25:12 +0800 Subject: [PATCH 12/60] Create MongoDB-Driver-2-to-3.md --- .../migration-guides/MongoDB-Driver-2-to-3.md | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md diff --git a/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md b/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md new file mode 100644 index 0000000000..18392bc991 --- /dev/null +++ b/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md @@ -0,0 +1,58 @@ +# Migrating from MongoDB Driver 2 to 3 + +## Introduction + +The release of MongoDB Driver 3 includes numerous user-requested fixes and improvements that were deferred in previous versions due to backward compatibility concerns. It also features internal improvements to reduce technical debt and enhance maintainability. One major update is the removal of a significant portion of the public API (primarily from `MongoDB.Driver.Core`), which was not intended for public use. The removed APIs were marked as deprecated in version 2.30.0. + +For a complete list of breaking changes and upgrade guidelines, please refer to the [upgrade guide](https://www.mongodb.com/docs/drivers/csharp/current/upgrade/v3/). + +## Repository Changes + +Some method signatures in the `MongoDbRepository` class have been updated, primarily to accommodate the removal of `IMongoQueryable`. The specific changes are as follows: + +- The `GetMongoQueryable` method has been renamed to `GetQueryable`. +- The `GetMongoQueryableAsync` method has been renamed to `GetQueryableAsync`. + +Please update your application by searching for and replacing these method calls. + +> The return value of the `GetQueryableAsync` method is `IQueryable`, which can be used directly to perform queries, similar to EF Core. Remove all instances of `IMongoQueryable` in your project and replace them with `IQueryable`. + +**Previous code example:** + +```csharp +var myEntity = await (await GetMongoQueryableAsync()).As>().FirstOrDefaultAsync(x => x.Id == id); +``` + +**Updated code example:** + +```csharp +var myEntity = await GetQueryableAsync().FirstOrDefaultAsync(x => x.Id == id); +``` + +## Unit Test Changes + +Previously, we used the [EphemeralMongo](https://github.com/asimmon/ephemeral-mongo) library for unit testing. However, it does not support the latest version of [MongoDB.Driver 3.x](https://github.com/mongodb/mongo-go-driver). You should replace it with [MongoSandbox](https://github.com/wassim-k/MongoSandbox). + +In your unit test project files, replace the following: + +```xml + + + + +``` + +With: + +```xml + + + + +``` + +In your unit test classes, replace `using EphemeralMongo` with `using MongoSandbox`. + +## Official Upgrade Guide + +We recommend reviewing the [upgrade guide](https://www.mongodb.com/docs/drivers/csharp/current/upgrade/v3/) for MongoDB Driver 3 to ensure a smooth migration process. From e2390f1460ff9012374d534e8a9aff23f061bd10 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 13 Jan 2025 16:39:27 +0800 Subject: [PATCH 13/60] Update MongoOrganizationUnitRepository.cs --- .../Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs index 037c6f39ac..14514e0ab4 100644 --- a/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs +++ b/modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoOrganizationUnitRepository.cs @@ -68,7 +68,7 @@ public class MongoOrganizationUnitRepository bool includeDetails = false, CancellationToken cancellationToken = default) { - return await (await GetMongoQueryableAsync(cancellationToken)) + return await (await GetQueryableAsync(cancellationToken)) .Where(x => displayNames.Contains(x.DisplayName)) .ToListAsync(GetCancellationToken(cancellationToken)); } From 50ff4408d2668f1cf0ecd45c5e46a163a06677d2 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 13 Jan 2025 17:20:25 +0800 Subject: [PATCH 14/60] Update MongoDB-Driver-2-to-3.md --- .../en/release-info/migration-guides/MongoDB-Driver-2-to-3.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md b/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md index 18392bc991..6e92356edc 100644 --- a/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md +++ b/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md @@ -4,11 +4,11 @@ The release of MongoDB Driver 3 includes numerous user-requested fixes and improvements that were deferred in previous versions due to backward compatibility concerns. It also features internal improvements to reduce technical debt and enhance maintainability. One major update is the removal of a significant portion of the public API (primarily from `MongoDB.Driver.Core`), which was not intended for public use. The removed APIs were marked as deprecated in version 2.30.0. -For a complete list of breaking changes and upgrade guidelines, please refer to the [upgrade guide](https://www.mongodb.com/docs/drivers/csharp/current/upgrade/v3/). +Please refer to the [upgrade guide](https://www.mongodb.com/docs/drivers/csharp/current/upgrade/v3/) for a complete list of breaking changes and upgrade guidelines. ## Repository Changes -Some method signatures in the `MongoDbRepository` class have been updated, primarily to accommodate the removal of `IMongoQueryable`. The specific changes are as follows: +Some method signatures in the `MongoDbRepository` class have been updated because the `IMongoQueryable` has been removed. The specific changes are as follows: - The `GetMongoQueryable` method has been renamed to `GetQueryable`. - The `GetMongoQueryableAsync` method has been renamed to `GetQueryableAsync`. From e592d6d5d3ecc9ce42027059624b3d2ed741f684 Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 13 Jan 2025 15:22:05 +0300 Subject: [PATCH 15/60] Implement IDisposable in PageHeader component to clear toolbar and breadcrumb items on disposal --- .../Layout/PageHeader.razor.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageHeader.razor.cs b/framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageHeader.razor.cs index 492e2231ae..30a69f8d74 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageHeader.razor.cs +++ b/framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageHeader.razor.cs @@ -4,10 +4,11 @@ using System.Threading.Tasks; using Volo.Abp.AspNetCore.Components.Web.Theming.PageToolbars; using Volo.Abp.BlazoriseUI; using System.Linq; +using System; namespace Volo.Abp.AspNetCore.Components.Web.Theming.Layout; -public partial class PageHeader : ComponentBase +public partial class PageHeader : ComponentBase, IDisposable { protected List ToolbarItemRenders { get; set; } @@ -107,4 +108,11 @@ public partial class PageHeader : ComponentBase { await base.OnInitializedAsync(); } + + public void Dispose() + { + PageLayout.ToolbarItems.Clear(); + PageLayout.BreadcrumbItems.Clear(); + ToolbarItemRenders.Clear(); + } } From f3d2b1445b42716e5d267ba79363b0e6bd300238 Mon Sep 17 00:00:00 2001 From: voloagent Date: Thu, 16 Jan 2025 12:04:06 +0300 Subject: [PATCH 16/60] Update_NPM_Packages --- .../package.json | 6 +- .../yarn.lock | 276 ++++++------ .../package.json | 4 +- .../yarn.lock | 280 ++++++------ .../app/Volo.BloggingTestApp/package.json | 4 +- .../app/Volo.BloggingTestApp/yarn.lock | 318 +++++++------- .../Volo.ClientSimulation.Demo/package.json | 2 +- .../demo/Volo.ClientSimulation.Demo/yarn.lock | 258 +++++------ modules/cms-kit/angular/package.json | 10 +- .../angular/projects/cms-kit/package.json | 4 +- .../Volo.CmsKit.IdentityServer/package.json | 2 +- .../host/Volo.CmsKit.IdentityServer/yarn.lock | 258 +++++------ .../host/Volo.CmsKit.Web.Host/package.json | 2 +- .../host/Volo.CmsKit.Web.Host/yarn.lock | 258 +++++------ .../host/Volo.CmsKit.Web.Unified/package.json | 4 +- .../host/Volo.CmsKit.Web.Unified/yarn.lock | 404 +++++++++--------- modules/docs/app/VoloDocs.Web/package.json | 4 +- modules/docs/app/VoloDocs.Web/yarn.lock | 318 +++++++------- .../app/OpenIddict.Demo.Server/package.json | 2 +- modules/openiddict/app/angular/package.json | 20 +- .../package.json | 2 +- .../yarn.lock | 258 +++++------ .../package.json | 4 +- .../yarn.lock | 292 ++++++------- npm/lerna.json | 2 +- npm/ng-packs/package.json | 4 +- .../packages/account-core/package.json | 6 +- npm/ng-packs/packages/account/package.json | 6 +- npm/ng-packs/packages/components/package.json | 6 +- npm/ng-packs/packages/core/package.json | 4 +- .../packages/feature-management/package.json | 4 +- npm/ng-packs/packages/generators/package.json | 2 +- npm/ng-packs/packages/identity/package.json | 8 +- npm/ng-packs/packages/oauth/package.json | 6 +- .../permission-management/package.json | 4 +- npm/ng-packs/packages/schematics/package.json | 2 +- .../packages/setting-management/package.json | 6 +- .../packages/tenant-management/package.json | 6 +- .../packages/theme-basic/package.json | 6 +- .../packages/theme-shared/package.json | 4 +- npm/packs/anchor-js/package.json | 4 +- .../package.json | 4 +- .../package.json | 6 +- .../package.json | 4 +- .../package.json | 34 +- npm/packs/aspnetcore.mvc.ui/package-lock.json | 2 +- npm/packs/aspnetcore.mvc.ui/package.json | 2 +- npm/packs/blogging/package.json | 10 +- npm/packs/bootstrap-datepicker/package.json | 2 +- .../bootstrap-daterangepicker/package.json | 2 +- npm/packs/bootstrap/package.json | 4 +- npm/packs/chart.js/package.json | 2 +- npm/packs/clipboard/package.json | 4 +- npm/packs/cms-kit.admin/package.json | 14 +- npm/packs/cms-kit.public/package.json | 6 +- npm/packs/cms-kit/package.json | 6 +- npm/packs/codemirror/package.json | 4 +- npm/packs/core/package.json | 4 +- npm/packs/cropperjs/package.json | 4 +- npm/packs/datatables.net-bs4/package.json | 4 +- npm/packs/datatables.net-bs5/package.json | 4 +- npm/packs/datatables.net/package.json | 4 +- npm/packs/docs/package.json | 12 +- npm/packs/flag-icon-css/package.json | 2 +- npm/packs/flag-icons/package.json | 2 +- npm/packs/font-awesome/package.json | 4 +- npm/packs/highlight.js/package.json | 4 +- npm/packs/jquery-form/package.json | 4 +- .../package.json | 4 +- npm/packs/jquery-validation/package.json | 4 +- npm/packs/jquery/package.json | 4 +- npm/packs/jstree/package.json | 4 +- npm/packs/lodash/package.json | 4 +- npm/packs/luxon/package.json | 4 +- .../package.json | 4 +- npm/packs/markdown-it/package.json | 4 +- npm/packs/moment/package.json | 2 +- npm/packs/owl.carousel/package.json | 4 +- npm/packs/popper.js/package.json | 4 +- npm/packs/prismjs/package.json | 6 +- npm/packs/qrcode/package.json | 4 +- npm/packs/select2/package.json | 4 +- npm/packs/signalr/package.json | 4 +- npm/packs/slugify/package.json | 2 +- npm/packs/star-rating-svg/package.json | 4 +- npm/packs/sweetalert2/package.json | 4 +- npm/packs/timeago/package.json | 4 +- npm/packs/toastr/package.json | 4 +- npm/packs/tui-editor/package.json | 6 +- npm/packs/uppy/package.json | 4 +- npm/packs/utils/package.json | 2 +- npm/packs/vee-validate/package.json | 4 +- npm/packs/virtual-file-explorer/package.json | 6 +- npm/packs/vue/package.json | 2 +- npm/packs/zxcvbn/package.json | 4 +- .../Volo.Abp.Account.SourceCode.zip | Bin 227279 -> 227386 bytes .../Volo.Abp.AuditLogging.SourceCode.zip | Bin 91733 -> 91760 bytes .../Volo.Abp.BackgroundJobs.SourceCode.zip | Bin 62535 -> 62571 bytes .../Volo.Abp.BasicTheme.SourceCode.zip | Bin 456776 -> 459882 bytes ...lo.Abp.BlobStoring.Database.SourceCode.zip | Bin 69140 -> 69173 bytes .../Volo.Abp.FeatureManagement.SourceCode.zip | Bin 190982 -> 190983 bytes .../Volo.Abp.Identity.SourceCode.zip | Bin 444524 -> 444829 bytes .../Volo.Abp.IdentityServer.SourceCode.zip | Bin 166559 -> 166589 bytes .../Volo.Abp.OpenIddict.SourceCode.zip | Bin 2272473 -> 2276337 bytes ...lo.Abp.PermissionManagement.SourceCode.zip | Bin 184601 -> 184676 bytes .../Volo.Abp.SettingManagement.SourceCode.zip | Bin 243619 -> 243586 bytes .../Volo.Abp.TenantManagement.SourceCode.zip | Bin 167933 -> 167972 bytes .../Volo.Abp.Users.SourceCode.zip | Bin 31932 -> 31955 bytes ...olo.Abp.VirtualFileExplorer.SourceCode.zip | Bin 48173 -> 47805 bytes .../Volo.Blogging.SourceCode.zip | Bin 374254 -> 374020 bytes .../Volo.ClientSimulation.SourceCode.zip | Bin 38867 -> 38878 bytes .../Volo.CmsKit.SourceCode.zip | Bin 1298147 -> 1310997 bytes .../Volo.Docs.SourceCode.zip | Bin 571522 -> 576218 bytes templates/app-nolayers/angular/package.json | 20 +- .../package.json | 4 +- .../package.json | 4 +- .../Server.Mongo/package.json | 2 +- .../Server/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/app/angular/package.json | 20 +- .../package.json | 2 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- templates/module/angular/package.json | 20 +- .../projects/my-project-name/package.json | 4 +- .../package.json | 2 +- .../package.json | 4 +- .../package.json | 2 +- .../package.json | 2 +- 137 files changed, 1724 insertions(+), 1724 deletions(-) diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json index ca24ffb511..682e586516 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json @@ -3,8 +3,8 @@ "name": "asp.net", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~9.0.3", - "@abp/prismjs": "~9.0.3", - "@abp/highlight.js": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.shared": "~9.1.0-rc.1", + "@abp/prismjs": "~9.1.0-rc.1", + "@abp/highlight.js": "~9.1.0-rc.1" } } 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 481d54e59a..14f8f09386 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock @@ -2,212 +2,212 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/clipboard@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.0.3.tgz#bda02ce6da876890ef117697f30348b8c16aaf70" - integrity sha512-iprJtnshdpRgLIPxa5Tgj1IqkLvkl2QxTmjrqeiuRhU3S1ry0GnE6dx3jAealWUOoYr/bqXPbpXi3RN7R4baHw== +"@abp/clipboard@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.1.0-rc.1.tgz#ab6ac8dc5425931c556c5933f34c095278dc5605" + integrity sha512-liLXqmshDfXdp+S2ogG7ETvTxLr9F7oB4xqutJRNl1fSyMbnfjZBfs4lm+Ak+n0jQDvVXKL/cj4+8ztyuYujpg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" clipboard "^2.0.11" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/highlight.js@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-9.0.3.tgz#967b497badf854a9f0036082a39cf57eefd6d7c7" - integrity sha512-4/VhrgaiLb9kqO7HRAcmyoE63DFwMZToSjpSsXZPXMA2SM64cHjCz6cN5Ukh+GGOEolDVlbHoExON067rOz42w== +"@abp/highlight.js@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-9.1.0-rc.1.tgz#7e5077963207678b09301bd8ef3fbe24452a4ab2" + integrity sha512-7g4NlkJklbvGkYUq8fHn1iAy8DDunauyNSk5CWhE8PXh/6WwRtazgvghLBel0D4NOIVEGrCIPfk+nK5KJkNPUw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@highlightjs/cdn-assets" "~11.10.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/prismjs@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.0.3.tgz#9675dacd5df511120dffde76e925a8344ca9bace" - integrity sha512-5nMAKRADa6BQh3orquGHCUzqoZyDhmvoQ7RBCJsM3e0W+wBPeV9qmF+dJjOf9d+c9dr2mpU2SrH45fO/BNqgWg== +"@abp/prismjs@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.1.0-rc.1.tgz#8b55c07b979a5bc31c03e417b5196c91931c776e" + integrity sha512-2E4XoMyBfnlVc9to6HLWoXVxuOA3n3nsME6VjCW9rgXIzZwrwam+g4/6vE9l8aU+U5k7YbZ3l9+7brLS1AMqTg== dependencies: - "@abp/clipboard" "~9.0.3" - "@abp/core" "~9.0.3" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/core" "~9.1.0-rc.1" prismjs "^1.29.0" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json index 4d0012245b..271f050f82 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": "~9.0.3", - "@abp/prismjs": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1", + "@abp/prismjs": "~9.1.0-rc.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 303743b39b..46f655b138 100644 --- a/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock +++ b/modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock @@ -2,211 +2,211 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/clipboard@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.0.3.tgz#bda02ce6da876890ef117697f30348b8c16aaf70" - integrity sha512-iprJtnshdpRgLIPxa5Tgj1IqkLvkl2QxTmjrqeiuRhU3S1ry0GnE6dx3jAealWUOoYr/bqXPbpXi3RN7R4baHw== +"@abp/clipboard@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.1.0-rc.1.tgz#ab6ac8dc5425931c556c5933f34c095278dc5605" + integrity sha512-liLXqmshDfXdp+S2ogG7ETvTxLr9F7oB4xqutJRNl1fSyMbnfjZBfs4lm+Ak+n0jQDvVXKL/cj4+8ztyuYujpg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" clipboard "^2.0.11" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/prismjs@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.0.3.tgz#9675dacd5df511120dffde76e925a8344ca9bace" - integrity sha512-5nMAKRADa6BQh3orquGHCUzqoZyDhmvoQ7RBCJsM3e0W+wBPeV9qmF+dJjOf9d+c9dr2mpU2SrH45fO/BNqgWg== +"@abp/prismjs@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.1.0-rc.1.tgz#8b55c07b979a5bc31c03e417b5196c91931c776e" + integrity sha512-2E4XoMyBfnlVc9to6HLWoXVxuOA3n3nsME6VjCW9rgXIzZwrwam+g4/6vE9l8aU+U5k7YbZ3l9+7brLS1AMqTg== dependencies: - "@abp/clipboard" "~9.0.3" - "@abp/core" "~9.0.3" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/core" "~9.1.0-rc.1" prismjs "^1.29.0" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/blogging/app/Volo.BloggingTestApp/package.json b/modules/blogging/app/Volo.BloggingTestApp/package.json index 02f2a1e2b6..02bde08cef 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": "~9.0.3", - "@abp/blogging": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1", + "@abp/blogging": "~9.1.0-rc.1" } } diff --git a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock index fc10d219c0..d404f911b0 100644 --- a/modules/blogging/app/Volo.BloggingTestApp/yarn.lock +++ b/modules/blogging/app/Volo.BloggingTestApp/yarn.lock @@ -2,237 +2,237 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/blogging@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-9.0.3.tgz#0ac6f5276b90487fc30514ac93d8d8b79620426b" - integrity sha512-D5T9IAlAkcMAomobvlG2d1ioLDv6fczLrxCqVtDB1a2yMad8aCZr6VtTjiWCSm2AtYkPjLKkIeXir3O7bzXEHw== +"@abp/blogging@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-9.1.0-rc.1.tgz#f4a0d23baf52ab1d36341cb547353191c9051f16" + integrity sha512-wQQlLYfJHsvybaCIo6TaEPWKu9rNcNQhvRhGhLXBvGCgavyw+FfFEtx8sjPQYnlyqFcxUn/2LGcsNlICLzmVxg== dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - "@abp/owl.carousel" "~9.0.3" - "@abp/prismjs" "~9.0.3" - "@abp/tui-editor" "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + "@abp/owl.carousel" "~9.1.0-rc.1" + "@abp/prismjs" "~9.1.0-rc.1" + "@abp/tui-editor" "~9.1.0-rc.1" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/clipboard@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.0.3.tgz#bda02ce6da876890ef117697f30348b8c16aaf70" - integrity sha512-iprJtnshdpRgLIPxa5Tgj1IqkLvkl2QxTmjrqeiuRhU3S1ry0GnE6dx3jAealWUOoYr/bqXPbpXi3RN7R4baHw== +"@abp/clipboard@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.1.0-rc.1.tgz#ab6ac8dc5425931c556c5933f34c095278dc5605" + integrity sha512-liLXqmshDfXdp+S2ogG7ETvTxLr9F7oB4xqutJRNl1fSyMbnfjZBfs4lm+Ak+n0jQDvVXKL/cj4+8ztyuYujpg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" clipboard "^2.0.11" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/owl.carousel@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-9.0.3.tgz#7201945d0c37f0df09bf5c7144aa4551da1ede42" - integrity sha512-BMTzvOGaQ00kQboCdrZN/DW2jAwyrTPxOBHaoEOl9sQexlzGULiQAe+jtY9kE5N834Fy4QjXTHTh0/srdZpEQw== +"@abp/owl.carousel@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-9.1.0-rc.1.tgz#0fc45e0b109b57b7907c66759d23f94b3c703520" + integrity sha512-B27BhGILf6kNFYnK60NNgbKt392h6G5KnqhvUTtqu56EPCWnqCvo+0vuCpz/z8E0N4nfcz1slenfECYeP7C4/g== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" owl.carousel "^2.3.4" -"@abp/prismjs@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.0.3.tgz#9675dacd5df511120dffde76e925a8344ca9bace" - integrity sha512-5nMAKRADa6BQh3orquGHCUzqoZyDhmvoQ7RBCJsM3e0W+wBPeV9qmF+dJjOf9d+c9dr2mpU2SrH45fO/BNqgWg== +"@abp/prismjs@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.1.0-rc.1.tgz#8b55c07b979a5bc31c03e417b5196c91931c776e" + integrity sha512-2E4XoMyBfnlVc9to6HLWoXVxuOA3n3nsME6VjCW9rgXIzZwrwam+g4/6vE9l8aU+U5k7YbZ3l9+7brLS1AMqTg== dependencies: - "@abp/clipboard" "~9.0.3" - "@abp/core" "~9.0.3" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/core" "~9.1.0-rc.1" prismjs "^1.29.0" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/tui-editor@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-9.0.3.tgz#f7d17844fa62562db99cc06d24ddeb6a80449a07" - integrity sha512-MS5lxKQBeGXT9PG/CliiOCtXYI6qpzI28icy3usIvzk9IaZRNedb+4HGhcmpoA61j5NaVow81S6pQo2KBaIBQw== +"@abp/tui-editor@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-9.1.0-rc.1.tgz#8878fed7d57df5d4fe5a5529f0825660880b5bdb" + integrity sha512-mcRniFUgT279paz9t4RRBzAaAtSx5Eb9+fqGHLpNDqu3thpDPg9Ms073d2On0ED+4WcYDMa9tRh9xVOYUS2ipA== dependencies: - "@abp/jquery" "~9.0.3" - "@abp/prismjs" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" + "@abp/prismjs" "~9.1.0-rc.1" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json index 5393d31123..73bd4f7637 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": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1" } } diff --git a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock index 3de1cb98c3..f93e9ebfe7 100644 --- a/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock +++ b/modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/cms-kit/angular/package.json b/modules/cms-kit/angular/package.json index fa29d30939..79607c8587 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": "~9.0.3", - "@abp/ng.identity": "~9.0.3", - "@abp/ng.setting-management": "~9.0.3", - "@abp/ng.tenant-management": "~9.0.3", - "@abp/ng.theme.basic": "~9.0.3", + "@abp/ng.account": "~9.1.0-rc.1", + "@abp/ng.identity": "~9.1.0-rc.1", + "@abp/ng.setting-management": "~9.1.0-rc.1", + "@abp/ng.tenant-management": "~9.1.0-rc.1", + "@abp/ng.theme.basic": "~9.1.0-rc.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 4a800fe89b..136e9d1927 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": ">=9.0.3", - "@abp/ng.theme.shared": ">=9.0.3" + "@abp/ng.core": ">=9.1.0-rc.1", + "@abp/ng.theme.shared": ">=9.1.0-rc.1" }, "dependencies": { "tslib": "^2.0.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json index 552cf134c8..a914897c9c 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": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1" } } diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock index 3de1cb98c3..f93e9ebfe7 100644 --- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json b/modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json index 10771644f8..5dba429337 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": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.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 3de1cb98c3..f93e9ebfe7 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json index 0f3f3e2d3f..5ac1ff6aed 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3", - "@abp/cms-kit": "9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1", + "@abp/cms-kit": "9.1.0-rc.1" } } diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock index e8b2551ae9..89e0a4a8f1 100644 --- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock +++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock @@ -2,302 +2,302 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/clipboard@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.0.3.tgz#bda02ce6da876890ef117697f30348b8c16aaf70" - integrity sha512-iprJtnshdpRgLIPxa5Tgj1IqkLvkl2QxTmjrqeiuRhU3S1ry0GnE6dx3jAealWUOoYr/bqXPbpXi3RN7R4baHw== +"@abp/clipboard@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.1.0-rc.1.tgz#ab6ac8dc5425931c556c5933f34c095278dc5605" + integrity sha512-liLXqmshDfXdp+S2ogG7ETvTxLr9F7oB4xqutJRNl1fSyMbnfjZBfs4lm+Ak+n0jQDvVXKL/cj4+8ztyuYujpg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" clipboard "^2.0.11" -"@abp/cms-kit.admin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-9.0.3.tgz#4d2e175662b8e44eb0f894b0f5b1df09548e98fa" - integrity sha512-RmAl1TkmTi0zVRemBcHD4rNYFs2G6hhzFb2OHPZYpH5b6rFE6OPZjNHOXvH+gBVfuqDv2mc1FNuNc7RZGksKnw== +"@abp/cms-kit.admin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-9.1.0-rc.1.tgz#f63e67303e6a1b8aaac8839cf00348db3fb0e1af" + integrity sha512-GNW18g6Y8zqro82PEwxmxfOPt5swzmIEggNTSuHY5CbwMdfnLTTFIwGrFvh2wqc9JCpF+xoo8qWyGQ1i8G5f2A== dependencies: - "@abp/codemirror" "~9.0.3" - "@abp/jstree" "~9.0.3" - "@abp/markdown-it" "~9.0.3" - "@abp/slugify" "~9.0.3" - "@abp/tui-editor" "~9.0.3" - "@abp/uppy" "~9.0.3" + "@abp/codemirror" "~9.1.0-rc.1" + "@abp/jstree" "~9.1.0-rc.1" + "@abp/markdown-it" "~9.1.0-rc.1" + "@abp/slugify" "~9.1.0-rc.1" + "@abp/tui-editor" "~9.1.0-rc.1" + "@abp/uppy" "~9.1.0-rc.1" -"@abp/cms-kit.public@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-9.0.3.tgz#fd5478a953c8f84eaedc029dbb22071cc557d249" - integrity sha512-CFIidxnrBIo2AextML/Cdmt5wBRXmNjET9ZgkT6joItJTofu5U3hnTNRaliZ5sRFnowHBKC19UWmdxemBFZZSg== +"@abp/cms-kit.public@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-9.1.0-rc.1.tgz#ae5b8f240ed1c8b6210b3d2a34334f28fcb6756b" + integrity sha512-gAOR6H2ZXTUQip0QF0YuiUkW/EI2xL4Iu8U2P40j1c501Ct2PVGx8Qz19a4kWKECqEjyIKmPJLHoWYkAS8cvcg== dependencies: - "@abp/highlight.js" "~9.0.3" - "@abp/star-rating-svg" "~9.0.3" + "@abp/highlight.js" "~9.1.0-rc.1" + "@abp/star-rating-svg" "~9.1.0-rc.1" -"@abp/cms-kit@9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-9.0.3.tgz#998189b381c1d1c8c396a593309da734e5eb7964" - integrity sha512-Gi3V+8280pEmigZbxbAu0tMuNCjUCX1fVYEjH3NWWdw3dU0iHpAUqow7NU1psmqFe2Sfiesn1NtVYGVzYHKdYw== +"@abp/cms-kit@9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-9.1.0-rc.1.tgz#08f58161d23e86ffd262cfe4fb1468d755f55d67" + integrity sha512-ikqZQuT4KOsNVArKWhpApUReWj6kxCL6UV2Zed9iZblbajOOUzbBuKSTTdeocm05fl613V/7KZ902YbHHGtDrw== dependencies: - "@abp/cms-kit.admin" "~9.0.3" - "@abp/cms-kit.public" "~9.0.3" + "@abp/cms-kit.admin" "~9.1.0-rc.1" + "@abp/cms-kit.public" "~9.1.0-rc.1" -"@abp/codemirror@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-9.0.3.tgz#07337675159eabfb96549d9cc4624fae6466e7ff" - integrity sha512-y9pTi89Cp+8Os/E3tvU7oFABvYGbj5Wj1EBWRP6M+eojU1t2z95T7i4dGaOFEDht4UYNTiy10XnS3SZ0m7RDAw== +"@abp/codemirror@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-9.1.0-rc.1.tgz#d92e57c3717f20c9ef7cb555adc0336a9014d02e" + integrity sha512-KXHShKiWG28T/sBPgclj8M2LlvuBYPTrPIgNZJF+QN/CUEub63EHynkzH51U3ZnxfqepgfspCnYG2pgohTr7Tg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" codemirror "^5.65.1" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/highlight.js@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-9.0.3.tgz#967b497badf854a9f0036082a39cf57eefd6d7c7" - integrity sha512-4/VhrgaiLb9kqO7HRAcmyoE63DFwMZToSjpSsXZPXMA2SM64cHjCz6cN5Ukh+GGOEolDVlbHoExON067rOz42w== +"@abp/highlight.js@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-9.1.0-rc.1.tgz#7e5077963207678b09301bd8ef3fbe24452a4ab2" + integrity sha512-7g4NlkJklbvGkYUq8fHn1iAy8DDunauyNSk5CWhE8PXh/6WwRtazgvghLBel0D4NOIVEGrCIPfk+nK5KJkNPUw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@highlightjs/cdn-assets" "~11.10.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/jstree@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-9.0.3.tgz#9b59718dbeaacff6815964ed8e502c80d391ce22" - integrity sha512-+gge9T1G/n1edqDWRelyP+0V3jns1J6yObs7rg5ozpczwNwnJdZ74bHVT8phZqjF+ExpTkBI8GlyvtcUt93CAA== +"@abp/jstree@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-9.1.0-rc.1.tgz#430aee8d24b5e518b9c7580b41f5456e2455d582" + integrity sha512-fI8NEu81qcEqObN8isSBje2feC/81urukdgu5xAIOTIS9JPOKpJ/2eUifA6N1qH/tOzhrki0cKnk+Z/+YDyxZQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jstree "^3.3.17" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/markdown-it@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-9.0.3.tgz#d753ccffd6fdd11cab6f318deaa332bd24fe5d3b" - integrity sha512-AKMVASGySUIbUgHs7jEhh2dXaQeqbL2300YhlL0UCovEGmhUcwN/hv+zkVOM36a1RWs0Ysh3vHb7WgRP0GQSAA== +"@abp/markdown-it@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-9.1.0-rc.1.tgz#d32ffd866f5d85ea9ceb89379f4ab234d743b00e" + integrity sha512-JwojwSjNLOl3d2glSU+gx9+lv0M1DuP87RExxtsuM+Ugi09YZM4yqlIIlkxn0ZxyzNw4fvI6jWAxZECn4cwCrw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" markdown-it "^14.1.0" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/prismjs@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.0.3.tgz#9675dacd5df511120dffde76e925a8344ca9bace" - integrity sha512-5nMAKRADa6BQh3orquGHCUzqoZyDhmvoQ7RBCJsM3e0W+wBPeV9qmF+dJjOf9d+c9dr2mpU2SrH45fO/BNqgWg== +"@abp/prismjs@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.1.0-rc.1.tgz#8b55c07b979a5bc31c03e417b5196c91931c776e" + integrity sha512-2E4XoMyBfnlVc9to6HLWoXVxuOA3n3nsME6VjCW9rgXIzZwrwam+g4/6vE9l8aU+U5k7YbZ3l9+7brLS1AMqTg== dependencies: - "@abp/clipboard" "~9.0.3" - "@abp/core" "~9.0.3" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/core" "~9.1.0-rc.1" prismjs "^1.29.0" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/slugify@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-9.0.3.tgz#e073e5301b4c0d7bcb56272477e10f191a858a23" - integrity sha512-cCBjLW/Nc8FIP5U4U0fPq3zscS2N54evp2C5Zae/ADoPESBgR4F+p2q9+ieyMUCpyiHoYYhk+klHoSNibkxzQg== +"@abp/slugify@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-9.1.0-rc.1.tgz#2264772459210edb20341b8e0243563d1b2a5e4e" + integrity sha512-3CAaLGyP7ezBEfZcsQ/gIoY3misrTh7UgU6+MjvDBAkFpHJdboOjkE8zty+bVVn5VcbsLyjsgSZnshf4VVZ5tw== dependencies: slugify "^1.6.6" -"@abp/star-rating-svg@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-9.0.3.tgz#8e9943c5912fd8abb798c9ee04b497405397fb41" - integrity sha512-suEl3T+Nt91196pQ6GS4foojGQubsZjbPQ/N0TN7cqw0FPLBGQitb8V+7mG6Y5hGscWpTWXGfMR3iRiedlJ46A== +"@abp/star-rating-svg@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-9.1.0-rc.1.tgz#dc1a124151be7a38460c1849a0ecdd9dc3868598" + integrity sha512-VvNW0CzDS0vT46K7ANInfkbcvPOMAwMDStzdrXj8lkmI4CZo7/UQdtKam1b2xKayN3AVCxvaFLiq/Dxuj3dx2Q== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" star-rating-svg "^3.5.0" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/tui-editor@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-9.0.3.tgz#f7d17844fa62562db99cc06d24ddeb6a80449a07" - integrity sha512-MS5lxKQBeGXT9PG/CliiOCtXYI6qpzI28icy3usIvzk9IaZRNedb+4HGhcmpoA61j5NaVow81S6pQo2KBaIBQw== +"@abp/tui-editor@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-9.1.0-rc.1.tgz#8878fed7d57df5d4fe5a5529f0825660880b5bdb" + integrity sha512-mcRniFUgT279paz9t4RRBzAaAtSx5Eb9+fqGHLpNDqu3thpDPg9Ms073d2On0ED+4WcYDMa9tRh9xVOYUS2ipA== dependencies: - "@abp/jquery" "~9.0.3" - "@abp/prismjs" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" + "@abp/prismjs" "~9.1.0-rc.1" -"@abp/uppy@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-9.0.3.tgz#d1013a4b382d181e473487d712f9db78cf0b6f7b" - integrity sha512-sZXEadlRBZCTO+Vbcd2TyzrjWV311DC045X91GkQmeu0Yqc6M5QE3TEo00FfutZovJA4MblY0EXktmgSIkoZkQ== +"@abp/uppy@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-9.1.0-rc.1.tgz#21a9f2c517d9cae56fb422d836a8444474787c77" + integrity sha512-oLIfc/qHHHs+6A488rSBA3qaWH5GTGp7qBfQwoUvnYGMSYvlEJFSnB3qc1iSIl+az0Xww802VtgmnJe8CntrDQ== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" uppy "^4.4.1" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/docs/app/VoloDocs.Web/package.json b/modules/docs/app/VoloDocs.Web/package.json index 0437f4319b..6b6c57fda2 100644 --- a/modules/docs/app/VoloDocs.Web/package.json +++ b/modules/docs/app/VoloDocs.Web/package.json @@ -3,7 +3,7 @@ "name": "volo.docstestapp", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3", - "@abp/docs": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1", + "@abp/docs": "~9.1.0-rc.1" } } diff --git a/modules/docs/app/VoloDocs.Web/yarn.lock b/modules/docs/app/VoloDocs.Web/yarn.lock index 21d865b050..076b09577c 100644 --- a/modules/docs/app/VoloDocs.Web/yarn.lock +++ b/modules/docs/app/VoloDocs.Web/yarn.lock @@ -2,238 +2,238 @@ # yarn lockfile v1 -"@abp/anchor-js@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-9.0.3.tgz#a6183929f07d778cf3deed99bc2dc71ca619a49e" - integrity sha512-0c1RiXvpauYXfY/RlVLsD6OUoLNbLJOJGMSqoSolEcLgVwv5NXDC/q+UQOnAFjDC7f/34FQvsoxtspNFfoLUuw== +"@abp/anchor-js@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-9.1.0-rc.1.tgz#5ace7c3835cc833aeac2a6f8dfae5d4140199cae" + integrity sha512-4snmv6ICi7TM9ysijCBN45Mtn3Lu42VltZ73dsTsrFYmZ9Vy1QGa1BtF4rl2pFLDtBVVQtahk38cK7WbFB/1oA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" anchor-js "^5.0.0" -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/clipboard@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.0.3.tgz#bda02ce6da876890ef117697f30348b8c16aaf70" - integrity sha512-iprJtnshdpRgLIPxa5Tgj1IqkLvkl2QxTmjrqeiuRhU3S1ry0GnE6dx3jAealWUOoYr/bqXPbpXi3RN7R4baHw== +"@abp/clipboard@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.1.0-rc.1.tgz#ab6ac8dc5425931c556c5933f34c095278dc5605" + integrity sha512-liLXqmshDfXdp+S2ogG7ETvTxLr9F7oB4xqutJRNl1fSyMbnfjZBfs4lm+Ak+n0jQDvVXKL/cj4+8ztyuYujpg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" clipboard "^2.0.11" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/docs@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-9.0.3.tgz#a7f873a4c40d1e4b99442e1ccaf40db074778164" - integrity sha512-uVLMBqMTHDDmzQ5PZB9xkA/moHGeIRjqkUXED/6JtE6iphkNySR+Uw+nvRQGwfym6HgGbTHc+77Cc87P13ylxA== +"@abp/docs@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-9.1.0-rc.1.tgz#88b3b4a619803b3376781e8b5dc015cf32f51f41" + integrity sha512-3ZxkuVUNsj7sg1/qT5BqfsafvQhNDOUO9DSqMk/hTSrIvSNp6M2CrMjQwy7kuYNqvCX4X7FY4uNAbmVmNsjv6w== dependencies: - "@abp/anchor-js" "~9.0.3" - "@abp/clipboard" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/popper.js" "~9.0.3" - "@abp/prismjs" "~9.0.3" + "@abp/anchor-js" "~9.1.0-rc.1" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/popper.js" "~9.1.0-rc.1" + "@abp/prismjs" "~9.1.0-rc.1" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/popper.js@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-9.0.3.tgz#cc383e54900aa087a5c97ffbc99733cd17ed9554" - integrity sha512-AVc7zBa/wU/fg0NSR90TV1zHYXXr/L5OxvoTK//YVNIERzd0/VhgYQ9ltzU2XmZZrCtrlkfAo4d1cOnrm773sg== +"@abp/popper.js@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-9.1.0-rc.1.tgz#cdd832580f1888fedaf4da57a67858b81817432e" + integrity sha512-3NVy8P9bFpLyev+l71CfJ8+tO3bvbgxUmpyh08LT2jv1afTaE0S70+RXOAS0gq6xftzXYgCjwGEPCttHt6nDCA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@popperjs/core" "^2.11.8" -"@abp/prismjs@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.0.3.tgz#9675dacd5df511120dffde76e925a8344ca9bace" - integrity sha512-5nMAKRADa6BQh3orquGHCUzqoZyDhmvoQ7RBCJsM3e0W+wBPeV9qmF+dJjOf9d+c9dr2mpU2SrH45fO/BNqgWg== +"@abp/prismjs@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.1.0-rc.1.tgz#8b55c07b979a5bc31c03e417b5196c91931c776e" + integrity sha512-2E4XoMyBfnlVc9to6HLWoXVxuOA3n3nsME6VjCW9rgXIzZwrwam+g4/6vE9l8aU+U5k7YbZ3l9+7brLS1AMqTg== dependencies: - "@abp/clipboard" "~9.0.3" - "@abp/core" "~9.0.3" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/core" "~9.1.0-rc.1" prismjs "^1.29.0" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/openiddict/app/OpenIddict.Demo.Server/package.json b/modules/openiddict/app/OpenIddict.Demo.Server/package.json index 10771644f8..5dba429337 100644 --- a/modules/openiddict/app/OpenIddict.Demo.Server/package.json +++ b/modules/openiddict/app/OpenIddict.Demo.Server/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1" } } diff --git a/modules/openiddict/app/angular/package.json b/modules/openiddict/app/angular/package.json index 5aac38e3d8..12dd2e1b76 100644 --- a/modules/openiddict/app/angular/package.json +++ b/modules/openiddict/app/angular/package.json @@ -12,15 +12,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~9.0.3", - "@abp/ng.components": "~9.0.3", - "@abp/ng.core": "~9.0.3", - "@abp/ng.oauth": "~9.0.3", - "@abp/ng.identity": "~9.0.3", - "@abp/ng.setting-management": "~9.0.3", - "@abp/ng.tenant-management": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", - "@abp/ng.theme.lepton-x": "~4.0.4", + "@abp/ng.account": "~9.1.0-rc.1", + "@abp/ng.components": "~9.1.0-rc.1", + "@abp/ng.core": "~9.1.0-rc.1", + "@abp/ng.oauth": "~9.1.0-rc.1", + "@abp/ng.identity": "~9.1.0-rc.1", + "@abp/ng.setting-management": "~9.1.0-rc.1", + "@abp/ng.tenant-management": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", + "@abp/ng.theme.lepton-x": "~4.1.0-rc.1", "@angular/animations": "^15.0.1", "@angular/common": "^15.0.1", "@angular/compiler": "^15.0.1", @@ -36,7 +36,7 @@ "zone.js": "~0.11.4" }, "devDependencies": { - "@abp/ng.schematics": "~9.0.3", + "@abp/ng.schematics": "~9.1.0-rc.1", "@angular-devkit/build-angular": "^15.0.1", "@angular-eslint/builder": "~15.1.0", "@angular-eslint/eslint-plugin": "~15.1.0", diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json index 9b6a8fed1f..1802811be2 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json @@ -3,6 +3,6 @@ "name": "demo-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1" } } diff --git a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock index 3de1cb98c3..f93e9ebfe7 100644 --- a/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock +++ b/modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock @@ -2,194 +2,194 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json index c62b2d3f68..2ac94802de 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/package.json @@ -3,7 +3,7 @@ "version": "1.0.0", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3", - "@abp/virtual-file-explorer": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1", + "@abp/virtual-file-explorer": "~9.1.0-rc.1" } } diff --git a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock index e9d7d29803..07fdc5677d 100644 --- a/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock +++ b/modules/virtual-file-explorer/app/Volo.Abp.VirtualFileExplorer.DemoApp/yarn.lock @@ -2,221 +2,221 @@ # yarn lockfile v1 -"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.3.tgz#dcb95764ee11fc11ca593b722575275837cc58a9" - integrity sha512-NwTunUVwfaoZsNp1Js6B+jGPBw96taBhQ5hloKhtZFZxG2VMAN9Gy9fGxzUByYlpRB8CASR3kL+GRhrK2Ufc3A== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.3" - -"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.3.tgz#18f0d27cbba7ff22576c1c6e54891190c7d900bb" - integrity sha512-WHMvMiZhqvPLQtqo3aI+wkhNbZ3gCkWqwhIiXHvRks+tO92ww52evPlZUNDSWSSkhcB9vJddx5Eqv4phJgcMAA== - dependencies: - "@abp/aspnetcore.mvc.ui" "~9.0.3" - "@abp/bootstrap" "~9.0.3" - "@abp/bootstrap-datepicker" "~9.0.3" - "@abp/bootstrap-daterangepicker" "~9.0.3" - "@abp/datatables.net-bs5" "~9.0.3" - "@abp/font-awesome" "~9.0.3" - "@abp/jquery-form" "~9.0.3" - "@abp/jquery-validation-unobtrusive" "~9.0.3" - "@abp/lodash" "~9.0.3" - "@abp/luxon" "~9.0.3" - "@abp/malihu-custom-scrollbar-plugin" "~9.0.3" - "@abp/moment" "~9.0.3" - "@abp/select2" "~9.0.3" - "@abp/sweetalert2" "~9.0.3" - "@abp/timeago" "~9.0.3" - "@abp/toastr" "~9.0.3" - -"@abp/aspnetcore.mvc.ui@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.3.tgz#a4e2e92cddca77d81d8445bcc1d2cc129ec4b486" - integrity sha512-wkn7R8sx5lhbaZeTAy5aJxLbR1f3TD8lNaNtM1Lsc7wWq9dI19wyJZiAWqCZij2HOr2IK5izSROVfTqoXyUwXQ== +"@abp/aspnetcore.mvc.ui.theme.basic@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.1.0-rc.1.tgz#23c87db708ff4cc9e1c99c7433c494fd3a5ae0b8" + integrity sha512-N+l3BcYHVZgSmyfyhSt1o8ecg8pwu67JRE1wwcm/nqmtAYXNK77/wkd9KgJf+w0JHuFihLCnLUOF17jho3XWVQ== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.1.0-rc.1.tgz#c89df895b7814f5bdf7b7b8ca0c368b5d8e44538" + integrity sha512-zzO8JKGLI/zMqE1Yqnzs+EogPUq3sXBdLD13Hs1ZOBoMo2ck7r9/DnRD2YYpMEkbFNdpbOraKGCphDqa6+867w== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.1.0-rc.1" + "@abp/bootstrap" "~9.1.0-rc.1" + "@abp/bootstrap-datepicker" "~9.1.0-rc.1" + "@abp/bootstrap-daterangepicker" "~9.1.0-rc.1" + "@abp/datatables.net-bs5" "~9.1.0-rc.1" + "@abp/font-awesome" "~9.1.0-rc.1" + "@abp/jquery-form" "~9.1.0-rc.1" + "@abp/jquery-validation-unobtrusive" "~9.1.0-rc.1" + "@abp/lodash" "~9.1.0-rc.1" + "@abp/luxon" "~9.1.0-rc.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.1.0-rc.1" + "@abp/moment" "~9.1.0-rc.1" + "@abp/select2" "~9.1.0-rc.1" + "@abp/sweetalert2" "~9.1.0-rc.1" + "@abp/timeago" "~9.1.0-rc.1" + "@abp/toastr" "~9.1.0-rc.1" + +"@abp/aspnetcore.mvc.ui@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.1.0-rc.1.tgz#057934df3a8182a7f25e27c3d01753fc5977a82a" + integrity sha512-nNqRSkMVcpSkeQ8jk+fbDX4f09rofYgI4TU3vPCZSDUXC72OZYMTMCkhu3ryPm7JMreDRnjz6APY8nw+JIadCQ== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.3.tgz#aa40f5a31eb5c06224c165129a882658f4a0a9a5" - integrity sha512-Jg4oeBPtX7G41JdYjHVhB/6KQcMJO4WWXbUvkNetSUGTZGqacmgWRAIA5abmRWaHMJP1A1soZ9Ny1GNy0Qu65Q== +"@abp/bootstrap-datepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.1.0-rc.1.tgz#3e8555a25aa82503cf969cd2d0f11473f46757b4" + integrity sha512-Q/GQdBcbgYrb4ION0pYXzDgig+fkYGC0znTAGR0kCgwnLzcrjtQRWUjmfDUFgYP7QPmkh9F9pdQcivd5NV09Zw== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.3.tgz#a1c17721a1ff6613a3ee4ff971174b32a93d98de" - integrity sha512-wrvjb0bJudohxiYtecCGEa4VsvL/Kn/Z3q9w1jvIoallrTXQaACPtZDU+9yxK5mRf6zonwYI8JtNn4xKa+D1VA== +"@abp/bootstrap-daterangepicker@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.1.0-rc.1.tgz#840ef1b7841d747df614e25567d944ab61c08e8c" + integrity sha512-iNiNLVf/lpINnDQVqTgzexNG/LmiXCN3FU1oONgFSna2vJKRbzmlYUdVp4m2zwAlNaFNsdj5jr2sZiHkjauXiQ== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.0.3.tgz#dc0325c23282086c9d2be79588b228e8b2c66eb2" - integrity sha512-ypl0R3jky6qKmnEZjnSniwgN8unNmWD9d4bOtV5RgDF2MlBQT+CvfUcYnGom0JOsL+5RjSNvzFH/Q5aH/yuy7Q== +"@abp/bootstrap@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-9.1.0-rc.1.tgz#0bc9708d25fa0c53565d0f0fe47adff91516380b" + integrity sha512-R2kfUvdE4evOAFuOPpZUuocYfBP8OZy07kZ5EnvSoAjfzZ/aCpkR3ceVCZSa29g5jux4MQVB4jlgiSiAGskzDg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" bootstrap "^5.3.3" -"@abp/clipboard@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.0.3.tgz#bda02ce6da876890ef117697f30348b8c16aaf70" - integrity sha512-iprJtnshdpRgLIPxa5Tgj1IqkLvkl2QxTmjrqeiuRhU3S1ry0GnE6dx3jAealWUOoYr/bqXPbpXi3RN7R4baHw== +"@abp/clipboard@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-9.1.0-rc.1.tgz#ab6ac8dc5425931c556c5933f34c095278dc5605" + integrity sha512-liLXqmshDfXdp+S2ogG7ETvTxLr9F7oB4xqutJRNl1fSyMbnfjZBfs4lm+Ak+n0jQDvVXKL/cj4+8ztyuYujpg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" clipboard "^2.0.11" -"@abp/core@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.0.3.tgz#8c508dc60628fbd9e8a9ba35d153316cacbf1fb4" - integrity sha512-4bHiyP2qPrEeXb/Ynl17b6LtfygWdkwsjHaadUbym7Lg5qYUQZ3KjW4U2DihYWCO46gsr/ckTEbV9edcRd+NxA== +"@abp/core@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/core/-/core-9.1.0-rc.1.tgz#3793d77f611b1b9d661ee5803bd1569057f742cc" + integrity sha512-KA2xtBb+eiGnviZm8bMzlVbZSnWQS+JIJsrD4mwAGpX0ijLfXIq8jOELeG9G2XkYLN78Yj0pxzS8vDApD7SJ2A== dependencies: - "@abp/utils" "~9.0.3" + "@abp/utils" "~9.1.0-rc.1" -"@abp/datatables.net-bs5@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.3.tgz#c89813a69a1b568a171cb2a4b1bcc4b7a4ef1bef" - integrity sha512-SD6N4apScOR22S7EntengOTQ1HSm2WnvzUuP/6HG50isXyMheRalZxJ6zAsBwiWyYyJtA+UHkiQzwVhdV40aBQ== +"@abp/datatables.net-bs5@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-9.1.0-rc.1.tgz#2ffa6e46c3785851775a83c9c7069de92304f183" + integrity sha512-ctLeWZEbCggMfS3WhFIZimEylk04YLnRDz5Q5NDQyrFHHh7KH0/zGsKGw0AQFaf0mN1wikBAEkhXLqIRbLNWZQ== dependencies: - "@abp/datatables.net" "~9.0.3" + "@abp/datatables.net" "~9.1.0-rc.1" datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.0.3.tgz#9cc09127ff6269476b6b0de16048e1e6480227c4" - integrity sha512-zLzHxdXnmL8pWKVzf3m4SIUMiPHHe3I9Cw8vezk5fK1v18Fk364o3Q8o8C1l1YDGEa7Sx1wsUoLDN+p4FzagXg== +"@abp/datatables.net@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-9.1.0-rc.1.tgz#8bcc59ec58b539d9e403e7f25c8cc28f7c8257e8" + integrity sha512-6Z9y1wCB13bxipGkTJK9R8F+mrxG4juBtfOjOvLWdFIRE33HfrbQA6MD6RISQGOcNIOHF6b+VwSkFFOw2qm7nQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" datatables.net "^2.1.8" -"@abp/font-awesome@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.0.3.tgz#db6ece04fcdb4880cac8174deffb4fa04d43d2de" - integrity sha512-toI2zGayMeI4EUUMmittRWKBY/mLjiiX1zA2z70q/Hpm9zoCly2KwbN7zwtWbayhESO7edci9T7CXF5kNdiNow== +"@abp/font-awesome@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-9.1.0-rc.1.tgz#8e90b050c2acb2970de6c98958a50c896dc7b242" + integrity sha512-IRvSetF0HywDXzS6er2Adrp/dWGy6k9MUWqAlQuJSr/u3dnalnbKYns49yORWGHm4L6Y/Cjj+TwcF3tvFq3jzg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.0.3.tgz#907033a496af127bfbe4e220f43cda65331e7b98" - integrity sha512-kD/9S25kJSAj5f7bfHVMfzfF5/0OrLDj8E55M27zbusdcaFS/nYElzrU3DeAEusASdnssRAwyJCWyp2vvRIMzA== +"@abp/jquery-form@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-9.1.0-rc.1.tgz#561f3f1fd6742ef3cf2b6c5d2ab4897367ae004b" + integrity sha512-sOsIqX1tjE0mz9man7zzs+13/ZelMyRiytRbLjhv7RavLM00IKm5Q4nH3fWjd+G9HByG0Ba5uxYgA4IH3rwjbA== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.3.tgz#b9449d222d4855f941dbe7445f73fff1541975a4" - integrity sha512-U/zUDYyJnUYDmmloOx/rViVyg7b4Gxd4zgcEi1E1YP0zryQQh5CkoSEvzv7GyurB1/rVZuRszmo/nRgn3pHOKg== +"@abp/jquery-validation-unobtrusive@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.1.0-rc.1.tgz#9a906ec7b669fd9f217a410b6a88812c0a745c5b" + integrity sha512-ErgAy0x9ZRp95KXdprDWrZUy8HI67w24ayhRPXJxiybtYeO2kvnolHSJNrb9kJBstY568YScx0cWJ4b1iviORQ== dependencies: - "@abp/jquery-validation" "~9.0.3" + "@abp/jquery-validation" "~9.1.0-rc.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.0.3.tgz#02eb010267121fd9310cdcf5ca7c7b54091fd5de" - integrity sha512-tqjM5S0/jDS88CIt8oCQbHYJTytA7Y+KdTsnRkrA+BWy2A5bjrd6YUZXa/2UUwXHa3tQgv/uXl9HpDEaqRtfYQ== +"@abp/jquery-validation@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-9.1.0-rc.1.tgz#d6392eda98c80f355c2769080b59af77e0e401d9" + integrity sha512-MAIecmyJoGFqT6F0OgzNFNF9wUEnez+KiFMZ0kmCJaFWZCbVWXoK4v7C8sE8tqRpM16WJWQkeQefB5sEubDUdg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" jquery-validation "^1.21.0" -"@abp/jquery@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.0.3.tgz#ba8b4f4c0825ccb55c793024d3bbeb9ee817b19c" - integrity sha512-lZoyiyz83VOQKbN+9gD8JC+WI+OACc3y2hU+v30v220DLKhwoiVQM6d5yfA2QEugTPTjm/s40Ocmh/nVjm5mtg== +"@abp/jquery@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-9.1.0-rc.1.tgz#11db23ac334574d7c13b9792994b45494875bc54" + integrity sha512-WlrFID5d1u29Mz4XFjoNh/iUUJ+1dRaxN55gfqy75wjQV5vlblvHSsygb0AFNSF9ekQ8tBqr3w6AbGclmb0rGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" jquery "~3.7.1" -"@abp/lodash@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.0.3.tgz#daadfb98339f1d6982a12b655b840f105b324830" - integrity sha512-wt4ZJmRlhnK9W3o8lex7LyL/7rzgu4STLtZ2Ga8Ec5uZ9kN0CDTYjIw0zVqB8iGNKcW8MCxIGB7u9JMU9tphiQ== +"@abp/lodash@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-9.1.0-rc.1.tgz#c54fda2f94dc362937c0e87da28cc01261745e16" + integrity sha512-c2uSwNOAPeCcRClsQfwPpKwMFbUI7vgK523mKYc39QSZJhx/Enj37KUH56Y/iARo5HRas4J0TR/HqStiewmjOg== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" lodash "^4.17.21" -"@abp/luxon@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.0.3.tgz#62a5e395c92cadcf0985453eee065fcbe5354402" - integrity sha512-qTPw2vhgkgNldFJziHiL+c2vF7p+7RW1orev8K8XLSe3dguzlXBL2dicyDWCX9ay4zYfEpXbA0oKFgJvhBfK/w== +"@abp/luxon@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-9.1.0-rc.1.tgz#06480870b4db9ce8a6cad0dd93c6f517be3b44c6" + integrity sha512-HECD4GN827kLejyDDhh+ga4Zyn6xah1hqS5REbAzoAAV16/sZ7PRommUe6/kqFXNMCLTW3wQojJdBkKdaDLEiw== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.3.tgz#b3723f777b61c47ed64527b4295df33cca5cae26" - integrity sha512-aRearvDO1OaV7wfsWR2/cieWR/hG9cX78YGE08goRq0xLcGnBkmraQHSGGSZbMwId5zf5Kh3ePVXChO7llitkQ== +"@abp/malihu-custom-scrollbar-plugin@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.1.0-rc.1.tgz#1eb6a19f36429b1a911425189c04929cb34fef85" + integrity sha512-7bsAFjHldekilb0cr1P00zTjLqCJ+f2DgOhtNQ+FyHuNfWjZvfgdH8AFopku8s8Bt6ZZMOro11oiNe7moFRfGA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.0.3.tgz#696748659e036a1bf707684340703a861f340a92" - integrity sha512-7SRIjSHOyDTbuZ41vpisft+c5L+E3fk0G+V5+rpsACGTm6SpRqnVuAl5egbrDcm9rQeP0+VSV+/6UXdM7koOCQ== +"@abp/moment@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-9.1.0-rc.1.tgz#b43e8479a2ffc7f295d768c275af10d540d882be" + integrity sha512-3uwA39y38rrUyOjPtDj0m1OZ6RhLUG836rUUu0SexYd9wdGXeo34ShWucCGT78uEdzfBqyXfzAGLroS+ewUGgQ== dependencies: moment "^2.30.1" -"@abp/prismjs@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.0.3.tgz#9675dacd5df511120dffde76e925a8344ca9bace" - integrity sha512-5nMAKRADa6BQh3orquGHCUzqoZyDhmvoQ7RBCJsM3e0W+wBPeV9qmF+dJjOf9d+c9dr2mpU2SrH45fO/BNqgWg== +"@abp/prismjs@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-9.1.0-rc.1.tgz#8b55c07b979a5bc31c03e417b5196c91931c776e" + integrity sha512-2E4XoMyBfnlVc9to6HLWoXVxuOA3n3nsME6VjCW9rgXIzZwrwam+g4/6vE9l8aU+U5k7YbZ3l9+7brLS1AMqTg== dependencies: - "@abp/clipboard" "~9.0.3" - "@abp/core" "~9.0.3" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/core" "~9.1.0-rc.1" prismjs "^1.29.0" -"@abp/select2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.0.3.tgz#d75afa45decc4ce5a25ecb257f76a9f4c4c1b1fd" - integrity sha512-Cs/cQHdqV0U/c3RXbTTfIQoTaJqjBZMGon8cHX6rmvCDhWKOU/B2E+R2wNlcMjl0Tkhfy3Jl1mwlD0KZ/LePbA== +"@abp/select2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-9.1.0-rc.1.tgz#d0c49b27d39eb1b48640d07c066e06d320fed8da" + integrity sha512-mRLckiFInbdOrB05Qf8nT5qIRmeIBj++KyJz+X63R6Nyt8Uz2SV5FAkH7qRSJICB/lyZDqoL1HZ1EW7H+IhrQA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" select2 "^4.0.13" -"@abp/sweetalert2@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.0.3.tgz#b7619bcf664b7aaf51f096df1b60f604db36c84c" - integrity sha512-W9fQu1jGhzqliyqKU/OFtAHiS3b8kar3LN9Pij2g/Q8zS2esjdgdt4LoaI5SytRi7zXUqn2tCi/cDEDXf/X3zQ== +"@abp/sweetalert2@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-9.1.0-rc.1.tgz#36730034d28ca2316b8e52ed47593619b41656ee" + integrity sha512-aHuqp87dC/70qM3TG6yos8fm2xZeZeQkwoj0rA86VyXEtvJEonuLueiSS1iNjwTy3AO3TaRgjFTdAgVJeK/XdA== dependencies: - "@abp/core" "~9.0.3" + "@abp/core" "~9.1.0-rc.1" sweetalert2 "^11.14.1" -"@abp/timeago@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.0.3.tgz#8e675aafcc862643303909c27bbb982aa1c3c22c" - integrity sha512-B2ZHs4IfZyy+YHLlS/KLhxbqvxTkEEz1y+Sk8HtVSk0Ula5UD+U1FvwcxOiYGIghmHlkqFBtegifZosPOMB9VQ== +"@abp/timeago@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-9.1.0-rc.1.tgz#72057afeacc3dd475b8508184b94c5264bd1c66d" + integrity sha512-R9+k3LVLXO0eucxfaDFDHPCurwOyHQWYh+EsCK0CNnpm8q0tRgXDgHGpcRv+wSllVEn25nFDLK9moXe32xV1EQ== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" timeago "^1.6.7" -"@abp/toastr@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.0.3.tgz#1863fea4d709b524f8fea0233dfd0ff8b1bc5bb2" - integrity sha512-3eV17OBB8XLJC9dZWW6xzi4fpu5NZqNrRiKiYJf79IUvmuS0cBVKpNJVKRaDTp4DeDBHxCQOWmMnrNI/mh3bDQ== +"@abp/toastr@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-9.1.0-rc.1.tgz#7ce36f9abb15fdda11ccf1813fd5d52fc8d18023" + integrity sha512-jW4O29BuSLJYCyPvaKQd+iY6qWN/VUIJOB3g7PUWQOFxL+oWviEQK2bL3DZDtEQRyGyU/qZQB+zaore1e3Ovxg== dependencies: - "@abp/jquery" "~9.0.3" + "@abp/jquery" "~9.1.0-rc.1" toastr "^2.1.4" -"@abp/utils@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.0.3.tgz#02dfd981d210be8229d65f802f0721b42c9e17d7" - integrity sha512-45sQQ6IV3cB9KAIVtRn3IH1wVr9DfM0PMFiwVt3F+wKwNBAPsKNcMPt4/EhZCNY3IMaEseJ7K/lxt33O3sURuA== +"@abp/utils@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-9.1.0-rc.1.tgz#ddc5b216b54c23abd03a2ac8cea759fdecd7019f" + integrity sha512-BFlLQ5wGlx1w1y7iNY3404KIgf+jxDUVKVeYojv9iRK/HzT9btUJeGlPo2T5lXlV8Hvfq3PZjcWJrvHDU4Bn9w== dependencies: just-compare "^2.3.0" -"@abp/virtual-file-explorer@~9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-9.0.3.tgz#8545982f2157746af70d8e9f989d817dff23ff80" - integrity sha512-2iR5AhRcjHDrk0fWwqTfpnlK7FVCJOYuc2Hi32qm/TKs6yfEgtMFtx1Ol2ucd4Fc3L3VzUJvj36YeokXJDg+dA== +"@abp/virtual-file-explorer@~9.1.0-rc.1": + version "9.1.0-rc.1" + resolved "https://registry.yarnpkg.com/@abp/virtual-file-explorer/-/virtual-file-explorer-9.1.0-rc.1.tgz#1c2ec620fe7d04d7ddf68b182793cd619d4e3c2b" + integrity sha512-CHiNg9dwsQ9cfjqfuOou29Pf3xftfVKvBiu0uc/z+H93l7QCyB9eQE9MtgmxqBPWMcANywNtR8Xwx0P+QYk4Rg== dependencies: - "@abp/clipboard" "~9.0.3" - "@abp/prismjs" "~9.0.3" + "@abp/clipboard" "~9.1.0-rc.1" + "@abp/prismjs" "~9.1.0-rc.1" "@fortawesome/fontawesome-free@^6.6.0": version "6.6.0" diff --git a/npm/lerna.json b/npm/lerna.json index 777bed196f..c822334a09 100644 --- a/npm/lerna.json +++ b/npm/lerna.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "packages": [ "packs/*" ], diff --git a/npm/ng-packs/package.json b/npm/ng-packs/package.json index d4bd2bd474..dfb3bc458e 100644 --- a/npm/ng-packs/package.json +++ b/npm/ng-packs/package.json @@ -44,8 +44,8 @@ }, "private": true, "devDependencies": { - "@abp/ng.theme.lepton-x": "~4.0.4", - "@abp/utils": "~9.0.3", + "@abp/ng.theme.lepton-x": "~4.1.0-rc.1", + "@abp/utils": "~9.1.0-rc.1", "@angular-devkit/build-angular": "~19.0.0", "@angular-devkit/core": "~19.0.0", "@angular-devkit/schematics": "~19.0.0", diff --git a/npm/ng-packs/packages/account-core/package.json b/npm/ng-packs/packages/account-core/package.json index 13585121bd..79c5451901 100644 --- a/npm/ng-packs/packages/account-core/package.json +++ b/npm/ng-packs/packages/account-core/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account.core", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.core": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/account/package.json b/npm/ng-packs/packages/account/package.json index cb9a6f223b..1c3bae9450 100644 --- a/npm/ng-packs/packages/account/package.json +++ b/npm/ng-packs/packages/account/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.account", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.account.core": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/components/package.json b/npm/ng-packs/packages/components/package.json index 1fc6380c17..63463950a8 100644 --- a/npm/ng-packs/packages/components/package.json +++ b/npm/ng-packs/packages/components/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.components", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "peerDependencies": { - "@abp/ng.core": ">=9.0.3", - "@abp/ng.theme.shared": ">=9.0.3" + "@abp/ng.core": ">=9.1.0-rc.1", + "@abp/ng.theme.shared": ">=9.1.0-rc.1" }, "dependencies": { "chart.js": "^3.5.1", diff --git a/npm/ng-packs/packages/core/package.json b/npm/ng-packs/packages/core/package.json index 770b13e36c..15e8841eca 100644 --- a/npm/ng-packs/packages/core/package.json +++ b/npm/ng-packs/packages/core/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.core", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/utils": "~9.0.3", + "@abp/utils": "~9.1.0-rc.1", "just-clone": "^6.0.0", "just-compare": "^2.0.0", "ts-toolbelt": "^9.0.0", diff --git a/npm/ng-packs/packages/feature-management/package.json b/npm/ng-packs/packages/feature-management/package.json index 8cdece4f9e..e3efbfd7bb 100644 --- a/npm/ng-packs/packages/feature-management/package.json +++ b/npm/ng-packs/packages/feature-management/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.feature-management", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/generators/package.json b/npm/ng-packs/packages/generators/package.json index 765c2f8977..a03054dc81 100644 --- a/npm/ng-packs/packages/generators/package.json +++ b/npm/ng-packs/packages/generators/package.json @@ -1,6 +1,6 @@ { "name": "@abp/nx.generators", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "generators": "./generators.json", "type": "commonjs", diff --git a/npm/ng-packs/packages/identity/package.json b/npm/ng-packs/packages/identity/package.json index 64a1d94c6a..bf6d2484b3 100644 --- a/npm/ng-packs/packages/identity/package.json +++ b/npm/ng-packs/packages/identity/package.json @@ -1,15 +1,15 @@ { "name": "@abp/ng.identity", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~9.0.3", - "@abp/ng.permission-management": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.components": "~9.1.0-rc.1", + "@abp/ng.permission-management": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/oauth/package.json b/npm/ng-packs/packages/oauth/package.json index 178d50bb49..5daf264259 100644 --- a/npm/ng-packs/packages/oauth/package.json +++ b/npm/ng-packs/packages/oauth/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.oauth", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~9.0.3", - "@abp/utils": "~9.0.3", + "@abp/ng.core": "~9.1.0-rc.1", + "@abp/utils": "~9.1.0-rc.1", "angular-oauth2-oidc": "^17.0.0", "just-clone": "^6.0.0", "just-compare": "^2.0.0", diff --git a/npm/ng-packs/packages/permission-management/package.json b/npm/ng-packs/packages/permission-management/package.json index fe4bac0ab1..387b7b79c6 100644 --- a/npm/ng-packs/packages/permission-management/package.json +++ b/npm/ng-packs/packages/permission-management/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.permission-management", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/schematics/package.json b/npm/ng-packs/packages/schematics/package.json index 193afeb4dd..361bf77604 100644 --- a/npm/ng-packs/packages/schematics/package.json +++ b/npm/ng-packs/packages/schematics/package.json @@ -1,6 +1,6 @@ { "name": "@abp/ng.schematics", - "version": "9.0.3", + "version": "9.1.0-rc.1", "author": "", "schematics": "./collection.json", "dependencies": { diff --git a/npm/ng-packs/packages/setting-management/package.json b/npm/ng-packs/packages/setting-management/package.json index 9bb11a6c44..4f05f57176 100644 --- a/npm/ng-packs/packages/setting-management/package.json +++ b/npm/ng-packs/packages/setting-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.setting-management", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.components": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.components": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/tenant-management/package.json b/npm/ng-packs/packages/tenant-management/package.json index 042a1fc74b..d91d971b2f 100644 --- a/npm/ng-packs/packages/tenant-management/package.json +++ b/npm/ng-packs/packages/tenant-management/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.tenant-management", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.feature-management": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.feature-management": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-basic/package.json b/npm/ng-packs/packages/theme-basic/package.json index 6db56c3b30..58f242365f 100644 --- a/npm/ng-packs/packages/theme-basic/package.json +++ b/npm/ng-packs/packages/theme-basic/package.json @@ -1,14 +1,14 @@ { "name": "@abp/ng.theme.basic", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.account.core": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.account.core": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "tslib": "^2.0.0" }, "publishConfig": { diff --git a/npm/ng-packs/packages/theme-shared/package.json b/npm/ng-packs/packages/theme-shared/package.json index 10d9e6e4c2..b8376770b7 100644 --- a/npm/ng-packs/packages/theme-shared/package.json +++ b/npm/ng-packs/packages/theme-shared/package.json @@ -1,13 +1,13 @@ { "name": "@abp/ng.theme.shared", - "version": "9.0.3", + "version": "9.1.0-rc.1", "homepage": "https://abp.io", "repository": { "type": "git", "url": "https://github.com/abpframework/abp.git" }, "dependencies": { - "@abp/ng.core": "~9.0.3", + "@abp/ng.core": "~9.1.0-rc.1", "@fortawesome/fontawesome-free": "^5.0.0", "@ng-bootstrap/ng-bootstrap": "~17.0.0", "@ngx-validate/core": "^0.2.0", diff --git a/npm/packs/anchor-js/package.json b/npm/packs/anchor-js/package.json index a2f5772e25..309421082c 100644 --- a/npm/packs/anchor-js/package.json +++ b/npm/packs/anchor-js/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/anchor-js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "anchor-js": "^5.0.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/aspnetcore.components.server.basictheme/package.json b/npm/packs/aspnetcore.components.server.basictheme/package.json index b23652e0e3..57aae60c6d 100644 --- a/npm/packs/aspnetcore.components.server.basictheme/package.json +++ b/npm/packs/aspnetcore.components.server.basictheme/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/aspnetcore.components.server.basictheme", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.components.server.theming": "~9.0.3" + "@abp/aspnetcore.components.server.theming": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.components.server.theming/package.json b/npm/packs/aspnetcore.components.server.theming/package.json index d3edbcccdb..f1c15913a1 100644 --- a/npm/packs/aspnetcore.components.server.theming/package.json +++ b/npm/packs/aspnetcore.components.server.theming/package.json @@ -1,12 +1,12 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/aspnetcore.components.server.theming", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/bootstrap": "~9.0.3", - "@abp/font-awesome": "~9.0.3" + "@abp/bootstrap": "~9.1.0-rc.1", + "@abp/font-awesome": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json index ab0c959247..4d7e573cfd 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.basic/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/aspnetcore.mvc.ui.theme.basic", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.shared": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json index 49553ce8de..bbd90971f9 100644 --- a/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json +++ b/npm/packs/aspnetcore.mvc.ui.theme.shared/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/aspnetcore.mvc.ui.theme.shared", "repository": { "type": "git", @@ -10,22 +10,22 @@ "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui": "~9.0.3", - "@abp/bootstrap": "~9.0.3", - "@abp/bootstrap-datepicker": "~9.0.3", - "@abp/bootstrap-daterangepicker": "~9.0.3", - "@abp/datatables.net-bs5": "~9.0.3", - "@abp/font-awesome": "~9.0.3", - "@abp/jquery-form": "~9.0.3", - "@abp/jquery-validation-unobtrusive": "~9.0.3", - "@abp/lodash": "~9.0.3", - "@abp/luxon": "~9.0.3", - "@abp/malihu-custom-scrollbar-plugin": "~9.0.3", - "@abp/moment": "~9.0.3", - "@abp/select2": "~9.0.3", - "@abp/sweetalert2": "~9.0.3", - "@abp/timeago": "~9.0.3", - "@abp/toastr": "~9.0.3" + "@abp/aspnetcore.mvc.ui": "~9.1.0-rc.1", + "@abp/bootstrap": "~9.1.0-rc.1", + "@abp/bootstrap-datepicker": "~9.1.0-rc.1", + "@abp/bootstrap-daterangepicker": "~9.1.0-rc.1", + "@abp/datatables.net-bs5": "~9.1.0-rc.1", + "@abp/font-awesome": "~9.1.0-rc.1", + "@abp/jquery-form": "~9.1.0-rc.1", + "@abp/jquery-validation-unobtrusive": "~9.1.0-rc.1", + "@abp/lodash": "~9.1.0-rc.1", + "@abp/luxon": "~9.1.0-rc.1", + "@abp/malihu-custom-scrollbar-plugin": "~9.1.0-rc.1", + "@abp/moment": "~9.1.0-rc.1", + "@abp/select2": "~9.1.0-rc.1", + "@abp/sweetalert2": "~9.1.0-rc.1", + "@abp/timeago": "~9.1.0-rc.1", + "@abp/toastr": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/aspnetcore.mvc.ui/package-lock.json b/npm/packs/aspnetcore.mvc.ui/package-lock.json index 1a4266359a..bbd2287024 100644 --- a/npm/packs/aspnetcore.mvc.ui/package-lock.json +++ b/npm/packs/aspnetcore.mvc.ui/package-lock.json @@ -1,6 +1,6 @@ { "name": "@abp/aspnetcore.mvc.ui", - "version": "9.0.3", + "version": "9.1.0-rc.1", "lockfileVersion": 1, "requires": true, "packages": { diff --git a/npm/packs/aspnetcore.mvc.ui/package.json b/npm/packs/aspnetcore.mvc.ui/package.json index f3becbd4f1..96c7ab0605 100644 --- a/npm/packs/aspnetcore.mvc.ui/package.json +++ b/npm/packs/aspnetcore.mvc.ui/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/aspnetcore.mvc.ui", "repository": { "type": "git", diff --git a/npm/packs/blogging/package.json b/npm/packs/blogging/package.json index 31dfe5bf25..2960d13e17 100644 --- a/npm/packs/blogging/package.json +++ b/npm/packs/blogging/package.json @@ -1,14 +1,14 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/blogging", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~9.0.3", - "@abp/owl.carousel": "~9.0.3", - "@abp/prismjs": "~9.0.3", - "@abp/tui-editor": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.shared": "~9.1.0-rc.1", + "@abp/owl.carousel": "~9.1.0-rc.1", + "@abp/prismjs": "~9.1.0-rc.1", + "@abp/tui-editor": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/bootstrap-datepicker/package.json b/npm/packs/bootstrap-datepicker/package.json index 5d0a6faa42..7b47f5b9f8 100644 --- a/npm/packs/bootstrap-datepicker/package.json +++ b/npm/packs/bootstrap-datepicker/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/bootstrap-datepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap-daterangepicker/package.json b/npm/packs/bootstrap-daterangepicker/package.json index 8ce078f9a2..12b9dce271 100644 --- a/npm/packs/bootstrap-daterangepicker/package.json +++ b/npm/packs/bootstrap-daterangepicker/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/bootstrap-daterangepicker", "repository": { "type": "git", diff --git a/npm/packs/bootstrap/package.json b/npm/packs/bootstrap/package.json index cf9af47b39..5701ef1f01 100644 --- a/npm/packs/bootstrap/package.json +++ b/npm/packs/bootstrap/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/bootstrap", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "bootstrap": "^5.3.3" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/chart.js/package.json b/npm/packs/chart.js/package.json index f2a6594887..048027aaad 100644 --- a/npm/packs/chart.js/package.json +++ b/npm/packs/chart.js/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/chart.js", "publishConfig": { "access": "public" diff --git a/npm/packs/clipboard/package.json b/npm/packs/clipboard/package.json index c696292fa4..ce0b8c2a37 100644 --- a/npm/packs/clipboard/package.json +++ b/npm/packs/clipboard/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/clipboard", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "clipboard": "^2.0.11" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/cms-kit.admin/package.json b/npm/packs/cms-kit.admin/package.json index 1c97c6a0d7..7ea85a6e0b 100644 --- a/npm/packs/cms-kit.admin/package.json +++ b/npm/packs/cms-kit.admin/package.json @@ -1,16 +1,16 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/cms-kit.admin", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/codemirror": "~9.0.3", - "@abp/jstree": "~9.0.3", - "@abp/markdown-it": "~9.0.3", - "@abp/slugify": "~9.0.3", - "@abp/tui-editor": "~9.0.3", - "@abp/uppy": "~9.0.3" + "@abp/codemirror": "~9.1.0-rc.1", + "@abp/jstree": "~9.1.0-rc.1", + "@abp/markdown-it": "~9.1.0-rc.1", + "@abp/slugify": "~9.1.0-rc.1", + "@abp/tui-editor": "~9.1.0-rc.1", + "@abp/uppy": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cms-kit.public/package.json b/npm/packs/cms-kit.public/package.json index 40d8a42d37..d420b5d078 100644 --- a/npm/packs/cms-kit.public/package.json +++ b/npm/packs/cms-kit.public/package.json @@ -1,12 +1,12 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/cms-kit.public", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/highlight.js": "~9.0.3", - "@abp/star-rating-svg": "~9.0.3" + "@abp/highlight.js": "~9.1.0-rc.1", + "@abp/star-rating-svg": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cms-kit/package.json b/npm/packs/cms-kit/package.json index a30712f955..69ac1c8c2f 100644 --- a/npm/packs/cms-kit/package.json +++ b/npm/packs/cms-kit/package.json @@ -1,12 +1,12 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/cms-kit", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/cms-kit.admin": "~9.0.3", - "@abp/cms-kit.public": "~9.0.3" + "@abp/cms-kit.admin": "~9.1.0-rc.1", + "@abp/cms-kit.public": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/codemirror/package.json b/npm/packs/codemirror/package.json index b2404eb7c2..5bb5da6778 100644 --- a/npm/packs/codemirror/package.json +++ b/npm/packs/codemirror/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/codemirror", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "codemirror": "^5.65.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/core/package.json b/npm/packs/core/package.json index 843493450e..e9b113556d 100644 --- a/npm/packs/core/package.json +++ b/npm/packs/core/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/core", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/utils": "~9.0.3" + "@abp/utils": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/cropperjs/package.json b/npm/packs/cropperjs/package.json index 1c8bdf2c90..ef91d71515 100644 --- a/npm/packs/cropperjs/package.json +++ b/npm/packs/cropperjs/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/cropperjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "cropperjs": "^1.6.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net-bs4/package.json b/npm/packs/datatables.net-bs4/package.json index 4e7b4b1a42..7c55cea6c8 100644 --- a/npm/packs/datatables.net-bs4/package.json +++ b/npm/packs/datatables.net-bs4/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/datatables.net-bs4", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/datatables.net": "~9.0.3", + "@abp/datatables.net": "~9.1.0-rc.1", "datatables.net-bs4": "^2.1.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net-bs5/package.json b/npm/packs/datatables.net-bs5/package.json index 6d8eceb6de..048570d2a4 100644 --- a/npm/packs/datatables.net-bs5/package.json +++ b/npm/packs/datatables.net-bs5/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/datatables.net-bs5", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/datatables.net": "~9.0.3", + "@abp/datatables.net": "~9.1.0-rc.1", "datatables.net-bs5": "^2.1.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/datatables.net/package.json b/npm/packs/datatables.net/package.json index 12f92bbcd1..0f8e82c01d 100644 --- a/npm/packs/datatables.net/package.json +++ b/npm/packs/datatables.net/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/datatables.net", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", + "@abp/jquery": "~9.1.0-rc.1", "datatables.net": "^2.1.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/docs/package.json b/npm/packs/docs/package.json index ecd5157b20..0a9aceec5b 100644 --- a/npm/packs/docs/package.json +++ b/npm/packs/docs/package.json @@ -1,15 +1,15 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/docs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/anchor-js": "~9.0.3", - "@abp/clipboard": "~9.0.3", - "@abp/malihu-custom-scrollbar-plugin": "~9.0.3", - "@abp/popper.js": "~9.0.3", - "@abp/prismjs": "~9.0.3" + "@abp/anchor-js": "~9.1.0-rc.1", + "@abp/clipboard": "~9.1.0-rc.1", + "@abp/malihu-custom-scrollbar-plugin": "~9.1.0-rc.1", + "@abp/popper.js": "~9.1.0-rc.1", + "@abp/prismjs": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/flag-icon-css/package.json b/npm/packs/flag-icon-css/package.json index f7c8ba8cdd..4357090306 100644 --- a/npm/packs/flag-icon-css/package.json +++ b/npm/packs/flag-icon-css/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/flag-icon-css", "publishConfig": { "access": "public" diff --git a/npm/packs/flag-icons/package.json b/npm/packs/flag-icons/package.json index f1f20217c8..9c3f556e16 100644 --- a/npm/packs/flag-icons/package.json +++ b/npm/packs/flag-icons/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/flag-icons", "publishConfig": { "access": "public" diff --git a/npm/packs/font-awesome/package.json b/npm/packs/font-awesome/package.json index bd1cc280de..dfff41251e 100644 --- a/npm/packs/font-awesome/package.json +++ b/npm/packs/font-awesome/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/font-awesome", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "@fortawesome/fontawesome-free": "^6.6.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/highlight.js/package.json b/npm/packs/highlight.js/package.json index ede8f72b54..ebde5868f6 100644 --- a/npm/packs/highlight.js/package.json +++ b/npm/packs/highlight.js/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/highlight.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "@highlightjs/cdn-assets": "~11.10.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-form/package.json b/npm/packs/jquery-form/package.json index 2b0a9186d2..5b32dfe976 100644 --- a/npm/packs/jquery-form/package.json +++ b/npm/packs/jquery-form/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/jquery-form", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", + "@abp/jquery": "~9.1.0-rc.1", "jquery-form": "^4.3.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-validation-unobtrusive/package.json b/npm/packs/jquery-validation-unobtrusive/package.json index c46eb16949..d1c3074121 100644 --- a/npm/packs/jquery-validation-unobtrusive/package.json +++ b/npm/packs/jquery-validation-unobtrusive/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/jquery-validation-unobtrusive", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery-validation": "~9.0.3", + "@abp/jquery-validation": "~9.1.0-rc.1", "jquery-validation-unobtrusive": "^4.0.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery-validation/package.json b/npm/packs/jquery-validation/package.json index 8c5c1971da..405b27d0a8 100644 --- a/npm/packs/jquery-validation/package.json +++ b/npm/packs/jquery-validation/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/jquery-validation", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", + "@abp/jquery": "~9.1.0-rc.1", "jquery-validation": "^1.21.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jquery/package.json b/npm/packs/jquery/package.json index a6d809b152..583c8dc0f4 100644 --- a/npm/packs/jquery/package.json +++ b/npm/packs/jquery/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/jquery", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "jquery": "~3.7.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/jstree/package.json b/npm/packs/jstree/package.json index 293292f0ac..1ee8bb9be8 100644 --- a/npm/packs/jstree/package.json +++ b/npm/packs/jstree/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/jstree", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", + "@abp/jquery": "~9.1.0-rc.1", "jstree": "^3.3.17" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/lodash/package.json b/npm/packs/lodash/package.json index 340911dd1b..ae0002639d 100644 --- a/npm/packs/lodash/package.json +++ b/npm/packs/lodash/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/lodash", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "lodash": "^4.17.21" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/luxon/package.json b/npm/packs/luxon/package.json index cecb2c8c68..46e4f9af34 100644 --- a/npm/packs/luxon/package.json +++ b/npm/packs/luxon/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/luxon", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "luxon": "^3.5.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/malihu-custom-scrollbar-plugin/package.json b/npm/packs/malihu-custom-scrollbar-plugin/package.json index a4b80b0df9..6908d9e119 100644 --- a/npm/packs/malihu-custom-scrollbar-plugin/package.json +++ b/npm/packs/malihu-custom-scrollbar-plugin/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/malihu-custom-scrollbar-plugin", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "malihu-custom-scrollbar-plugin": "^3.1.5" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/markdown-it/package.json b/npm/packs/markdown-it/package.json index 0501ab1de6..a26f431c44 100644 --- a/npm/packs/markdown-it/package.json +++ b/npm/packs/markdown-it/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/markdown-it", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "markdown-it": "^14.1.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/moment/package.json b/npm/packs/moment/package.json index 9d7a90debf..9879b92ae9 100644 --- a/npm/packs/moment/package.json +++ b/npm/packs/moment/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/moment", "repository": { "type": "git", diff --git a/npm/packs/owl.carousel/package.json b/npm/packs/owl.carousel/package.json index c335484964..f87d459ef1 100644 --- a/npm/packs/owl.carousel/package.json +++ b/npm/packs/owl.carousel/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/owl.carousel", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "owl.carousel": "^2.3.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/popper.js/package.json b/npm/packs/popper.js/package.json index 73390b2428..db7508a0a2 100644 --- a/npm/packs/popper.js/package.json +++ b/npm/packs/popper.js/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/popper.js", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "@popperjs/core": "^2.11.8" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/prismjs/package.json b/npm/packs/prismjs/package.json index 30c5d8cccf..8cadce5bde 100644 --- a/npm/packs/prismjs/package.json +++ b/npm/packs/prismjs/package.json @@ -1,12 +1,12 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/prismjs", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~9.0.3", - "@abp/core": "~9.0.3", + "@abp/clipboard": "~9.1.0-rc.1", + "@abp/core": "~9.1.0-rc.1", "prismjs": "^1.29.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/qrcode/package.json b/npm/packs/qrcode/package.json index a6c3a2e881..d1602428e1 100644 --- a/npm/packs/qrcode/package.json +++ b/npm/packs/qrcode/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/qrcode", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3" + "@abp/core": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/select2/package.json b/npm/packs/select2/package.json index 4603515e27..a763f0d3d4 100644 --- a/npm/packs/select2/package.json +++ b/npm/packs/select2/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/select2", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "select2": "^4.0.13" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/signalr/package.json b/npm/packs/signalr/package.json index 94ba151cc4..dc27c99718 100644 --- a/npm/packs/signalr/package.json +++ b/npm/packs/signalr/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/signalr", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "@microsoft/signalr": "~8.0.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/slugify/package.json b/npm/packs/slugify/package.json index 8e7d51da8b..14c3797593 100644 --- a/npm/packs/slugify/package.json +++ b/npm/packs/slugify/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/slugify", "publishConfig": { "access": "public" diff --git a/npm/packs/star-rating-svg/package.json b/npm/packs/star-rating-svg/package.json index 307d7bb6ae..6b1d368fa7 100644 --- a/npm/packs/star-rating-svg/package.json +++ b/npm/packs/star-rating-svg/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/star-rating-svg", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", + "@abp/jquery": "~9.1.0-rc.1", "star-rating-svg": "^3.5.0" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/sweetalert2/package.json b/npm/packs/sweetalert2/package.json index 55ae7603f8..ff7da7f5d5 100644 --- a/npm/packs/sweetalert2/package.json +++ b/npm/packs/sweetalert2/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/sweetalert2", "publishConfig": { "access": "public" @@ -10,7 +10,7 @@ "directory": "npm/packs/sweetalert2" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "sweetalert2": "^11.14.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/timeago/package.json b/npm/packs/timeago/package.json index 6afc631151..f59d405a84 100644 --- a/npm/packs/timeago/package.json +++ b/npm/packs/timeago/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/timeago", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", + "@abp/jquery": "~9.1.0-rc.1", "timeago": "^1.6.7" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/toastr/package.json b/npm/packs/toastr/package.json index deb4f86946..7a3cfa3892 100644 --- a/npm/packs/toastr/package.json +++ b/npm/packs/toastr/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/toastr", "repository": { "type": "git", @@ -10,7 +10,7 @@ "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", + "@abp/jquery": "~9.1.0-rc.1", "toastr": "^2.1.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/tui-editor/package.json b/npm/packs/tui-editor/package.json index ce9e67bcde..d41beadcc6 100644 --- a/npm/packs/tui-editor/package.json +++ b/npm/packs/tui-editor/package.json @@ -1,12 +1,12 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/tui-editor", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/jquery": "~9.0.3", - "@abp/prismjs": "~9.0.3" + "@abp/jquery": "~9.1.0-rc.1", + "@abp/prismjs": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/uppy/package.json b/npm/packs/uppy/package.json index e10236ce24..c6e5d076ae 100644 --- a/npm/packs/uppy/package.json +++ b/npm/packs/uppy/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/uppy", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "uppy": "^4.4.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/utils/package.json b/npm/packs/utils/package.json index a2499d8d12..0424dcb1d4 100644 --- a/npm/packs/utils/package.json +++ b/npm/packs/utils/package.json @@ -1,6 +1,6 @@ { "name": "@abp/utils", - "version": "9.0.3", + "version": "9.1.0-rc.1", "scripts": { "prepublishOnly": "yarn install --ignore-scripts && node prepublish.js", "ng": "ng", diff --git a/npm/packs/vee-validate/package.json b/npm/packs/vee-validate/package.json index 3f5312fd8a..19963e1fb8 100644 --- a/npm/packs/vee-validate/package.json +++ b/npm/packs/vee-validate/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/vee-validate", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/vue": "~9.0.3", + "@abp/vue": "~9.1.0-rc.1", "vee-validate": "~3.4.4" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/npm/packs/virtual-file-explorer/package.json b/npm/packs/virtual-file-explorer/package.json index 64de7e7e4f..c08a97ec41 100644 --- a/npm/packs/virtual-file-explorer/package.json +++ b/npm/packs/virtual-file-explorer/package.json @@ -1,12 +1,12 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/virtual-file-explorer", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/clipboard": "~9.0.3", - "@abp/prismjs": "~9.0.3" + "@abp/clipboard": "~9.1.0-rc.1", + "@abp/prismjs": "~9.1.0-rc.1" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io", diff --git a/npm/packs/vue/package.json b/npm/packs/vue/package.json index cb617a1a05..9363ecea45 100644 --- a/npm/packs/vue/package.json +++ b/npm/packs/vue/package.json @@ -1,5 +1,5 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/vue", "publishConfig": { "access": "public" diff --git a/npm/packs/zxcvbn/package.json b/npm/packs/zxcvbn/package.json index 1043db320d..8dd45cc4b0 100644 --- a/npm/packs/zxcvbn/package.json +++ b/npm/packs/zxcvbn/package.json @@ -1,11 +1,11 @@ { - "version": "9.0.3", + "version": "9.1.0-rc.1", "name": "@abp/zxcvbn", "publishConfig": { "access": "public" }, "dependencies": { - "@abp/core": "~9.0.3", + "@abp/core": "~9.1.0-rc.1", "zxcvbn": "^4.4.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", diff --git a/source-code/Volo.Abp.Account.SourceCode/Volo.Abp.Account.SourceCode.zip b/source-code/Volo.Abp.Account.SourceCode/Volo.Abp.Account.SourceCode.zip index cf6b67d2d61d63e452244a0bd3bff412df1cffff..d9e68d5dbda7c666528e27a1025adb9d842664c3 100644 GIT binary patch delta 24390 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 ajL;}_opJd$HoHjwv_e@Mwq_3BQOJK$XW|S1 delta 24722 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 diff --git a/source-code/Volo.Abp.AuditLogging.SourceCode/Volo.Abp.AuditLogging.SourceCode.zip b/source-code/Volo.Abp.AuditLogging.SourceCode/Volo.Abp.AuditLogging.SourceCode.zip index 2de134bd115a2456913fd9c64dc102669c4649ed..8eacae14a1be2afa1c481add956413217dc309dd 100644 GIT binary patch delta 6965 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 T&$NIzI2H~PIkL6U@<{&&+iqEk delta 7460 zcmZu#2{@J8*FW1aB(o@)hayv^jG3oI#*%r~L=u&XI3X!Qyk&P4X;8V5ION|I(Lib7 zqEaFa%8gQ*u8O{W_Iq&Oe4giho@K4y8u#97uYEq;<$7?JOTf*E&M8Kt(Pq(}s`*5%bqEIvu zGi2rr@rWRXuX1gR>lkvy$3dgn62N*9e4_*ALxwKkCW55|7(z!@)i2t_k@lxpMDC@} zuhu**yr6U2rMp*tBEj$LJ)Rf|Xm3mjm$G4|gPfS+k(&yV3zLu2q(|xmCg08=s zSbs&bxyP(Nb^l%03k>3IhOvgyXBoBD(Zstymz+Ju6Oj{oHr=aQX_($_rd1QSHvdi=eSPqV_Z)Nq8e@IqR|Wqg;VO# zQV$3*hjk^$!q&*;;let~_W?mxVUPYJd%+gaXrgqYQO<)AwqfO9iH(eGkP_F+YSoJ_fMT+I98&|eDx8P8OdZm$v!SU2j+)@6EI9zp2x}H@2 z5o_%BtW>nGy*!bzG1*l0{Nc{+CqHf7dL=4bXz3UCt>Iha>PiF~Q^Gm}FVo7czBz-W zvNE68>?8gHx__B=rij`WX!m-lrOH2fCsnAWkrpv{2@c9K5d%uYxZu+(M0`-PV#+U+Bv-~vg}^J*sdAl;m(rnmeq|rp z@_(S!2_&AY_^}r!@nDZ5T}OED2-h=(S3tB$U7^mc+VRBP(h{$}8^cR(^xoTZTce}a zu)MO1-j_7?Nv_#cq#-%%2(o}o3FI6|egJJ#B$6Z{3C%-AgZ%aQV@bTHQfmpTXs@2A?ydU`q zF+UJkG{eGu?@RLGINxJwu9!k}G3nDpO_M##jLLb4Y*@8=S zUo)ITfVFu?H?04%5S1r{u+a8kcmzaV(-upV8@4#~bNAMZXRZ7Wo=`k@NX>jK&!9G7 zZGm4$kHD|-3zEIZY`AyMQhD>T$SLpX%cZNt%0Dj_=UcgRxKjDDbj3m&#e`k^PVQMQ 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 HF75vSbGsqG diff --git a/source-code/Volo.Abp.BackgroundJobs.SourceCode/Volo.Abp.BackgroundJobs.SourceCode.zip b/source-code/Volo.Abp.BackgroundJobs.SourceCode/Volo.Abp.BackgroundJobs.SourceCode.zip index e8e51ce0a659545e67450f2cd86848c2ec451797..a998e504c202ccfe589eb907ac51508d28044e2c 100644 GIT binary patch delta 8106 zcmaJ_2{=_<_vgx#F%-GsQs#Ls5ebnoV<;JuxQGlzZe)lzL$)aq6*6SVl!Q=1hD;5L zi%3+amm;EXJI6=&eZT+T^LWm>zcuW=erugQoaPCNuM-puM!FQ+*vQDpXvjQGrEW0T zQ-m2vJ@ir|r+`1pD#$NVB7!t^7=nPuG{Fd3j(a{aKIpf9a}Q0 zS=s4=0M5H4FgsvatDr+c#tGzPWP7%eksSla&kF*nT{tksK~G?-**m3r;&HJ_OhL|# z(ymhvtxjlA2uc*qr^@@Rw$JPK&wj7M=k~hEaiXq@zRO*=`)PfpHO> z@k#e1wN<5ECI-&L`cjosUGiHi!c)v=*TkO2U4Ck@%-zv9XLag3-Df-PCE1gCS7X2M z$j?7*{an)67;s>vfF_@*C#HOKm0RuyKDf9mxazx^+nasIiOrlP=Y8Us$WIl=IZu3G z@iY7~V5E1oZ#?X>F`nD4dv@COmI5b*Z>6N0x5Q66lJ)>`oZUzz9kCtcjO&$@x*F#z zgCQfkL4|mZ4<3r#&#%n%pzk(QwxFL*z<8TM8`=)#Y!Ktp`36113z{D80V& z_scBs=oV$)cpTO$MM?d$`{&Ki$B!E4;=K!;3awg#ne^CX`*ITa@>4V&g!`M6-kadf z@V#1ga=$c=`4YMII#sJ3>~RYtxaK9_Q2P+U&96GAu>C;0dh;%efbN{@l9s`*QtoLr zbYtmkUhfWHOQ%ao=H$It%+kk`d%2iy&ocSR!=94?W96NC<}4o{hg4O{I0qihW+GpZ zkc${59D5sMTqUgGEBTp9LFcH%q|T=)@>n5?nl*t#^@-OLL&lpU z12H0Y1bxG+YHXT|0&CQbMCz;p0kx2asR}`+F4bPLT-?{{+sEdvRX!!&uvf2mQJr?{ zRzPQasBTZOP`^%@h}X<9o$A*Io~^o3DtL{~%Qn;ETXAzg!Y?>4w}d}Z-|3oF*(Xv& z>CkpZu`~Srk>;Gy*Kcf<1DdYF`?yFVO3T&%H}3#tzFelf0w z7k1>|9@w~tHc`X5$Z^n#<8f>{j(9lAG^%=lwlb&WY=u{P!$B`WX1#hpE)N`c=kJKh zHx=QI4!Fq^pVeb+?E#R8L*o-nvtx>uGZ+E-d-V zr#+_z1LV9$r}mz+e^L{(RNX`Lt;AKG%3)@XH8kV^yklLxb1y#-8HDPwPA^rKi%JFD z+3b!Q>-BRy`P%wDft%|^n{$G_S8Sx|PnOA^f?XL8iU|%^%dgyI%lMheS6AJ#({AN3 z{@#VcV*~cV+|gQ*8gd7N-Pc={wqz)+I?a`DKWV!pXQmkSKs zKgMN(QM%5_O(Jxe%cGkEs8RGo0EPV&7-S_0Og4}of&8VCgIEy}FzinaI@<(6h7v1b z+VL&0ug)~iHqJgfsiL1_H;6xTGb{Hu@tc)hGWVsxSjE^G=}S!ukqVJaZ`;RQ@i+OV zSZX@n#)(^=vZ1--oqNPU^_5w0AGWTrrTpCH5*q$J)GPelh@f6uEl zf*`#LK9v9BX=VaP%2do zD3K-groQd$JT%h;4>b%4g~#=EDWsWe>DD6n{hU8I@IEohON9ya)aw-?IsF1hKw-)99j+~_QX)(_ceqQrN@3t@bE$^x_x5dpD``?v}Y~&-@6NRHK*G4i3 zOgLxqCuPcctt@^mXGiDSzf>xopt%;;Z^JGTOzkD=hdv4SihL!?J6v;kNb&r z5j90`G;*cwwKiM2I)8t-ib>8wB8l0OGnaWUN8@m~JpFG01!)1zW$K6X`RtTVK}ySW zq7hAPet&QYyAG^sP9O|TXxXD{puSEL0*vdtB1aA&v$(Rbmyj|8xc-?#cKN|1(+XLp$3>YsZ z*QCx=i%-4nq&rF!5zBGaZZW?n=x~zri_XFlZ{UQaP=g_TNBF+!{ia+Znm+yF*cWev z7$)^R4GCiS2N)Mqdii6k^gq9*i*^3}$>Eq_+>>t&Dp^G-J~wQ?b%WL-`LgEQ?nUKK z3u-ln?2m}Pk2lgDzc@R1C#T1~%E5nSawI+M!R~3HscqX^nm^tt`F+dXK{DW#;RAy| z7=fGaYtP=X1ek6a8JN{S0yMQU5jsBUpGEmGGD=2(FGejCNK4hLEa{Iyhr8gZsVf0# zsPLJP-@IefZUJJB?7wo2yZI^>#`rr7l70MS?PN5UXY^gg%;;<~YUYEU*GSdgWBqRB zmmTEJWs((LA6Ok4dco)7odlh`SHzxB=iv8eZp(P!VcznP|MYirsVHFs%Or7eMWIDE z>R-5Nkyx4F8^S^JVyBr~l^=3EI6^QB{KQV6OSw5bd(Y6Ow4Om``GWF%(a@U{=dL{3 z`F-2luVjjEeDsy(zwa&FJJ4-w{ri<{6-WHzPM;r^I%lxTz~@5hB^M{Z0YBaAR-c{< zf8X{(s@k4<)WgCgO+rbJ_$u!ZIVoSMt{8)GnEpCv@??PDycwZq#{3NWa@vgQKURaS z!$tvH2pqTJ0jqJ0pucY)p~6Iey@hJomwD7vlO8e%d|!bAIi;Z+gbn97J9Hk6PzYoyA?!`Ng_OSfJ%7d7zLl+r_z1 zm0RDDCG6`K7mw$SEcUMHV!1IcHqDubyJo2Qu}z>gA#<9|THEa9o}>~Ay6}kmT4sge zc2y1An=Ze(rf-**_`1Qr!cUBus_uu>o@;dzgO>cuBlq!dM|-?ts6zPrmR?AxyZsEj zq~e*D)~cmyHy+xaYGr8Q>~j0E#u3{I(N7uUtL4RC*#iQ<)eNhM?W@iD;#jJ3zBAX5 zd4ehE1Z|Rlft?9S_hzZ=Dy2(0m-lX?d!PBj?v3YL z3+Uy{4!ZJIaHfW*+fa|XTt`{)6n}D|Q&hQON%aRctz!*yH)<$YC}EN2d|RMzhO}`{F-G&P?--o$-wgg=aPkIe z_WlSx><;GWUhL_ZgDirDVXj_0u#3rH7kdD^%0ob{Uk==Kq9c^}3AXBNzjY;1WT$vf z`0Y#m?m4^ygVANy<-dt|J?nc|(|5h29W}9BYkJF+*$lfbCYIbcj#s$kV5iVpe^{)x zh6XdO%@9901c>tDWA#VxMDfQ9R~&P->psC9)TCr3kgFDO)c!Az)O^!BT!)`OoAE!I z;fi-=l#Pz#2+dd~j2Kb`o;&|xzL)>zC>3oY_O^)SjF%oq{Y#Z2UKM>6;kSG!9C!;F z^$UI-E@se65T9Ce95-iOi=gX~Gf4LdBFM^?AMoai3EQ1?h(-BQjL`OliFDtefs!^~ zd-&+8RdwId*k3EsRu4Sc`7EgS_DAZ9mBkC5L)@<|CF;WWA99sgJ%3X&QuJ4?M()!?+V1(>iGLs&L-?m}4>bO}XR=6CcrH-;=1K$i7E_Zb`@PB4H; z7fC|EV$6={`0M=4sv*bKZAT)Li=MQU5!{7>iFP*=N5=naIT05Ikp@f)tpeY2HQ$30yBe5o2=luGVDB z-d4I>c0(Bj>J2z?J6j#`-HWyP&2>XpnU&a6k4#vcnMz<$oQ~VAEbMb_kzM#o*g>uN zrsRpPpX2WPZmQ(>)fZaH@){~rC}z(um0u4zBSDDF`?>Ojc2U$bO{ykb%I#*K{~41b zA!4u1WUJph^+l-$9ItGN!bb(tX#L#u<^n|Mg-Qg+T&7b!qlmD>U;6uaL*wz;w+=bum@ zMI!gPj|v6;-sld<8!&@tSOcG;POmS2M}-c8EGke0FQLL(hyp4ohHj|vVPzlHlTIzijwEuHVYeAgyvGerbJLAON5z znllOWsL#oygJ{^)6f0C%Of^AO`e|IKfKM+#RoKk;D6(|t9V+zRdxolR=G36Vi98Qf z^)f#T70y4%L>uMtHH^Z~z@oZK1? zN;Z5O#xkIjj|$X0N8_|T$6`45A*$gfYH)JjE+E>3s+5|r7-{}ZRcI4Bp|zJ-%%I=~ ztcHwwcbcU?3+Bnb9p*|hs)f*op&UqkflhJrn*f~R2@>NVkqu)BAlS@;q^aDD#cUIU zuq3$FjPg_rAwF>gT4~wV;K#-GasFNkRh~P$S6zGP~$`){C)udHxqQ{@{2k z>iV=5i}@@A?zD*m+LwID3?yK>u5t)8{E`90b~7R=PoFou!w4h!QIe4ZzhR6; z{MYHKRfLcgVA`08NmSmptLw`(%|Gc<1et9Ykoa3y)qk?2q6CAP!b>X^h-pVFmEMlU zBpd`IhxoxzJ38ztg#48eNVNlnPIX{0Zw^7|n3$0+IfjjF^OLNVbMG?~BK%NFzZc!p zw-T~aU3UP*stA$D)Hd&eFn#SUODGj+Kw}N?s1q$-dnYWO7KHWzDJ^y|-A?~6>JE_j z&-~YTCm{48pOQf8D=fxT2Z?b-M{b=$gjMb?EM{s8&e*>-J(7DDN%*I_NSxU&v}?C+ zEM#P=B!;Vc(2zSmiw(?lBPB=1%jnMK4O=%U;;(=Ia`G_}>ng`p_Z8`>>dmKVgP-x{wh_ZVe?m$><+8oj~y$bRF0{K|?Z*kriwSjvFc0W*+zo7Tni{@`qyf%3|33lf z*Jpr~Gx|LiqvC>?qQ^fjKyaY~KQ|^wa!4e}==q;cd;e9{_O!ypAJBmxR+eJ^z(#VXvAY^rZ1KJBx&(i_5 zLDbrC5R2jP*-+7g^g%JiqaDJH{^$ZbL7} z@9al8?@@mkGk};;HYB+>)Df+pp}Y+!Vp9SN`s;mZjdFavP?%!wqIoV#3A59g@_-#uHBxq2sU zyimM==f)1eFi8W}KJP@A8tR_yBhV=YI@ypoJxtkfk^omGco5^OUD20Dpiw+@AbqBYX+8zeQ0ZTWj%gc)vY;r98l+F6nLe0=4U)d8>P%+@!e7wl$jDDStN`PL zz`8|}%uptCoy7PoHNaTD4?M`E1;by^a5G=97^b_Z)&l%B#e~dCe&pR67DnlYZ5B-u z>B~LT_B>GihDI>>hQ*ZR{5O8>kDb|WSyXRw%> z;y+B3!O#pk>@-xdKKw(q2V_=L0`pk`#FH?K#XKxS$VPVzN{~@01WA-$ew3PkoF3IUZJ delta 8089 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 diff --git a/source-code/Volo.Abp.BasicTheme.SourceCode/Volo.Abp.BasicTheme.SourceCode.zip b/source-code/Volo.Abp.BasicTheme.SourceCode/Volo.Abp.BasicTheme.SourceCode.zip index f3eb63e68b3f87603eb4737ce10974a909ea0008..9090461722a71036f14430bb95597c89a25b0474 100644 GIT binary patch delta 46253 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

1o%SmFT%N~^jZ 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

VO*7SBW~PU$XXt4%5Xe)|>j;lHFE$ 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 delta 44514 zcmZ6yV{~O*(5@Y`W7|o`RwwD$wv&#{jYn zs=8~|TJu^b!MHG^dfkU|> zfBmB&grTTa0}2FWfB^)A0hF|D1c46tZE4++JQ=ylhBz?ExaG{?A>kuOD6EhV&v_Mv zxflIwT6#v3t~RO7kuWWglpfLY){yfq<^`sp?o>&qjcS<1y_R;;BmFr9+v`DB_cL8) zqdc+Vbj^|Xwfe-#k-6>6S(Tc-&0)M!w`F{+9Q#$@SgWnlGu*1}T{zwZQHBD5QSoY+ z^nUxS9r?YSVZa-w0%#ZOKKc>eg#S>1|bN-e8y-%pcqh&Z(nsSlLAlqTQ@5mN|+US>$&DC_2Pa`^TbyH)M(68#mhJ_I5#51a_)78$ko2)MkQ zX+I$V2D@unm^*YgzxjyB-&X-VLC;&91Skg$7(^a|O2<~7i3B=97K|U@kfBYVIw{UD zL0V)4w;f-fFC+jhp~%n2Ak0S`2O8SIhKMtCHMvS;W1Y18y148qzj=a_XNQf4$#%vr zstlh%{Bd#UB_>De6aNiVNKT!pKPI;yeyV*H3$1 z0i{G}hTXIB3*KA@wpGyd&vKG@S ztI`G5vxj7_O`|iK(pz|$BJg5_2zP8Ll9xsyVPp`#Q{RiGq)nf<@=&&)+2D& z%D_Sfo_rS@DY0Q@?dZYbWQTXl(9UMQYi%5AO{U zHBr_~Un%AHqKV&tRQ{jDp+=!Qn4=6GYKdm0yEJ~5qNt;&{fvovZZ$NsN`vYU>Z#uo zDMJltdhhhr3riyFzSWA#(n$s}N(9N!l^pC|WjLKP8uAfJurz(J1uF6#r?i==w`*1d|c&~|iy5STF9tBo?oq<}W_1UFrVO$sR|CRq=*_V7{ z0r@BUE%=Q8Wbci5^UvUjWCa5MSO0=tg?V6K{Q?9iDTe?8Kkm;7Uecx+1Y^>qDFj5E z90B}4_ur^=AaH-(m7CsEAHUoglClXP2>!>L9gr~HEz!$|2(i_+#YN-lE#4g$4Ph=% zX-a8TjzPbA&QdAvl(<}yD|<;UB4)ww_Kx-Rkur=fWn(H-(KyfHS|3O`CG*QmlP~;N zNmp>(+l@d8O{AOQbGymPD_!WepVK}zr<%QM1-PH#F~jK~%sANy-YEocaM@apR_}Mo zD8Mbe#HYlvR5hnJ#)?vFAK69pG?o&x$;mrrZAOF*CA-?+U-+)tM7W~(6r?CqE3%DE3<-Z78;+p?UMcgue zz(0c?0rGz#RSHmK?fD8RU7Rl< z8UbTsyS3s9i+}vIhWcC*$DcVXo-K+sBG~C8tY4*xeW2McmGI@6#zPzhdwXTj7-5)p zu=Fvsyt3K&w)|m+FRKsX>DO^7lxH@V>f3%?@so``b^n!Q`+d$WoD&B>q9EuPRp5uc zklEuJGc9}wI;T~(B>GfrP#=;!bH_H{Jy#$b+rn5%0iMOtMyftt^MW)FFNN~v|CAlj z-zdcWAy!8ETP#_&8g-YzKtT84KtMKe{3ASZmYCRaRSd{+Q6#W{ZtFP)#17FBUNs&g zvb~L*ig>yNwGag`aQI-soiXc(cKlJNM7m)5-9Hr9uy}(Lt_=CHOaTs!Q+ERQi;= zpp9<_6Y%i_OgJzX56+F~6oUc`eVRyMvBI%2a_jicaKTb3*`+M`9Nzn@S5QCx{qe0! zf1jo~9fXFhoS2e%9KE4rJoT$<;Cw1(0dlme9DPMHkW$%65QQ?`F;)P)sSK6r5 z(^y8?3B}4*3S&tu*9FT>{ylq+mGB}=)Jv_O$=Rf)me~6+mD5P11X1<;NAoHdc1ty= z(0hGE?s!o3#Gi5EK$hv>kpEL7|CFM^QkO>t2K=w5Kz1B%&U^_VJ}!EIDrpKE7$b?w z76K;jlN=2o*9PCifVfJ1Pmn89P0A%zfC38(B@&-c5gbo0e;LXbOmDCi_XIuzN#*OK zIZR|@Wk$j*8^>Z-3-V2&xA+iKg)gAW2cr{a!-r&#OOBIR zX+-BqAa^>AL}|*%Uqn4Gr4czMLgNtubwl1tNw8Dbn7Q$dXm&4^oMs~0{-)5-RlU;D z3S`@m}E)p^oFb^nYz3nCkJLW-jbxbKpUMfSkWHBmP%2b>q|&|G7NUCj4{J zbI<36`I436mz&dHm!vE^2(~yxdI&&*{HVD-43U^l;LPUEw!lZ{IL}6{y)}=qmD}~Ah+oh#^F+Jq!qRI# zuSb;n(H~9aslVA*vYyWM9C0ze!D-`EB{?~|E ze;WK3-!#6+e+C-P@F3-_$@Pxrt5sAm#u&E1Dahp$aG<97R+ zioFE+yQOG?wwr0>uvjVBTE>#&mg0G-zs2Pt@FQ}SLF7MRC(LK;_2JNAJbD)@F_m!m z7pr_Z_TG^q2b19ppuiRuwWZMrn+Ss+f@ z%_-oM*UBVnGnhx~os_324mUwXNxbLdf zt?WOGAqn<88?R}Vt$slu0|5Q6x`@*ip81z_77=}rf9kS$EN$leN;>4%Ly<_Fl`vV{ zm>3x#mfymU4>8~}-~;mdNRReTi9tX!7SWWHl&DCH?bNiqm88u;^23v&Ront(xMYie zqtkVhd)-v;3I)}*tRDCIRsgF$IYw;2qC1v=_os_aUm?Udyh4c8!Z@|J=pUQjHQ*=B zv0#b0S5*g=7H0O@Au+5Td6Wilcf^^wR|?L62TD_hbhb+8=)!23P?$5V6Ji5CsltHo z?dNv+%jikZ4dy``I}Y=IxE)=wYk+mLapa~kAzWPY*nX}S_HIsV z2ko9m{XgNZ`ym1S-+&|{sR;Tn@aZyzp#RjivI+;&`n3&E0w)2>0<$Ll^nieli&R+s z=VhtL{@*-RsFe24Afz1opJ7?$=-=(d<4eo+U$;*I#d&M7#v!P~#KEg|{_~ww>;2C+ zLE{bT?_hE=NfH&8qA3A@?;%7Cc$9X7>{$t)&!}vNnZf9WBI8?Txj&mw(@stvv+R6q zy30^#CBonp_EdS{1BG*Y9GC`!VkVOpdY_8-WLEZ1HLBblsWWRr!>@mVkDqe5K|B{6_eY;KfI&Dfb+F{C~CtM=iJi z216kQdN6{o72(BIE3qY^dPAVZ3F}h+Talfv4)DKf{lDWo5Rh)1o}PZ(ar}QHyP_V+ ze+9k#!YFR}RnVSa1^w4WD{j{S1%QAej~KurSC;5o(eLFlY}A%A&~QA#)F%IOxn7tv zpiv)?uCviePma&nk>}9Oq1o8$6DyU74j+hsa)sEw!!0%O^#J`Ky}O$_*zq$1*~4yd~Gg*BW* zw%Td#<9JC^B#ZPCjeLby<;4#7*9ygTw(;vs6i(6m9iCEK@O_|i4AlzVht6n8Fhc9O zhespfl%ZI&Nl+J_u7~ht(=faoW+ca898o(76Niai=ir7krDjGFHmcNgM2mg4Z+a41 zM%_>ZoZrMcTk(emRLkO1DFDmST?JAINa0gG@wjQNlKb0FQmI!4*Iu-qjOr6LY%z=W z!)w-{e8%L|FV+!S2>U}+nhnq*;Pq!bK zW_PH43nPGg&_lDZkB`&4%Td){sZfzbAsOrbl3Qf!ilm6oSo-uS*I{&#lO^3x0sxXu zAN}X;qpqy1CdK$0hue!ir}K}5AL_W4c(2E!#FKGnfYAQA>o*!%1p1;Na_YJ@w)=ifr{N5@lwx%Ud2ClixNW41CjH9YRN_w0f{}_*8(3QnSpgkWL)j z{%u@fhnOt#k`9J53An>cR*T>4O62r0*xv#8g>elINBj{dSdV_qF>tx|3#$RPIel2^ zy?>6P8+I?dGT!D)v^3~LGGTMnnkFW977FX#L7@#I8bzy-G90_4Z^uK*l{aq;n@`jW zqIT?{56(|*ax2+DYuat7tDG9%P<3eFGLH{qE

}mC1B$JxL65h>nS9`(a9KWz`ON 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 u3vJC|si)CWdbkF}jOOk@+8*RR56x delta 7873 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 diff --git a/source-code/Volo.Abp.FeatureManagement.SourceCode/Volo.Abp.FeatureManagement.SourceCode.zip b/source-code/Volo.Abp.FeatureManagement.SourceCode/Volo.Abp.FeatureManagement.SourceCode.zip index 6522c836aaa1a2dfd93c46bd975ae0c2d4ffce7d..f88db85e415a90eca4cfd015057944a9453e2150 100644 GIT binary patch delta 22573 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 delta 22622 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 diff --git a/source-code/Volo.Abp.Identity.SourceCode/Volo.Abp.Identity.SourceCode.zip b/source-code/Volo.Abp.Identity.SourceCode/Volo.Abp.Identity.SourceCode.zip index ccc5ab00b9c50ea5baa7f283a705fe289859ce6e..21a45423531ebc1b0cafdefbb6d14db0114aecac 100644 GIT binary patch delta 54230 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 delta 54271 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 A4FCWD diff --git a/source-code/Volo.Abp.OpenIddict.SourceCode/Volo.Abp.OpenIddict.SourceCode.zip b/source-code/Volo.Abp.OpenIddict.SourceCode/Volo.Abp.OpenIddict.SourceCode.zip index d8bc7ca23eb30d359ea2f98e1198cad1ec28c6e2..ea99133427368ab6d892c226fb2d983630914313 100644 GIT binary patch delta 72906 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 z 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 z%0ArCF~evCY}Vx=Var0P8@YsUvh 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 delta 68714 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 delta 22342 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 S*fF|I9m(m<9ZN3#IQ|d!^m5Gr delta 33483 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 =`=epUMNG&K$9)mTXWAQgM>?h6-^8bt97tw=9N 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

h>w<{oXyHRagT|g8 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 PA;l^zkY_JGZRGeruW=Wa diff --git a/source-code/Volo.Abp.TenantManagement.SourceCode/Volo.Abp.TenantManagement.SourceCode.zip b/source-code/Volo.Abp.TenantManagement.SourceCode/Volo.Abp.TenantManagement.SourceCode.zip index 5fab76dacb039a69fbb0715beca18968070b1dd0..95f821af50ed4b5b9e47171bdb5bd1a384cd51df 100644 GIT binary patch delta 20293 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 bEcr=65Iu>PnE~w3Sh8U@nk(p2bc+82X-Y3t diff --git a/source-code/Volo.Abp.Users.SourceCode/Volo.Abp.Users.SourceCode.zip b/source-code/Volo.Abp.Users.SourceCode/Volo.Abp.Users.SourceCode.zip index 17d8837466c7b236b831fac92499fc992a9baa35..67462a3b871b24418b1d34fe520a68081dbdb344 100644 GIT binary patch delta 4682 zcmai12UJs8^G^bi8bgN=s`R=60YeE@6hZ<>XoekE#4Iu)qiYYdrAejPO%f z1thK>gaL27H)b`Y%Cu`eca|4g0D}T03Iw1OCkkj{3SgDkYFJKM>?<0UyFKR;7=cEi zl6h9-gryYNhZ%lRcSsUxiXW^BYxdy`>VtXy@ZR2jfMkDamO^JaZ9P#qn!sVVUg&>& zFV2$p1lZY4c}FQ_R9o&j`*)FU>JRc5lW=6sapAWew!7of-XuRQp!Rs<>n}aTg|vC8 z*J8tg4ng4eEqSYM9Xs23ybBdzq_d^sGiSY6j}j1g!hS%Bi2wWgtCZ)1W%8V|woUbn zNg|KE?)w9j{Zdp-POj6Zm~E`@p{{Fl`Z7z~6rOmv5CUq1H$0f<1PnNP#T6YBxkky2 ziCMIsZmi(k4?@#Z!M=NUwU18Tz2y5_-|AaFKKtA*KN3+5|8Cb>Y^8Jj?dDMBsLI?6 zvo~z_yQvGadxmZ294E^{YFezn>`AokR#&@7{!y9Ou`^|D#deAo!*I3#)x!bXPg$AS zYR}Ns~|zArEpQRIdm04JvvX@B?Ctz!)m!~DxMst5DIIZV} ztv{kiKWbx}a|45ZsBKN>(cJ4IF7B7T3yMDc;mtB}#fBIPnvgF~3w)IeBTIZg(IOD# zJbHJJg-bNW(sTh$nK(ifFE_pZ;qy_iv4gaPF6qz(8;uXfJkd_3N6iZ_Oo~};ZSjmf z(Wx!e@1efl%t_}?lHkoYwkA2R+3S|3jXvJ>bhDF9YL1!pIlP0x>}NL`?W}!F43}t?YS>k_CC#JKuTSLM3?CP3mh8}={mz8Kb(d%$v3S!3+dONu$@Z{)(}bXh3eK&5b2X&RCx6NS%!EN(11D^ysobGQg z^u4e!GC5xmElAG&GdU@75&x}6uVT%9vPq}k>C?nY-#TJtjepPFt>-N{6;+Q!u-dcb zt=0H)huJE_yyRz=`47)#lW6Ht!eLE1{afn~igkPw>{S^gP{5J$?002@0^RTF73C@J zjhQm?ETZ+aQF`0{t7QIi`92ATyC!YMp`(dA)a}mIN@Z%Y_qfmYW~d@^PwkHf}y zm(v{ef>mc9WXn9jO-;+)TX#-QqKKh(aF+&QrZ_tUM?LSxdumPi=VnIdfTz3K9#(eP z)gzJO{I@ONef9TiV9(|EFfm_IPq)8P-&vVE*SI$=F}{!zDu^k( z+0c#()_QHEbtoi;m3e`4)tW!(VSU7>4S#zi6frgpT363s{zzjhm1VqYZ4xSZqgT-p z8EAH1SdLXpYOOgwX6{nGMXfwPYRCw{W+ z`yQ_=XVR(n6ZPz_7@oZt?kVu(rj7jlmc)U@nA`7<4NG&;vwSb2P^Az7zEE8QNvtV;OqIf(NT2MkH_M0 ziVmTX>3o-tcC^N`*d=?g1$CR6_v-H5=IcHjHXxOXE~n|K&P3n)*4k@Vg$lJGk3(v%m*kqnWBMzahrJ`Hr>a1_2h{e9&i z51|*|de!f)acquMhT7Aw`Vtk_Kkd5ae@a!SIqH2?qw2%^;!KBCkA@z-l%2I}IkkA` z{9j$^b^hVI>7AyjsdK*W_#Ddo-KkA=hjYfy{du<4YwE^g^phzU^2^MTKU}QPT#SHe zqkcH%kBk|}fl(&M!axzZ0}YcvaGPyrK_nzYB#>berj7Xloh%K`m`Sp2`8J62hYDni zi7E5uYXme-#T<{DIPUTN$Cs3KAGXaQ1C zQ;`HW6@ooC2oWAqKKCI_2(;Wi~)g26@~QZc3_vZ$T;?udZe85{NBb0evo z_mk1jd#^Lj`fh z#BNW+2ON&=oB`i{vxC%3Qs5mFPCuliw@XNUo%98Tk6q*J{#_kv_t;-@lAKwWB|Pm6 zu_MFS`0GWdGU%0-%eM#SUAFXq&yl5Kny{oD# z>5Hhdrs${Syd$L#H>LZ)S(BazroQSkyxY_Ad^Dc zEhHh5Q5Q!KLS3n|EDA*dkL8rX?F~Y;hnz3+!kT2pJ*1_1kH>9nfev{a225{M1SM+1 zfb1~>ucF}j5SE?r^hJzQz2y)WBbXWp0(_j{?ijrC{{qYQ2e=`Cez3_>qYbtOTf@dK z1+Rt2;b0?plny~~=JHq^LV@v@A&&5<70QIi-69ijHgFt6F;4FjFkKX3$gvLmqR{jw%r*^oMuEwBHiC7d$ z3yQ?gM^Q^tWUk?_9| zup^R)=~Y^Wf9|Inf(=w4SOY|>DB}O+3$TeIVs5N_24m3#c;%I@3A$~d{Qk$oQd_n~ z0P@?!esPmK2s#>|OBmO3U zLizo}LlkNO5oGF!15$)A?Bhzm0d2^YOL#;Vvg-CrVA5lVm|A`4lmAMh39*Q1Ly*qW z`#*AQp^@`U3d*q*D93cU>|+d|jFp5+rXcvu0NxPn5LZ#j<5r@?Rb;rF z3O4(Py``G73JAm^q5Wq%bLWbt#V<;%SQ&Un*|9`SE(Q9mUJx$?hLiZfP^>Z>mltISCA;Z>OMyEEe2!Dx}Q(U@6OoKP}=LeSMIFG8VZbD>=4wsx8Z3-{1Oe#!T1iA0RAGvt}ok{x(w za!EvtEdzoqKztGbhVmgu*aNx&Y{AE6sYM9V^n@T&5auZbqLLBilw>GnJ)uA?rT$tl zvQx$&zi-lr>RfXHfVGscbW{FUd}(h<4l2C#^(%DfMOl5v@cD z*|J2TuTUacD$#$O*I&*5&2_!kIrE(RInQ&>eeUNyGwom5?tEnvu(Kwxi{o%OZk(py znsfnALc7PBqEIRu0e&qhV~gfk>VWlJ_NYzb`i$CG?jQvCz+FT@ogDrS5us3nqYC5o6#c&codHfFgcC_tO^g2_dN=&UnRD zPeipWEe{Ku4op;4dpY!8sR18e^%?EhY#QxTeDPxJ$I*|f=X_>T&fj^#cs^sX@x_yC znF;%t63z{&%`FD0I~@+4y?)5it0s?Xaq!*rRhqq_>K{0ZbuS;SGk7XT6xE0v8cEi!6W6BgGRWMW$rG_KAvw3ju8r;+ z*Wy+BzAufVqSim`?2~KanJsn+Z#vg2Nd(RBa?6SLdaleuv_%iMuX4cHi<1gQhL2KRYywN{HD`8B9e_@w;JGvv5=RxTIrl~GY<*(#e>k>? z@?YT*QBtIFla$xBe>`|PqN3+Q^5jH++m75gOM~g#!2@@6v!iE@(BeH!o6oH4{pc^P zTJX=w?$^E#_}_58^G+EiIwT)=G*tQ=ARsx(@hI*%?Xd$pkFeiVjqTI6H92oBTX-FI z)5=;8QQO!P5{H<&g#*1YI>)_BOy!*W=OU_Z`dRqfJY;B7lHAqA8udNu2TDKf-IHxh zjtf3PpHCKE>z;BT{@Q5P?LpHBe#?y3j>Hp9h9f)F!Eut!WUmb~(rs7$<(<3s)^R;E zzaf21&1+ALie0u+e9L#0I`YMLoEvU@5H8Sr%9ALmD0N`MlsRiOu0<%)H!6FuDaX6* z{^z5M9esm4Ytl2fzqIrg&K*9T{y9SP-5gK*P3~U$sgPveB;SuGR2nyy_g{J+v9Y2e zT;|-*QccjS}QbZ(}0I_GOD%x}vIW#}y8lD_*C4GqVh z+vW0i5k;UD2MOi;4ALu+C89p=+mJp!fK95~^t*EPl`Hgz@b`OK@&rs{bPo_Sf4C24YdT%%lltd#s*1WK1*I8?qhTHfFKWI%chyE)(k6Z+CjFp1*AYN&n&m(+FixliH*mDZ5Ye)EGPXkncd1c^DR8!`MCjxp`Jv8^u|bDWE6#NJOZCQ$mhLH?wG0*Q*4NkW z8SN#z7V)oX+s7^| zf>7RPi;LY|bM$gZJJ@G6~(}=@L=oZQ| zM3KI3cS_q?byPgFYQ zQ@es(Ik<3Pm_1<3s6D=5--yMrI;Vo`;-v-lNjDWK;$QA+`}fiIu&piq@R~1NOf5(G zlkk_UDrVU_qeE{?qbm|GAM~`ZaPM;HR3aF+5!e?4Qw3we7#${ z{Px$1t%J&h!wp|H(g*mD@K(OBzHF#8)xf8QH`@|x-!D~SQl7PtF#P__LB7Ws0}sES zxgcYx+?jB|y0)nLo!0isFf1cdWsHRpAgqxc<@RGpBOJS(MHimIWoVer>FdSV72)r zOTgsh>fBo9%`YzEc52*6FKc&(YktFDMFR{)vo-TATHUKFAMl)5Nlx?#EgnlP`X}j@ zNPRS;<>8I@3L~}_R;S2AA^!8sr~vZ*=RxEhWzN-|1)F-aLNy4&Ipdl^XXDf5pOv&3 z&#sR>s-H?bO!0b&6KG~!>d+7ugC%Y*N_mXU=l^KSRu+G3bH*Bi0j_=lCc7)mX z$79SQxkD0lfVSfkRB0bn1)0pl44dJBG5?>8ODIkn7~aEK8cXP)i!x@pzRMcjjlmb! z88r8#n*(Mrqw6ePvq3zaiW0m}*F^0cT?@4u49vc7xh-WFBKtJM3bj-(7t~%@Zohd2 zqVIltW6&M#=M5Wt+Dj)bT?SaLdvFoIK2KJF)#9c=LxLX={rD01cR8v4Lc-prm7pj> z8u0rNQ9LytB3@$EvPl4h_y{8NAs-@}KVb9SsBUM?h8M^E{CVMGn!D|?g{tx;;*ZGwG{2M;U0MZ}oF5VYK@NN( zQNT$rK{PeXm562PW)cK$0Pnr99q4ysyQu^L3h-GvmA^h}3J|COLKGB$l|KefTXD?M z5-#d27Y=9t3kiEgzrfZ0k|>2=H?04k*+*%4W*MLrfUV9dfQTn4gLE}j5TYyuQoOL0 z-GpXtm1VO)Mj*E9B7sD_pBl6}fP;Y;Fcq4nFw;h?8T#6Q#2`_W=6*olb?CgP|6XA%IfLNH=jUXd*R z+clxT0(?^{BT}g$MEsBz5YZ+t?Z&@IRb%n3)rLT|r69<668ehkL6Zz{*OMXt|Jlq@ zWu9h08sBl_aAqv?9K)Q__UWL2zup=+oE{6%PJem!mFQhU3dLwx7fQs782mOQi}J~Z z<|sq(DQrEM2vtEQsr^KJ<7Q-9yG03{+K)|e9-95B$ZTiL0Vei~$t{Wc)>L&<1e}b*W*rj} zu&9Ng`!H)N3wUPxvX0rowjIQO9kWJj+v}dtAr?NiERG_Mzd4G61CA2#UCB~EL3%V1 zKi~)zVfn9Zj9ffXdlF_(gFpAeS>`nat78tM6{>i?$-M~2WFRhx1+&`)c*NR(pcrl- z8LNVh$<{dbiw$sfZ+LMy9~N*jaF2~d+ua*W#CNzZpKNwOau);Yaf&FG^NMulD0Dx= WkHgupxIcCK>5vv@$SFr(8vQTM$g;iw diff --git a/source-code/Volo.Abp.VirtualFileExplorer.SourceCode/Volo.Abp.VirtualFileExplorer.SourceCode.zip b/source-code/Volo.Abp.VirtualFileExplorer.SourceCode/Volo.Abp.VirtualFileExplorer.SourceCode.zip index db7ffcaa2aec854a51b5b11fd8bb529d8b2f2119..29f4f6ed11640ccfccbd2e7135f4dc2f2b2378e4 100644 GIT binary patch delta 13962 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 YChF~BPE-9Xb(ZqFAt#64LpqWBKk8VxKL7v# diff --git a/source-code/Volo.ClientSimulation.SourceCode/Volo.ClientSimulation.SourceCode.zip b/source-code/Volo.ClientSimulation.SourceCode/Volo.ClientSimulation.SourceCode.zip index a2d6748118a5899de65b39e8a994d44ac48fbf85..1f5644d688d5f91d3367c2c2ddcd4d34b0741dad 100644 GIT binary patch delta 9856 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

+(4{r4Dd}I#>~HBB=`mDj~>C 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%0D7vty;5|X;Bw+=%{bJMk6wHSnq*jP{I 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 h;3}P`Q~8ZVz*7 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%0D}cp-rQ;k~xU_+q+B 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
vjG{5!WE(a-L&)X%{|v$!fm2pV^9NhIVV@8n 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 bm*2$bsac)`)9Av{h36aQ&kLVX&=3Cs@?=cx diff --git a/source-code/Volo.Docs.SourceCode/Volo.Docs.SourceCode.zip b/source-code/Volo.Docs.SourceCode/Volo.Docs.SourceCode.zip index c2d2b1fc12a882e7dc67103ae21792723863cbc2..11c518686ecb3518b3fc6c71670d942e7e31efc3 100644 GIT binary patch delta 74909 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 z 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 diff --git a/templates/app-nolayers/angular/package.json b/templates/app-nolayers/angular/package.json index 228335d18a..d5c530a12a 100644 --- a/templates/app-nolayers/angular/package.json +++ b/templates/app-nolayers/angular/package.json @@ -12,15 +12,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~9.0.3", - "@abp/ng.components": "~9.0.3", - "@abp/ng.core": "~9.0.3", - "@abp/ng.identity": "~9.0.3", - "@abp/ng.oauth": "~9.0.3", - "@abp/ng.setting-management": "~9.0.3", - "@abp/ng.tenant-management": "~9.0.3", - "@abp/ng.theme.lepton-x": "~4.0.4", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.account": "~9.1.0-rc.1", + "@abp/ng.components": "~9.1.0-rc.1", + "@abp/ng.core": "~9.1.0-rc.1", + "@abp/ng.identity": "~9.1.0-rc.1", + "@abp/ng.oauth": "~9.1.0-rc.1", + "@abp/ng.setting-management": "~9.1.0-rc.1", + "@abp/ng.tenant-management": "~9.1.0-rc.1", + "@abp/ng.theme.lepton-x": "~4.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "@angular/animations": "~19.0.0", "@angular/common": "~19.0.0", "@angular/compiler": "~19.0.0", @@ -36,7 +36,7 @@ "zone.js": "~0.15.0" }, "devDependencies": { - "@abp/ng.schematics": "~9.0.3", + "@abp/ng.schematics": "~9.1.0-rc.1", "@angular-devkit/build-angular": "~19.0.0", "@angular-eslint/builder": "~19.0.0", "@angular-eslint/eslint-plugin": "~19.0.0", diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json index 9ab499ed12..0a99ed6c5c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.0.4", - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.1.0-rc.1", + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json index 0375d9ce91..ea922e5e09 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.1.0-rc.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app/angular/package.json b/templates/app/angular/package.json index f897679fce..d5c530a12a 100644 --- a/templates/app/angular/package.json +++ b/templates/app/angular/package.json @@ -12,15 +12,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~9.0.3", - "@abp/ng.components": "~9.0.3", - "@abp/ng.core": "~9.0.3", - "@abp/ng.identity": "~9.0.3", - "@abp/ng.oauth": "~9.0.3", - "@abp/ng.setting-management": "~9.0.3", - "@abp/ng.tenant-management": "~9.0.3", - "@abp/ng.theme.lepton-x": "~4.0.4", - "@abp/ng.theme.shared": "~9.0.2", + "@abp/ng.account": "~9.1.0-rc.1", + "@abp/ng.components": "~9.1.0-rc.1", + "@abp/ng.core": "~9.1.0-rc.1", + "@abp/ng.identity": "~9.1.0-rc.1", + "@abp/ng.oauth": "~9.1.0-rc.1", + "@abp/ng.setting-management": "~9.1.0-rc.1", + "@abp/ng.tenant-management": "~9.1.0-rc.1", + "@abp/ng.theme.lepton-x": "~4.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "@angular/animations": "~19.0.0", "@angular/common": "~19.0.0", "@angular/compiler": "~19.0.0", @@ -36,7 +36,7 @@ "zone.js": "~0.15.0" }, "devDependencies": { - "@abp/ng.schematics": "~9.0.3", + "@abp/ng.schematics": "~9.1.0-rc.1", "@angular-devkit/build-angular": "~19.0.0", "@angular-eslint/builder": "~19.0.0", "@angular-eslint/eslint-plugin": "~19.0.0", diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json index 374e2413dc..83804e189b 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-authserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json index 0375d9ce91..ea922e5e09 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.1.0-rc.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json index 0375d9ce91..ea922e5e09 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.1.0-rc.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json index 0375d9ce91..ea922e5e09 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.1.0-rc.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json index 0375d9ce91..ea922e5e09 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4", - "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1", + "@abp/aspnetcore.components.server.leptonxlitetheme": "~4.1.0-rc.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json index de52df5ee3..32d6335c70 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.0.4" + "@abp/aspnetcore.mvc.ui.theme.leptonxlite": "~4.1.0-rc.1" } } diff --git a/templates/module/angular/package.json b/templates/module/angular/package.json index 4df479dd70..4134fead2b 100644 --- a/templates/module/angular/package.json +++ b/templates/module/angular/package.json @@ -13,15 +13,15 @@ }, "private": true, "dependencies": { - "@abp/ng.account": "~9.0.3", - "@abp/ng.components": "~9.0.3", - "@abp/ng.core": "~9.0.3", - "@abp/ng.identity": "~9.0.3", - "@abp/ng.oauth": "~9.0.3", - "@abp/ng.setting-management": "~9.0.3", - "@abp/ng.tenant-management": "~9.0.3", - "@abp/ng.theme.basic": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3", + "@abp/ng.account": "~9.1.0-rc.1", + "@abp/ng.components": "~9.1.0-rc.1", + "@abp/ng.core": "~9.1.0-rc.1", + "@abp/ng.identity": "~9.1.0-rc.1", + "@abp/ng.oauth": "~9.1.0-rc.1", + "@abp/ng.setting-management": "~9.1.0-rc.1", + "@abp/ng.tenant-management": "~9.1.0-rc.1", + "@abp/ng.theme.basic": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1", "@angular/animations": "~19.0.0", "@angular/common": "~19.0.0", "@angular/compiler": "~19.0.0", @@ -36,7 +36,7 @@ "zone.js": "~0.15.0" }, "devDependencies": { - "@abp/ng.schematics": "~9.0.3", + "@abp/ng.schematics": "~9.1.0-rc.1", "@angular-devkit/build-angular": "~19.0.0", "@angular-eslint/builder": "~19.0.0", "@angular-eslint/eslint-plugin": "~19.0.0", diff --git a/templates/module/angular/projects/my-project-name/package.json b/templates/module/angular/projects/my-project-name/package.json index f1965bda1a..6ac5d309fb 100644 --- a/templates/module/angular/projects/my-project-name/package.json +++ b/templates/module/angular/projects/my-project-name/package.json @@ -4,8 +4,8 @@ "peerDependencies": { "@angular/common": "~19.0.0", "@angular/core": "~19.0.0", - "@abp/ng.core": "~9.0.3", - "@abp/ng.theme.shared": "~9.0.3" + "@abp/ng.core": "~9.1.0-rc.1", + "@abp/ng.theme.shared": "~9.1.0-rc.1" }, "dependencies": { "tslib": "^2.1.0" diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json index 0f347d3f42..ccf86009bc 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.AuthServer/package.json @@ -3,6 +3,6 @@ "name": "my-app-authserver", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1" } } diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json index 3c58693d40..ff3e6b4e21 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Server.Host/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3", - "@abp/aspnetcore.components.server.basictheme": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1", + "@abp/aspnetcore.components.server.basictheme": "~9.1.0-rc.1" } } diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json index 10771644f8..5dba429337 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1" } } diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json index 10771644f8..5dba429337 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Web.Unified/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.3" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.1.0-rc.1" } } From 93076b85766d25584515bb467837fc810fc873f4 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 17 Jan 2025 11:13:16 +0800 Subject: [PATCH 17/60] Add `DistributedLock` for background worker. --- .../Tokens/TokenCleanupBackgroundWorker.cs | 28 +++++++++++++++---- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/Tokens/TokenCleanupBackgroundWorker.cs b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/Tokens/TokenCleanupBackgroundWorker.cs index a77cb01d8a..5259c31329 100644 --- a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/Tokens/TokenCleanupBackgroundWorker.cs +++ b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/Tokens/TokenCleanupBackgroundWorker.cs @@ -1,7 +1,9 @@ using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Volo.Abp.BackgroundWorkers; +using Volo.Abp.DistributedLocking; using Volo.Abp.Threading; namespace Volo.Abp.IdentityServer.Tokens; @@ -9,24 +11,40 @@ namespace Volo.Abp.IdentityServer.Tokens; public class TokenCleanupBackgroundWorker : AsyncPeriodicBackgroundWorkerBase { protected TokenCleanupOptions Options { get; } + protected IAbpDistributedLock DistributedLock { get; } public TokenCleanupBackgroundWorker( AbpAsyncTimer timer, IServiceScopeFactory serviceScopeFactory, - IOptions options) + IOptions options, + IAbpDistributedLock distributedLock) : base( timer, serviceScopeFactory) { + DistributedLock = distributedLock; Options = options.Value; timer.Period = Options.CleanupPeriod; } protected async override Task DoWorkAsync(PeriodicBackgroundWorkerContext workerContext) { - await workerContext - .ServiceProvider - .GetRequiredService() - .CleanAsync(); + await using (var handle = await DistributedLock.TryAcquireAsync(nameof(TokenCleanupBackgroundWorker))) + { + Logger.LogInformation($"Lock is acquired for {nameof(TokenCleanupBackgroundWorker)}"); + + if (handle != null) + { + await workerContext + .ServiceProvider + .GetRequiredService() + .CleanAsync(); + + Logger.LogInformation($"Lock is released for {nameof(TokenCleanupBackgroundWorker)}"); + return; + } + + Logger.LogInformation($"Handle is null because of the locking for : {nameof(TokenCleanupBackgroundWorker)}"); + } } } From 4e0037d8fe3ee880024d99bdee7c64cd31572322 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 17 Jan 2025 13:20:14 +0800 Subject: [PATCH 18/60] Set `.AspNetCore.Culture` cookie `path` to `/`. --- .../wwwroot/libs/abp/js/abp.js | 3 +++ .../Themes/Basic/LanguageSwitch.razor | 15 ++++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js b/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js index 51ff0151b6..ef9d6d6103 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js +++ b/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js @@ -36,6 +36,9 @@ var abp = abp || {}; if (path) { cookieValue = cookieValue + "; path=" + path; + } else { + + cookieValue = cookieValue + "; path=/"; } if (secure) { diff --git a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor index 01cd632615..7814000136 100644 --- a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor +++ b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LanguageSwitch.razor @@ -1,8 +1,10 @@ @using Volo.Abp.Localization @using System.Globalization @using System.Collections.Immutable +@using Volo.Abp.AspNetCore.Components.Web @inject ILanguageProvider LanguageProvider @inject IJSRuntime JsRuntime +@inject ICookieService CookieService @if (_otherLanguages != null && _otherLanguages.Any()) { @@ -57,20 +59,23 @@ { await JsRuntime.InvokeVoidAsync( "localStorage.setItem", - "Abp.SelectedLanguage", + "Abp.SelectedLanguage", language.UiCultureName ); await JsRuntime.InvokeVoidAsync( "localStorage.setItem", - "Abp.IsRtl", + "Abp.IsRtl", CultureInfo.GetCultureInfo(language.UiCultureName).TextInfo.IsRightToLeft ); - await JsRuntime.InvokeVoidAsync( - "abp.utils.setCookieValue", + await CookieService.SetAsync( ".AspNetCore.Culture", - $"c={language.CultureName}|uic={language.UiCultureName}" + $"c={language.CultureName}|uic={language.UiCultureName}", + new CookieOptions + { + Path = "/" + } ); await JsRuntime.InvokeVoidAsync("location.reload"); From 549095a5968a20b60db037911412c76cf7201217 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 17 Jan 2025 14:43:33 +0800 Subject: [PATCH 19/60] Update build-and-test.yml --- .github/workflows/build-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 42c241dd23..7073e826e3 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -47,7 +47,7 @@ permissions: jobs: build-test: - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 timeout-minutes: 40 if: ${{ !github.event.pull_request.draft }} steps: From 2713d341738ddbeb6c6edc950ec2e79afb8ada56 Mon Sep 17 00:00:00 2001 From: sumeyye Date: Fri, 17 Jan 2025 10:06:15 +0300 Subject: [PATCH 20/60] fix: use `type` instead of `typeSimple` for making sure that all types match --- npm/ng-packs/packages/schematics/src/utils/model.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/schematics/src/utils/model.ts b/npm/ng-packs/packages/schematics/src/utils/model.ts index 20055a96c3..119323e95d 100644 --- a/npm/ng-packs/packages/schematics/src/utils/model.ts +++ b/npm/ng-packs/packages/schematics/src/utils/model.ts @@ -148,7 +148,7 @@ export function createImportRefToInterfaceReducerCreator(params: ModelGeneratorP typeDef.properties?.forEach(prop => { let name = prop.jsonName || camel(prop.name); name = shouldQuote(name) ? `'${name}'` : name; - const type = simplifyType(prop.typeSimple); + const type = simplifyType(prop.type); const refs = parseType(prop.type).reduce( (acc: string[], r) => acc.concat(parseGenerics(r).toGenerics()), [], From eaa9e2dc22a21a965b35f8ea2c45f6d9cdca2199 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 17 Jan 2025 15:09:19 +0800 Subject: [PATCH 21/60] Use `ubuntu-22.04` to build and test. --- .github/workflows/build-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 42c241dd23..7073e826e3 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -47,7 +47,7 @@ permissions: jobs: build-test: - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 timeout-minutes: 40 if: ${{ !github.event.pull_request.draft }} steps: From a960f0a85452b9d0b45806e937750c132e26083b Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 17 Jan 2025 15:40:23 +0800 Subject: [PATCH 22/60] Update abp.js --- .../wwwroot/libs/abp/js/abp.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js b/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js index ef9d6d6103..51ff0151b6 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js +++ b/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/abp.js @@ -36,9 +36,6 @@ var abp = abp || {}; if (path) { cookieValue = cookieValue + "; path=" + path; - } else { - - cookieValue = cookieValue + "; path=/"; } if (secure) { From 59476b1d6ec06e0c74f40149d454fbc864ef0c5a Mon Sep 17 00:00:00 2001 From: maliming Date: Sat, 18 Jan 2025 18:35:03 +0800 Subject: [PATCH 23/60] Preserve `GetMongoQueryable/GetMongoQueryableAsync` for backward compatilibity. --- .../MongoDB/IMongoDbRepository.cs | 7 +++- .../Repositories/MongoDB/MongoDbRepository.cs | 32 +++++++++++++------ .../MongoDbCoreRepositoryExtensions.cs | 21 +++++++++--- 3 files changed, 45 insertions(+), 15 deletions(-) diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs index d1c152c98f..acd905b8c6 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbRepository.cs @@ -3,7 +3,6 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using MongoDB.Driver; -using MongoDB.Driver.Linq; using Volo.Abp.Domain.Entities; namespace Volo.Abp.Domain.Repositories.MongoDB; @@ -21,6 +20,12 @@ public interface IMongoDbRepository : IRepository Task> GetCollectionAsync(CancellationToken cancellationToken = default); + [Obsolete("Use GetQueryable method.")] + IQueryable GetMongoQueryable(); + + [Obsolete("Use GetQueryableAsync method.")] + Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); + Task> GetQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); Task> GetAggregateAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null); diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs index dcbe447f99..fdc7464d6b 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs @@ -499,7 +499,7 @@ public class MongoDbRepository await DeleteManyAsync(entities, autoSave, cancellationToken); } - public override async Task DeleteDirectAsync(Expression> predicate, CancellationToken cancellationToken = default) + public async override Task DeleteDirectAsync(Expression> predicate, CancellationToken cancellationToken = default) { cancellationToken = GetCancellationToken(cancellationToken); @@ -523,6 +523,21 @@ public class MongoDbRepository } } + [Obsolete("Use GetQueryableAsync method.")] + protected override IQueryable GetQueryable() + { + return ApplyDataFilters( + SessionHandle != null + ? Collection.AsQueryable(SessionHandle) + : Collection.AsQueryable() + ); + } + + public async override Task> GetQueryableAsync() + { + return await GetQueryableAsync(); + } + public async override Task FindAsync( Expression> predicate, bool includeDetails = true, @@ -536,21 +551,18 @@ public class MongoDbRepository } [Obsolete("Use GetQueryableAsync method.")] - protected override IQueryable GetQueryable() + public virtual IQueryable GetMongoQueryable() { - return ApplyDataFilters( - SessionHandle != null - ? Collection.AsQueryable(SessionHandle) - : Collection.AsQueryable() - ); + return GetQueryable(); } - public async override Task> GetQueryableAsync() + [Obsolete("Use GetQueryableAsync method.")] + public virtual Task> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null) { - return await GetQueryableAsync(); + return GetQueryableAsync(cancellationToken, options); } - public async Task> GetQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null) + public virtual async Task> GetQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? options = null) { return await GetQueryableAsync(cancellationToken, options); } diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs index 0c1f900066..bbbe89b279 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDbCoreRepositoryExtensions.cs @@ -3,7 +3,6 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using MongoDB.Driver; -using MongoDB.Driver.Linq; using Volo.Abp.Domain.Entities; using Volo.Abp.Domain.Repositories.MongoDB; @@ -37,17 +36,31 @@ public static class MongoDbCoreRepositoryExtensions return repository.ToMongoDbRepository().GetCollectionAsync(cancellationToken); } + [Obsolete("Use GetQueryableAsync method.")] + public static IQueryable GetMongoQueryable(this IReadOnlyBasicRepository repository) + where TEntity : class, IEntity + { + return repository.ToMongoDbRepository().GetMongoQueryable(); + } + + [Obsolete("Use GetQueryableAsync method.")] + public static Task> GetMongoQueryableAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + where TEntity : class, IEntity + { + return repository.ToMongoDbRepository().GetMongoQueryableAsync(cancellationToken, aggregateOptions); + } + [Obsolete("Use GetQueryableAsync method.")] public static IQueryable GetQueryable(this IReadOnlyBasicRepository repository) where TEntity : class, IEntity { - return repository.ToMongoDbRepository().GetQueryable(); + return repository.ToMongoDbRepository().GetMongoQueryable(); } - public static Task> GetQueryableAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) + public static Task> GetQueryableAsync(this IReadOnlyBasicRepository repository) where TEntity : class, IEntity { - return repository.ToMongoDbRepository().GetQueryableAsync(cancellationToken, aggregateOptions); + return repository.ToMongoDbRepository().GetQueryableAsync(); } public static Task> GetAggregateAsync(this IReadOnlyBasicRepository repository, CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null) From bda4215f2a1d77ab4e0158dec81219d506047931 Mon Sep 17 00:00:00 2001 From: maliming Date: Sat, 18 Jan 2025 18:47:23 +0800 Subject: [PATCH 24/60] Update MongoDB-Driver-2-to-3.md --- .../release-info/migration-guides/MongoDB-Driver-2-to-3.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md b/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md index 6e92356edc..79c0d70573 100644 --- a/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md +++ b/docs/en/release-info/migration-guides/MongoDB-Driver-2-to-3.md @@ -10,8 +10,9 @@ Please refer to the [upgrade guide](https://www.mongodb.com/docs/drivers/csharp/ Some method signatures in the `MongoDbRepository` class have been updated because the `IMongoQueryable` has been removed. The specific changes are as follows: -- The `GetMongoQueryable` method has been renamed to `GetQueryable`. -- The `GetMongoQueryableAsync` method has been renamed to `GetQueryableAsync`. +- The new `GetQueryableAsync` method has been added to return `IQueryable`. +- The `GetMongoQueryable` and `GetMongoQueryableAsync` methods return `IQueryable` instead of `IMongoQueryable`, +- The `GetMongoQueryable` and `GetMongoQueryableAsync` methods are marked as obsolete, You should use the new `GetQueryableAsync` method instead. Please update your application by searching for and replacing these method calls. From a3eaa8a204a7dfbee1a0978c9a09ace7b26585a4 Mon Sep 17 00:00:00 2001 From: maliming <6908465+maliming@users.noreply.github.com> Date: Sun, 19 Jan 2025 13:54:09 +0800 Subject: [PATCH 25/60] Update common.ps1 --- build/common.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/common.ps1 b/build/common.ps1 index f1cc59cf6c..51ab56d972 100644 --- a/build/common.ps1 +++ b/build/common.ps1 @@ -39,7 +39,7 @@ if ($full -eq "-f") "../source-code" ) if ($env:OS -eq "Windows_NT") { - solutionPaths += "../templates/wpf" + $solutionPaths += "../templates/wpf" } }else{ Write-host "" From e73505490373a5deb8389d12862d50b54021ac6f Mon Sep 17 00:00:00 2001 From: maliming Date: Sun, 19 Jan 2025 17:03:24 +0800 Subject: [PATCH 26/60] Update `Npgsql.EntityFrameworkCore.PostgreSQL` to 9.0.3. --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 0b60bf9e60..f5863e502d 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -115,7 +115,7 @@ - + From 246a6f550053db5698b4b715729e8da20d5bf198 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 20 Jan 2025 09:16:35 +0800 Subject: [PATCH 27/60] Get navigation property even if `SaveEntityHistoryWhenNavigationChanges` is `false`. --- .../EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs index 6b64c0c51a..d50e6b89f6 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/EntityHistory/EntityHistoryHelper.cs @@ -194,7 +194,7 @@ public class EntityHistoryHelper : IEntityHistoryHelper, ITransientDependency } } - if (Options.SaveEntityHistoryWhenNavigationChanges && AbpEfCoreNavigationHelper != null) + if (AbpEfCoreNavigationHelper != null) { foreach (var (navigationEntry, index) in entityEntry.Navigations.Select((value, i) => ( value, i ))) { From 2fa00c8370d5817e19eabf47c1de2957a273ffe6 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 20 Jan 2025 10:37:35 +0800 Subject: [PATCH 28/60] Only publish `DistributedEventSent/DistributedEventReceived ` events in unit test. --- .../Distributed/LocalDistributedEventBus.cs | 24 ------- .../Volo/Abp/EventBus/Local/LocalEventBus.cs | 42 ------------- .../LocalDistributedEventBus_Test.cs | 32 ++++++++++ .../Distributed/UnitTestLocalEventBus.cs | 62 +++++++++++++++++++ 4 files changed, 94 insertions(+), 66 deletions(-) create mode 100644 framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/UnitTestLocalEventBus.cs 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 b63133a388..2551fb54fa 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,30 +28,6 @@ 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) 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 c24627cdc5..48f70ac8c1 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,7 +8,6 @@ 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.Reflection; using Volo.Abp.Threading; @@ -175,45 +174,4 @@ 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/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 bbb8838cf6..880e2810cd 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,5 +1,7 @@ using System; using System.Threading.Tasks; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.DependencyInjection.Extensions; using Volo.Abp.Domain.Entities.Events.Distributed; using Volo.Abp.EventBus.Local; using Volo.Abp.Uow; @@ -9,6 +11,12 @@ namespace Volo.Abp.EventBus.Distributed; public class LocalDistributedEventBus_Test : LocalDistributedEventBusTestBase { + protected override void AfterAddApplication(IServiceCollection services) + { + services.Replace(ServiceDescriptor.Singleton()); + base.AfterAddApplication(services); + } + [Fact] public async Task Should_Call_Handler_AndDispose() { @@ -67,6 +75,30 @@ public class LocalDistributedEventBus_Test : LocalDistributedEventBusTestBase [Fact] public async Task DistributedEventSentAndReceived_Test() { + var localEventBus = GetRequiredService(); + if (localEventBus is UnitTestLocalEventBus 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); + }; + } + GetRequiredService().Subscribe(); GetRequiredService().Subscribe(); diff --git a/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/UnitTestLocalEventBus.cs b/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/UnitTestLocalEventBus.cs new file mode 100644 index 0000000000..1511d6a071 --- /dev/null +++ b/framework/test/Volo.Abp.EventBus.Tests/Volo/Abp/EventBus/Distributed/UnitTestLocalEventBus.cs @@ -0,0 +1,62 @@ +using System; +using System.Threading.Tasks; +using JetBrains.Annotations; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Options; +using Volo.Abp.EventBus.Local; +using Volo.Abp.MultiTenancy; +using Volo.Abp.Uow; + +namespace Volo.Abp.EventBus.Distributed; + +///

+/// This class is used in unit tests and supports to publish DistributedEventSent and DistributedEventReceived events. +/// +public class UnitTestLocalEventBus : LocalEventBus +{ + public UnitTestLocalEventBus( + [NotNull] IOptions options, + [NotNull] IServiceScopeFactory serviceScopeFactory, + [NotNull] ICurrentTenant currentTenant, + [NotNull] IUnitOfWorkManager unitOfWorkManager, + [NotNull] IEventHandlerInvoker eventHandlerInvoker) + : base(options, serviceScopeFactory, currentTenant, unitOfWorkManager, eventHandlerInvoker) + { + } + + public Func OnEventHandleInvoking { get; set; } + + 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); + } + + public Func OnPublishing { get; set; } + + 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; + } + + if (OnPublishing != null && eventType != typeof(DistributedEventSent) && eventType != typeof(DistributedEventReceived)) + { + await OnPublishing(eventType, eventData); + } + + await PublishToEventBusAsync(eventType, eventData); + } +} From 7b16236c4157d958251e12ea67791e35770f26ee Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 20 Jan 2025 14:02:44 +0800 Subject: [PATCH 29/60] Check if property has `RequiredMemberAttribute` to determine `IsRequired`. --- .../Volo/Abp/Http/Modeling/PropertyApiDescriptionModel.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Http/Volo/Abp/Http/Modeling/PropertyApiDescriptionModel.cs b/framework/src/Volo.Abp.Http/Volo/Abp/Http/Modeling/PropertyApiDescriptionModel.cs index 03aca1fc29..55891d8cd6 100644 --- a/framework/src/Volo.Abp.Http/Volo/Abp/Http/Modeling/PropertyApiDescriptionModel.cs +++ b/framework/src/Volo.Abp.Http/Volo/Abp/Http/Modeling/PropertyApiDescriptionModel.cs @@ -38,7 +38,7 @@ public class PropertyApiDescriptionModel JsonName = AbpApiProxyScriptingConfiguration.PropertyNameGenerator.Invoke(propertyInfo), Type = ApiTypeNameHelper.GetTypeName(propertyInfo.PropertyType), TypeSimple = ApiTypeNameHelper.GetSimpleTypeName(propertyInfo.PropertyType), - IsRequired = customAttributes.OfType().Any(), + IsRequired = customAttributes.OfType().Any() || propertyInfo.GetCustomAttributesData().Any(attr => attr.AttributeType.Name == "RequiredMemberAttribute"), Minimum = customAttributes.OfType().Select(x => x.Minimum).FirstOrDefault()?.ToString(), Maximum = customAttributes.OfType().Select(x => x.Maximum).FirstOrDefault()?.ToString(), MinLength = customAttributes.OfType().FirstOrDefault()?.Length ?? customAttributes.OfType().FirstOrDefault()?.MinimumLength, From 0c2f6176b15df4b75f2451a497c583fe8b8af1fc Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 20 Jan 2025 15:39:33 +0800 Subject: [PATCH 30/60] Added `Encrypting Setting Values in the Application Configuration`section. Resolve #21900 --- docs/en/framework/infrastructure/settings.md | 33 ++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/docs/en/framework/infrastructure/settings.md b/docs/en/framework/infrastructure/settings.md index 519d2795c3..ef164e939b 100644 --- a/docs/en/framework/infrastructure/settings.md +++ b/docs/en/framework/infrastructure/settings.md @@ -160,6 +160,39 @@ Setting values should be configured under the `Settings` section as like in this > `IConfiguration` is an .NET Core service and it can read values not only from the `appsettings.json`, but also from the environment, user secrets... etc. See [Microsoft's documentation](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/) for more. +#### Encrypting Setting Values in the Application Configuration + +You have to use the `ISettingEncryptionService` to encrypt the setting values when the `IsEncrypted` property of a setting definition is set to `true`, which means that the setting value should be encrypted in the `appsettings.json`. + +Example of injecting the `ISettingEncryptionService` into a class and encrypting the plain text: + +````csharp +public class MyService +{ + private readonly ISettingEncryptionService _encryptionService; + + public MyService(ISettingEncryptionService encryptionService) + { + _encryptionService = encryptionService; + } + + public void EncryptValue(string plainText) + { + var ciphertext = _encryptionService.Encrypt(plainText); + } +} +```` + +Then, Replace `ENCRYPTED_VALUE_HERE` with the ciphertext generated by `ISettingEncryptionService.Encrypt` method. + +````json +{ + "Settings": { + "MySetting": "ENCRYPTED_VALUE_HERE" + } +} +```` + ### Custom Setting Value Providers If you need to extend the setting system, you can define a class derived from the `SettingValueProvider` class. Example: From 11233e58ab431af5bed48101e5dbf44d2b19f5fe Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Mon, 20 Jan 2025 15:58:40 +0800 Subject: [PATCH 31/60] Fix lazy-expand menu click problem --- modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/index.js b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/index.js index 33f0f3b539..3012da1e56 100644 --- a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/index.js +++ b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/index.js @@ -376,7 +376,7 @@ var doc = doc || {}; var initLazyExpandNavigation = function(){ $("li .lazy-expand").off('click'); - $("li .lazy-expand a").on('click', function(e){ + $("li .lazy-expand").children("a").on('click', function(e){ if($(this).attr("href") !== "javascript:;"){ e.stopPropagation(); } From 44e4299f6b10a5cede69cb5e71a8b83dc6494b51 Mon Sep 17 00:00:00 2001 From: maliming Date: Mon, 20 Jan 2025 19:19:39 +0800 Subject: [PATCH 32/60] Replace toastr with a new implementation. --- .../mvc-razor-pages/javascript-api/notify.md | 33 +-- docs/en/images/js-notify-success.png | Bin 15425 -> 79218 bytes .../Toastr/ToastrScriptBundleContributor.cs | 15 -- .../Toastr/ToastrStyleBundleContributor.cs | 12 - .../SharedThemeGlobalScriptContributor.cs | 4 +- .../SharedThemeGlobalStyleContributor.cs | 5 +- .../toast/abp-toast.css | 139 +++++++++++ .../toast/abp-toast.js | 216 ++++++++++++++++++ .../toastr/abp-toastr.js | 34 --- .../package.json | 3 +- 10 files changed, 377 insertions(+), 84 deletions(-) delete mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.UI.Packages/Volo/Abp/AspNetCore/Mvc/UI/Packages/Toastr/ToastrScriptBundleContributor.cs delete mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.UI.Packages/Volo/Abp/AspNetCore/Mvc/UI/Packages/Toastr/ToastrStyleBundleContributor.cs create mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/wwwroot/libs/abp/aspnetcore-mvc-ui-theme-shared/toast/abp-toast.css create mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/wwwroot/libs/abp/aspnetcore-mvc-ui-theme-shared/toast/abp-toast.js delete mode 100644 framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/wwwroot/libs/abp/aspnetcore-mvc-ui-theme-shared/toastr/abp-toastr.js diff --git a/docs/en/framework/ui/mvc-razor-pages/javascript-api/notify.md b/docs/en/framework/ui/mvc-razor-pages/javascript-api/notify.md index 970d35b851..043f811d49 100644 --- a/docs/en/framework/ui/mvc-razor-pages/javascript-api/notify.md +++ b/docs/en/framework/ui/mvc-razor-pages/javascript-api/notify.md @@ -1,6 +1,6 @@ # ASP.NET Core MVC / Razor Pages UI: JavaScript Notify API -Notify API is used to show toast style, auto disappearing UI notifications to the end user. It is implemented by the [Toastr](https://github.com/CodeSeven/toastr) library by default. +Notify API is used to show toast style, auto disappearing UI notifications to the end user. ## Quick Example @@ -26,20 +26,23 @@ There are four types of pre-defined notifications; * `abp.notify.warn(...)` * `abp.notify.error(...)` -All of the methods above gets the following parameters; +All of the methods above accept the following parameters: * `message`: A message (`string`) to show to the user. * `title`: An optional title (`string`). -* `options`: Additional options to be passed to the underlying library, to the Toastr by default. - -## Toastr Configuration - -The notification API is implemented by the [Toastr](https://github.com/CodeSeven/toastr) library by default. You can see its own configuration options. - -**Example: Show toast messages on the top right of the page** - -````js -toastr.options.positionClass = 'toast-top-right'; -```` - -> ABP sets this option to `toast-bottom-right` by default. You can override it just as shown above. \ No newline at end of file +* `options`: Additional options to customize the notification. Available options: + * `life`: Display duration in milliseconds (default: `5000`) + * `sticky`: Keep toast visible until manually closed (default: `false`) + * `closable`: Show close button (default: `true`) + * `tapToDismiss`: Click anywhere on toast to dismiss (default: `false`) + * `containerKey`: Key for multiple container support (optional) + * `iconClass`: Custom icon class (optional) + * `position`: Position configuration (optional) + * `top`: Distance from top (default: `'auto'`) + * `right`: Distance from right (default: `'30px'`) + * `bottom`: Distance from bottom (default: `'30px'`) + * `left`: Distance from left (default: `'auto'`) + +## Global Configuration + +`AbpToastService.setDefaultOptions` method can be used to set default options for all notifications. This method should be called before any notification is shown. diff --git a/docs/en/images/js-notify-success.png b/docs/en/images/js-notify-success.png index d5300f3468fb51ef11b306222730a9e9b5d6648f..8366cb9d5a0d44729f4663d0d646ea4131a376fa 100644 GIT binary patch literal 79218 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