// SPDX-License-Identifier: AGPL-3.0
export enum FilterField {
- UUID = "uuid"
+ UUID = "uuid",
+ OWNER_UUID = "owner_uuid"
}
export default class FilterBuilder {
private filters = "";
- private addCondition(field: FilterField, cond: string, value?: string) {
+ private addCondition(field: FilterField, cond: string, value?: string, prefix: string = "", postfix: string = "") {
if (value) {
- this.filters += `["${field}","${cond}","${value}"]`;
+ this.filters += `["${field}","${cond}","${prefix}${value}${postfix}"]`;
}
return this;
}
}
public addLike(field: FilterField, value?: string) {
- return this.addCondition(field, "like", value);
+ return this.addCondition(field, "like", value, "", "%");
}
public addILike(field: FilterField, value?: string) {
- return this.addCondition(field, "ilike", value);
+ return this.addCondition(field, "ilike", value, "", "%");
}
public get() {