@supabase/postgrest-js 1.18.0 → 1.18.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import PostgrestTransformBuilder from './PostgrestTransformBuilder';
|
|
2
|
+
import { JsonPathToAccessor, JsonPathToType } from './select-query-parser/utils';
|
|
2
3
|
import { GenericSchema } from './types';
|
|
3
4
|
declare type FilterOperator = 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'like' | 'ilike' | 'is' | 'in' | 'cs' | 'cd' | 'sl' | 'sr' | 'nxl' | 'nxr' | 'adj' | 'ov' | 'fts' | 'plfts' | 'phfts' | 'wfts';
|
|
4
|
-
declare type
|
|
5
|
+
export declare type IsStringOperator<Path extends string> = Path extends `${string}->>${string}` ? true : false;
|
|
6
|
+
declare type ResolveFilterValue<Schema extends GenericSchema, Row extends Record<string, unknown>, ColumnName extends string> = ColumnName extends `${infer RelationshipTable}.${infer Remainder}` ? Remainder extends `${infer _}.${infer _}` ? ResolveFilterValue<Schema, Row, Remainder> : ResolveFilterRelationshipValue<Schema, RelationshipTable, Remainder> : ColumnName extends keyof Row ? Row[ColumnName] : IsStringOperator<ColumnName> extends true ? string : JsonPathToType<Row, JsonPathToAccessor<ColumnName>> extends infer JsonPathValue ? JsonPathValue extends never ? never : JsonPathValue : never;
|
|
5
7
|
declare type ResolveFilterRelationshipValue<Schema extends GenericSchema, RelationshipTable extends string, RelationshipColumn extends string> = Schema['Tables'] & Schema['Views'] extends infer TablesAndViews ? RelationshipTable extends keyof TablesAndViews ? 'Row' extends keyof TablesAndViews[RelationshipTable] ? RelationshipColumn extends keyof TablesAndViews[RelationshipTable]['Row'] ? TablesAndViews[RelationshipTable]['Row'][RelationshipColumn] : unknown : unknown : unknown : never;
|
|
6
8
|
export default class PostgrestFilterBuilder<Schema extends GenericSchema, Row extends Record<string, unknown>, Result, RelationName = unknown, Relationships = unknown> extends PostgrestTransformBuilder<Schema, Row, Result, RelationName, Relationships> {
|
|
7
9
|
/**
|
|
@@ -12,14 +14,14 @@ export default class PostgrestFilterBuilder<Schema extends GenericSchema, Row ex
|
|
|
12
14
|
* @param column - The column to filter on
|
|
13
15
|
* @param value - The value to filter with
|
|
14
16
|
*/
|
|
15
|
-
eq<ColumnName extends string>(column: ColumnName, value: ResolveFilterValue<Schema, Row, ColumnName> extends never ? NonNullable<unknown> :
|
|
17
|
+
eq<ColumnName extends string>(column: ColumnName, value: ResolveFilterValue<Schema, Row, ColumnName> extends never ? NonNullable<unknown> : ResolveFilterValue<Schema, Row, ColumnName> extends infer ResolvedFilterValue ? NonNullable<ResolvedFilterValue> : never): this;
|
|
16
18
|
/**
|
|
17
19
|
* Match only rows where `column` is not equal to `value`.
|
|
18
20
|
*
|
|
19
21
|
* @param column - The column to filter on
|
|
20
22
|
* @param value - The value to filter with
|
|
21
23
|
*/
|
|
22
|
-
neq<ColumnName extends string>(column: ColumnName, value: ResolveFilterValue<Schema, Row, ColumnName> extends never ? unknown : ResolveFilterValue<Schema, Row, ColumnName>): this;
|
|
24
|
+
neq<ColumnName extends string>(column: ColumnName, value: ResolveFilterValue<Schema, Row, ColumnName> extends never ? unknown : ResolveFilterValue<Schema, Row, ColumnName> extends infer ResolvedFilterValue ? ResolvedFilterValue : never): this;
|
|
23
25
|
gt<ColumnName extends string & keyof Row>(column: ColumnName, value: Row[ColumnName]): this;
|
|
24
26
|
gt(column: string, value: unknown): this;
|
|
25
27
|
gte<ColumnName extends string & keyof Row>(column: ColumnName, value: Row[ColumnName]): this;
|
|
@@ -48,7 +50,7 @@ export default class PostgrestFilterBuilder<Schema extends GenericSchema, Row ex
|
|
|
48
50
|
* @param column - The column to filter on
|
|
49
51
|
* @param values - The values array to filter with
|
|
50
52
|
*/
|
|
51
|
-
in<ColumnName extends string>(column: ColumnName, values: ResolveFilterValue<Schema, Row, ColumnName> extends never ? unknown
|
|
53
|
+
in<ColumnName extends string>(column: ColumnName, values: ReadonlyArray<ResolveFilterValue<Schema, Row, ColumnName> extends never ? unknown : ResolveFilterValue<Schema, Row, ColumnName> extends infer ResolvedFilterValue ? ResolvedFilterValue : never>): this;
|
|
52
54
|
contains<ColumnName extends string & keyof Row>(column: ColumnName, value: string | ReadonlyArray<Row[ColumnName]> | Record<string, unknown>): this;
|
|
53
55
|
contains(column: string, value: string | readonly unknown[] | Record<string, unknown>): this;
|
|
54
56
|
containedBy<ColumnName extends string & keyof Row>(column: ColumnName, value: string | ReadonlyArray<Row[ColumnName]> | Record<string, unknown>): this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestFilterBuilder.d.ts","sourceRoot":"","sources":["../../src/PostgrestFilterBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,aAAK,cAAc,GACf,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,MAAM,GACN,OAAO,GACP,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,KAAK,GACL,IAAI,GACJ,KAAK,GACL,OAAO,GACP,OAAO,GACP,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"PostgrestFilterBuilder.d.ts","sourceRoot":"","sources":["../../src/PostgrestFilterBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestFilterBuilder.js","sourceRoot":"","sources":["../../src/PostgrestFilterBuilder.ts"],"names":[],"mappings":";;;;;AAAA,4FAAmE;
|
|
1
|
+
{"version":3,"file":"PostgrestFilterBuilder.js","sourceRoot":"","sources":["../../src/PostgrestFilterBuilder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@supabase/postgrest-js",
|
|
3
|
-
"version": "1.18.
|
|
3
|
+
"version": "1.18.1",
|
|
4
4
|
"description": "Isomorphic PostgREST client",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"postgrest",
|
|
@@ -59,8 +59,9 @@
|
|
|
59
59
|
"ts-expect": "^1.3.0",
|
|
60
60
|
"ts-jest": "^28.0.3",
|
|
61
61
|
"tsd": "^0.31.2",
|
|
62
|
+
"type-fest": "^4.32.0",
|
|
62
63
|
"typedoc": "^0.22.16",
|
|
63
|
-
"typescript": "4.5.5",
|
|
64
|
+
"typescript": "^4.5.5",
|
|
64
65
|
"wait-for-localhost-cli": "^3.0.0"
|
|
65
66
|
}
|
|
66
67
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import PostgrestTransformBuilder from './PostgrestTransformBuilder'
|
|
2
|
+
import { JsonPathToAccessor, JsonPathToType } from './select-query-parser/utils'
|
|
2
3
|
import { GenericSchema } from './types'
|
|
3
4
|
|
|
4
5
|
type FilterOperator =
|
|
@@ -25,6 +26,10 @@ type FilterOperator =
|
|
|
25
26
|
| 'phfts'
|
|
26
27
|
| 'wfts'
|
|
27
28
|
|
|
29
|
+
export type IsStringOperator<Path extends string> = Path extends `${string}->>${string}`
|
|
30
|
+
? true
|
|
31
|
+
: false
|
|
32
|
+
|
|
28
33
|
// Match relationship filters with `table.column` syntax and resolve underlying
|
|
29
34
|
// column value. If not matched, fallback to generic type.
|
|
30
35
|
// TODO: Validate the relationship itself ala select-query-parser. Currently we
|
|
@@ -40,6 +45,14 @@ type ResolveFilterValue<
|
|
|
40
45
|
: ResolveFilterRelationshipValue<Schema, RelationshipTable, Remainder>
|
|
41
46
|
: ColumnName extends keyof Row
|
|
42
47
|
? Row[ColumnName]
|
|
48
|
+
: // If the column selection is a jsonpath like `data->value` or `data->>value` we attempt to match
|
|
49
|
+
// the expected type with the parsed custom json type
|
|
50
|
+
IsStringOperator<ColumnName> extends true
|
|
51
|
+
? string
|
|
52
|
+
: JsonPathToType<Row, JsonPathToAccessor<ColumnName>> extends infer JsonPathValue
|
|
53
|
+
? JsonPathValue extends never
|
|
54
|
+
? never
|
|
55
|
+
: JsonPathValue
|
|
43
56
|
: never
|
|
44
57
|
|
|
45
58
|
type ResolveFilterRelationshipValue<
|
|
@@ -75,7 +88,12 @@ export default class PostgrestFilterBuilder<
|
|
|
75
88
|
column: ColumnName,
|
|
76
89
|
value: ResolveFilterValue<Schema, Row, ColumnName> extends never
|
|
77
90
|
? NonNullable<unknown>
|
|
78
|
-
: NonNullable
|
|
91
|
+
: // We want to infer the type before wrapping it into a `NonNullable` to avoid too deep
|
|
92
|
+
// type resolution error
|
|
93
|
+
ResolveFilterValue<Schema, Row, ColumnName> extends infer ResolvedFilterValue
|
|
94
|
+
? NonNullable<ResolvedFilterValue>
|
|
95
|
+
: // We should never enter this case as all the branches are covered above
|
|
96
|
+
never
|
|
79
97
|
): this {
|
|
80
98
|
this.url.searchParams.append(column, `eq.${value}`)
|
|
81
99
|
return this
|
|
@@ -91,7 +109,9 @@ export default class PostgrestFilterBuilder<
|
|
|
91
109
|
column: ColumnName,
|
|
92
110
|
value: ResolveFilterValue<Schema, Row, ColumnName> extends never
|
|
93
111
|
? unknown
|
|
94
|
-
: ResolveFilterValue<Schema, Row, ColumnName>
|
|
112
|
+
: ResolveFilterValue<Schema, Row, ColumnName> extends infer ResolvedFilterValue
|
|
113
|
+
? ResolvedFilterValue
|
|
114
|
+
: never
|
|
95
115
|
): this {
|
|
96
116
|
this.url.searchParams.append(column, `neq.${value}`)
|
|
97
117
|
return this
|
|
@@ -269,9 +289,16 @@ export default class PostgrestFilterBuilder<
|
|
|
269
289
|
*/
|
|
270
290
|
in<ColumnName extends string>(
|
|
271
291
|
column: ColumnName,
|
|
272
|
-
values:
|
|
273
|
-
|
|
274
|
-
|
|
292
|
+
values: ReadonlyArray<
|
|
293
|
+
ResolveFilterValue<Schema, Row, ColumnName> extends never
|
|
294
|
+
? unknown
|
|
295
|
+
: // We want to infer the type before wrapping it into a `NonNullable` to avoid too deep
|
|
296
|
+
// type resolution error
|
|
297
|
+
ResolveFilterValue<Schema, Row, ColumnName> extends infer ResolvedFilterValue
|
|
298
|
+
? ResolvedFilterValue
|
|
299
|
+
: // We should never enter this case as all the branches are covered above
|
|
300
|
+
never
|
|
301
|
+
>
|
|
275
302
|
): this {
|
|
276
303
|
const cleanedValues = Array.from(new Set(values))
|
|
277
304
|
.map((s) => {
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '1.18.
|
|
1
|
+
export const version = '1.18.1'
|