diff --git a/packages/corelib/dist/index.d.ts b/packages/corelib/dist/index.d.ts index 0b6a65be83..7d8b361d70 100644 --- a/packages/corelib/dist/index.d.ts +++ b/packages/corelib/dist/index.d.ts @@ -1,6 +1,6 @@ /// /// -import { PropertyItem, executeOnceWhenVisible, executeEverytimeWhenVisible, DialogButton, PropertyItemsData, Lookup, ColumnSelection, ListRequest, ServiceOptions, ListResponse, ArgumentNullException, SaveRequest, HandleRouteEventArgs, DeleteResponse, Exception, RetrieveResponse, RetrieveRequest, SaveResponse, UndeleteResponse, ServiceRequest, ServiceResponse } from '@serenity-is/corelib/q'; +import { PropertyItem, executeOnceWhenVisible, executeEverytimeWhenVisible, DialogButton, PropertyItemsData, Lookup, ColumnSelection, ListRequest, ServiceOptions, ListResponse, SaveRequest, HandleRouteEventArgs, DeleteResponse, Exception, RetrieveResponse, RetrieveRequest, SaveResponse, UndeleteResponse, ServiceRequest, ServiceResponse } from '@serenity-is/corelib/q'; export { ColumnSelection, Criteria, DeleteRequest, DeleteResponse, ISlickFormatter, ListRequest, ListResponse, PropertyItem, PropertyItemsData, RetrieveColumnSelection, RetrieveLocalizationRequest, RetrieveLocalizationResponse, RetrieveRequest, RetrieveResponse, SaveRequest, SaveRequestWithAttachment, SaveResponse, SaveWithLocalizationRequest, ServiceError, ServiceOptions, ServiceRequest, ServiceResponse, SummaryType, UndeleteRequest, UndeleteResponse } from '@serenity-is/corelib/q'; import { PagerOptions, RemoteView, Format, Formatter, RemoteViewOptions } from '@serenity-is/corelib/slick'; export { Formatter } from '@serenity-is/corelib/slick'; @@ -1553,7 +1553,7 @@ declare abstract class BaseFiltering implements IFiltering, IQuickFiltering { getCriteria(): CriteriaWithText; loadState(state: any): void; saveState(): any; - protected argumentNull(): ArgumentNullException; + protected argumentNull(): Error; validateEditorValue(value: string): string; getEditorValue(): string; getEditorText(): any; diff --git a/packages/corelib/src/ui/filtering/filtering.ts b/packages/corelib/src/ui/filtering/filtering.ts index 018f2d0b69..617d4f7bcf 100644 --- a/packages/corelib/src/ui/filtering/filtering.ts +++ b/packages/corelib/src/ui/filtering/filtering.ts @@ -236,7 +236,7 @@ export abstract class BaseFiltering implements IFiltering, IQuickFiltering { } protected argumentNull() { - return new ArgumentNullException('value', localText('Controls.FilterPanel.ValueRequired')); + return new Error(localText('Controls.FilterPanel.ValueRequired')); } validateEditorValue(value: string) { diff --git a/packages/corelib/src/ui/filtering/filterpanel.ts b/packages/corelib/src/ui/filtering/filterpanel.ts index 59175d69ea..ba57df08d9 100644 --- a/packages/corelib/src/ui/filtering/filterpanel.ts +++ b/packages/corelib/src/ui/filtering/filterpanel.ts @@ -225,7 +225,14 @@ export class FilterPanel extends FilterWidgetBase { line.rightParen = row.children('div.l') .children('a.rightparen').hasClass('active'); filtering.set_operator({ key: op }); - var criteria = filtering.getCriteria(); + var criteria; + try { + criteria = filtering.getCriteria(); + } + catch (ex) { + errorText = ex.message ?? ex.toString(); + break; + } line.criteria = criteria.criteria; line.state = filtering.saveState(); line.displayText = criteria.displayText; diff --git a/src/Serenity.Scripts/wwwroot/Serenity.CoreLib.d.ts b/src/Serenity.Scripts/wwwroot/Serenity.CoreLib.d.ts index fd68726437..aab023af92 100644 --- a/src/Serenity.Scripts/wwwroot/Serenity.CoreLib.d.ts +++ b/src/Serenity.Scripts/wwwroot/Serenity.CoreLib.d.ts @@ -4726,7 +4726,7 @@ declare namespace Serenity { getCriteria(): CriteriaWithText; loadState(state: any): void; saveState(): any; - protected argumentNull(): Q.ArgumentNullException; + protected argumentNull(): Error; validateEditorValue(value: string): string; getEditorValue(): string; getEditorText(): any;