@@ -123,6 +123,32 @@ export default class PostgrestFilterBuilder<
123
123
return this
124
124
}
125
125
126
+ likeAllOf < ColumnName extends string & keyof Row > ( column : ColumnName , patterns : string [ ] ) : this
127
+ likeAllOf ( column : string , patterns : string [ ] ) : this
128
+ /**
129
+ * Match only rows where `column` matches all of `patterns` case-sensitively.
130
+ *
131
+ * @param column - The column to filter on
132
+ * @param patterns - The patterns to match with
133
+ */
134
+ likeAllOf ( column : string , patterns : string [ ] ) : this {
135
+ this . url . searchParams . append ( column , `like(all).{${ patterns . join ( ',' ) } }` )
136
+ return this
137
+ }
138
+
139
+ likeAnyOf < ColumnName extends string & keyof Row > ( column : ColumnName , patterns : string [ ] ) : this
140
+ likeAnyOf ( column : string , patterns : string [ ] ) : this
141
+ /**
142
+ * Match only rows where `column` matches any of `patterns` case-sensitively.
143
+ *
144
+ * @param column - The column to filter on
145
+ * @param patterns - The patterns to match with
146
+ */
147
+ likeAnyOf ( column : string , patterns : string [ ] ) : this {
148
+ this . url . searchParams . append ( column , `like(any).{${ patterns . join ( ',' ) } }` )
149
+ return this
150
+ }
151
+
126
152
ilike < ColumnName extends string & keyof Row > ( column : ColumnName , pattern : string ) : this
127
153
ilike ( column : string , pattern : string ) : this
128
154
/**
@@ -136,6 +162,32 @@ export default class PostgrestFilterBuilder<
136
162
return this
137
163
}
138
164
165
+ ilikeAllOf < ColumnName extends string & keyof Row > ( column : ColumnName , patterns : string [ ] ) : this
166
+ ilikeAllOf ( column : string , patterns : string [ ] ) : this
167
+ /**
168
+ * Match only rows where `column` matches all of `patterns` case-insensitively.
169
+ *
170
+ * @param column - The column to filter on
171
+ * @param patterns - The patterns to match with
172
+ */
173
+ ilikeAllOf ( column : string , patterns : string [ ] ) : this {
174
+ this . url . searchParams . append ( column , `ilike(all).{${ patterns . join ( ',' ) } }` )
175
+ return this
176
+ }
177
+
178
+ ilikeAnyOf < ColumnName extends string & keyof Row > ( column : ColumnName , patterns : string [ ] ) : this
179
+ ilikeAnyOf ( column : string , patterns : string [ ] ) : this
180
+ /**
181
+ * Match only rows where `column` matches any of `patterns` case-insensitively.
182
+ *
183
+ * @param column - The column to filter on
184
+ * @param patterns - The patterns to match with
185
+ */
186
+ ilikeAnyOf ( column : string , patterns : string [ ] ) : this {
187
+ this . url . searchParams . append ( column , `ilike(any).{${ patterns . join ( ',' ) } }` )
188
+ return this
189
+ }
190
+
139
191
is < ColumnName extends string & keyof Row > (
140
192
column : ColumnName ,
141
193
value : Row [ ColumnName ] & ( boolean | null )
0 commit comments