Skip to content

Commit 1ceb00d

Browse files
committed
chore: scope changes to pgrst13 introduction
1 parent 6705c5c commit 1ceb00d

File tree

9 files changed

+27
-369
lines changed

9 files changed

+27
-369
lines changed

src/PostgrestFilterBuilder.ts

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import PostgrestTransformBuilder from './PostgrestTransformBuilder'
22
import { JsonPathToAccessor, JsonPathToType } from './select-query-parser/utils'
33
import { ClientServerOptions, GenericSchema } from './types'
4-
import { HeaderManager } from './utils'
54

65
type FilterOperator =
76
| 'eq'
@@ -78,30 +77,15 @@ export default class PostgrestFilterBuilder<
7877
Row extends Record<string, unknown>,
7978
Result,
8079
RelationName = unknown,
81-
Relationships = unknown,
82-
Method = unknown
80+
Relationships = unknown
8381
> extends PostgrestTransformBuilder<
8482
ClientOptions,
8583
Schema,
8684
Row,
8785
Result,
8886
RelationName,
89-
Relationships,
90-
Method
87+
Relationships
9188
> {
92-
maxAffected(
93-
value: number
94-
): Method extends 'PATCH' | 'DELETE'
95-
? this
96-
: InvalidMethodError<'maxAffected method only available on update or delete'> {
97-
const preferHeaderManager = new HeaderManager('Prefer', this.headers['Prefer'])
98-
preferHeaderManager.add('handling=strict')
99-
preferHeaderManager.add(`max-affected=${value}`)
100-
this.headers['Prefer'] = preferHeaderManager.get()
101-
return this as unknown as Method extends 'PATCH' | 'DELETE'
102-
? this
103-
: InvalidMethodError<'maxAffected method only available on update or delete'>
104-
}
10589
/**
10690
* Match only rows where `column` is equal to `value`.
10791
*

src/PostgrestQueryBuilder.ts

Lines changed: 9 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,7 @@ export default class PostgrestQueryBuilder<
8080
Relation['Row'],
8181
ResultOne[],
8282
RelationName,
83-
Relationships,
84-
'GET'
83+
Relationships
8584
> {
8685
const method = head ? 'HEAD' : 'GET'
8786
// Remove whitespaces except when quoted
@@ -125,8 +124,7 @@ export default class PostgrestQueryBuilder<
125124
Relation['Row'],
126125
null,
127126
RelationName,
128-
Relationships,
129-
'POST'
127+
Relationships
130128
>
131129
insert<Row extends Relation extends { Insert: unknown } ? Relation['Insert'] : never>(
132130
values: Row[],
@@ -140,8 +138,7 @@ export default class PostgrestQueryBuilder<
140138
Relation['Row'],
141139
null,
142140
RelationName,
143-
Relationships,
144-
'POST'
141+
Relationships
145142
>
146143
/**
147144
* Perform an INSERT into the table or view.
@@ -184,8 +181,7 @@ export default class PostgrestQueryBuilder<
184181
Relation['Row'],
185182
null,
186183
RelationName,
187-
Relationships,
188-
'POST'
184+
Relationships
189185
> {
190186
const method = 'POST'
191187

@@ -234,8 +230,7 @@ export default class PostgrestQueryBuilder<
234230
Relation['Row'],
235231
null,
236232
RelationName,
237-
Relationships,
238-
'POST'
233+
Relationships
239234
>
240235
upsert<Row extends Relation extends { Insert: unknown } ? Relation['Insert'] : never>(
241236
values: Row[],
@@ -251,8 +246,7 @@ export default class PostgrestQueryBuilder<
251246
Relation['Row'],
252247
null,
253248
RelationName,
254-
Relationships,
255-
'POST'
249+
Relationships
256250
>
257251
/**
258252
* Perform an UPSERT on the table or view. Depending on the column(s) passed
@@ -311,8 +305,7 @@ export default class PostgrestQueryBuilder<
311305
Relation['Row'],
312306
null,
313307
RelationName,
314-
Relationships,
315-
'POST'
308+
Relationships
316309
> {
317310
const method = 'POST'
318311

@@ -383,8 +376,7 @@ export default class PostgrestQueryBuilder<
383376
Relation['Row'],
384377
null,
385378
RelationName,
386-
Relationships,
387-
'PATCH'
379+
Relationships
388380
> {
389381
const method = 'PATCH'
390382
const prefersHeaders = []
@@ -436,8 +428,7 @@ export default class PostgrestQueryBuilder<
436428
Relation['Row'],
437429
null,
438430
RelationName,
439-
Relationships,
440-
'DELETE'
431+
Relationships
441432
> {
442433
const method = 'DELETE'
443434
const prefersHeaders = []

src/utils.ts

Lines changed: 0 additions & 64 deletions
This file was deleted.

test/index.test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,3 @@ import './filters'
44
import './resource-embedding'
55
import './transforms'
66
import './rpc'
7-
import './utils'
8-
// import './max-affected'

test/max-affected.ts

Lines changed: 0 additions & 129 deletions
This file was deleted.

test/relationships.ts

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1762,15 +1762,18 @@ test('select spread on many relation postgrest13', async () => {
17621762
expect(res).toMatchInlineSnapshot(`
17631763
Object {
17641764
"count": null,
1765-
"data": null,
1766-
"error": Object {
1767-
"code": "PGRST119",
1768-
"details": "'channels' and 'messages' do not form a many-to-one or one-to-one relationship",
1769-
"hint": null,
1770-
"message": "A spread operation on 'messages' is not possible",
1765+
"data": Object {
1766+
"channel_id": 1,
1767+
"id": Array [
1768+
1,
1769+
],
1770+
"message": Array [
1771+
"Hello World 👋",
1772+
],
17711773
},
1772-
"status": 400,
1773-
"statusText": "Bad Request",
1774+
"error": null,
1775+
"status": 200,
1776+
"statusText": "OK",
17741777
}
17751778
`)
17761779
})

test/returns.test-d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ const postgrest = new PostgrestClient<Database>(REST_URL)
5353
.returns<{ username: string }[]>()
5454
expectType<
5555
PostgrestBuilder<
56+
{ postgrestVersion: 12 },
5657
{
5758
Error: 'Type mismatch: Cannot cast single object to array type. Remove Array wrapper from return type or make sure you are not using .single() up in the calling chain'
5859
},

test/select-query-parser/result.test-d.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ type SelectQueryFromTableResult<
1515
Database['public']['Tables'][TableName]['Row'],
1616
TableName,
1717
Database['public']['Tables'][TableName]['Relationships'],
18-
Q
18+
Q,
19+
{ postgrestVersion: 12 }
1920
>
2021

2122
// This test file is here to help develop, debug and maintain the GetResult
@@ -130,7 +131,8 @@ type SelectQueryFromTableResult<
130131
Database['personal']['Tables'][TableName]['Row'],
131132
TableName,
132133
Database['personal']['Tables'][TableName]['Relationships'],
133-
Q
134+
Q,
135+
{ postgrestVersion: 12 }
134136
>
135137
// Should work with Json object accessor
136138
{

0 commit comments

Comments
 (0)