As the FilterInputWrapperComponents set currentOperator(value: string) uses a hard coded list of operator values (isnull isempty isnotnull isnotemty), it is impossible to create a custom FilterOperator that has no search string - so we can't have isnullorempty isnotnullorempty (or isblank/isnotblank).
Please introduce a requiresSearchValue on the FilterOperatorBase class and make sure FilterInputWrapperComponents does decisions based on that.
Please introduce a isnullorempty/isnotnullorempty filter operator (for strings).
Additional context/sample usage:
<kendo-grid-column title="Employee / Prospect" field="Name" width="160">
<ng-template kendoGridCellTemplate let-field let-value let-dataItem>
<span *ngIf="dataItem.IsProspect" class="pull-left">{{dataItem.Name}}
<p class="prospect-indicator pull-right" data-letters="P"></p>
</span>
<span *ngIf="!dataItem.IsProspect">{{dataItem.Name}}</span>
</ng-template>
<ng-template kendoGridHeaderTemplate let-column>
<span title={{column.title}}>{{column.title}}</span>
</ng-template>
<ng-template kendoGridFilterMenuTemplate let-filter let-column="column" let-filterService="filterService">
<kendo-grid-string-filter-menu
[column]="column"
[filter]="filter"
[filterService]="filterService">
<kendo-filter-eq-operator></kendo-filter-eq-operator>
<kendo-filter-neq-operator></kendo-filter-neq-operator>
<kendo-filter-contains-operator></kendo-filter-contains-operator>
<kendo-filter-not-contains-operator></kendo-filter-not-contains-operator>
<kendo-filter-startswith-operator></kendo-filter-startswith-operator>
<kendo-filter-endswith-operator></kendo-filter-endswith-operator>
<kendo-filter-isblank-operator></kendo-filter-isblank-operator>
<kendo-filter-isnotblank-operator></kendo-filter-isnotblank-operator>
<kendo-filter-isempty-operator text="xIs blank"></kendo-filter-isempty-operator>
<kendo-filter-isnotempty-operator text="xIs not blank"></kendo-filter-isnotempty-operator>
</kendo-grid-string-filter-menu>
</ng-template>
</kendo-grid-column>