@geogirafe/lib-geoportal
Version:
GeoGirafe is a flexible application to build online geoportals.
25 lines (24 loc) • 1.14 kB
TypeScript
import Filter from 'ol/format/filter/Filter.js';
import WfsFilterCondition from './wfsfiltercondition.js';
import { LogicalFilterOperator } from '../../models/filter.js';
/**
* Represents a WFS filter expression consisting of one or more conditions chained with a logical operator (`and` or `or`).
* Filters can be nested to form a more complex filter expression, e.g.:
* condition 1 and (condition2 or condition3)
*/
export default class WfsFilter {
conditions: (WfsFilterCondition | WfsFilter)[];
logicalOperator?: LogicalFilterOperator;
constructor(conditions: (WfsFilterCondition | WfsFilter)[], logicalOperator?: LogicalFilterOperator);
private checkValidParameters;
/**
* Checks if the filter is simple, meaning it has only one condition and no logical operator.
* Simple filters can be displayed in the `QueryBuilderComponent` (layer tree filter).
*/
isSimpleFilter(): boolean;
isAdvancedFilter(): boolean;
toOpenLayersFilter(): Filter | undefined;
private static toOpenLayersFilterRecursively;
private static toChainedOpenLayersFilter;
toWmsGetMapFilter(): string;
}