X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/b863f7aaab7112a32c7f9b1e7a0299c4266df2f5..c77b1a5becebf382fddc349ae9081503d511a02a:/src/common/api/filter-builder.ts diff --git a/src/common/api/filter-builder.ts b/src/common/api/filter-builder.ts index c4c29b40..443c7639 100644 --- a/src/common/api/filter-builder.ts +++ b/src/common/api/filter-builder.ts @@ -3,15 +3,16 @@ // 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; } @@ -21,11 +22,11 @@ export default class FilterBuilder { } 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() {