@kuindji/typed-sql 0.1.0 → 0.2.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/README.md +7 -0
- package/dist/builder/assemble.d.ts.map +1 -1
- package/dist/builder/assemble.js +9 -10
- package/dist/builder/assemble.js.map +1 -1
- package/dist/builder/conditional-sql.d.ts +7 -2
- package/dist/builder/conditional-sql.d.ts.map +1 -1
- package/dist/builder/conditional-sql.js +9 -22
- package/dist/builder/conditional-sql.js.map +1 -1
- package/dist/builder/params.d.ts +2 -1
- package/dist/builder/params.d.ts.map +1 -1
- package/dist/builder/params.js +34 -27
- package/dist/builder/params.js.map +1 -1
- package/dist/builder/select.d.ts +7 -0
- package/dist/builder/select.d.ts.map +1 -1
- package/dist/builder/select.js +7 -2
- package/dist/builder/select.js.map +1 -1
- package/dist/builder/state.d.ts +3 -6
- package/dist/builder/state.d.ts.map +1 -1
- package/dist/builder/state.js +1 -2
- package/dist/builder/state.js.map +1 -1
- package/dist/expressions.d.ts +1 -1
- package/dist/expressions.d.ts.map +1 -1
- package/dist/parsing/extract.d.ts +2 -1
- package/dist/parsing/extract.d.ts.map +1 -1
- package/dist/parsing/normalize.d.ts +4 -3
- package/dist/parsing/normalize.d.ts.map +1 -1
- package/dist/parsing/pg-literals.d.ts +2 -2
- package/dist/parsing/pg-literals.d.ts.map +1 -1
- package/dist/parsing/tokenize.d.ts +8 -6
- package/dist/parsing/tokenize.d.ts.map +1 -1
- package/dist/validation/dispatch.d.ts +3 -1
- package/dist/validation/dispatch.d.ts.map +1 -1
- package/dist/validation/validate-columns.d.ts +1 -1
- package/dist/validation/validate-columns.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/builder/assemble.ts +9 -13
- package/src/builder/conditional-sql.ts +9 -27
- package/src/builder/params.ts +33 -27
- package/src/builder/select.ts +19 -2
- package/src/builder/state.ts +4 -6
- package/src/expressions.ts +8 -1
- package/src/parsing/extract.ts +18 -4
- package/src/parsing/normalize.ts +83 -46
- package/src/parsing/pg-literals.ts +23 -12
- package/src/parsing/tokenize.ts +56 -23
- package/src/validation/dispatch.ts +21 -3
- package/src/validation/validate-columns.ts +13 -7
package/README.md
CHANGED
|
@@ -103,6 +103,13 @@ const q = createSelectQuery<Schema>()
|
|
|
103
103
|
q.toString(); // "SELECT u.id FROM users u WHERE u.id = $1"
|
|
104
104
|
[...q.getParams()]; // [42] ← named params expanded to $1, $2… in order
|
|
105
105
|
|
|
106
|
+
// DISTINCT / DISTINCT ON (PostgreSQL). Neither changes the inferred row shape.
|
|
107
|
+
createSelectQuery<Schema>().from("users u").select("u.id").distinct().toString();
|
|
108
|
+
// "SELECT DISTINCT u.id FROM users u"
|
|
109
|
+
createSelectQuery<Schema>()
|
|
110
|
+
.from("users u").select("u.id").distinctOn("u.email").orderBy("u.email").toString();
|
|
111
|
+
// "SELECT DISTINCT ON (u.email) u.id FROM users u ORDER BY u.email"
|
|
112
|
+
|
|
106
113
|
// Wire YOUR driver. The library never touches the DB itself.
|
|
107
114
|
const select = createSelectFn<Schema>((sql, params) => pg.query(sql, params));
|
|
108
115
|
const rows = await select(q); // rows typed from the builder's inferred result
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assemble.d.ts","sourceRoot":"","sources":["../../src/builder/assemble.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"assemble.d.ts","sourceRoot":"","sources":["../../src/builder/assemble.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAiFnE"}
|
package/dist/builder/assemble.js
CHANGED
|
@@ -12,14 +12,16 @@ import { expandNamedParams } from "./params.js";
|
|
|
12
12
|
*/
|
|
13
13
|
export function assembleSelectSQL(state) {
|
|
14
14
|
const parts = [];
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
// `SELECT` / `SELECT DISTINCT` / `SELECT DISTINCT ON (...)` prefix, shared
|
|
16
|
+
// by the projected and `*` paths.
|
|
17
|
+
const distinctPrefix = state.distinctOn
|
|
18
|
+
? `SELECT DISTINCT ON (${state.distinctOn})`
|
|
19
|
+
: state.distinct
|
|
20
|
+
? "SELECT DISTINCT"
|
|
21
|
+
: "SELECT";
|
|
20
22
|
const selectIds = Object.keys(state.selectSql);
|
|
21
23
|
if (selectIds.length === 0) {
|
|
22
|
-
parts.push(
|
|
24
|
+
parts.push(`${distinctPrefix} *`);
|
|
23
25
|
}
|
|
24
26
|
else {
|
|
25
27
|
const selectFragments = [];
|
|
@@ -32,7 +34,7 @@ export function assembleSelectSQL(state) {
|
|
|
32
34
|
const selectSql = selectFragments.length > 0
|
|
33
35
|
? selectFragments.join(", ")
|
|
34
36
|
: "*";
|
|
35
|
-
parts.push(
|
|
37
|
+
parts.push(`${distinctPrefix} ${selectSql}`);
|
|
36
38
|
}
|
|
37
39
|
if (state.fromSql) {
|
|
38
40
|
parts.push(`FROM ${state.fromSql}`);
|
|
@@ -73,9 +75,6 @@ export function assembleSelectSQL(state) {
|
|
|
73
75
|
if (typeof state.offset === "number") {
|
|
74
76
|
parts.push(`OFFSET ${state.offset}`);
|
|
75
77
|
}
|
|
76
|
-
if (state.unionSql) {
|
|
77
|
-
parts.push(state.unionSql);
|
|
78
|
-
}
|
|
79
78
|
const sql = parts.join(" ");
|
|
80
79
|
const namedParams = state.namedParams;
|
|
81
80
|
if (namedParams && Object.keys(namedParams).length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assemble.js","sourceRoot":"","sources":["../../src/builder/assemble.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAyB;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,
|
|
1
|
+
{"version":3,"file":"assemble.js","sourceRoot":"","sources":["../../src/builder/assemble.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DatabaseSchema } from "../schema.js";
|
|
2
2
|
import type { GetReturnType, ValidateSQL } from "../index.js";
|
|
3
|
-
import type
|
|
3
|
+
import { type QueryParamValue } from "./params.js";
|
|
4
4
|
export interface ConditionalSQLOptions {
|
|
5
5
|
/** If true, preserves conditional comment markers in output (debugging). */
|
|
6
6
|
preserveMarkers?: boolean;
|
|
@@ -13,7 +13,12 @@ export interface ConditionalSQLOutput {
|
|
|
13
13
|
}
|
|
14
14
|
/** Process conditional blocks in a SQL template (innermost-first, iterative). */
|
|
15
15
|
export declare function processConditionalSQL(template: string, conditions: Record<string, unknown>): string;
|
|
16
|
-
/**
|
|
16
|
+
/**
|
|
17
|
+
* Convert :name placeholders to positional $n; return processed SQL + values.
|
|
18
|
+
* Delegates to the shared scanner-backed expander (params.ts) so a `:name`
|
|
19
|
+
* inside a string literal, comment, or `::cast` is left alone, and a used param
|
|
20
|
+
* whose value is `undefined` throws instead of silently passing through.
|
|
21
|
+
*/
|
|
17
22
|
export declare function processParams(sql: string, params: Record<string, QueryParamValue>): ConditionalSQLOutput;
|
|
18
23
|
/** Process a template with both conditions and parameters. */
|
|
19
24
|
export declare function conditionalSQL(template: string, conditions: Record<string, unknown>, params?: Record<string, QueryParamValue>): ConditionalSQLOutput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditional-sql.d.ts","sourceRoot":"","sources":["../../src/builder/conditional-sql.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"conditional-sql.d.ts","sourceRoot":"","sources":["../../src/builder/conditional-sql.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { collectParamValues, expandNamedParams } from "./params.js";
|
|
1
2
|
/** Get a nested value from an object using dot notation. */
|
|
2
3
|
function getNestedValue(obj, path) {
|
|
3
4
|
const keys = path.split(".");
|
|
@@ -33,30 +34,16 @@ export function processConditionalSQL(template, conditions) {
|
|
|
33
34
|
}
|
|
34
35
|
return result;
|
|
35
36
|
}
|
|
36
|
-
/**
|
|
37
|
+
/**
|
|
38
|
+
* Convert :name placeholders to positional $n; return processed SQL + values.
|
|
39
|
+
* Delegates to the shared scanner-backed expander (params.ts) so a `:name`
|
|
40
|
+
* inside a string literal, comment, or `::cast` is left alone, and a used param
|
|
41
|
+
* whose value is `undefined` throws instead of silently passing through.
|
|
42
|
+
*/
|
|
37
43
|
export function processParams(sql, params) {
|
|
38
|
-
// Find all param references in order of first appearance.
|
|
39
|
-
const paramRegex = /:([a-zA-Z_][a-zA-Z0-9_]*)(?![a-zA-Z0-9_])/g;
|
|
40
|
-
const usedParams = [];
|
|
41
|
-
let match;
|
|
42
|
-
while ((match = paramRegex.exec(sql)) !== null) {
|
|
43
|
-
const name = match[1];
|
|
44
|
-
if (name in params && !usedParams.includes(name)) {
|
|
45
|
-
usedParams.push(name);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
// Replace each param with positional placeholder.
|
|
49
|
-
let processedSql = sql;
|
|
50
|
-
for (let i = 0; i < usedParams.length; i++) {
|
|
51
|
-
const name = usedParams[i];
|
|
52
|
-
const regex = new RegExp(`:${name}(?![a-zA-Z0-9_])`, "g");
|
|
53
|
-
processedSql = processedSql.replace(regex, `$${i + 1}`);
|
|
54
|
-
}
|
|
55
|
-
// Extract param values in order.
|
|
56
|
-
const paramValues = usedParams.map(name => params[name]);
|
|
57
44
|
return {
|
|
58
|
-
sql:
|
|
59
|
-
params:
|
|
45
|
+
sql: expandNamedParams(sql, params),
|
|
46
|
+
params: collectParamValues(sql, params),
|
|
60
47
|
};
|
|
61
48
|
}
|
|
62
49
|
/** Process a template with both conditions and parameters. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditional-sql.js","sourceRoot":"","sources":["../../src/builder/conditional-sql.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"conditional-sql.js","sourceRoot":"","sources":["../../src/builder/conditional-sql.ts"],"names":[],"mappings":"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"}
|
package/dist/builder/params.d.ts
CHANGED
|
@@ -11,7 +11,8 @@ export type QueryParamValue = string | number | boolean | null;
|
|
|
11
11
|
export type QueryParamInput = QueryParamValue | readonly QueryParamValue[] | undefined;
|
|
12
12
|
/**
|
|
13
13
|
* Replace :name placeholders with $n positional placeholders, ordered by
|
|
14
|
-
* first appearance. Array values expand to consecutive placeholders.
|
|
14
|
+
* first appearance. Array values expand to consecutive placeholders. A `:name`
|
|
15
|
+
* inside a string literal / comment / `::cast` is not a placeholder.
|
|
15
16
|
*/
|
|
16
17
|
export declare function expandNamedParams(sql: string, params: Record<string, QueryParamInput>): string;
|
|
17
18
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/builder/params.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/builder/params.ts"],"names":[],"mappings":"AAGA,gEAAgE;AAChE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAE/D;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GACrB,eAAe,GACf,SAAS,eAAe,EAAE,GAC1B,SAAS,CAAC;AAuBhB;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC7B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GACxC,MAAM,CAyBR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAC9B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GACxC,eAAe,EAAE,CAkBnB"}
|
package/dist/builder/params.js
CHANGED
|
@@ -1,43 +1,50 @@
|
|
|
1
1
|
// src/builder/params.ts
|
|
2
|
-
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
|
|
2
|
+
import { scanPlaceholders } from "./scanner.js";
|
|
3
|
+
// Placeholder detection is delegated to the shared scanner (scanner.ts), so the
|
|
4
|
+
// SELECT / conditional-SQL path skips string literals, comments, dollar-quotes,
|
|
5
|
+
// and `::cast` types exactly like the write builders — a single source of truth
|
|
6
|
+
// for what counts as a real `:name`. Array values still expand UNCONDITIONALLY
|
|
7
|
+
// here (any position), which is the builder's long-standing semantics and
|
|
8
|
+
// differs from the scanner's IN-list-gated expansion used by createSql/mutate.
|
|
6
9
|
/** Param names in order of first appearance that are present in `params`. */
|
|
7
|
-
function usedParamNames(
|
|
10
|
+
function usedParamNames(occ, params) {
|
|
8
11
|
const used = [];
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const name = match[1];
|
|
13
|
-
if (name in params && !used.includes(name)) {
|
|
14
|
-
used.push(name);
|
|
12
|
+
for (const o of occ) {
|
|
13
|
+
if (o.name in params && !used.includes(o.name)) {
|
|
14
|
+
used.push(o.name);
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
return used;
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
20
|
* Replace :name placeholders with $n positional placeholders, ordered by
|
|
21
|
-
* first appearance. Array values expand to consecutive placeholders.
|
|
21
|
+
* first appearance. Array values expand to consecutive placeholders. A `:name`
|
|
22
|
+
* inside a string literal / comment / `::cast` is not a placeholder.
|
|
22
23
|
*/
|
|
23
24
|
export function expandNamedParams(sql, params) {
|
|
24
|
-
const
|
|
25
|
-
|
|
25
|
+
const occ = scanPlaceholders(sql);
|
|
26
|
+
const used = usedParamNames(occ, params);
|
|
27
|
+
// First-appearance starting position for each used name; arrays reserve a
|
|
28
|
+
// contiguous block, repeats reuse the same block.
|
|
29
|
+
const startPos = new Map();
|
|
26
30
|
let position = 1;
|
|
27
31
|
for (const name of used) {
|
|
32
|
+
startPos.set(name, position);
|
|
28
33
|
const value = params[name];
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
position += Array.isArray(value) ? value.length : 1;
|
|
35
|
+
}
|
|
36
|
+
// Rewrite right-to-left so earlier indices stay valid as we splice.
|
|
37
|
+
let out = sql;
|
|
38
|
+
for (let k = occ.length - 1; k >= 0; k--) {
|
|
39
|
+
const o = occ[k];
|
|
40
|
+
const p = startPos.get(o.name);
|
|
41
|
+
if (p === undefined)
|
|
42
|
+
continue; // not provided → left as literal :name
|
|
43
|
+
const value = params[o.name];
|
|
44
|
+
const replacement = Array.isArray(value)
|
|
45
|
+
? value.map((_, i) => `$${p + i}`).join(", ")
|
|
46
|
+
: `$${p}`;
|
|
47
|
+
out = out.slice(0, o.start) + replacement + out.slice(o.end);
|
|
41
48
|
}
|
|
42
49
|
return out;
|
|
43
50
|
}
|
|
@@ -46,7 +53,7 @@ export function expandNamedParams(sql, params) {
|
|
|
46
53
|
* value is undefined.
|
|
47
54
|
*/
|
|
48
55
|
export function collectParamValues(sql, params) {
|
|
49
|
-
const used = usedParamNames(sql, params);
|
|
56
|
+
const used = usedParamNames(scanPlaceholders(sql), params);
|
|
50
57
|
const result = [];
|
|
51
58
|
for (const name of used) {
|
|
52
59
|
const value = params[name];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/builder/params.ts"],"names":[],"mappings":"AAAA,wBAAwB;
|
|
1
|
+
{"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/builder/params.ts"],"names":[],"mappings":"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"}
|
package/dist/builder/select.d.ts
CHANGED
|
@@ -43,6 +43,13 @@ export interface SelectQueryBuilder<Schema extends DatabaseSchema, Sql extends S
|
|
|
43
43
|
havingIf<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>(condition: boolean, clause: Cond, id?: Id): SelectQueryBuilder<Schema, WithHaving<Sql, CondText<Cond>, ResolveId<Id, "having", Sql["havings"]>>>;
|
|
44
44
|
orderBy<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithOrderBy<Sql, ColsText<Cols>, ResolveId<Id, "order", Sql["orderBys"]>>>;
|
|
45
45
|
orderByIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(condition: boolean, columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithOrderBy<Sql, ColsText<Cols>, ResolveId<Id, "order", Sql["orderBys"]>>>;
|
|
46
|
+
/** Emit `SELECT DISTINCT`. Does not change the result column set. */
|
|
47
|
+
distinct(): SelectQueryBuilder<Schema, Sql>;
|
|
48
|
+
/**
|
|
49
|
+
* Emit `SELECT DISTINCT ON (columns)` (PostgreSQL). Does not change the
|
|
50
|
+
* result column set; pair with a matching ORDER BY for deterministic rows.
|
|
51
|
+
*/
|
|
52
|
+
distinctOn<const Cols extends string | readonly string[]>(columns: Cols): SelectQueryBuilder<Schema, Sql>;
|
|
46
53
|
limit<const L extends number>(limit: L): SelectQueryBuilder<Schema, WithLimit<Sql, L>>;
|
|
47
54
|
limitIf<const L extends number>(condition: boolean, limit: L): SelectQueryBuilder<Schema, WithLimit<Sql, L>>;
|
|
48
55
|
offset<const O extends number>(offset: O): SelectQueryBuilder<Schema, WithOffset<Sql, O>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"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"}
|
package/dist/builder/select.js
CHANGED
|
@@ -103,6 +103,13 @@ class SelectQueryBuilderImpl {
|
|
|
103
103
|
orderByIf(condition, columns, id) {
|
|
104
104
|
return condition ? this.orderBy(columns, id) : this.next(this._state);
|
|
105
105
|
}
|
|
106
|
+
distinct() {
|
|
107
|
+
return this.next(this.clone({ distinct: true }));
|
|
108
|
+
}
|
|
109
|
+
distinctOn(columns) {
|
|
110
|
+
const cols = Array.isArray(columns) ? columns.join(", ") : columns;
|
|
111
|
+
return this.next(this.clone({ distinctOn: cols }));
|
|
112
|
+
}
|
|
106
113
|
limit(limit) {
|
|
107
114
|
return this.next(this.clone({ limit }));
|
|
108
115
|
}
|
|
@@ -223,7 +230,6 @@ class SelectQueryBuilderImpl {
|
|
|
223
230
|
// getParams scans fragments joined by " " BEFORE $n substitution).
|
|
224
231
|
function assembleSelectSQLPreSub(state) {
|
|
225
232
|
return [
|
|
226
|
-
...Object.values(state.cteSql),
|
|
227
233
|
...Object.values(state.selectSql).flat(),
|
|
228
234
|
state.fromSql ?? "",
|
|
229
235
|
...Object.values(state.joinSql),
|
|
@@ -231,7 +237,6 @@ function assembleSelectSQLPreSub(state) {
|
|
|
231
237
|
...Object.values(state.groupBySql),
|
|
232
238
|
...Object.values(state.havingSql),
|
|
233
239
|
...Object.values(state.orderBySql),
|
|
234
|
-
state.unionSql ?? "",
|
|
235
240
|
].join(" ");
|
|
236
241
|
}
|
|
237
242
|
export function createSelectQuery() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAA8C,MAAM,aAAa,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAA2B,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AA6M3D,6EAA6E;AAC7E,8CAA8C;AAE9C,MAAM,sBAAsB;IACf,MAAM,CAAqB;IAEpC,YAAY,KAA0B;QAClC,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,mBAAmB,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,KAAkC;QAC5C,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACxC,CAAC;IAEO,IAAI,CAAC,KAAyB;QAClC,OAAO,IAAI,sBAAsB,CAAc,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,OAAmC,EAAE,EAAW;QACnD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;QAC5E,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,EAAE,IAAI,UAAU,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;SACvD,CAAC,CAAC,CAAC;IACR,CAAC;IAED,QAAQ,CAAC,SAAkB,EAAE,OAAmC,EAAE,EAAW;QACzE,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,CAAC,MAAoF;QACrF,IAAI,OAAe,CAAC;QACpB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,GAAG,MAAM,CAAC;QACrB,CAAC;aACI,CAAC;YACF,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CACX,sEAAsE;oBACtE,qEAAqE;oBACrE,uDAAuD,CAC1D,CAAC;YACN,CAAC;YACD,OAAO,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC;QACvC,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,SAAkD,EAAE,EAAW;QACjE,oEAAoE;QACpE,oEAAoE;QACpE,iDAAiD;QACjD,IAAI,SAAS,YAAY,oBAAoB,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YACnE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QACtE,MAAM,GAAG,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC7E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,OAAO,CAAC,SAAkB,EAAE,MAA+C,EAAE,EAAW;QACpF,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,EAAW;QAC7B,MAAM,GAAG,GAAG,EAAE,IAAI,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACrD,uEAAuE;QACvE,qEAAqE;QACrE,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACrF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE;YACnD,KAAK,EAAE,SAAS;SACnB,CAAC,CAAC,CAAC;IACR,CAAC;IAED,MAAM,CAAC,SAAkB,EAAE,OAAe,EAAE,EAAW;QACnD,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,CAAC,OAAmC,EAAE,EAAW;QACpD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;QAC5E,MAAM,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,UAAU,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACvE,CAAC,CAAC,CAAC;IACR,CAAC;IAED,SAAS,CAAC,SAAkB,EAAE,OAAmC,EAAE,EAAW;QAC1E,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,CAAC,SAAkD,EAAE,EAAW;QAClE,+DAA+D;QAC/D,uDAAuD;QACvD,IAAI,SAAS,YAAY,oBAAoB,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YACnE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,IAAI,UAAU,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;QACxE,MAAM,GAAG,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC7E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,QAAQ,CAAC,SAAkB,EAAE,MAA+C,EAAE,EAAW;QACrF,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CAAC,OAAmC,EAAE,EAAW;QACpD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;QAC5E,MAAM,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,UAAU,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACvE,CAAC,CAAC,CAAC;IACR,CAAC;IAED,SAAS,CAAC,SAAkB,EAAE,OAAmC,EAAE,EAAW;QAC1E,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,UAAU,CAAC,OAAmC;QAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,OAAkB,CAAC;QAC/E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,KAAa;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,CAAC,SAAkB,EAAE,KAAa;QACrC,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,CAAC,MAAc;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,QAAQ,CAAC,SAAkB,EAAE,MAAc;QACvC,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC;IAED,YAAY,CAAC,EAAU;QACnB,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACnD,IAAI,CAAC,CAAC,EAAE,IAAI,aAAa,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,OAAQ,aAAqB,CAAC,EAAE,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,UAAU,CAAC,EAAU;QACjB,MAAM,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAG,EAAE,IAAI,WAAW,CAAC;QACjC,OAAQ,WAAmB,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,WAAW,CAAC,EAAU;QAClB,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACjD,IAAI,CAAC,CAAC,EAAE,IAAI,YAAY,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,OAAQ,YAAoB,CAAC,EAAE,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,aAAa,CAAC,EAAU;QACpB,MAAM,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACrD,IAAI,CAAC,CAAC,EAAE,IAAI,cAAc,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,OAAQ,cAAsB,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,YAAY,CAAC,EAAU;QACnB,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACnD,IAAI,CAAC,CAAC,EAAE,IAAI,aAAa,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,OAAQ,aAAqB,CAAC,EAAE,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,aAAa,CAAC,EAAU;QACpB,MAAM,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACrD,IAAI,CAAC,CAAC,EAAE,IAAI,cAAc,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,OAAQ,cAAsB,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,0DAA0D;IAC1D,SAAS,CAAC,EAAU;QAChB,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,EAAU;QACd,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IACrC,CAAC;IACD,QAAQ,CAAC,EAAU;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IACtC,CAAC;IACD,UAAU,CAAC,EAAU;QACjB,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IACxC,CAAC;IACD,SAAS,CAAC,EAAU;QAChB,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IACvC,CAAC;IACD,UAAU,CAAC,EAAU;QACjB,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IACxC,CAAC;IACD,OAAO;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC;IAC7C,CAAC;IACD,QAAQ;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC;IAC3C,CAAC;IACD,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC;IAC5C,CAAC;IAED,UAAU,CAAC,MAAuC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,WAAW,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,MAAM,EAAE;SACzD,CAAC,CAAC,CAAC;IACR,CAAC;IAED,KAAK,CAAC,EAAmB;QACrB,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,SAAkB,EAAE,EAAmB;QAC3C,OAAO,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvC,CAAC;IAED,SAAS;QACL,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC5C,IAAI,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrD,MAAM,GAAG,GAAG,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,OAAO,kBAAkB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,QAAQ;QACJ,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,eAAe;QACX,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;CACJ;AAED,gFAAgF;AAChF,mEAAmE;AACnE,SAAS,uBAAuB,CAAC,KAAyB;IACtD,OAAO;QACH,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE;QACxC,KAAK,CAAC,OAAO,IAAI,EAAE;QACnB,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QAC/B,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;QAChC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;QAClC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;QACjC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;KACrC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC7B,OAAO,IAAI,sBAAsB,CAAsB,mBAAmB,CAAuD,CAAC;AACtI,CAAC"}
|
package/dist/builder/state.d.ts
CHANGED
|
@@ -35,13 +35,10 @@ export interface RuntimeSelectState {
|
|
|
35
35
|
readonly orderBySql: {
|
|
36
36
|
readonly [id: string]: string;
|
|
37
37
|
};
|
|
38
|
-
/**
|
|
39
|
-
readonly cteSql: {
|
|
40
|
-
readonly [id: string]: string;
|
|
41
|
-
};
|
|
42
|
-
/** Raw UNION fragment (if any). */
|
|
43
|
-
readonly unionSql?: string;
|
|
38
|
+
/** SELECT DISTINCT when true (ignored if `distinctOn` is set). */
|
|
44
39
|
readonly distinct: boolean;
|
|
40
|
+
/** SELECT DISTINCT ON (...) expression list, if set (already joined). */
|
|
41
|
+
readonly distinctOn?: string;
|
|
45
42
|
readonly limit?: number;
|
|
46
43
|
readonly offset?: number;
|
|
47
44
|
/** Legacy positional params (kept for getParams() fallback). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/builder/state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpE;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,uEAAuE;IACvE,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;IACxD,sCAAsC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,gCAAgC;IAChC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACpD,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACrD,uDAAuD;IACvD,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvD,oDAAoD;IACpD,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACtD,uDAAuD;IACvD,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvD
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/builder/state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpE;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,uEAAuE;IACvE,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;IACxD,sCAAsC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,gCAAgC;IAChC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACpD,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACrD,uDAAuD;IACvD,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvD,oDAAoD;IACpD,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACtD,uDAAuD;IACvD,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvD,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,yEAAyE;IACzE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IAChD,0DAA0D;IAC1D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CACzD;AAED,eAAO,MAAM,mBAAmB,EAAE,kBAejC,CAAC"}
|
package/dist/builder/state.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/builder/state.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/builder/state.ts"],"names":[],"mappings":"AAqCA,MAAM,CAAC,MAAM,mBAAmB,GAAuB;IACnD,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,EAAE;IACb,UAAU,EAAE,EAAE;IACd,QAAQ,EAAE,KAAK;IACf,UAAU,EAAE,SAAS;IACrB,KAAK,EAAE,SAAS;IAChB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,EAAE;IACV,WAAW,EAAE,EAAE;CAClB,CAAC"}
|
package/dist/expressions.d.ts
CHANGED
|
@@ -30,7 +30,7 @@ export type MaybeNullableRow<Row, Qualifier extends string, Nullable extends str
|
|
|
30
30
|
export type ExprKey<E extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema> = CleanIdent<E> extends "*" ? never : CleanIdent<E> extends `${infer T}.*` ? never : CleanExpr<E> extends `${infer Inner}::${string}` ? ColumnKeyFromExpr<Inner, Tables, Aliases, S> : CleanExpr<E> extends `cast(${infer Inner} as ${string})` ? ColumnKeyFromExpr<Inner, Tables, Aliases, S> : CleanExpr<E> extends `cast (${infer Inner} as ${string})` ? ColumnKeyFromExpr<Inner, Tables, Aliases, S> : [ColumnKeyFromExpr<E, Tables, Aliases, S>] extends [never] ? FunctionKeyFromExpr<E> : ColumnKeyFromExpr<E, Tables, Aliases, S>;
|
|
31
31
|
export type ColumnKeyFromExpr<E extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema> = ParseColumnRef<CleanExpr<E>, Tables, Aliases, S> extends infer Ref ? Ref extends ColumnRef<any, any> ? Ref["column"] : never : never;
|
|
32
32
|
export type FunctionKeyFromExpr<E extends string> = CleanExpr<E> extends `case ${string}` ? "case" : CleanExpr<E> extends `${infer Func}(${string}` ? CleanIdent<Func> : CleanExpr<E> extends `${infer Func} (${string}` ? CleanIdent<Func> : never;
|
|
33
|
-
export type IsBoolExpr<CE extends string> = CE extends `case ${string}` ? false : HasTopLevelCompare<CE
|
|
33
|
+
export type IsBoolExpr<CE extends string> = CE extends `case ${string}` ? false : CE extends `${string}${"<" | ">" | "=" | "!"}${string}` ? HasTopLevelCompare<CE> : false;
|
|
34
34
|
export type HasTopLevelCompare<S extends string, Depth extends any[] = [], Steps extends any[] = [], InQ extends boolean = false, InDQ extends boolean = false> = Steps["length"] extends 400 ? false : S extends `${infer C}${infer Rest}` ? InQ extends true ? HasTopLevelCompare<Rest, Depth, [any, ...Steps], C extends "'" ? false : true, InDQ> : InDQ extends true ? HasTopLevelCompare<Rest, Depth, [any, ...Steps], InQ, C extends `"` ? false : true> : C extends "'" ? HasTopLevelCompare<Rest, Depth, [any, ...Steps], true, InDQ> : C extends `"` ? HasTopLevelCompare<Rest, Depth, [any, ...Steps], InQ, true> : C extends "(" ? HasTopLevelCompare<Rest, [any, ...Depth], [any, ...Steps], InQ, InDQ> : C extends ")" ? HasTopLevelCompare<Rest, Depth extends [any, ...infer D] ? D : [], [any, ...Steps], InQ, InDQ> : Depth["length"] extends 0 ? S extends `->>${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `->${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `#>>${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `#>${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `@>${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `<@${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `::${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `<<${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : S extends `>>${infer R}` ? HasTopLevelCompare<R, Depth, [any, ...Steps], InQ, InDQ> : C extends "<" | ">" | "=" | "!" ? true : HasTopLevelCompare<Rest, Depth, [any, ...Steps], InQ, InDQ> : HasTopLevelCompare<Rest, Depth, [any, ...Steps], InQ, InDQ> : false;
|
|
35
35
|
type UnwrapRedundantParens<E extends string, Steps extends any[] = []> = Steps["length"] extends 12 ? E : E extends `(select ${string})` ? E : E extends `(${string}` ? SplitBalancedParen<E> extends {
|
|
36
36
|
inner: infer Inner extends string;
|