@supabase/postgrest-js 1.10.0 → 1.12.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/select-query-parser.d.ts +77 -90
- 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/select-query-parser.d.ts +77 -90
- 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/select-query-parser.ts +172 -101
- package/src/version.ts +1 -1
|
@@ -7,6 +7,12 @@ declare type Letter = Alphabet | Digit | '_';
|
|
|
7
7
|
declare type Json = string | number | boolean | null | {
|
|
8
8
|
[key: string]: Json;
|
|
9
9
|
} | Json[];
|
|
10
|
+
declare type SingleValuePostgreSQLTypes = 'bool' | 'int2' | 'int4' | 'int8' | 'float4' | 'float8' | 'numeric' | 'bytea' | 'bpchar' | 'varchar' | 'date' | 'text' | 'citext' | 'time' | 'timetz' | 'timestamp' | 'timestamptz' | 'uuid' | 'vector' | 'json' | 'jsonb' | 'void' | 'record' | string;
|
|
11
|
+
declare type ArrayPostgreSQLTypes = `_${SingleValuePostgreSQLTypes}`;
|
|
12
|
+
declare type PostgreSQLTypes = SingleValuePostgreSQLTypes | ArrayPostgreSQLTypes;
|
|
13
|
+
declare type TypeScriptSingleValueTypes<T extends SingleValuePostgreSQLTypes> = T extends 'bool' ? boolean : T extends 'int2' | 'int4' | 'int8' | 'float4' | 'float8' | 'numeric' ? number : T extends 'bytea' | 'bpchar' | 'varchar' | 'date' | 'text' | 'citext' | 'time' | 'timetz' | 'timestamp' | 'timestamptz' | 'uuid' | 'vector' ? string : T extends 'json' | 'jsonb' ? Json : T extends 'void' ? undefined : T extends 'record' ? Record<string, unknown> : unknown;
|
|
14
|
+
declare type StripUnderscore<T extends string> = T extends `_${infer U}` ? U : T;
|
|
15
|
+
declare type TypeScriptTypes<T extends PostgreSQLTypes> = T extends ArrayPostgreSQLTypes ? TypeScriptSingleValueTypes<StripUnderscore<Extract<T, SingleValuePostgreSQLTypes>>>[] : TypeScriptSingleValueTypes<T>;
|
|
10
16
|
/**
|
|
11
17
|
* Parser errors.
|
|
12
18
|
*/
|
|
@@ -17,17 +23,31 @@ declare type GenericStringError = ParserError<'Received a generic string'>;
|
|
|
17
23
|
export declare type SelectQueryError<Message extends string> = {
|
|
18
24
|
error: true;
|
|
19
25
|
} & Message;
|
|
26
|
+
/**
|
|
27
|
+
* Creates a new {@link ParserError} if the given input is not already a parser error.
|
|
28
|
+
*/
|
|
29
|
+
declare type CreateParserErrorIfRequired<Input, Message extends string> = Input extends ParserError<string> ? Input : ParserError<Message>;
|
|
20
30
|
/**
|
|
21
31
|
* Trims whitespace from the left of the input.
|
|
22
32
|
*/
|
|
23
33
|
declare type EatWhitespace<Input extends string> = string extends Input ? GenericStringError : Input extends `${Whitespace}${infer Remainder}` ? EatWhitespace<Remainder> : Input;
|
|
34
|
+
/**
|
|
35
|
+
* Returns a boolean representing whether there is a foreign key with the given name.
|
|
36
|
+
*/
|
|
24
37
|
declare type HasFKey<FKeyName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
25
38
|
foreignKeyName: FKeyName;
|
|
26
39
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasFKey<FKeyName, [R]> extends true ? true : HasFKey<FKeyName, Rest> : false;
|
|
40
|
+
/**
|
|
41
|
+
* Returns a boolean representing whether there the foreign key has a unique constraint.
|
|
42
|
+
*/
|
|
27
43
|
declare type HasUniqueFKey<FKeyName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
28
44
|
foreignKeyName: FKeyName;
|
|
29
45
|
isOneToOne: true;
|
|
30
46
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasUniqueFKey<FKeyName, [R]> extends true ? true : HasUniqueFKey<FKeyName, Rest> : false;
|
|
47
|
+
/**
|
|
48
|
+
* Returns a boolean representing whether there is a foreign key referencing
|
|
49
|
+
* a given relation.
|
|
50
|
+
*/
|
|
31
51
|
declare type HasFKeyToFRel<FRelName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
32
52
|
referencedRelation: FRelName;
|
|
33
53
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasFKeyToFRel<FRelName, [R]> extends true ? true : HasFKeyToFRel<FRelName, Rest> : false;
|
|
@@ -38,13 +58,22 @@ declare type HasUniqueFKeyToFRel<FRelName, Relationships> = Relationships extend
|
|
|
38
58
|
/**
|
|
39
59
|
* Constructs a type definition for a single field of an object.
|
|
40
60
|
*
|
|
41
|
-
* @param
|
|
42
|
-
* @param
|
|
61
|
+
* @param Schema Database schema.
|
|
62
|
+
* @param Row Type of a row in the given table.
|
|
63
|
+
* @param Relationships Relationships between different tables in the database.
|
|
43
64
|
* @param Field Single field parsed by `ParseQuery`.
|
|
44
65
|
*/
|
|
45
66
|
declare type ConstructFieldDefinition<Schema extends GenericSchema, Row extends Record<string, unknown>, RelationName, Relationships, Field> = Field extends {
|
|
46
67
|
star: true;
|
|
47
68
|
} ? Row : Field extends {
|
|
69
|
+
spread: true;
|
|
70
|
+
original: string;
|
|
71
|
+
children: unknown[];
|
|
72
|
+
} ? GetResultHelper<Schema, (Schema['Tables'] & Schema['Views'])[Field['original']]['Row'], Field['original'], (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
73
|
+
Relationships: infer R;
|
|
74
|
+
} ? R : unknown, Field['children'], unknown> : Field extends {
|
|
75
|
+
children: [];
|
|
76
|
+
} ? {} : Field extends {
|
|
48
77
|
name: string;
|
|
49
78
|
original: string;
|
|
50
79
|
hint: string;
|
|
@@ -66,70 +95,61 @@ declare type ConstructFieldDefinition<Schema extends GenericSchema, Row extends
|
|
|
66
95
|
Relationships: infer R;
|
|
67
96
|
} ? R : unknown> extends true ? Child | null : Relationships extends unknown[] ? HasFKeyToFRel<Field['original'], Relationships> extends true ? Child | null : Child[] : Child[] : never;
|
|
68
97
|
} : Field extends {
|
|
69
|
-
name: string;
|
|
70
|
-
original: string;
|
|
71
|
-
} ? Field['original'] extends keyof Row ? {
|
|
72
|
-
[K in Field['name']]: Row[Field['original']];
|
|
73
|
-
} : SelectQueryError<`Referencing missing column \`${Field['original']}\``> : Field extends {
|
|
74
98
|
name: string;
|
|
75
99
|
type: infer T;
|
|
76
100
|
} ? {
|
|
77
101
|
[K in Field['name']]: T;
|
|
78
|
-
} :
|
|
102
|
+
} : Field extends {
|
|
103
|
+
name: string;
|
|
104
|
+
original: string;
|
|
105
|
+
} ? Field['original'] extends keyof Row ? {
|
|
106
|
+
[K in Field['name']]: Row[Field['original']];
|
|
107
|
+
} : SelectQueryError<`Referencing missing column \`${Field['original']}\``> : Record<string, unknown>;
|
|
79
108
|
/**
|
|
80
109
|
* Notes: all `Parse*` types assume that their input strings have their whitespace
|
|
81
110
|
* removed. They return tuples of ["Return Value", "Remainder of text"] or
|
|
82
111
|
* a `ParserError`.
|
|
83
112
|
*/
|
|
84
113
|
/**
|
|
85
|
-
* Reads a consecutive sequence of
|
|
86
|
-
* where letters are `[0-9a-zA-Z_]`.
|
|
114
|
+
* Reads a consecutive sequence of 1 or more letter, where letters are `[0-9a-zA-Z_]`.
|
|
87
115
|
*/
|
|
88
116
|
declare type ReadLetters<Input extends string> = string extends Input ? GenericStringError : ReadLettersHelper<Input, ''> extends [`${infer Letters}`, `${infer Remainder}`] ? Letters extends '' ? ParserError<`Expected letter at \`${Input}\``> : [Letters, Remainder] : ReadLettersHelper<Input, ''>;
|
|
89
117
|
declare type ReadLettersHelper<Input extends string, Acc extends string> = string extends Input ? GenericStringError : Input extends `${infer L}${infer Remainder}` ? L extends Letter ? ReadLettersHelper<Remainder, `${Acc}${L}`> : [Acc, Input] : [Acc, ''];
|
|
90
118
|
/**
|
|
91
|
-
* Reads a consecutive sequence of
|
|
119
|
+
* Reads a consecutive sequence of 1 or more double-quoted letters,
|
|
92
120
|
* where letters are `[^"]`.
|
|
93
121
|
*/
|
|
94
122
|
declare type ReadQuotedLetters<Input extends string> = string extends Input ? GenericStringError : Input extends `"${infer Remainder}` ? ReadQuotedLettersHelper<Remainder, ''> extends [`${infer Letters}`, `${infer Remainder}`] ? Letters extends '' ? ParserError<`Expected string at \`${Remainder}\``> : [Letters, Remainder] : ReadQuotedLettersHelper<Remainder, ''> : ParserError<`Not a double-quoted string at \`${Input}\``>;
|
|
95
123
|
declare type ReadQuotedLettersHelper<Input extends string, Acc extends string> = string extends Input ? GenericStringError : Input extends `${infer L}${infer Remainder}` ? L extends '"' ? [Acc, Remainder] : ReadQuotedLettersHelper<Remainder, `${Acc}${L}`> : ParserError<`Missing closing double-quote in \`"${Acc}${Input}\``>;
|
|
96
124
|
/**
|
|
97
125
|
* Parses a (possibly double-quoted) identifier.
|
|
98
|
-
*
|
|
126
|
+
* Identifiers are sequences of 1 or more letters.
|
|
99
127
|
*/
|
|
100
128
|
declare type ParseIdentifier<Input extends string> = ReadLetters<Input> extends [
|
|
101
129
|
infer Name,
|
|
102
130
|
`${infer Remainder}`
|
|
103
131
|
] ? [Name, `${Remainder}`] : ReadQuotedLetters<Input> extends [infer Name, `${infer Remainder}`] ? [Name, `${Remainder}`] : ParserError<`No (possibly double-quoted) identifier at \`${Input}\``>;
|
|
104
132
|
/**
|
|
105
|
-
* Parses a
|
|
106
|
-
* A
|
|
107
|
-
* - `*`
|
|
133
|
+
* Parses a field without preceding field renaming.
|
|
134
|
+
* A field is one of the following:
|
|
108
135
|
* - `field`
|
|
136
|
+
* - `field::type`
|
|
109
137
|
* - `field->json...`
|
|
110
138
|
* - `field(nodes)`
|
|
111
139
|
* - `field!hint(nodes)`
|
|
112
140
|
* - `field!inner(nodes)`
|
|
113
141
|
* - `field!hint!inner(nodes)`
|
|
114
|
-
* - `renamed_field:field`
|
|
115
|
-
* - `renamed_field:field->json...`
|
|
116
|
-
* - `renamed_field:field(nodes)`
|
|
117
|
-
* - `renamed_field:field!hint(nodes)`
|
|
118
|
-
* - `renamed_field:field!inner(nodes)`
|
|
119
|
-
* - `renamed_field:field!hint!inner(nodes)`
|
|
120
142
|
*
|
|
121
|
-
* TODO:
|
|
143
|
+
* TODO: support type casting of JSON operators `a->b::type`, `a->>b::type`.
|
|
122
144
|
*/
|
|
123
|
-
declare type
|
|
124
|
-
star: true;
|
|
125
|
-
}, EatWhitespace<Remainder>] : ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
145
|
+
declare type ParseField<Input extends string> = Input extends '' ? ParserError<'Empty string'> : ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
126
146
|
{
|
|
127
147
|
name: Name;
|
|
128
148
|
original: Name;
|
|
129
149
|
children: Fields;
|
|
130
150
|
},
|
|
131
151
|
EatWhitespace<Remainder>
|
|
132
|
-
] :
|
|
152
|
+
] : CreateParserErrorIfRequired<ParseEmbeddedResource<EatWhitespace<Remainder>>, 'Expected embedded resource after `!inner`'> : EatWhitespace<Remainder> extends `!${infer Remainder}` ? ParseIdentifier<EatWhitespace<Remainder>> extends [infer Hint, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
133
153
|
infer Fields,
|
|
134
154
|
`${infer Remainder}`
|
|
135
155
|
] ? [
|
|
@@ -140,7 +160,7 @@ declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'E
|
|
|
140
160
|
children: Fields;
|
|
141
161
|
},
|
|
142
162
|
EatWhitespace<Remainder>
|
|
143
|
-
] :
|
|
163
|
+
] : CreateParserErrorIfRequired<ParseEmbeddedResource<EatWhitespace<Remainder>>, 'Expected embedded resource after `!inner`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
144
164
|
infer Fields,
|
|
145
165
|
`${infer Remainder}`
|
|
146
166
|
] ? [
|
|
@@ -151,65 +171,7 @@ declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'E
|
|
|
151
171
|
children: Fields;
|
|
152
172
|
},
|
|
153
173
|
EatWhitespace<Remainder>
|
|
154
|
-
] :
|
|
155
|
-
infer Fields,
|
|
156
|
-
`${infer Remainder}`
|
|
157
|
-
] ? [
|
|
158
|
-
{
|
|
159
|
-
name: Name;
|
|
160
|
-
original: OriginalName;
|
|
161
|
-
children: Fields;
|
|
162
|
-
},
|
|
163
|
-
EatWhitespace<Remainder>
|
|
164
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource after `!inner`'> : EatWhitespace<Remainder> extends `!${infer Remainder}` ? ParseIdentifier<EatWhitespace<Remainder>> extends [infer Hint, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
165
|
-
infer Fields,
|
|
166
|
-
`${infer Remainder}`
|
|
167
|
-
] ? [
|
|
168
|
-
{
|
|
169
|
-
name: Name;
|
|
170
|
-
original: OriginalName;
|
|
171
|
-
hint: Hint;
|
|
172
|
-
children: Fields;
|
|
173
|
-
},
|
|
174
|
-
EatWhitespace<Remainder>
|
|
175
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource after `!inner`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
176
|
-
infer Fields,
|
|
177
|
-
`${infer Remainder}`
|
|
178
|
-
] ? [
|
|
179
|
-
{
|
|
180
|
-
name: Name;
|
|
181
|
-
original: OriginalName;
|
|
182
|
-
hint: Hint;
|
|
183
|
-
children: Fields;
|
|
184
|
-
},
|
|
185
|
-
EatWhitespace<Remainder>
|
|
186
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource after `!hint`'> : ParserError<'Expected identifier after `!`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
187
|
-
infer Fields,
|
|
188
|
-
`${infer Remainder}`
|
|
189
|
-
] ? [
|
|
190
|
-
{
|
|
191
|
-
name: Name;
|
|
192
|
-
original: OriginalName;
|
|
193
|
-
children: Fields;
|
|
194
|
-
},
|
|
195
|
-
EatWhitespace<Remainder>
|
|
196
|
-
] : ParseJsonAccessor<EatWhitespace<Remainder>> extends [
|
|
197
|
-
infer _PropertyName,
|
|
198
|
-
infer PropertyType,
|
|
199
|
-
`${infer Remainder}`
|
|
200
|
-
] ? [
|
|
201
|
-
{
|
|
202
|
-
name: Name;
|
|
203
|
-
type: PropertyType;
|
|
204
|
-
},
|
|
205
|
-
EatWhitespace<Remainder>
|
|
206
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : [
|
|
207
|
-
{
|
|
208
|
-
name: Name;
|
|
209
|
-
original: OriginalName;
|
|
210
|
-
},
|
|
211
|
-
EatWhitespace<Remainder>
|
|
212
|
-
] : ParseIdentifier<EatWhitespace<Remainder>> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
174
|
+
] : CreateParserErrorIfRequired<ParseEmbeddedResource<EatWhitespace<Remainder>>, 'Expected embedded resource after `!hint`'> : ParserError<'Expected identifier after `!`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
213
175
|
{
|
|
214
176
|
name: Name;
|
|
215
177
|
original: Name;
|
|
@@ -223,16 +185,39 @@ declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'E
|
|
|
223
185
|
] ? [
|
|
224
186
|
{
|
|
225
187
|
name: PropertyName;
|
|
188
|
+
original: PropertyName;
|
|
226
189
|
type: PropertyType;
|
|
227
190
|
},
|
|
228
191
|
EatWhitespace<Remainder>
|
|
229
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : [
|
|
192
|
+
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : EatWhitespace<Remainder> extends `::${infer Remainder}` ? ParseIdentifier<Remainder> extends [`${infer CastType}`, `${infer Remainder}`] ? CastType extends PostgreSQLTypes ? [{
|
|
193
|
+
name: Name;
|
|
194
|
+
type: TypeScriptTypes<CastType>;
|
|
195
|
+
}, EatWhitespace<Remainder>] : ParserError<`Invalid type for \`::\` operator \`${CastType}\``> : ParserError<`Invalid type for \`::\` operator at \`${Remainder}\``> : [
|
|
230
196
|
{
|
|
231
197
|
name: Name;
|
|
232
198
|
original: Name;
|
|
233
199
|
},
|
|
234
200
|
EatWhitespace<Remainder>
|
|
235
201
|
] : ParserError<`Expected identifier at \`${Input}\``>;
|
|
202
|
+
/**
|
|
203
|
+
* Parses a node.
|
|
204
|
+
* A node is one of the following:
|
|
205
|
+
* - `*`
|
|
206
|
+
* - a field, as defined above
|
|
207
|
+
* - a renamed field, `renamed_field:field`
|
|
208
|
+
* - a spread field, `...field`
|
|
209
|
+
*/
|
|
210
|
+
declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'Empty string'> : Input extends `*${infer Remainder}` ? [{
|
|
211
|
+
star: true;
|
|
212
|
+
}, EatWhitespace<Remainder>] : Input extends `...${infer Remainder}` ? ParseField<EatWhitespace<Remainder>> extends [infer Field, `${infer Remainder}`] ? Field extends {
|
|
213
|
+
children: unknown[];
|
|
214
|
+
} ? [Prettify<{
|
|
215
|
+
spread: true;
|
|
216
|
+
} & Field>, EatWhitespace<Remainder>] : ParserError<'Unable to parse spread resource'> : ParserError<'Unable to parse spread resource'> : ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `::${infer _Remainder}` ? ParseField<Input> : EatWhitespace<Remainder> extends `:${infer Remainder}` ? ParseField<EatWhitespace<Remainder>> extends [infer Field, `${infer Remainder}`] ? Field extends {
|
|
217
|
+
name: string;
|
|
218
|
+
} ? [Prettify<Omit<Field, 'name'> & {
|
|
219
|
+
name: Name;
|
|
220
|
+
}>, EatWhitespace<Remainder>] : ParserError<`Unable to parse renamed field`> : ParserError<`Unable to parse renamed field`> : ParseField<Input> : ParserError<`Expected identifier at \`${Input}\``>;
|
|
236
221
|
/**
|
|
237
222
|
* Parses a JSON property accessor of the shape `->a->b->c`. The last accessor in
|
|
238
223
|
* the series may convert to text by using the ->> operator instead of ->.
|
|
@@ -247,12 +232,12 @@ declare type ParseJsonAccessor<Input extends string> = Input extends `->${infer
|
|
|
247
232
|
] ? [PropertyName, PropertyType, EatWhitespace<Remainder>] : [Name, Json, EatWhitespace<Remainder>] : ParserError<'Expected property name after `->`'> : Input;
|
|
248
233
|
/**
|
|
249
234
|
* Parses an embedded resource, which is an opening `(`, followed by a sequence of
|
|
250
|
-
* nodes
|
|
235
|
+
* 0 or more nodes separated by `,`, then a closing `)`.
|
|
251
236
|
*
|
|
252
237
|
* Returns a tuple of ["Parsed fields", "Remainder of text"], an error,
|
|
253
238
|
* or the original string input indicating that no opening `(` was found.
|
|
254
239
|
*/
|
|
255
|
-
declare type ParseEmbeddedResource<Input extends string> = Input extends `(${infer Remainder}` ? ParseNodes<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `)${infer Remainder}` ? Fields extends
|
|
240
|
+
declare type ParseEmbeddedResource<Input extends string> = Input extends `(${infer Remainder}` ? ParseNodes<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `)${infer Remainder}` ? [Fields, EatWhitespace<Remainder>] : ParserError<`Expected ")"`> : ParseNodes<EatWhitespace<Remainder>> extends ParserError<string> ? EatWhitespace<Remainder> extends `)${infer Remainder}` ? [[], EatWhitespace<Remainder>] : ParseNodes<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource fields or `)`'> : Input;
|
|
256
241
|
/**
|
|
257
242
|
* Parses a sequence of nodes, separated by `,`.
|
|
258
243
|
*
|
|
@@ -276,7 +261,9 @@ declare type GetResultHelper<Schema extends GenericSchema, Row extends Record<st
|
|
|
276
261
|
/**
|
|
277
262
|
* Constructs a type definition for an object based on a given PostgREST query.
|
|
278
263
|
*
|
|
279
|
-
* @param
|
|
264
|
+
* @param Schema Database schema.
|
|
265
|
+
* @param Row Type of a row in the given table.
|
|
266
|
+
* @param Relationships Relationships between different tables in the database.
|
|
280
267
|
* @param Query Select query string literal to parse.
|
|
281
268
|
*/
|
|
282
269
|
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>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-query-parser.d.ts","sourceRoot":"","sources":["../../src/select-query-parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select-query-parser.d.ts","sourceRoot":"","sources":["../../src/select-query-parser.ts"],"names":[],"mappings":"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"}
|
package/dist/main/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "1.
|
|
1
|
+
export declare const version = "1.12.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/main/version.js
CHANGED
|
@@ -7,6 +7,12 @@ declare type Letter = Alphabet | Digit | '_';
|
|
|
7
7
|
declare type Json = string | number | boolean | null | {
|
|
8
8
|
[key: string]: Json;
|
|
9
9
|
} | Json[];
|
|
10
|
+
declare type SingleValuePostgreSQLTypes = 'bool' | 'int2' | 'int4' | 'int8' | 'float4' | 'float8' | 'numeric' | 'bytea' | 'bpchar' | 'varchar' | 'date' | 'text' | 'citext' | 'time' | 'timetz' | 'timestamp' | 'timestamptz' | 'uuid' | 'vector' | 'json' | 'jsonb' | 'void' | 'record' | string;
|
|
11
|
+
declare type ArrayPostgreSQLTypes = `_${SingleValuePostgreSQLTypes}`;
|
|
12
|
+
declare type PostgreSQLTypes = SingleValuePostgreSQLTypes | ArrayPostgreSQLTypes;
|
|
13
|
+
declare type TypeScriptSingleValueTypes<T extends SingleValuePostgreSQLTypes> = T extends 'bool' ? boolean : T extends 'int2' | 'int4' | 'int8' | 'float4' | 'float8' | 'numeric' ? number : T extends 'bytea' | 'bpchar' | 'varchar' | 'date' | 'text' | 'citext' | 'time' | 'timetz' | 'timestamp' | 'timestamptz' | 'uuid' | 'vector' ? string : T extends 'json' | 'jsonb' ? Json : T extends 'void' ? undefined : T extends 'record' ? Record<string, unknown> : unknown;
|
|
14
|
+
declare type StripUnderscore<T extends string> = T extends `_${infer U}` ? U : T;
|
|
15
|
+
declare type TypeScriptTypes<T extends PostgreSQLTypes> = T extends ArrayPostgreSQLTypes ? TypeScriptSingleValueTypes<StripUnderscore<Extract<T, SingleValuePostgreSQLTypes>>>[] : TypeScriptSingleValueTypes<T>;
|
|
10
16
|
/**
|
|
11
17
|
* Parser errors.
|
|
12
18
|
*/
|
|
@@ -17,17 +23,31 @@ declare type GenericStringError = ParserError<'Received a generic string'>;
|
|
|
17
23
|
export declare type SelectQueryError<Message extends string> = {
|
|
18
24
|
error: true;
|
|
19
25
|
} & Message;
|
|
26
|
+
/**
|
|
27
|
+
* Creates a new {@link ParserError} if the given input is not already a parser error.
|
|
28
|
+
*/
|
|
29
|
+
declare type CreateParserErrorIfRequired<Input, Message extends string> = Input extends ParserError<string> ? Input : ParserError<Message>;
|
|
20
30
|
/**
|
|
21
31
|
* Trims whitespace from the left of the input.
|
|
22
32
|
*/
|
|
23
33
|
declare type EatWhitespace<Input extends string> = string extends Input ? GenericStringError : Input extends `${Whitespace}${infer Remainder}` ? EatWhitespace<Remainder> : Input;
|
|
34
|
+
/**
|
|
35
|
+
* Returns a boolean representing whether there is a foreign key with the given name.
|
|
36
|
+
*/
|
|
24
37
|
declare type HasFKey<FKeyName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
25
38
|
foreignKeyName: FKeyName;
|
|
26
39
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasFKey<FKeyName, [R]> extends true ? true : HasFKey<FKeyName, Rest> : false;
|
|
40
|
+
/**
|
|
41
|
+
* Returns a boolean representing whether there the foreign key has a unique constraint.
|
|
42
|
+
*/
|
|
27
43
|
declare type HasUniqueFKey<FKeyName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
28
44
|
foreignKeyName: FKeyName;
|
|
29
45
|
isOneToOne: true;
|
|
30
46
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasUniqueFKey<FKeyName, [R]> extends true ? true : HasUniqueFKey<FKeyName, Rest> : false;
|
|
47
|
+
/**
|
|
48
|
+
* Returns a boolean representing whether there is a foreign key referencing
|
|
49
|
+
* a given relation.
|
|
50
|
+
*/
|
|
31
51
|
declare type HasFKeyToFRel<FRelName, Relationships> = Relationships extends [infer R] ? R extends {
|
|
32
52
|
referencedRelation: FRelName;
|
|
33
53
|
} ? true : false : Relationships extends [infer R, ...infer Rest] ? HasFKeyToFRel<FRelName, [R]> extends true ? true : HasFKeyToFRel<FRelName, Rest> : false;
|
|
@@ -38,13 +58,22 @@ declare type HasUniqueFKeyToFRel<FRelName, Relationships> = Relationships extend
|
|
|
38
58
|
/**
|
|
39
59
|
* Constructs a type definition for a single field of an object.
|
|
40
60
|
*
|
|
41
|
-
* @param
|
|
42
|
-
* @param
|
|
61
|
+
* @param Schema Database schema.
|
|
62
|
+
* @param Row Type of a row in the given table.
|
|
63
|
+
* @param Relationships Relationships between different tables in the database.
|
|
43
64
|
* @param Field Single field parsed by `ParseQuery`.
|
|
44
65
|
*/
|
|
45
66
|
declare type ConstructFieldDefinition<Schema extends GenericSchema, Row extends Record<string, unknown>, RelationName, Relationships, Field> = Field extends {
|
|
46
67
|
star: true;
|
|
47
68
|
} ? Row : Field extends {
|
|
69
|
+
spread: true;
|
|
70
|
+
original: string;
|
|
71
|
+
children: unknown[];
|
|
72
|
+
} ? GetResultHelper<Schema, (Schema['Tables'] & Schema['Views'])[Field['original']]['Row'], Field['original'], (Schema['Tables'] & Schema['Views'])[Field['original']] extends {
|
|
73
|
+
Relationships: infer R;
|
|
74
|
+
} ? R : unknown, Field['children'], unknown> : Field extends {
|
|
75
|
+
children: [];
|
|
76
|
+
} ? {} : Field extends {
|
|
48
77
|
name: string;
|
|
49
78
|
original: string;
|
|
50
79
|
hint: string;
|
|
@@ -66,70 +95,61 @@ declare type ConstructFieldDefinition<Schema extends GenericSchema, Row extends
|
|
|
66
95
|
Relationships: infer R;
|
|
67
96
|
} ? R : unknown> extends true ? Child | null : Relationships extends unknown[] ? HasFKeyToFRel<Field['original'], Relationships> extends true ? Child | null : Child[] : Child[] : never;
|
|
68
97
|
} : Field extends {
|
|
69
|
-
name: string;
|
|
70
|
-
original: string;
|
|
71
|
-
} ? Field['original'] extends keyof Row ? {
|
|
72
|
-
[K in Field['name']]: Row[Field['original']];
|
|
73
|
-
} : SelectQueryError<`Referencing missing column \`${Field['original']}\``> : Field extends {
|
|
74
98
|
name: string;
|
|
75
99
|
type: infer T;
|
|
76
100
|
} ? {
|
|
77
101
|
[K in Field['name']]: T;
|
|
78
|
-
} :
|
|
102
|
+
} : Field extends {
|
|
103
|
+
name: string;
|
|
104
|
+
original: string;
|
|
105
|
+
} ? Field['original'] extends keyof Row ? {
|
|
106
|
+
[K in Field['name']]: Row[Field['original']];
|
|
107
|
+
} : SelectQueryError<`Referencing missing column \`${Field['original']}\``> : Record<string, unknown>;
|
|
79
108
|
/**
|
|
80
109
|
* Notes: all `Parse*` types assume that their input strings have their whitespace
|
|
81
110
|
* removed. They return tuples of ["Return Value", "Remainder of text"] or
|
|
82
111
|
* a `ParserError`.
|
|
83
112
|
*/
|
|
84
113
|
/**
|
|
85
|
-
* Reads a consecutive sequence of
|
|
86
|
-
* where letters are `[0-9a-zA-Z_]`.
|
|
114
|
+
* Reads a consecutive sequence of 1 or more letter, where letters are `[0-9a-zA-Z_]`.
|
|
87
115
|
*/
|
|
88
116
|
declare type ReadLetters<Input extends string> = string extends Input ? GenericStringError : ReadLettersHelper<Input, ''> extends [`${infer Letters}`, `${infer Remainder}`] ? Letters extends '' ? ParserError<`Expected letter at \`${Input}\``> : [Letters, Remainder] : ReadLettersHelper<Input, ''>;
|
|
89
117
|
declare type ReadLettersHelper<Input extends string, Acc extends string> = string extends Input ? GenericStringError : Input extends `${infer L}${infer Remainder}` ? L extends Letter ? ReadLettersHelper<Remainder, `${Acc}${L}`> : [Acc, Input] : [Acc, ''];
|
|
90
118
|
/**
|
|
91
|
-
* Reads a consecutive sequence of
|
|
119
|
+
* Reads a consecutive sequence of 1 or more double-quoted letters,
|
|
92
120
|
* where letters are `[^"]`.
|
|
93
121
|
*/
|
|
94
122
|
declare type ReadQuotedLetters<Input extends string> = string extends Input ? GenericStringError : Input extends `"${infer Remainder}` ? ReadQuotedLettersHelper<Remainder, ''> extends [`${infer Letters}`, `${infer Remainder}`] ? Letters extends '' ? ParserError<`Expected string at \`${Remainder}\``> : [Letters, Remainder] : ReadQuotedLettersHelper<Remainder, ''> : ParserError<`Not a double-quoted string at \`${Input}\``>;
|
|
95
123
|
declare type ReadQuotedLettersHelper<Input extends string, Acc extends string> = string extends Input ? GenericStringError : Input extends `${infer L}${infer Remainder}` ? L extends '"' ? [Acc, Remainder] : ReadQuotedLettersHelper<Remainder, `${Acc}${L}`> : ParserError<`Missing closing double-quote in \`"${Acc}${Input}\``>;
|
|
96
124
|
/**
|
|
97
125
|
* Parses a (possibly double-quoted) identifier.
|
|
98
|
-
*
|
|
126
|
+
* Identifiers are sequences of 1 or more letters.
|
|
99
127
|
*/
|
|
100
128
|
declare type ParseIdentifier<Input extends string> = ReadLetters<Input> extends [
|
|
101
129
|
infer Name,
|
|
102
130
|
`${infer Remainder}`
|
|
103
131
|
] ? [Name, `${Remainder}`] : ReadQuotedLetters<Input> extends [infer Name, `${infer Remainder}`] ? [Name, `${Remainder}`] : ParserError<`No (possibly double-quoted) identifier at \`${Input}\``>;
|
|
104
132
|
/**
|
|
105
|
-
* Parses a
|
|
106
|
-
* A
|
|
107
|
-
* - `*`
|
|
133
|
+
* Parses a field without preceding field renaming.
|
|
134
|
+
* A field is one of the following:
|
|
108
135
|
* - `field`
|
|
136
|
+
* - `field::type`
|
|
109
137
|
* - `field->json...`
|
|
110
138
|
* - `field(nodes)`
|
|
111
139
|
* - `field!hint(nodes)`
|
|
112
140
|
* - `field!inner(nodes)`
|
|
113
141
|
* - `field!hint!inner(nodes)`
|
|
114
|
-
* - `renamed_field:field`
|
|
115
|
-
* - `renamed_field:field->json...`
|
|
116
|
-
* - `renamed_field:field(nodes)`
|
|
117
|
-
* - `renamed_field:field!hint(nodes)`
|
|
118
|
-
* - `renamed_field:field!inner(nodes)`
|
|
119
|
-
* - `renamed_field:field!hint!inner(nodes)`
|
|
120
142
|
*
|
|
121
|
-
* TODO:
|
|
143
|
+
* TODO: support type casting of JSON operators `a->b::type`, `a->>b::type`.
|
|
122
144
|
*/
|
|
123
|
-
declare type
|
|
124
|
-
star: true;
|
|
125
|
-
}, EatWhitespace<Remainder>] : ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
145
|
+
declare type ParseField<Input extends string> = Input extends '' ? ParserError<'Empty string'> : ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
126
146
|
{
|
|
127
147
|
name: Name;
|
|
128
148
|
original: Name;
|
|
129
149
|
children: Fields;
|
|
130
150
|
},
|
|
131
151
|
EatWhitespace<Remainder>
|
|
132
|
-
] :
|
|
152
|
+
] : CreateParserErrorIfRequired<ParseEmbeddedResource<EatWhitespace<Remainder>>, 'Expected embedded resource after `!inner`'> : EatWhitespace<Remainder> extends `!${infer Remainder}` ? ParseIdentifier<EatWhitespace<Remainder>> extends [infer Hint, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
133
153
|
infer Fields,
|
|
134
154
|
`${infer Remainder}`
|
|
135
155
|
] ? [
|
|
@@ -140,7 +160,7 @@ declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'E
|
|
|
140
160
|
children: Fields;
|
|
141
161
|
},
|
|
142
162
|
EatWhitespace<Remainder>
|
|
143
|
-
] :
|
|
163
|
+
] : CreateParserErrorIfRequired<ParseEmbeddedResource<EatWhitespace<Remainder>>, 'Expected embedded resource after `!inner`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
144
164
|
infer Fields,
|
|
145
165
|
`${infer Remainder}`
|
|
146
166
|
] ? [
|
|
@@ -151,65 +171,7 @@ declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'E
|
|
|
151
171
|
children: Fields;
|
|
152
172
|
},
|
|
153
173
|
EatWhitespace<Remainder>
|
|
154
|
-
] :
|
|
155
|
-
infer Fields,
|
|
156
|
-
`${infer Remainder}`
|
|
157
|
-
] ? [
|
|
158
|
-
{
|
|
159
|
-
name: Name;
|
|
160
|
-
original: OriginalName;
|
|
161
|
-
children: Fields;
|
|
162
|
-
},
|
|
163
|
-
EatWhitespace<Remainder>
|
|
164
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource after `!inner`'> : EatWhitespace<Remainder> extends `!${infer Remainder}` ? ParseIdentifier<EatWhitespace<Remainder>> extends [infer Hint, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `!inner${infer Remainder}` ? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
165
|
-
infer Fields,
|
|
166
|
-
`${infer Remainder}`
|
|
167
|
-
] ? [
|
|
168
|
-
{
|
|
169
|
-
name: Name;
|
|
170
|
-
original: OriginalName;
|
|
171
|
-
hint: Hint;
|
|
172
|
-
children: Fields;
|
|
173
|
-
},
|
|
174
|
-
EatWhitespace<Remainder>
|
|
175
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource after `!inner`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
176
|
-
infer Fields,
|
|
177
|
-
`${infer Remainder}`
|
|
178
|
-
] ? [
|
|
179
|
-
{
|
|
180
|
-
name: Name;
|
|
181
|
-
original: OriginalName;
|
|
182
|
-
hint: Hint;
|
|
183
|
-
children: Fields;
|
|
184
|
-
},
|
|
185
|
-
EatWhitespace<Remainder>
|
|
186
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource after `!hint`'> : ParserError<'Expected identifier after `!`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
187
|
-
infer Fields,
|
|
188
|
-
`${infer Remainder}`
|
|
189
|
-
] ? [
|
|
190
|
-
{
|
|
191
|
-
name: Name;
|
|
192
|
-
original: OriginalName;
|
|
193
|
-
children: Fields;
|
|
194
|
-
},
|
|
195
|
-
EatWhitespace<Remainder>
|
|
196
|
-
] : ParseJsonAccessor<EatWhitespace<Remainder>> extends [
|
|
197
|
-
infer _PropertyName,
|
|
198
|
-
infer PropertyType,
|
|
199
|
-
`${infer Remainder}`
|
|
200
|
-
] ? [
|
|
201
|
-
{
|
|
202
|
-
name: Name;
|
|
203
|
-
type: PropertyType;
|
|
204
|
-
},
|
|
205
|
-
EatWhitespace<Remainder>
|
|
206
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : [
|
|
207
|
-
{
|
|
208
|
-
name: Name;
|
|
209
|
-
original: OriginalName;
|
|
210
|
-
},
|
|
211
|
-
EatWhitespace<Remainder>
|
|
212
|
-
] : ParseIdentifier<EatWhitespace<Remainder>> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
174
|
+
] : CreateParserErrorIfRequired<ParseEmbeddedResource<EatWhitespace<Remainder>>, 'Expected embedded resource after `!hint`'> : ParserError<'Expected identifier after `!`'> : ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? [
|
|
213
175
|
{
|
|
214
176
|
name: Name;
|
|
215
177
|
original: Name;
|
|
@@ -223,16 +185,39 @@ declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'E
|
|
|
223
185
|
] ? [
|
|
224
186
|
{
|
|
225
187
|
name: PropertyName;
|
|
188
|
+
original: PropertyName;
|
|
226
189
|
type: PropertyType;
|
|
227
190
|
},
|
|
228
191
|
EatWhitespace<Remainder>
|
|
229
|
-
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : [
|
|
192
|
+
] : ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string> ? ParseEmbeddedResource<EatWhitespace<Remainder>> : EatWhitespace<Remainder> extends `::${infer Remainder}` ? ParseIdentifier<Remainder> extends [`${infer CastType}`, `${infer Remainder}`] ? CastType extends PostgreSQLTypes ? [{
|
|
193
|
+
name: Name;
|
|
194
|
+
type: TypeScriptTypes<CastType>;
|
|
195
|
+
}, EatWhitespace<Remainder>] : ParserError<`Invalid type for \`::\` operator \`${CastType}\``> : ParserError<`Invalid type for \`::\` operator at \`${Remainder}\``> : [
|
|
230
196
|
{
|
|
231
197
|
name: Name;
|
|
232
198
|
original: Name;
|
|
233
199
|
},
|
|
234
200
|
EatWhitespace<Remainder>
|
|
235
201
|
] : ParserError<`Expected identifier at \`${Input}\``>;
|
|
202
|
+
/**
|
|
203
|
+
* Parses a node.
|
|
204
|
+
* A node is one of the following:
|
|
205
|
+
* - `*`
|
|
206
|
+
* - a field, as defined above
|
|
207
|
+
* - a renamed field, `renamed_field:field`
|
|
208
|
+
* - a spread field, `...field`
|
|
209
|
+
*/
|
|
210
|
+
declare type ParseNode<Input extends string> = Input extends '' ? ParserError<'Empty string'> : Input extends `*${infer Remainder}` ? [{
|
|
211
|
+
star: true;
|
|
212
|
+
}, EatWhitespace<Remainder>] : Input extends `...${infer Remainder}` ? ParseField<EatWhitespace<Remainder>> extends [infer Field, `${infer Remainder}`] ? Field extends {
|
|
213
|
+
children: unknown[];
|
|
214
|
+
} ? [Prettify<{
|
|
215
|
+
spread: true;
|
|
216
|
+
} & Field>, EatWhitespace<Remainder>] : ParserError<'Unable to parse spread resource'> : ParserError<'Unable to parse spread resource'> : ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `::${infer _Remainder}` ? ParseField<Input> : EatWhitespace<Remainder> extends `:${infer Remainder}` ? ParseField<EatWhitespace<Remainder>> extends [infer Field, `${infer Remainder}`] ? Field extends {
|
|
217
|
+
name: string;
|
|
218
|
+
} ? [Prettify<Omit<Field, 'name'> & {
|
|
219
|
+
name: Name;
|
|
220
|
+
}>, EatWhitespace<Remainder>] : ParserError<`Unable to parse renamed field`> : ParserError<`Unable to parse renamed field`> : ParseField<Input> : ParserError<`Expected identifier at \`${Input}\``>;
|
|
236
221
|
/**
|
|
237
222
|
* Parses a JSON property accessor of the shape `->a->b->c`. The last accessor in
|
|
238
223
|
* the series may convert to text by using the ->> operator instead of ->.
|
|
@@ -247,12 +232,12 @@ declare type ParseJsonAccessor<Input extends string> = Input extends `->${infer
|
|
|
247
232
|
] ? [PropertyName, PropertyType, EatWhitespace<Remainder>] : [Name, Json, EatWhitespace<Remainder>] : ParserError<'Expected property name after `->`'> : Input;
|
|
248
233
|
/**
|
|
249
234
|
* Parses an embedded resource, which is an opening `(`, followed by a sequence of
|
|
250
|
-
* nodes
|
|
235
|
+
* 0 or more nodes separated by `,`, then a closing `)`.
|
|
251
236
|
*
|
|
252
237
|
* Returns a tuple of ["Parsed fields", "Remainder of text"], an error,
|
|
253
238
|
* or the original string input indicating that no opening `(` was found.
|
|
254
239
|
*/
|
|
255
|
-
declare type ParseEmbeddedResource<Input extends string> = Input extends `(${infer Remainder}` ? ParseNodes<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `)${infer Remainder}` ? Fields extends
|
|
240
|
+
declare type ParseEmbeddedResource<Input extends string> = Input extends `(${infer Remainder}` ? ParseNodes<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`] ? EatWhitespace<Remainder> extends `)${infer Remainder}` ? [Fields, EatWhitespace<Remainder>] : ParserError<`Expected ")"`> : ParseNodes<EatWhitespace<Remainder>> extends ParserError<string> ? EatWhitespace<Remainder> extends `)${infer Remainder}` ? [[], EatWhitespace<Remainder>] : ParseNodes<EatWhitespace<Remainder>> : ParserError<'Expected embedded resource fields or `)`'> : Input;
|
|
256
241
|
/**
|
|
257
242
|
* Parses a sequence of nodes, separated by `,`.
|
|
258
243
|
*
|
|
@@ -276,7 +261,9 @@ declare type GetResultHelper<Schema extends GenericSchema, Row extends Record<st
|
|
|
276
261
|
/**
|
|
277
262
|
* Constructs a type definition for an object based on a given PostgREST query.
|
|
278
263
|
*
|
|
279
|
-
* @param
|
|
264
|
+
* @param Schema Database schema.
|
|
265
|
+
* @param Row Type of a row in the given table.
|
|
266
|
+
* @param Relationships Relationships between different tables in the database.
|
|
280
267
|
* @param Query Select query string literal to parse.
|
|
281
268
|
*/
|
|
282
269
|
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>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-query-parser.d.ts","sourceRoot":"","sources":["../../src/select-query-parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select-query-parser.d.ts","sourceRoot":"","sources":["../../src/select-query-parser.ts"],"names":[],"mappings":"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"}
|
package/dist/module/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "1.
|
|
1
|
+
export declare const version = "1.12.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/module/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const version = '1.
|
|
1
|
+
export const version = '1.12.0';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -40,6 +40,68 @@ type Letter = Alphabet | Digit | '_'
|
|
|
40
40
|
|
|
41
41
|
type Json = string | number | boolean | null | { [key: string]: Json } | Json[]
|
|
42
42
|
|
|
43
|
+
type SingleValuePostgreSQLTypes =
|
|
44
|
+
| 'bool'
|
|
45
|
+
| 'int2'
|
|
46
|
+
| 'int4'
|
|
47
|
+
| 'int8'
|
|
48
|
+
| 'float4'
|
|
49
|
+
| 'float8'
|
|
50
|
+
| 'numeric'
|
|
51
|
+
| 'bytea'
|
|
52
|
+
| 'bpchar'
|
|
53
|
+
| 'varchar'
|
|
54
|
+
| 'date'
|
|
55
|
+
| 'text'
|
|
56
|
+
| 'citext'
|
|
57
|
+
| 'time'
|
|
58
|
+
| 'timetz'
|
|
59
|
+
| 'timestamp'
|
|
60
|
+
| 'timestamptz'
|
|
61
|
+
| 'uuid'
|
|
62
|
+
| 'vector'
|
|
63
|
+
| 'json'
|
|
64
|
+
| 'jsonb'
|
|
65
|
+
| 'void'
|
|
66
|
+
| 'record'
|
|
67
|
+
| string
|
|
68
|
+
|
|
69
|
+
type ArrayPostgreSQLTypes = `_${SingleValuePostgreSQLTypes}`
|
|
70
|
+
|
|
71
|
+
type PostgreSQLTypes = SingleValuePostgreSQLTypes | ArrayPostgreSQLTypes
|
|
72
|
+
|
|
73
|
+
type TypeScriptSingleValueTypes<T extends SingleValuePostgreSQLTypes> = T extends 'bool'
|
|
74
|
+
? boolean
|
|
75
|
+
: T extends 'int2' | 'int4' | 'int8' | 'float4' | 'float8' | 'numeric'
|
|
76
|
+
? number
|
|
77
|
+
: T extends
|
|
78
|
+
| 'bytea'
|
|
79
|
+
| 'bpchar'
|
|
80
|
+
| 'varchar'
|
|
81
|
+
| 'date'
|
|
82
|
+
| 'text'
|
|
83
|
+
| 'citext'
|
|
84
|
+
| 'time'
|
|
85
|
+
| 'timetz'
|
|
86
|
+
| 'timestamp'
|
|
87
|
+
| 'timestamptz'
|
|
88
|
+
| 'uuid'
|
|
89
|
+
| 'vector'
|
|
90
|
+
? string
|
|
91
|
+
: T extends 'json' | 'jsonb'
|
|
92
|
+
? Json
|
|
93
|
+
: T extends 'void'
|
|
94
|
+
? undefined
|
|
95
|
+
: T extends 'record'
|
|
96
|
+
? Record<string, unknown>
|
|
97
|
+
: unknown
|
|
98
|
+
|
|
99
|
+
type StripUnderscore<T extends string> = T extends `_${infer U}` ? U : T
|
|
100
|
+
|
|
101
|
+
type TypeScriptTypes<T extends PostgreSQLTypes> = T extends ArrayPostgreSQLTypes
|
|
102
|
+
? TypeScriptSingleValueTypes<StripUnderscore<Extract<T, SingleValuePostgreSQLTypes>>>[]
|
|
103
|
+
: TypeScriptSingleValueTypes<T>
|
|
104
|
+
|
|
43
105
|
/**
|
|
44
106
|
* Parser errors.
|
|
45
107
|
*/
|
|
@@ -47,6 +109,13 @@ type ParserError<Message extends string> = { error: true } & Message
|
|
|
47
109
|
type GenericStringError = ParserError<'Received a generic string'>
|
|
48
110
|
export type SelectQueryError<Message extends string> = { error: true } & Message
|
|
49
111
|
|
|
112
|
+
/**
|
|
113
|
+
* Creates a new {@link ParserError} if the given input is not already a parser error.
|
|
114
|
+
*/
|
|
115
|
+
type CreateParserErrorIfRequired<Input, Message extends string> = Input extends ParserError<string>
|
|
116
|
+
? Input
|
|
117
|
+
: ParserError<Message>
|
|
118
|
+
|
|
50
119
|
/**
|
|
51
120
|
* Trims whitespace from the left of the input.
|
|
52
121
|
*/
|
|
@@ -56,6 +125,9 @@ type EatWhitespace<Input extends string> = string extends Input
|
|
|
56
125
|
? EatWhitespace<Remainder>
|
|
57
126
|
: Input
|
|
58
127
|
|
|
128
|
+
/**
|
|
129
|
+
* Returns a boolean representing whether there is a foreign key with the given name.
|
|
130
|
+
*/
|
|
59
131
|
type HasFKey<FKeyName, Relationships> = Relationships extends [infer R]
|
|
60
132
|
? R extends { foreignKeyName: FKeyName }
|
|
61
133
|
? true
|
|
@@ -66,6 +138,9 @@ type HasFKey<FKeyName, Relationships> = Relationships extends [infer R]
|
|
|
66
138
|
: HasFKey<FKeyName, Rest>
|
|
67
139
|
: false
|
|
68
140
|
|
|
141
|
+
/**
|
|
142
|
+
* Returns a boolean representing whether there the foreign key has a unique constraint.
|
|
143
|
+
*/
|
|
69
144
|
type HasUniqueFKey<FKeyName, Relationships> = Relationships extends [infer R]
|
|
70
145
|
? R extends { foreignKeyName: FKeyName; isOneToOne: true }
|
|
71
146
|
? true
|
|
@@ -76,6 +151,10 @@ type HasUniqueFKey<FKeyName, Relationships> = Relationships extends [infer R]
|
|
|
76
151
|
: HasUniqueFKey<FKeyName, Rest>
|
|
77
152
|
: false
|
|
78
153
|
|
|
154
|
+
/**
|
|
155
|
+
* Returns a boolean representing whether there is a foreign key referencing
|
|
156
|
+
* a given relation.
|
|
157
|
+
*/
|
|
79
158
|
type HasFKeyToFRel<FRelName, Relationships> = Relationships extends [infer R]
|
|
80
159
|
? R extends { referencedRelation: FRelName }
|
|
81
160
|
? true
|
|
@@ -99,8 +178,9 @@ type HasUniqueFKeyToFRel<FRelName, Relationships> = Relationships extends [infer
|
|
|
99
178
|
/**
|
|
100
179
|
* Constructs a type definition for a single field of an object.
|
|
101
180
|
*
|
|
102
|
-
* @param
|
|
103
|
-
* @param
|
|
181
|
+
* @param Schema Database schema.
|
|
182
|
+
* @param Row Type of a row in the given table.
|
|
183
|
+
* @param Relationships Relationships between different tables in the database.
|
|
104
184
|
* @param Field Single field parsed by `ParseQuery`.
|
|
105
185
|
*/
|
|
106
186
|
type ConstructFieldDefinition<
|
|
@@ -111,6 +191,19 @@ type ConstructFieldDefinition<
|
|
|
111
191
|
Field
|
|
112
192
|
> = Field extends { star: true }
|
|
113
193
|
? Row
|
|
194
|
+
: Field extends { spread: true; original: string; children: unknown[] }
|
|
195
|
+
? GetResultHelper<
|
|
196
|
+
Schema,
|
|
197
|
+
(Schema['Tables'] & Schema['Views'])[Field['original']]['Row'],
|
|
198
|
+
Field['original'],
|
|
199
|
+
(Schema['Tables'] & Schema['Views'])[Field['original']] extends { Relationships: infer R }
|
|
200
|
+
? R
|
|
201
|
+
: unknown,
|
|
202
|
+
Field['children'],
|
|
203
|
+
unknown
|
|
204
|
+
>
|
|
205
|
+
: Field extends { children: [] }
|
|
206
|
+
? {}
|
|
114
207
|
: Field extends { name: string; original: string; hint: string; children: unknown[] }
|
|
115
208
|
? {
|
|
116
209
|
[_ in Field['name']]: GetResultHelper<
|
|
@@ -169,12 +262,12 @@ type ConstructFieldDefinition<
|
|
|
169
262
|
: Child[]
|
|
170
263
|
: never
|
|
171
264
|
}
|
|
265
|
+
: Field extends { name: string; type: infer T }
|
|
266
|
+
? { [K in Field['name']]: T }
|
|
172
267
|
: Field extends { name: string; original: string }
|
|
173
268
|
? Field['original'] extends keyof Row
|
|
174
269
|
? { [K in Field['name']]: Row[Field['original']] }
|
|
175
270
|
: SelectQueryError<`Referencing missing column \`${Field['original']}\``>
|
|
176
|
-
: Field extends { name: string; type: infer T }
|
|
177
|
-
? { [K in Field['name']]: T }
|
|
178
271
|
: Record<string, unknown>
|
|
179
272
|
|
|
180
273
|
/**
|
|
@@ -184,8 +277,7 @@ type ConstructFieldDefinition<
|
|
|
184
277
|
*/
|
|
185
278
|
|
|
186
279
|
/**
|
|
187
|
-
* Reads a consecutive sequence of
|
|
188
|
-
* where letters are `[0-9a-zA-Z_]`.
|
|
280
|
+
* Reads a consecutive sequence of 1 or more letter, where letters are `[0-9a-zA-Z_]`.
|
|
189
281
|
*/
|
|
190
282
|
type ReadLetters<Input extends string> = string extends Input
|
|
191
283
|
? GenericStringError
|
|
@@ -204,7 +296,7 @@ type ReadLettersHelper<Input extends string, Acc extends string> = string extend
|
|
|
204
296
|
: [Acc, '']
|
|
205
297
|
|
|
206
298
|
/**
|
|
207
|
-
* Reads a consecutive sequence of
|
|
299
|
+
* Reads a consecutive sequence of 1 or more double-quoted letters,
|
|
208
300
|
* where letters are `[^"]`.
|
|
209
301
|
*/
|
|
210
302
|
type ReadQuotedLetters<Input extends string> = string extends Input
|
|
@@ -227,7 +319,7 @@ type ReadQuotedLettersHelper<Input extends string, Acc extends string> = string
|
|
|
227
319
|
|
|
228
320
|
/**
|
|
229
321
|
* Parses a (possibly double-quoted) identifier.
|
|
230
|
-
*
|
|
322
|
+
* Identifiers are sequences of 1 or more letters.
|
|
231
323
|
*/
|
|
232
324
|
type ParseIdentifier<Input extends string> = ReadLetters<Input> extends [
|
|
233
325
|
infer Name,
|
|
@@ -239,37 +331,29 @@ type ParseIdentifier<Input extends string> = ReadLetters<Input> extends [
|
|
|
239
331
|
: ParserError<`No (possibly double-quoted) identifier at \`${Input}\``>
|
|
240
332
|
|
|
241
333
|
/**
|
|
242
|
-
* Parses a
|
|
243
|
-
* A
|
|
244
|
-
* - `*`
|
|
334
|
+
* Parses a field without preceding field renaming.
|
|
335
|
+
* A field is one of the following:
|
|
245
336
|
* - `field`
|
|
337
|
+
* - `field::type`
|
|
246
338
|
* - `field->json...`
|
|
247
339
|
* - `field(nodes)`
|
|
248
340
|
* - `field!hint(nodes)`
|
|
249
341
|
* - `field!inner(nodes)`
|
|
250
342
|
* - `field!hint!inner(nodes)`
|
|
251
|
-
* - `renamed_field:field`
|
|
252
|
-
* - `renamed_field:field->json...`
|
|
253
|
-
* - `renamed_field:field(nodes)`
|
|
254
|
-
* - `renamed_field:field!hint(nodes)`
|
|
255
|
-
* - `renamed_field:field!inner(nodes)`
|
|
256
|
-
* - `renamed_field:field!hint!inner(nodes)`
|
|
257
343
|
*
|
|
258
|
-
* TODO:
|
|
344
|
+
* TODO: support type casting of JSON operators `a->b::type`, `a->>b::type`.
|
|
259
345
|
*/
|
|
260
|
-
type
|
|
346
|
+
type ParseField<Input extends string> = Input extends ''
|
|
261
347
|
? ParserError<'Empty string'>
|
|
262
|
-
: // `*`
|
|
263
|
-
Input extends `*${infer Remainder}`
|
|
264
|
-
? [{ star: true }, EatWhitespace<Remainder>]
|
|
265
348
|
: ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`]
|
|
266
349
|
? EatWhitespace<Remainder> extends `!inner${infer Remainder}`
|
|
267
350
|
? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`]
|
|
268
351
|
? // `field!inner(nodes)`
|
|
269
352
|
[{ name: Name; original: Name; children: Fields }, EatWhitespace<Remainder>]
|
|
270
|
-
:
|
|
271
|
-
|
|
272
|
-
|
|
353
|
+
: CreateParserErrorIfRequired<
|
|
354
|
+
ParseEmbeddedResource<EatWhitespace<Remainder>>,
|
|
355
|
+
'Expected embedded resource after `!inner`'
|
|
356
|
+
>
|
|
273
357
|
: EatWhitespace<Remainder> extends `!${infer Remainder}`
|
|
274
358
|
? ParseIdentifier<EatWhitespace<Remainder>> extends [infer Hint, `${infer Remainder}`]
|
|
275
359
|
? EatWhitespace<Remainder> extends `!inner${infer Remainder}`
|
|
@@ -279,82 +363,21 @@ type ParseNode<Input extends string> = Input extends ''
|
|
|
279
363
|
]
|
|
280
364
|
? // `field!hint!inner(nodes)`
|
|
281
365
|
[{ name: Name; original: Name; hint: Hint; children: Fields }, EatWhitespace<Remainder>]
|
|
282
|
-
:
|
|
283
|
-
|
|
284
|
-
|
|
366
|
+
: CreateParserErrorIfRequired<
|
|
367
|
+
ParseEmbeddedResource<EatWhitespace<Remainder>>,
|
|
368
|
+
'Expected embedded resource after `!inner`'
|
|
369
|
+
>
|
|
285
370
|
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
286
371
|
infer Fields,
|
|
287
372
|
`${infer Remainder}`
|
|
288
373
|
]
|
|
289
374
|
? // `field!hint(nodes)`
|
|
290
375
|
[{ name: Name; original: Name; hint: Hint; children: Fields }, EatWhitespace<Remainder>]
|
|
291
|
-
:
|
|
292
|
-
|
|
293
|
-
|
|
376
|
+
: CreateParserErrorIfRequired<
|
|
377
|
+
ParseEmbeddedResource<EatWhitespace<Remainder>>,
|
|
378
|
+
'Expected embedded resource after `!hint`'
|
|
379
|
+
>
|
|
294
380
|
: ParserError<'Expected identifier after `!`'>
|
|
295
|
-
: EatWhitespace<Remainder> extends `:${infer Remainder}`
|
|
296
|
-
? ParseIdentifier<EatWhitespace<Remainder>> extends [infer OriginalName, `${infer Remainder}`]
|
|
297
|
-
? EatWhitespace<Remainder> extends `!inner${infer Remainder}`
|
|
298
|
-
? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
299
|
-
infer Fields,
|
|
300
|
-
`${infer Remainder}`
|
|
301
|
-
]
|
|
302
|
-
? // `renamed_field:field!inner(nodes)`
|
|
303
|
-
[{ name: Name; original: OriginalName; children: Fields }, EatWhitespace<Remainder>]
|
|
304
|
-
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string>
|
|
305
|
-
? ParseEmbeddedResource<EatWhitespace<Remainder>>
|
|
306
|
-
: ParserError<'Expected embedded resource after `!inner`'>
|
|
307
|
-
: EatWhitespace<Remainder> extends `!${infer Remainder}`
|
|
308
|
-
? ParseIdentifier<EatWhitespace<Remainder>> extends [infer Hint, `${infer Remainder}`]
|
|
309
|
-
? EatWhitespace<Remainder> extends `!inner${infer Remainder}`
|
|
310
|
-
? ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
311
|
-
infer Fields,
|
|
312
|
-
`${infer Remainder}`
|
|
313
|
-
]
|
|
314
|
-
? // `renamed_field:field!hint!inner(nodes)`
|
|
315
|
-
[
|
|
316
|
-
{ name: Name; original: OriginalName; hint: Hint; children: Fields },
|
|
317
|
-
EatWhitespace<Remainder>
|
|
318
|
-
]
|
|
319
|
-
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string>
|
|
320
|
-
? ParseEmbeddedResource<EatWhitespace<Remainder>>
|
|
321
|
-
: ParserError<'Expected embedded resource after `!inner`'>
|
|
322
|
-
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
323
|
-
infer Fields,
|
|
324
|
-
`${infer Remainder}`
|
|
325
|
-
]
|
|
326
|
-
? // `renamed_field:field!hint(nodes)`
|
|
327
|
-
[
|
|
328
|
-
{
|
|
329
|
-
name: Name
|
|
330
|
-
original: OriginalName
|
|
331
|
-
hint: Hint
|
|
332
|
-
children: Fields
|
|
333
|
-
},
|
|
334
|
-
EatWhitespace<Remainder>
|
|
335
|
-
]
|
|
336
|
-
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string>
|
|
337
|
-
? ParseEmbeddedResource<EatWhitespace<Remainder>>
|
|
338
|
-
: ParserError<'Expected embedded resource after `!hint`'>
|
|
339
|
-
: ParserError<'Expected identifier after `!`'>
|
|
340
|
-
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends [
|
|
341
|
-
infer Fields,
|
|
342
|
-
`${infer Remainder}`
|
|
343
|
-
]
|
|
344
|
-
? // `renamed_field:field(nodes)`
|
|
345
|
-
[{ name: Name; original: OriginalName; children: Fields }, EatWhitespace<Remainder>]
|
|
346
|
-
: ParseJsonAccessor<EatWhitespace<Remainder>> extends [
|
|
347
|
-
infer _PropertyName,
|
|
348
|
-
infer PropertyType,
|
|
349
|
-
`${infer Remainder}`
|
|
350
|
-
]
|
|
351
|
-
? // `renamed_field:field->json...`
|
|
352
|
-
[{ name: Name; type: PropertyType }, EatWhitespace<Remainder>]
|
|
353
|
-
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string>
|
|
354
|
-
? ParseEmbeddedResource<EatWhitespace<Remainder>>
|
|
355
|
-
: // `renamed_field:field`
|
|
356
|
-
[{ name: Name; original: OriginalName }, EatWhitespace<Remainder>]
|
|
357
|
-
: ParseIdentifier<EatWhitespace<Remainder>>
|
|
358
381
|
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`]
|
|
359
382
|
? // `field(nodes)`
|
|
360
383
|
[{ name: Name; original: Name; children: Fields }, EatWhitespace<Remainder>]
|
|
@@ -364,13 +387,56 @@ type ParseNode<Input extends string> = Input extends ''
|
|
|
364
387
|
`${infer Remainder}`
|
|
365
388
|
]
|
|
366
389
|
? // `field->json...`
|
|
367
|
-
[{ name: PropertyName; type: PropertyType }, EatWhitespace<Remainder>]
|
|
390
|
+
[{ name: PropertyName; original: PropertyName; type: PropertyType }, EatWhitespace<Remainder>]
|
|
368
391
|
: ParseEmbeddedResource<EatWhitespace<Remainder>> extends ParserError<string>
|
|
369
392
|
? ParseEmbeddedResource<EatWhitespace<Remainder>>
|
|
393
|
+
: EatWhitespace<Remainder> extends `::${infer Remainder}`
|
|
394
|
+
? ParseIdentifier<Remainder> extends [`${infer CastType}`, `${infer Remainder}`]
|
|
395
|
+
? // `field::type`
|
|
396
|
+
CastType extends PostgreSQLTypes
|
|
397
|
+
? [{ name: Name; type: TypeScriptTypes<CastType> }, EatWhitespace<Remainder>]
|
|
398
|
+
: ParserError<`Invalid type for \`::\` operator \`${CastType}\``>
|
|
399
|
+
: ParserError<`Invalid type for \`::\` operator at \`${Remainder}\``>
|
|
370
400
|
: // `field`
|
|
371
401
|
[{ name: Name; original: Name }, EatWhitespace<Remainder>]
|
|
372
402
|
: ParserError<`Expected identifier at \`${Input}\``>
|
|
373
403
|
|
|
404
|
+
/**
|
|
405
|
+
* Parses a node.
|
|
406
|
+
* A node is one of the following:
|
|
407
|
+
* - `*`
|
|
408
|
+
* - a field, as defined above
|
|
409
|
+
* - a renamed field, `renamed_field:field`
|
|
410
|
+
* - a spread field, `...field`
|
|
411
|
+
*/
|
|
412
|
+
type ParseNode<Input extends string> = Input extends ''
|
|
413
|
+
? ParserError<'Empty string'>
|
|
414
|
+
: // `*`
|
|
415
|
+
Input extends `*${infer Remainder}`
|
|
416
|
+
? [{ star: true }, EatWhitespace<Remainder>]
|
|
417
|
+
: // `...field`
|
|
418
|
+
Input extends `...${infer Remainder}`
|
|
419
|
+
? ParseField<EatWhitespace<Remainder>> extends [infer Field, `${infer Remainder}`]
|
|
420
|
+
? Field extends { children: unknown[] }
|
|
421
|
+
? [Prettify<{ spread: true } & Field>, EatWhitespace<Remainder>]
|
|
422
|
+
: ParserError<'Unable to parse spread resource'>
|
|
423
|
+
: ParserError<'Unable to parse spread resource'>
|
|
424
|
+
: ParseIdentifier<Input> extends [infer Name, `${infer Remainder}`]
|
|
425
|
+
? EatWhitespace<Remainder> extends `::${infer _Remainder}`
|
|
426
|
+
? // `field::`
|
|
427
|
+
// Special case to detect type-casting before renaming.
|
|
428
|
+
ParseField<Input>
|
|
429
|
+
: EatWhitespace<Remainder> extends `:${infer Remainder}`
|
|
430
|
+
? // `renamed_field:`
|
|
431
|
+
ParseField<EatWhitespace<Remainder>> extends [infer Field, `${infer Remainder}`]
|
|
432
|
+
? Field extends { name: string }
|
|
433
|
+
? [Prettify<Omit<Field, 'name'> & { name: Name }>, EatWhitespace<Remainder>]
|
|
434
|
+
: ParserError<`Unable to parse renamed field`>
|
|
435
|
+
: ParserError<`Unable to parse renamed field`>
|
|
436
|
+
: // Otherwise, just parse it as a field without renaming.
|
|
437
|
+
ParseField<Input>
|
|
438
|
+
: ParserError<`Expected identifier at \`${Input}\``>
|
|
439
|
+
|
|
374
440
|
/**
|
|
375
441
|
* Parses a JSON property accessor of the shape `->a->b->c`. The last accessor in
|
|
376
442
|
* the series may convert to text by using the ->> operator instead of ->.
|
|
@@ -396,7 +462,7 @@ type ParseJsonAccessor<Input extends string> = Input extends `->${infer Remainde
|
|
|
396
462
|
|
|
397
463
|
/**
|
|
398
464
|
* Parses an embedded resource, which is an opening `(`, followed by a sequence of
|
|
399
|
-
* nodes
|
|
465
|
+
* 0 or more nodes separated by `,`, then a closing `)`.
|
|
400
466
|
*
|
|
401
467
|
* Returns a tuple of ["Parsed fields", "Remainder of text"], an error,
|
|
402
468
|
* or the original string input indicating that no opening `(` was found.
|
|
@@ -404,11 +470,14 @@ type ParseJsonAccessor<Input extends string> = Input extends `->${infer Remainde
|
|
|
404
470
|
type ParseEmbeddedResource<Input extends string> = Input extends `(${infer Remainder}`
|
|
405
471
|
? ParseNodes<EatWhitespace<Remainder>> extends [infer Fields, `${infer Remainder}`]
|
|
406
472
|
? EatWhitespace<Remainder> extends `)${infer Remainder}`
|
|
407
|
-
? Fields
|
|
408
|
-
? ParserError<'Expected fields after `(`'>
|
|
409
|
-
: [Fields, EatWhitespace<Remainder>]
|
|
473
|
+
? [Fields, EatWhitespace<Remainder>]
|
|
410
474
|
: ParserError<`Expected ")"`>
|
|
411
|
-
:
|
|
475
|
+
: // If no nodes were detected, check for `)` for empty embedded resources `()`.
|
|
476
|
+
ParseNodes<EatWhitespace<Remainder>> extends ParserError<string>
|
|
477
|
+
? EatWhitespace<Remainder> extends `)${infer Remainder}`
|
|
478
|
+
? [[], EatWhitespace<Remainder>]
|
|
479
|
+
: ParseNodes<EatWhitespace<Remainder>>
|
|
480
|
+
: ParserError<'Expected embedded resource fields or `)`'>
|
|
412
481
|
: Input
|
|
413
482
|
|
|
414
483
|
/**
|
|
@@ -482,7 +551,9 @@ type GetResultHelper<
|
|
|
482
551
|
/**
|
|
483
552
|
* Constructs a type definition for an object based on a given PostgREST query.
|
|
484
553
|
*
|
|
485
|
-
* @param
|
|
554
|
+
* @param Schema Database schema.
|
|
555
|
+
* @param Row Type of a row in the given table.
|
|
556
|
+
* @param Relationships Relationships between different tables in the database.
|
|
486
557
|
* @param Query Select query string literal to parse.
|
|
487
558
|
*/
|
|
488
559
|
export type GetResult<
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '1.
|
|
1
|
+
export const version = '1.12.0'
|