@supabase/postgrest-js 1.8.5 → 1.9.0
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.
- package/dist/main/PostgrestClient.d.ts +3 -3
- package/dist/main/PostgrestClient.d.ts.map +1 -1
- package/dist/main/PostgrestClient.js.map +1 -1
- package/dist/main/PostgrestFilterBuilder.d.ts +7 -4
- package/dist/main/PostgrestFilterBuilder.d.ts.map +1 -1
- package/dist/main/PostgrestFilterBuilder.js +6 -4
- package/dist/main/PostgrestFilterBuilder.js.map +1 -1
- package/dist/main/PostgrestQueryBuilder.d.ts +9 -9
- package/dist/main/PostgrestQueryBuilder.d.ts.map +1 -1
- package/dist/main/PostgrestQueryBuilder.js.map +1 -1
- package/dist/main/PostgrestTransformBuilder.d.ts +31 -9
- package/dist/main/PostgrestTransformBuilder.d.ts.map +1 -1
- package/dist/main/PostgrestTransformBuilder.js +23 -16
- package/dist/main/PostgrestTransformBuilder.js.map +1 -1
- package/dist/main/select-query-parser.d.ts +20 -8
- package/dist/main/select-query-parser.d.ts.map +1 -1
- package/dist/main/version.d.ts +1 -1
- package/dist/main/version.js +1 -1
- package/dist/module/PostgrestClient.d.ts +3 -3
- package/dist/module/PostgrestClient.d.ts.map +1 -1
- package/dist/module/PostgrestClient.js.map +1 -1
- package/dist/module/PostgrestFilterBuilder.d.ts +7 -4
- package/dist/module/PostgrestFilterBuilder.d.ts.map +1 -1
- package/dist/module/PostgrestFilterBuilder.js +6 -4
- package/dist/module/PostgrestFilterBuilder.js.map +1 -1
- package/dist/module/PostgrestQueryBuilder.d.ts +9 -9
- package/dist/module/PostgrestQueryBuilder.d.ts.map +1 -1
- package/dist/module/PostgrestQueryBuilder.js.map +1 -1
- package/dist/module/PostgrestTransformBuilder.d.ts +31 -9
- package/dist/module/PostgrestTransformBuilder.d.ts.map +1 -1
- package/dist/module/PostgrestTransformBuilder.js +23 -16
- package/dist/module/PostgrestTransformBuilder.js.map +1 -1
- package/dist/module/select-query-parser.d.ts +20 -8
- package/dist/module/select-query-parser.d.ts.map +1 -1
- package/dist/module/version.d.ts +1 -1
- package/dist/module/version.js +1 -1
- package/package.json +1 -1
- package/src/PostgrestClient.ts +6 -10
- package/src/PostgrestFilterBuilder.ts +14 -5
- package/src/PostgrestQueryBuilder.ts +11 -10
- package/src/PostgrestTransformBuilder.ts +83 -21
- package/src/select-query-parser.ts +58 -17
- package/src/version.ts +1 -1
|
@@ -30,9 +30,9 @@ export default class PostgrestClient<Database = any, SchemaName extends string &
|
|
|
30
30
|
schema?: SchemaName;
|
|
31
31
|
fetch?: Fetch;
|
|
32
32
|
});
|
|
33
|
-
from<TableName extends string & keyof Schema['Tables'], Table extends Schema['Tables'][TableName]>(relation: TableName): PostgrestQueryBuilder<Schema, Table>;
|
|
34
|
-
from<ViewName extends string & keyof Schema['Views'], View extends Schema['Views'][ViewName]>(relation: ViewName): PostgrestQueryBuilder<Schema, View>;
|
|
35
|
-
from(relation: string): PostgrestQueryBuilder<Schema, any>;
|
|
33
|
+
from<TableName extends string & keyof Schema['Tables'], Table extends Schema['Tables'][TableName]>(relation: TableName): PostgrestQueryBuilder<Schema, Table, TableName>;
|
|
34
|
+
from<ViewName extends string & keyof Schema['Views'], View extends Schema['Views'][ViewName]>(relation: ViewName): PostgrestQueryBuilder<Schema, View, ViewName>;
|
|
35
|
+
from(relation: string): PostgrestQueryBuilder<Schema, any, any>;
|
|
36
36
|
/**
|
|
37
37
|
* Select a schema to query or perform an function (rpc) call.
|
|
38
38
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestClient.d.ts","sourceRoot":"","sources":["../../src/PostgrestClient.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAG7D,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE9C;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe,CAClC,QAAQ,GAAG,GAAG,EACd,UAAU,SAAS,MAAM,GAAG,MAAM,QAAQ,GAAG,QAAQ,SAAS,MAAM,QAAQ,GACxE,QAAQ,GACR,MAAM,GAAG,MAAM,QAAQ,EAC3B,MAAM,SAAS,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,aAAa,GACrE,QAAQ,CAAC,UAAU,CAAC,GACpB,GAAG;IAEP,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,KAAK,CAAC,EAAE,KAAK,CAAA;IAGb;;;;;;;;OAQG;gBAED,GAAG,EAAE,MAAM,EACX,EACE,OAAY,EACZ,MAAM,EACN,KAAK,GACN,GAAE;QACD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChC,MAAM,CAAC,EAAE,UAAU,CAAA;QACnB,KAAK,CAAC,EAAE,KAAK,CAAA;KACT;IAQR,IAAI,CACF,SAAS,SAAS,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EACjD,KAAK,SAAS,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,EACzC,QAAQ,EAAE,SAAS,GAAG,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"PostgrestClient.d.ts","sourceRoot":"","sources":["../../src/PostgrestClient.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAG7D,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE9C;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe,CAClC,QAAQ,GAAG,GAAG,EACd,UAAU,SAAS,MAAM,GAAG,MAAM,QAAQ,GAAG,QAAQ,SAAS,MAAM,QAAQ,GACxE,QAAQ,GACR,MAAM,GAAG,MAAM,QAAQ,EAC3B,MAAM,SAAS,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,aAAa,GACrE,QAAQ,CAAC,UAAU,CAAC,GACpB,GAAG;IAEP,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,KAAK,CAAC,EAAE,KAAK,CAAA;IAGb;;;;;;;;OAQG;gBAED,GAAG,EAAE,MAAM,EACX,EACE,OAAY,EACZ,MAAM,EACN,KAAK,GACN,GAAE;QACD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChC,MAAM,CAAC,EAAE,UAAU,CAAA;QACnB,KAAK,CAAC,EAAE,KAAK,CAAA;KACT;IAQR,IAAI,CACF,SAAS,SAAS,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EACjD,KAAK,SAAS,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,EACzC,QAAQ,EAAE,SAAS,GAAG,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC;IACvE,IAAI,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,SAAS,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,EAC1F,QAAQ,EAAE,QAAQ,GACjB,qBAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC;IAChD,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC;IAe/D;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,SAAS,MAAM,GAAG,MAAM,QAAQ,EAClD,MAAM,EAAE,aAAa,GACpB,eAAe,CAChB,QAAQ,EACR,aAAa,EACb,QAAQ,CAAC,aAAa,CAAC,SAAS,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,GAAG,CAC9E;IAQD;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,GAAG,CACD,YAAY,SAAS,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,EACvD,SAAS,SAAS,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,EAEnD,EAAE,EAAE,YAAY,EAChB,IAAI,GAAE,SAAS,CAAC,MAAM,CAAM,EAC5B,EACE,IAAY,EACZ,KAAK,GACN,GAAE;QACD,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,CAAA;KACrC,GACL,sBAAsB,CACvB,MAAM,EACN,SAAS,CAAC,SAAS,CAAC,SAAS,GAAG,EAAE,GAC9B,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC1D,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,GAC5B,KAAK,GACP,KAAK,EACT,SAAS,CAAC,SAAS,CAAC,CACrB;CA6BF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestClient.js","sourceRoot":"","sources":["../../src/PostgrestClient.ts"],"names":[],"mappings":";;;;;AAAA,oFAA2D;AAC3D,sFAA6D;AAE7D,2CAA6C;AAG7C;;;;;;;;;GASG;AACH,MAAqB,eAAe;IAclC,mEAAmE;IACnE;;;;;;;;OAQG;IACH,YACE,GAAW,EACX,EACE,OAAO,GAAG,EAAE,EACZ,MAAM,EACN,KAAK,MAKH,EAAE;QAEN,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,OAAO,mCAAQ,2BAAe,GAAK,OAAO,CAAE,CAAA;QACjD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAUD;;;;OAIG;IACH,IAAI,CAAC,QAAgB;QACnB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,QAAQ,EAAE,CAAC,CAAA;QAC9C,OAAO,IAAI,+BAAqB,
|
|
1
|
+
{"version":3,"file":"PostgrestClient.js","sourceRoot":"","sources":["../../src/PostgrestClient.ts"],"names":[],"mappings":";;;;;AAAA,oFAA2D;AAC3D,sFAA6D;AAE7D,2CAA6C;AAG7C;;;;;;;;;GASG;AACH,MAAqB,eAAe;IAclC,mEAAmE;IACnE;;;;;;;;OAQG;IACH,YACE,GAAW,EACX,EACE,OAAO,GAAG,EAAE,EACZ,MAAM,EACN,KAAK,MAKH,EAAE;QAEN,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,OAAO,mCAAQ,2BAAe,GAAK,OAAO,CAAE,CAAA;QACjD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAUD;;;;OAIG;IACH,IAAI,CAAC,QAAgB;QACnB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,QAAQ,EAAE,CAAC,CAAA;QAC9C,OAAO,IAAI,+BAAqB,CAAC,GAAG,EAAE;YACpC,OAAO,oBAAO,IAAI,CAAC,OAAO,CAAE;YAC5B,MAAM,EAAE,IAAI,CAAC,UAAU;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CACJ,MAAqB;QAMrB,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,GAAG,CAID,EAAgB,EAChB,OAA0B,EAAE,EAC5B,EACE,IAAI,GAAG,KAAK,EACZ,KAAK,MAIH,EAAE;QAUN,IAAI,MAAuB,CAAA;QAC3B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,QAAQ,EAAE,EAAE,CAAC,CAAA;QAC5C,IAAI,IAAyB,CAAA;QAC7B,IAAI,IAAI,EAAE;YACR,MAAM,GAAG,MAAM,CAAA;YACf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC7C,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;YAC3C,CAAC,CAAC,CAAA;SACH;aAAM;YACL,MAAM,GAAG,MAAM,CAAA;YACf,IAAI,GAAG,IAAI,CAAA;SACZ;QAED,MAAM,OAAO,qBAAQ,IAAI,CAAC,OAAO,CAAE,CAAA;QACnC,IAAI,KAAK,EAAE;YACT,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS,KAAK,EAAE,CAAA;SACrC;QAED,OAAO,IAAI,gCAAsB,CAAC;YAChC,MAAM;YACN,GAAG;YACH,OAAO;YACP,MAAM,EAAE,IAAI,CAAC,UAAU;YACvB,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,KAAK;SACmC,CAAC,CAAA;IACzD,CAAC;CACF;AA5JD,kCA4JC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import PostgrestTransformBuilder from './PostgrestTransformBuilder';
|
|
2
2
|
import { GenericSchema } from './types';
|
|
3
3
|
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
|
-
export default class PostgrestFilterBuilder<Schema extends GenericSchema, Row extends Record<string, unknown>, Result, Relationships = unknown> extends PostgrestTransformBuilder<Schema, Row, Result, Relationships> {
|
|
4
|
+
export default class PostgrestFilterBuilder<Schema extends GenericSchema, Row extends Record<string, unknown>, Result, RelationName = unknown, Relationships = unknown> extends PostgrestTransformBuilder<Schema, Row, Result, RelationName, Relationships> {
|
|
5
5
|
eq<ColumnName extends string & keyof Row>(column: ColumnName, value: NonNullable<Row[ColumnName]>): this;
|
|
6
6
|
eq<Value extends unknown>(column: string, value: NonNullable<Value>): this;
|
|
7
7
|
neq<ColumnName extends string & keyof Row>(column: ColumnName, value: Row[ColumnName]): this;
|
|
@@ -68,11 +68,14 @@ export default class PostgrestFilterBuilder<Schema extends GenericSchema, Row ex
|
|
|
68
68
|
* It's currently not possible to do an `.or()` filter across multiple tables.
|
|
69
69
|
*
|
|
70
70
|
* @param filters - The filters to use, following PostgREST syntax
|
|
71
|
-
* @param
|
|
72
|
-
*
|
|
71
|
+
* @param options - Named parameters
|
|
72
|
+
* @param options.referencedTable - Set this to filter on referenced tables
|
|
73
|
+
* instead of the parent table
|
|
74
|
+
* @param options.foreignTable - Deprecated, use `referencedTable` instead
|
|
73
75
|
*/
|
|
74
|
-
or(filters: string, { foreignTable }?: {
|
|
76
|
+
or(filters: string, { foreignTable, referencedTable, }?: {
|
|
75
77
|
foreignTable?: string;
|
|
78
|
+
referencedTable?: string;
|
|
76
79
|
}): this;
|
|
77
80
|
filter<ColumnName extends string & keyof Row>(column: ColumnName, operator: `${'' | 'not.'}${FilterOperator}`, value: unknown): this;
|
|
78
81
|
filter(column: string, operator: string, value: 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;AAEV,MAAM,CAAC,OAAO,OAAO,sBAAsB,CACzC,MAAM,SAAS,aAAa,EAC5B,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,MAAM,EACN,aAAa,GAAG,OAAO,CACvB,SAAQ,yBAAyB,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"PostgrestFilterBuilder.d.ts","sourceRoot":"","sources":["../../src/PostgrestFilterBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -349,11 +349,13 @@ class PostgrestFilterBuilder extends PostgrestTransformBuilder_1.default {
|
|
|
349
349
|
* It's currently not possible to do an `.or()` filter across multiple tables.
|
|
350
350
|
*
|
|
351
351
|
* @param filters - The filters to use, following PostgREST syntax
|
|
352
|
-
* @param
|
|
353
|
-
*
|
|
352
|
+
* @param options - Named parameters
|
|
353
|
+
* @param options.referencedTable - Set this to filter on referenced tables
|
|
354
|
+
* instead of the parent table
|
|
355
|
+
* @param options.foreignTable - Deprecated, use `referencedTable` instead
|
|
354
356
|
*/
|
|
355
|
-
or(filters, { foreignTable } = {}) {
|
|
356
|
-
const key =
|
|
357
|
+
or(filters, { foreignTable, referencedTable = foreignTable, } = {}) {
|
|
358
|
+
const key = referencedTable ? `${referencedTable}.or` : 'or';
|
|
357
359
|
this.url.searchParams.append(key, `(${filters})`);
|
|
358
360
|
return this;
|
|
359
361
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestFilterBuilder.js","sourceRoot":"","sources":["../../src/PostgrestFilterBuilder.ts"],"names":[],"mappings":";;;;;AAAA,4FAAmE;AA2BnE,MAAqB,
|
|
1
|
+
{"version":3,"file":"PostgrestFilterBuilder.js","sourceRoot":"","sources":["../../src/PostgrestFilterBuilder.ts"],"names":[],"mappings":";;;;;AAAA,4FAAmE;AA2BnE,MAAqB,sBAMnB,SAAQ,mCAA2E;IAMnF;;;;;;;OAOG;IACH,EAAE,CAAC,MAAc,EAAE,KAAc;QAC/B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;QACnD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;OAKG;IACH,GAAG,CAAC,MAAc,EAAE,KAAc;QAChC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;OAKG;IACH,EAAE,CAAC,MAAc,EAAE,KAAc;QAC/B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;QACnD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;OAKG;IACH,GAAG,CAAC,MAAc,EAAE,KAAc;QAChC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;OAKG;IACH,EAAE,CAAC,MAAc,EAAE,KAAc;QAC/B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;QACnD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;OAKG;IACH,GAAG,CAAC,MAAc,EAAE,KAAc;QAChC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;OAKG;IACH,IAAI,CAAC,MAAc,EAAE,OAAe;QAClC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,OAAO,EAAE,CAAC,CAAA;QACvD,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;OAKG;IACH,SAAS,CAAC,MAAc,EAAE,QAA2B;QACnD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACzE,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;OAKG;IACH,SAAS,CAAC,MAAc,EAAE,QAA2B;QACnD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACzE,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;OAKG;IACH,KAAK,CAAC,MAAc,EAAE,OAAe;QACnC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAC,CAAA;QACxD,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;OAKG;IACH,UAAU,CAAC,MAAc,EAAE,QAA2B;QACpD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC1E,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;OAKG;IACH,UAAU,CAAC,MAAc,EAAE,QAA2B;QACpD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC1E,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;;;;;;;OAWG;IACH,EAAE,CAAC,MAAc,EAAE,KAAqB;QACtC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;QACnD,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;OAKG;IACH,EAAE,CAAC,MAAc,EAAE,MAA0B;QAC3C,MAAM,aAAa,GAAG,MAAM;aACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,uCAAuC;YACvC,+DAA+D;YAC/D,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC,GAAG,CAAA;;gBACpE,OAAO,GAAG,CAAC,EAAE,CAAA;QACpB,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,aAAa,GAAG,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;;OAMG;IACH,QAAQ,CAAC,MAAc,EAAE,KAA4D;QACnF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,sEAAsE;YACtE,qCAAqC;YACrC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;SACpD;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC/B,QAAQ;YACR,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;SAChE;aAAM;YACL,OAAO;YACP,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;SACpE;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;;OAMG;IACH,WAAW,CAAC,MAAc,EAAE,KAA4D;QACtF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,QAAQ;YACR,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;SACpD;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC/B,QAAQ;YACR,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;SAChE;aAAM;YACL,OAAO;YACP,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;SACpE;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;;OAMG;IACH,OAAO,CAAC,MAAc,EAAE,KAAa;QACnC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;QACnD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAc,EAAE,KAAa;QACpC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;;OAMG;IACH,OAAO,CAAC,MAAc,EAAE,KAAa;QACnC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;QACnD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAc,EAAE,KAAa;QACpC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;;;OAOG;IACH,aAAa,CAAC,MAAc,EAAE,KAAa;QACzC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACb,CAAC;IAOD;;;;;;OAMG;IACH,QAAQ,CAAC,MAAc,EAAE,KAAkC;QACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,QAAQ;YACR,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;SACpD;aAAM;YACL,QAAQ;YACR,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;SAChE;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAYD;;;;;;;;;OASG;IACH,UAAU,CACR,MAAc,EACd,KAAa,EACb,EAAE,MAAM,EAAE,IAAI,KAAmE,EAAE;QAEnF,IAAI,QAAQ,GAAG,EAAE,CAAA;QACjB,IAAI,IAAI,KAAK,OAAO,EAAE;YACpB,QAAQ,GAAG,IAAI,CAAA;SAChB;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;YAC5B,QAAQ,GAAG,IAAI,CAAA;SAChB;aAAM,IAAI,IAAI,KAAK,WAAW,EAAE;YAC/B,QAAQ,GAAG,GAAG,CAAA;SACf;QACD,MAAM,UAAU,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,CAAA;QAC5D,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,QAAQ,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC,CAAA;QAC5E,OAAO,IAAI,CAAA;IACb,CAAC;IAID;;;;;;OAMG;IACH,KAAK,CAAC,KAA8B;QAClC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;YAChD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,KAAK,EAAE,CAAC,CAAA;QACrD,CAAC,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACb,CAAC;IAQD;;;;;;;;;;;;OAYG;IACH,GAAG,CAAC,MAAc,EAAE,QAAgB,EAAE,KAAc;QAClD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAA;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,EAAE,CACA,OAAe,EACf,EACE,YAAY,EACZ,eAAe,GAAG,YAAY,MACyB,EAAE;QAE3D,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QAC5D,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,OAAO,GAAG,CAAC,CAAA;QACjD,OAAO,IAAI,CAAA;IACb,CAAC;IAQD;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,MAAc,EAAE,QAAgB,EAAE,KAAc;QACrD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAA;QAC5D,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAvfD,yCAufC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import PostgrestFilterBuilder from './PostgrestFilterBuilder';
|
|
2
2
|
import { GetResult } from './select-query-parser';
|
|
3
3
|
import { Fetch, GenericSchema, GenericTable, GenericView } from './types';
|
|
4
|
-
export default class PostgrestQueryBuilder<Schema extends GenericSchema, Relation extends GenericTable | GenericView, Relationships = Relation extends {
|
|
4
|
+
export default class PostgrestQueryBuilder<Schema extends GenericSchema, Relation extends GenericTable | GenericView, RelationName = unknown, Relationships = Relation extends {
|
|
5
5
|
Relationships: infer R;
|
|
6
6
|
} ? R : unknown> {
|
|
7
7
|
url: URL;
|
|
@@ -35,28 +35,28 @@ export default class PostgrestQueryBuilder<Schema extends GenericSchema, Relatio
|
|
|
35
35
|
* `"estimated"`: Uses exact count for low numbers and planned count for high
|
|
36
36
|
* numbers.
|
|
37
37
|
*/
|
|
38
|
-
select<Query extends string = '*', ResultOne = GetResult<Schema, Relation['Row'], Relationships, Query>>(columns?: Query, { head, count, }?: {
|
|
38
|
+
select<Query extends string = '*', ResultOne = GetResult<Schema, Relation['Row'], RelationName, Relationships, Query>>(columns?: Query, { head, count, }?: {
|
|
39
39
|
head?: boolean;
|
|
40
40
|
count?: 'exact' | 'planned' | 'estimated';
|
|
41
|
-
}): PostgrestFilterBuilder<Schema, Relation['Row'], ResultOne[], Relationships>;
|
|
41
|
+
}): PostgrestFilterBuilder<Schema, Relation['Row'], ResultOne[], RelationName, Relationships>;
|
|
42
42
|
insert<Row extends Relation extends {
|
|
43
43
|
Insert: unknown;
|
|
44
44
|
} ? Relation['Insert'] : never>(values: Row, options?: {
|
|
45
45
|
count?: 'exact' | 'planned' | 'estimated';
|
|
46
|
-
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, Relationships>;
|
|
46
|
+
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, RelationName, Relationships>;
|
|
47
47
|
insert<Row extends Relation extends {
|
|
48
48
|
Insert: unknown;
|
|
49
49
|
} ? Relation['Insert'] : never>(values: Row[], options?: {
|
|
50
50
|
count?: 'exact' | 'planned' | 'estimated';
|
|
51
51
|
defaultToNull?: boolean;
|
|
52
|
-
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, Relationships>;
|
|
52
|
+
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, RelationName, Relationships>;
|
|
53
53
|
upsert<Row extends Relation extends {
|
|
54
54
|
Insert: unknown;
|
|
55
55
|
} ? Relation['Insert'] : never>(values: Row, options?: {
|
|
56
56
|
onConflict?: string;
|
|
57
57
|
ignoreDuplicates?: boolean;
|
|
58
58
|
count?: 'exact' | 'planned' | 'estimated';
|
|
59
|
-
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, Relationships>;
|
|
59
|
+
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, RelationName, Relationships>;
|
|
60
60
|
upsert<Row extends Relation extends {
|
|
61
61
|
Insert: unknown;
|
|
62
62
|
} ? Relation['Insert'] : never>(values: Row[], options?: {
|
|
@@ -64,7 +64,7 @@ export default class PostgrestQueryBuilder<Schema extends GenericSchema, Relatio
|
|
|
64
64
|
ignoreDuplicates?: boolean;
|
|
65
65
|
count?: 'exact' | 'planned' | 'estimated';
|
|
66
66
|
defaultToNull?: boolean;
|
|
67
|
-
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, Relationships>;
|
|
67
|
+
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, RelationName, Relationships>;
|
|
68
68
|
/**
|
|
69
69
|
* Perform an UPDATE on the table or view.
|
|
70
70
|
*
|
|
@@ -90,7 +90,7 @@ export default class PostgrestQueryBuilder<Schema extends GenericSchema, Relatio
|
|
|
90
90
|
Update: unknown;
|
|
91
91
|
} ? Relation['Update'] : never>(values: Row, { count, }?: {
|
|
92
92
|
count?: 'exact' | 'planned' | 'estimated';
|
|
93
|
-
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, Relationships>;
|
|
93
|
+
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, RelationName, Relationships>;
|
|
94
94
|
/**
|
|
95
95
|
* Perform a DELETE on the table or view.
|
|
96
96
|
*
|
|
@@ -112,6 +112,6 @@ export default class PostgrestQueryBuilder<Schema extends GenericSchema, Relatio
|
|
|
112
112
|
*/
|
|
113
113
|
delete({ count, }?: {
|
|
114
114
|
count?: 'exact' | 'planned' | 'estimated';
|
|
115
|
-
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, Relationships>;
|
|
115
|
+
}): PostgrestFilterBuilder<Schema, Relation['Row'], null, RelationName, Relationships>;
|
|
116
116
|
}
|
|
117
117
|
//# sourceMappingURL=PostgrestQueryBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/PostgrestQueryBuilder.ts"],"names":[],"mappings":"AACA,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzE,MAAM,CAAC,OAAO,OAAO,qBAAqB,CACxC,MAAM,SAAS,aAAa,EAC5B,QAAQ,SAAS,YAAY,GAAG,WAAW,EAC3C,aAAa,GAAG,QAAQ,SAAS;IAAE,aAAa,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,OAAO;IAEzE,GAAG,EAAE,GAAG,CAAA;IACR,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,CAAA;gBAGX,GAAG,EAAE,GAAG,EACR,EACE,OAAY,EACZ,MAAM,EACN,KAAK,GACN,EAAE;QACD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChC,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,KAAK,CAAA;KACd;IAQH;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CACJ,KAAK,SAAS,MAAM,GAAG,GAAG,EAC1B,SAAS,GAAG,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"PostgrestQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/PostgrestQueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestQueryBuilder.js","sourceRoot":"","sources":["../../src/PostgrestQueryBuilder.ts"],"names":[],"mappings":";;;;;AACA,sFAA6D;AAI7D,MAAqB,qBAAqB;
|
|
1
|
+
{"version":3,"file":"PostgrestQueryBuilder.js","sourceRoot":"","sources":["../../src/PostgrestQueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import PostgrestBuilder from './PostgrestBuilder';
|
|
2
2
|
import { GetResult } from './select-query-parser';
|
|
3
3
|
import { GenericSchema } from './types';
|
|
4
|
-
export default class PostgrestTransformBuilder<Schema extends GenericSchema, Row extends Record<string, unknown>, Result, Relationships = unknown> extends PostgrestBuilder<Result> {
|
|
4
|
+
export default class PostgrestTransformBuilder<Schema extends GenericSchema, Row extends Record<string, unknown>, Result, RelationName = unknown, Relationships = unknown> extends PostgrestBuilder<Result> {
|
|
5
5
|
/**
|
|
6
6
|
* Perform a SELECT on the query result.
|
|
7
7
|
*
|
|
@@ -11,12 +11,28 @@ export default class PostgrestTransformBuilder<Schema extends GenericSchema, Row
|
|
|
11
11
|
*
|
|
12
12
|
* @param columns - The columns to retrieve, separated by commas
|
|
13
13
|
*/
|
|
14
|
-
select<Query extends string = '*', NewResultOne = GetResult<Schema, Row, Relationships, Query>>(columns?: Query): PostgrestTransformBuilder<Schema, Row, NewResultOne[], Relationships>;
|
|
14
|
+
select<Query extends string = '*', NewResultOne = GetResult<Schema, Row, RelationName, Relationships, Query>>(columns?: Query): PostgrestTransformBuilder<Schema, Row, NewResultOne[], RelationName, Relationships>;
|
|
15
|
+
order<ColumnName extends string & keyof Row>(column: ColumnName, options?: {
|
|
16
|
+
ascending?: boolean;
|
|
17
|
+
nullsFirst?: boolean;
|
|
18
|
+
referencedTable?: undefined;
|
|
19
|
+
}): this;
|
|
20
|
+
order(column: string, options?: {
|
|
21
|
+
ascending?: boolean;
|
|
22
|
+
nullsFirst?: boolean;
|
|
23
|
+
referencedTable?: string;
|
|
24
|
+
}): this;
|
|
25
|
+
/**
|
|
26
|
+
* @deprecated Use `options.referencedTable` instead of `options.foreignTable`
|
|
27
|
+
*/
|
|
15
28
|
order<ColumnName extends string & keyof Row>(column: ColumnName, options?: {
|
|
16
29
|
ascending?: boolean;
|
|
17
30
|
nullsFirst?: boolean;
|
|
18
31
|
foreignTable?: undefined;
|
|
19
32
|
}): this;
|
|
33
|
+
/**
|
|
34
|
+
* @deprecated Use `options.referencedTable` instead of `options.foreignTable`
|
|
35
|
+
*/
|
|
20
36
|
order(column: string, options?: {
|
|
21
37
|
ascending?: boolean;
|
|
22
38
|
nullsFirst?: boolean;
|
|
@@ -27,11 +43,14 @@ export default class PostgrestTransformBuilder<Schema extends GenericSchema, Row
|
|
|
27
43
|
*
|
|
28
44
|
* @param count - The maximum number of rows to return
|
|
29
45
|
* @param options - Named parameters
|
|
30
|
-
* @param options.
|
|
31
|
-
* instead of the
|
|
46
|
+
* @param options.referencedTable - Set this to limit rows of referenced
|
|
47
|
+
* tables instead of the parent table
|
|
48
|
+
* @param options.foreignTable - Deprecated, use `options.referencedTable`
|
|
49
|
+
* instead
|
|
32
50
|
*/
|
|
33
|
-
limit(count: number, { foreignTable }?: {
|
|
51
|
+
limit(count: number, { foreignTable, referencedTable, }?: {
|
|
34
52
|
foreignTable?: string;
|
|
53
|
+
referencedTable?: string;
|
|
35
54
|
}): this;
|
|
36
55
|
/**
|
|
37
56
|
* Limit the query result by starting at an offset (`from`) and ending at the offset (`from + to`).
|
|
@@ -43,11 +62,14 @@ export default class PostgrestTransformBuilder<Schema extends GenericSchema, Row
|
|
|
43
62
|
* @param from - The starting index from which to limit the result
|
|
44
63
|
* @param to - The last index to which to limit the result
|
|
45
64
|
* @param options - Named parameters
|
|
46
|
-
* @param options.
|
|
47
|
-
* instead of the
|
|
65
|
+
* @param options.referencedTable - Set this to limit rows of referenced
|
|
66
|
+
* tables instead of the parent table
|
|
67
|
+
* @param options.foreignTable - Deprecated, use `options.referencedTable`
|
|
68
|
+
* instead
|
|
48
69
|
*/
|
|
49
|
-
range(from: number, to: number, { foreignTable }?: {
|
|
70
|
+
range(from: number, to: number, { foreignTable, referencedTable, }?: {
|
|
50
71
|
foreignTable?: string;
|
|
72
|
+
referencedTable?: string;
|
|
51
73
|
}): this;
|
|
52
74
|
/**
|
|
53
75
|
* Set the AbortSignal for the fetch request.
|
|
@@ -117,6 +139,6 @@ export default class PostgrestTransformBuilder<Schema extends GenericSchema, Row
|
|
|
117
139
|
*
|
|
118
140
|
* @typeParam NewResult - The new result type to override with
|
|
119
141
|
*/
|
|
120
|
-
returns<NewResult>(): PostgrestTransformBuilder<Schema, Row, NewResult, Relationships>;
|
|
142
|
+
returns<NewResult>(): PostgrestTransformBuilder<Schema, Row, NewResult, RelationName, Relationships>;
|
|
121
143
|
}
|
|
122
144
|
//# sourceMappingURL=PostgrestTransformBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestTransformBuilder.d.ts","sourceRoot":"","sources":["../../src/PostgrestTransformBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,CAAC,OAAO,OAAO,yBAAyB,CAC5C,MAAM,SAAS,aAAa,EAC5B,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,MAAM,EACN,aAAa,GAAG,OAAO,CACvB,SAAQ,gBAAgB,CAAC,MAAM,CAAC;IAChC;;;;;;;;OAQG;IACH,MAAM,
|
|
1
|
+
{"version":3,"file":"PostgrestTransformBuilder.d.ts","sourceRoot":"","sources":["../../src/PostgrestTransformBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,19 +41,21 @@ class PostgrestTransformBuilder extends PostgrestBuilder_1.default {
|
|
|
41
41
|
*
|
|
42
42
|
* You can call this method multiple times to order by multiple columns.
|
|
43
43
|
*
|
|
44
|
-
* You can order
|
|
45
|
-
*
|
|
44
|
+
* You can order referenced tables, but it only affects the ordering of the
|
|
45
|
+
* parent table if you use `!inner` in the query.
|
|
46
46
|
*
|
|
47
47
|
* @param column - The column to order by
|
|
48
48
|
* @param options - Named parameters
|
|
49
49
|
* @param options.ascending - If `true`, the result will be in ascending order
|
|
50
50
|
* @param options.nullsFirst - If `true`, `null`s appear first. If `false`,
|
|
51
51
|
* `null`s appear last.
|
|
52
|
-
* @param options.
|
|
53
|
-
* columns
|
|
52
|
+
* @param options.referencedTable - Set this to order a referenced table by
|
|
53
|
+
* its columns
|
|
54
|
+
* @param options.foreignTable - Deprecated, use `options.referencedTable`
|
|
55
|
+
* instead
|
|
54
56
|
*/
|
|
55
|
-
order(column, { ascending = true, nullsFirst, foreignTable, } = {}) {
|
|
56
|
-
const key =
|
|
57
|
+
order(column, { ascending = true, nullsFirst, foreignTable, referencedTable = foreignTable, } = {}) {
|
|
58
|
+
const key = referencedTable ? `${referencedTable}.order` : 'order';
|
|
57
59
|
const existingOrder = this.url.searchParams.get(key);
|
|
58
60
|
this.url.searchParams.set(key, `${existingOrder ? `${existingOrder},` : ''}${column}.${ascending ? 'asc' : 'desc'}${nullsFirst === undefined ? '' : nullsFirst ? '.nullsfirst' : '.nullslast'}`);
|
|
59
61
|
return this;
|
|
@@ -63,11 +65,13 @@ class PostgrestTransformBuilder extends PostgrestBuilder_1.default {
|
|
|
63
65
|
*
|
|
64
66
|
* @param count - The maximum number of rows to return
|
|
65
67
|
* @param options - Named parameters
|
|
66
|
-
* @param options.
|
|
67
|
-
* instead of the
|
|
68
|
+
* @param options.referencedTable - Set this to limit rows of referenced
|
|
69
|
+
* tables instead of the parent table
|
|
70
|
+
* @param options.foreignTable - Deprecated, use `options.referencedTable`
|
|
71
|
+
* instead
|
|
68
72
|
*/
|
|
69
|
-
limit(count, { foreignTable } = {}) {
|
|
70
|
-
const key = typeof
|
|
73
|
+
limit(count, { foreignTable, referencedTable = foreignTable, } = {}) {
|
|
74
|
+
const key = typeof referencedTable === 'undefined' ? 'limit' : `${referencedTable}.limit`;
|
|
71
75
|
this.url.searchParams.set(key, `${count}`);
|
|
72
76
|
return this;
|
|
73
77
|
}
|
|
@@ -81,12 +85,14 @@ class PostgrestTransformBuilder extends PostgrestBuilder_1.default {
|
|
|
81
85
|
* @param from - The starting index from which to limit the result
|
|
82
86
|
* @param to - The last index to which to limit the result
|
|
83
87
|
* @param options - Named parameters
|
|
84
|
-
* @param options.
|
|
85
|
-
* instead of the
|
|
88
|
+
* @param options.referencedTable - Set this to limit rows of referenced
|
|
89
|
+
* tables instead of the parent table
|
|
90
|
+
* @param options.foreignTable - Deprecated, use `options.referencedTable`
|
|
91
|
+
* instead
|
|
86
92
|
*/
|
|
87
|
-
range(from, to, { foreignTable } = {}) {
|
|
88
|
-
const keyOffset = typeof
|
|
89
|
-
const keyLimit = typeof
|
|
93
|
+
range(from, to, { foreignTable, referencedTable = foreignTable, } = {}) {
|
|
94
|
+
const keyOffset = typeof referencedTable === 'undefined' ? 'offset' : `${referencedTable}.offset`;
|
|
95
|
+
const keyLimit = typeof referencedTable === 'undefined' ? 'limit' : `${referencedTable}.limit`;
|
|
90
96
|
this.url.searchParams.set(keyOffset, `${from}`);
|
|
91
97
|
// Range is inclusive, so add 1
|
|
92
98
|
this.url.searchParams.set(keyLimit, `${to - from + 1}`);
|
|
@@ -165,6 +171,7 @@ class PostgrestTransformBuilder extends PostgrestBuilder_1.default {
|
|
|
165
171
|
* or `"json"`
|
|
166
172
|
*/
|
|
167
173
|
explain({ analyze = false, verbose = false, settings = false, buffers = false, wal = false, format = 'text', } = {}) {
|
|
174
|
+
var _a;
|
|
168
175
|
const options = [
|
|
169
176
|
analyze ? 'analyze' : null,
|
|
170
177
|
verbose ? 'verbose' : null,
|
|
@@ -175,7 +182,7 @@ class PostgrestTransformBuilder extends PostgrestBuilder_1.default {
|
|
|
175
182
|
.filter(Boolean)
|
|
176
183
|
.join('|');
|
|
177
184
|
// An Accept header can carry multiple media types but postgrest-js always sends one
|
|
178
|
-
const forMediatype = this.headers['Accept'];
|
|
185
|
+
const forMediatype = (_a = this.headers['Accept']) !== null && _a !== void 0 ? _a : 'application/json';
|
|
179
186
|
this.headers['Accept'] = `application/vnd.pgrst.plan+${format}; for="${forMediatype}"; options=${options};`;
|
|
180
187
|
if (format === 'json')
|
|
181
188
|
return this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgrestTransformBuilder.js","sourceRoot":"","sources":["../../src/PostgrestTransformBuilder.ts"],"names":[],"mappings":";;;;;AAAA,0EAAiD;AAIjD,MAAqB,
|
|
1
|
+
{"version":3,"file":"PostgrestTransformBuilder.js","sourceRoot":"","sources":["../../src/PostgrestTransformBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,9 +24,17 @@ declare type EatWhitespace<Input extends string> = string extends Input ? Generi
|
|
|
24
24
|
declare type HasFKey<FKeyName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
25
25
|
foreignKeyName: FKeyName;
|
|
26
26
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasFKey<FKeyName, [R]> extends true ? true : HasFKey<FKeyName, Rest> : false;
|
|
27
|
+
declare type HasUniqueFKey<FKeyName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
28
|
+
foreignKeyName: FKeyName;
|
|
29
|
+
isOneToOne: true;
|
|
30
|
+
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasUniqueFKey<FKeyName, [R]> extends true ? true : HasUniqueFKey<FKeyName, Rest> : false;
|
|
27
31
|
declare type HasFKeyToFRel<FRelName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
28
32
|
referencedRelation: FRelName;
|
|
29
33
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasFKeyToFRel<FRelName, [R]> extends true ? true : HasFKeyToFRel<FRelName, Rest> : false;
|
|
34
|
+
declare type HasUniqueFKeyToFRel<FRelName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
35
|
+
referencedRelation: FRelName;
|
|
36
|
+
isOneToOne: true;
|
|
37
|
+
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasUniqueFKeyToFRel<FRelName, [R]> extends true ? true : HasUniqueFKeyToFRel<FRelName, Rest> : false;
|
|
30
38
|
/**
|
|
31
39
|
* Constructs a type definition for a single field of an object.
|
|
32
40
|
*
|
|
@@ -34,7 +42,7 @@ declare type HasFKeyToFRel<FRelName, Relationships> = Relationships extends [inf
|
|
|
34
42
|
* @param Name Name of the table being queried.
|
|
35
43
|
* @param Field Single field parsed by `ParseQuery`.
|
|
36
44
|
*/
|
|
37
|
-
declare type ConstructFieldDefinition<Schema extends GenericSchema, Row extends Record<string, unknown>, Relationships, Field> = Field extends {
|
|
45
|
+
declare type ConstructFieldDefinition<Schema extends GenericSchema, Row extends Record<string, unknown>, RelationName, Relationships, Field> = Field extends {
|
|
38
46
|
star: true;
|
|
39
47
|
} ? Row : Field extends {
|
|
40
48
|
name: string;
|
|
@@ -42,17 +50,21 @@ declare type ConstructFieldDefinition<Schema extends GenericSchema, Row extends
|
|
|
42
50
|
hint: string;
|
|
43
51
|
children: unknown[];
|
|
44
52
|
} ? {
|
|
45
|
-
[_ in Field['name']]: GetResultHelper<Schema, (Schema['Tables'] & Schema['Views'])[Field['original']]['Row'], (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
53
|
+
[_ in Field['name']]: GetResultHelper<Schema, (Schema['Tables'] & Schema['Views'])[Field['original']]['Row'], Field['original'], (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
46
54
|
Relationships: infer R;
|
|
47
|
-
} ? R : unknown, Field['children'], unknown> extends infer Child ?
|
|
55
|
+
} ? R : unknown, Field['children'], unknown> extends infer Child ? HasUniqueFKey<Field['hint'], (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
56
|
+
Relationships: infer R;
|
|
57
|
+
} ? R : unknown> extends true ? Child | null : Relationships extends unknown[] ? HasFKey<Field['hint'], Relationships> extends true ? Child | null : Child[] : Child[] : never;
|
|
48
58
|
} : Field extends {
|
|
49
59
|
name: string;
|
|
50
60
|
original: string;
|
|
51
61
|
children: unknown[];
|
|
52
62
|
} ? {
|
|
53
|
-
[_ in Field['name']]: GetResultHelper<Schema, (Schema['Tables'] & Schema['Views'])[Field['original']]['Row'], (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
63
|
+
[_ in Field['name']]: GetResultHelper<Schema, (Schema['Tables'] & Schema['Views'])[Field['original']]['Row'], Field['original'], (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
64
|
+
Relationships: infer R;
|
|
65
|
+
} ? R : unknown, Field['children'], unknown> extends infer Child ? HasUniqueFKeyToFRel<RelationName, (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
54
66
|
Relationships: infer R;
|
|
55
|
-
} ? R : unknown
|
|
67
|
+
} ? R : unknown> extends true ? Child | null : Relationships extends unknown[] ? HasFKeyToFRel<Field['original'], Relationships> extends true ? Child | null : Child[] : Child[] : never;
|
|
56
68
|
} : Field extends {
|
|
57
69
|
name: string;
|
|
58
70
|
original: string;
|
|
@@ -259,14 +271,14 @@ declare type ParseNodesHelper<Input extends string, Fields extends unknown[]> =
|
|
|
259
271
|
* Returns an array of parsed nodes, or an error.
|
|
260
272
|
*/
|
|
261
273
|
declare type ParseQuery<Query extends string> = string extends Query ? GenericStringError : ParseNodes<EatWhitespace<Query>> extends [infer Fields, `${infer Remainder}`] ? EatWhitespace<Remainder> extends '' ? Fields : ParserError<`Unexpected input: ${Remainder}`> : ParseNodes<EatWhitespace<Query>>;
|
|
262
|
-
declare type GetResultHelper<Schema extends GenericSchema, Row extends Record<string, unknown>, Relationships, Fields extends unknown[], Acc> = Fields extends [infer R] ? ConstructFieldDefinition<Schema, Row, Relationships, R> extends SelectQueryError<infer E> ? SelectQueryError<E> : GetResultHelper<Schema, Row, Relationships, [
|
|
263
|
-
], ConstructFieldDefinition<Schema, Row, Relationships, R> & Acc> : Fields extends [infer R, ...infer Rest] ? ConstructFieldDefinition<Schema, Row, Relationships, R> extends SelectQueryError<infer E> ? SelectQueryError<E> : GetResultHelper<Schema, Row, Relationships, Rest, ConstructFieldDefinition<Schema, Row, Relationships, R> & Acc> : Prettify<Acc>;
|
|
274
|
+
declare type GetResultHelper<Schema extends GenericSchema, Row extends Record<string, unknown>, RelationName, Relationships, Fields extends unknown[], Acc> = Fields extends [infer R] ? ConstructFieldDefinition<Schema, Row, RelationName, Relationships, R> extends SelectQueryError<infer E> ? SelectQueryError<E> : GetResultHelper<Schema, Row, RelationName, Relationships, [
|
|
275
|
+
], ConstructFieldDefinition<Schema, Row, RelationName, Relationships, R> & Acc> : Fields extends [infer R, ...infer Rest] ? ConstructFieldDefinition<Schema, Row, RelationName, Relationships, R> extends SelectQueryError<infer E> ? SelectQueryError<E> : GetResultHelper<Schema, Row, RelationName, Relationships, Rest, ConstructFieldDefinition<Schema, Row, RelationName, Relationships, R> & Acc> : Prettify<Acc>;
|
|
264
276
|
/**
|
|
265
277
|
* Constructs a type definition for an object based on a given PostgREST query.
|
|
266
278
|
*
|
|
267
279
|
* @param Row Record<string, unknown>.
|
|
268
280
|
* @param Query Select query string literal to parse.
|
|
269
281
|
*/
|
|
270
|
-
export declare type GetResult<Schema extends GenericSchema, Row extends Record<string, unknown>, Relationships, Query extends string> = ParseQuery<Query> extends unknown[] ? GetResultHelper<Schema, Row, Relationships, ParseQuery<Query>, unknown> : ParseQuery<Query>;
|
|
282
|
+
export declare type GetResult<Schema extends GenericSchema, Row extends Record<string, unknown>, RelationName, Relationships, Query extends string> = ParseQuery<Query> extends unknown[] ? GetResultHelper<Schema, Row, RelationName, Relationships, ParseQuery<Query>, unknown> : ParseQuery<Query>;
|
|
271
283
|
export {};
|
|
272
284
|
//# sourceMappingURL=select-query-parser.d.ts.map
|