@kuindji/typed-sql
Advanced tools
@@ -1,1 +0,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,CAkFnE"} | ||
| {"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,CAqFnE"} |
| // src/builder/assemble.ts | ||
| import { assertAllNamedParamsProvided, expandNamedParams } from "./params.js"; | ||
| import { assertAllProvided, expandScanned } from "./scanner.js"; | ||
| /** | ||
@@ -81,4 +81,7 @@ * Assemble a SQL string from runtime builder state. | ||
| if (state.namedParamsBound || Object.keys(namedParams).length > 0) { | ||
| assertAllNamedParamsProvided(sql, namedParams); | ||
| return expandNamedParams(sql, namedParams); | ||
| assertAllProvided(sql, namedParams); | ||
| // IN-list-gated expansion (spec §6.5), shared with the write builders: | ||
| // an array value only fans out to multiple `$n` slots inside `IN (...)`; | ||
| // anywhere else (e.g. `= ANY(:ids)`) it binds as a single array param. | ||
| return expandScanned(sql, namedParams); | ||
| } | ||
@@ -85,0 +88,0 @@ return sql; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"assemble.js","sourceRoot":"","sources":["../../src/builder/assemble.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"assemble.js","sourceRoot":"","sources":["../../src/builder/assemble.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGhE;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAyB;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,2EAA2E;IAC3E,kCAAkC;IAClC,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU;QACnC,CAAC,CAAC,uBAAuB,KAAK,CAAC,UAAU,GAAG;QAC5C,CAAC,CAAC,KAAK,CAAC,QAAQ;YAChB,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,QAAQ,CAAC;IAEf,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,IAAI,CAAC,CAAC;IACtC,CAAC;SACI,CAAC;QACF,MAAM,eAAe,GAAa,EAAE,CAAC;QACrC,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACjC,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QACD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC;YACxC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5B,CAAC,CAAC,GAAG,CAAC;QACV,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,IAAI,SAAS,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,GAAG,EAAE,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;SACzC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;SAC7B,MAAM,CAAC,OAAO,CAAC,CAAC;IACrB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;SAC3C,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;SAC/B,MAAM,CAAC,OAAO,CAAC,CAAC;IACrB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;SAC3C,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SAC9B,MAAM,CAAC,OAAO,CAAC,CAAC;IACrB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,UAAU,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;SAC3C,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;SAC/B,MAAM,CAAC,OAAO,CAAC,CAAC;IACrB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACtC,IAAI,KAAK,CAAC,gBAAgB,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,iBAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACpC,uEAAuE;QACvE,yEAAyE;QACzE,uEAAuE;QACvE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"} |
@@ -50,3 +50,4 @@ import type { DatabaseSchema } from "../schema.js"; | ||
| type MultiRowValuesParams<N extends string, Table extends string, S extends DatabaseSchema> = AfterValues<N> extends infer A extends string ? CollectTuples<A> extends infer R extends TupleScan ? ZipAllTuples<R["tuples"], ExtractInsertColumns<N>, Table, S> & (R["rest"] extends "" ? {} : LooseParamsSkipLit<R["rest"]>) : {} : {}; | ||
| type InsertParams<N extends string, S extends DatabaseSchema> = InsertTargetTable<N, S> extends infer Table extends string ? (IsMultiRowInsert<N> extends true ? MultiRowValuesParams<N, Table, S> : ZipInsert<ExtractInsertColumns<N>, ExtractInsertValues<N>, Table, S>) & SetParams<SplitTopLevel<ConflictSetBlock<N>>, Table, S> & WhereParamsFor<N, Table, S> : {}; | ||
| type HasValuesClause<N extends string> = N extends `${string} values (${string}` ? true : N extends `${string} values(${string}` ? true : false; | ||
| type InsertParams<N extends string, S extends DatabaseSchema> = InsertTargetTable<N, S> extends infer Table extends string ? (IsMultiRowInsert<N> extends true ? MultiRowValuesParams<N, Table, S> : HasValuesClause<N> extends true ? ZipInsert<ExtractInsertColumns<N>, ExtractInsertValues<N>, Table, S> : LooseParamsSkipLit<N>) & SetParams<SplitTopLevel<ConflictSetBlock<N>>, Table, S> & WhereParamsFor<N, Table, S> : {}; | ||
| type ExtractSetBlock<N extends string> = N extends `${string} set ${infer Rest}` ? ExtractBefore<ExtractBefore<Rest, " where ">, " returning "> : ""; | ||
@@ -53,0 +54,0 @@ type SetParams<Pairs extends readonly string[], Table extends string, S extends DatabaseSchema, Acc = {}> = Pairs extends readonly [infer P extends string, ...infer R extends string[]] ? P extends `${infer Left}=${infer Right}` ? ParamName<Right> extends infer Name ? [Name] extends [never] ? SetParams<R, Table, S, Acc & LooseParams<Right>> : Name extends string ? SetParams<R, Table, S, Acc & { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"extract-params.d.ts","sourceRoot":"","sources":["../../src/builder/extract-params.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"extract-params.d.ts","sourceRoot":"","sources":["../../src/builder/extract-params.ts"],"names":[],"mappings":"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"} |
+18
-15
| import type { DatabaseSchema } from "../schema.js"; | ||
| import { ConditionTreeBuilder } from "./condition-tree.js"; | ||
| import { type QueryParamInput, type QueryParamValue } from "./params.js"; | ||
| import { ConditionTreeBuilder } from "./condition-tree.js"; | ||
| import type { EmptySqlTag, ResolveId, SelFrag, SqlTag, WithFrom, WithGroupBy, WithHaving, WithJoin, WithLimit, WithOffset, WithOrderBy, WithSelect, WithWhere, WithoutGroupBy, WithoutHaving, WithoutJoin, WithoutOrderBy, WithoutSelect, WithoutWhere } from "./sql-tag.js"; | ||
| import type { BuilderResultBrand } from "./return-type.js"; | ||
| import type { EmptySqlTag, ResolveId, SelFrag, SqlTag, WithFrom, WithGroupBy, WithHaving, WithJoin, WithLimit, WithOffset, WithOrderBy, WithoutGroupBy, WithoutHaving, WithoutJoin, WithoutOrderBy, WithoutSelect, WithoutWhere, WithSelect, WithWhere } from "./sql-tag.js"; | ||
| type CondText<C> = C extends ConditionTreeBuilder<any, infer E extends string> ? E : C extends string ? C : string; | ||
@@ -25,3 +25,6 @@ type ColsText<Cols> = Cols extends readonly string[] ? JoinArr<Cols> : Cols extends string ? Cols : string; | ||
| }; | ||
| type FindFragById<List extends readonly SelFrag[], Id extends string> = List extends readonly [infer H extends SelFrag, ...infer R extends readonly SelFrag[]] ? H["id"] extends Id ? H : FindFragById<R, Id> : never; | ||
| type FindFragById<List extends readonly SelFrag[], Id extends string> = List extends readonly [ | ||
| infer H extends SelFrag, | ||
| ...infer R extends readonly SelFrag[] | ||
| ] ? H["id"] extends Id ? H : FindFragById<R, Id> : never; | ||
| type FragEqual<A, B> = [A] extends [B] ? ([B] extends [A] ? true : false) : false; | ||
@@ -34,15 +37,15 @@ type MarkCond<F extends SelFrag> = { | ||
| export interface SelectQueryBuilder<Schema extends DatabaseSchema, Sql extends SqlTag> { | ||
| select<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithSelect<Sql, ColsText<Cols>, ResolveId<Id, "select", Sql["selects"]>, false>>; | ||
| selectIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(condition: boolean, columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithSelect<Sql, ColsText<Cols>, ResolveId<Id, "select", Sql["selects"]>, true>>; | ||
| select<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithSelect<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>, false>>; | ||
| selectIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(condition: boolean, columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithSelect<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>, true>>; | ||
| from<Src extends string | SelectQueryBuilder<Schema, any>>(source: Src): SelectQueryBuilder<Schema, WithFrom<Sql, Src extends string ? Src : string>>; | ||
| where<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>(condition: Cond, id?: Id): SelectQueryBuilder<Schema, WithWhere<Sql, CondText<Cond>, ResolveId<Id, "where", Sql["wheres"]>>>; | ||
| whereIf<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>(condition: boolean, clause: Cond, id?: Id): SelectQueryBuilder<Schema, WithWhere<Sql, CondText<Cond>, ResolveId<Id, "where", Sql["wheres"]>>>; | ||
| join<J extends string, Id extends string | undefined = undefined>(joinSql: J, id?: Id): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, "join", Sql["joins"]>>>; | ||
| joinIf<J extends string, Id extends string | undefined = undefined>(condition: boolean, joinSql: J, id?: Id): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, "join", Sql["joins"]>>>; | ||
| groupBy<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, "group", Sql["groupBys"]>>>; | ||
| groupByIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(condition: boolean, columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, "group", Sql["groupBys"]>>>; | ||
| having<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>(condition: Cond, id?: Id): SelectQueryBuilder<Schema, WithHaving<Sql, CondText<Cond>, ResolveId<Id, "having", Sql["havings"]>>>; | ||
| 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"]>>>; | ||
| 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"]>>>; | ||
| 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"]>>>; | ||
| where<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>(condition: Cond, id?: Id): SelectQueryBuilder<Schema, WithWhere<Sql, CondText<Cond>, ResolveId<Id, CondText<Cond>>>>; | ||
| whereIf<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>(condition: boolean, clause: Cond, id?: Id): SelectQueryBuilder<Schema, WithWhere<Sql, CondText<Cond>, ResolveId<Id, CondText<Cond>>>>; | ||
| join<J extends string, Id extends string | undefined = undefined>(joinSql: J, id?: Id): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, J>>>; | ||
| joinIf<J extends string, Id extends string | undefined = undefined>(condition: boolean, joinSql: J, id?: Id): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, J>>>; | ||
| groupBy<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>>>; | ||
| groupByIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(condition: boolean, columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>>>; | ||
| having<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>(condition: Cond, id?: Id): SelectQueryBuilder<Schema, WithHaving<Sql, CondText<Cond>, ResolveId<Id, CondText<Cond>>>>; | ||
| 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, CondText<Cond>>>>; | ||
| orderBy<const Cols extends string | readonly string[], Id extends string | undefined = undefined>(columns: Cols, id?: Id): SelectQueryBuilder<Schema, WithOrderBy<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>>>; | ||
| 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, ColsText<Cols>>>>; | ||
| /** Emit `SELECT DISTINCT`. Does not change the result column set. */ | ||
@@ -49,0 +52,0 @@ distinct(): SelectQueryBuilder<Schema, Sql>; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"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"} |
+51
-31
| import { assembleSelectSQL } from "./assemble.js"; | ||
| import { assertAllNamedParamsProvided, collectParamValues } from "./params.js"; | ||
| import { ConditionTreeBuilder } from "./condition-tree.js"; | ||
| import { assertAllProvided, collectScanned } from "./scanner.js"; | ||
| import { EMPTY_RUNTIME_STATE } from "./state.js"; | ||
| import { ConditionTreeBuilder } from "./condition-tree.js"; | ||
| function nextAutoId(prefix, count, hasId) { | ||
| let idx = count; | ||
| while (hasId(`${prefix}_${idx}`)) { | ||
| idx++; | ||
| } | ||
| return `${prefix}_${idx}`; | ||
| } | ||
| // (No `DefaultId`: idless calls resolve a type-level auto id via `ResolveId` | ||
| // in each method's return type — see below.) | ||
| class SelectQueryBuilderImpl { | ||
@@ -26,5 +17,7 @@ _state; | ||
| select(columns, id) { | ||
| const rawCols = Array.isArray(columns) ? [...columns] : [columns]; | ||
| const rawCols = Array.isArray(columns) | ||
| ? [...columns] | ||
| : [columns]; | ||
| const cols = rawCols.length > 0 ? [...rawCols] : []; | ||
| const key = id ?? nextAutoId("select", Object.keys(this._state.selectSql).length, candidate => candidate in this._state.selectSql); | ||
| const key = id ?? cols.join(", "); | ||
| return this.next(this.clone({ | ||
@@ -44,5 +37,5 @@ selectSql: { ...this._state.selectSql, [key]: cols }, | ||
| if (source.getParams().length > 0) { | ||
| throw new Error("from() does not support a parameterized subquery builder: the inner " + | ||
| "builder carries params that cannot be merged into the outer query. " + | ||
| "Inline the subquery as a string or remove its params."); | ||
| throw new Error("from() does not support a parameterized subquery builder: the inner " | ||
| + "builder carries params that cannot be merged into the outer query. " | ||
| + "Inline the subquery as a string or remove its params."); | ||
| } | ||
@@ -60,4 +53,6 @@ fromSql = `(${source.toString()})`; | ||
| } | ||
| const key = id ?? nextAutoId("where", Object.keys(this._state.whereSql).length, candidate => candidate in this._state.whereSql); | ||
| const sql = typeof condition === "string" ? condition : condition.toString(); | ||
| const sql = typeof condition === "string" | ||
| ? condition | ||
| : condition.toString(); | ||
| const key = id ?? sql; | ||
| return this.next(this.clone({ whereSql: { ...this._state.whereSql, [key]: sql } })); | ||
@@ -69,3 +64,3 @@ } | ||
| join(joinSql, id) { | ||
| const key = id ?? nextAutoId("join", this._state.joins.length, candidate => this._state.joins.some(j => j.id === candidate)); | ||
| const key = id ?? joinSql; | ||
| // Idempotent by id: re-joining an existing id only replaces its SQL in | ||
@@ -75,3 +70,5 @@ // joinSql below, keeping the ordering array (and thus its FROM-chain | ||
| const existing = this._state.joins.some(j => j.id === key); | ||
| const nextJoins = existing ? this._state.joins : [...this._state.joins, { id: key }]; | ||
| const nextJoins = existing | ||
| ? this._state.joins | ||
| : [...this._state.joins, { id: key }]; | ||
| return this.next(this.clone({ | ||
@@ -86,6 +83,11 @@ joinSql: { ...this._state.joinSql, [key]: joinSql }, | ||
| groupBy(columns, id) { | ||
| const rawCols = Array.isArray(columns) ? [...columns] : [columns]; | ||
| const key = id ?? nextAutoId("group", Object.keys(this._state.groupBySql).length, candidate => candidate in this._state.groupBySql); | ||
| const rawCols = Array.isArray(columns) | ||
| ? [...columns] | ||
| : [columns]; | ||
| const key = id ?? rawCols.join(", "); | ||
| return this.next(this.clone({ | ||
| groupBySql: { ...this._state.groupBySql, [key]: rawCols.join(", ") }, | ||
| groupBySql: { | ||
| ...this._state.groupBySql, | ||
| [key]: rawCols.join(", "), | ||
| }, | ||
| })); | ||
@@ -102,4 +104,6 @@ } | ||
| } | ||
| const key = id ?? nextAutoId("having", Object.keys(this._state.havingSql).length, candidate => candidate in this._state.havingSql); | ||
| const sql = typeof condition === "string" ? condition : condition.toString(); | ||
| const sql = typeof condition === "string" | ||
| ? condition | ||
| : condition.toString(); | ||
| const key = id ?? sql; | ||
| return this.next(this.clone({ havingSql: { ...this._state.havingSql, [key]: sql } })); | ||
@@ -111,6 +115,11 @@ } | ||
| orderBy(columns, id) { | ||
| const rawCols = Array.isArray(columns) ? [...columns] : [columns]; | ||
| const key = id ?? nextAutoId("order", Object.keys(this._state.orderBySql).length, candidate => candidate in this._state.orderBySql); | ||
| const rawCols = Array.isArray(columns) | ||
| ? [...columns] | ||
| : [columns]; | ||
| const key = id ?? rawCols.join(", "); | ||
| return this.next(this.clone({ | ||
| orderBySql: { ...this._state.orderBySql, [key]: rawCols.join(", ") }, | ||
| orderBySql: { | ||
| ...this._state.orderBySql, | ||
| [key]: rawCols.join(", "), | ||
| }, | ||
| })); | ||
@@ -125,3 +134,5 @@ } | ||
| distinctOn(columns) { | ||
| const cols = Array.isArray(columns) ? columns.join(", ") : columns; | ||
| const cols = Array.isArray(columns) | ||
| ? columns.join(", ") | ||
| : columns; | ||
| return this.next(this.clone({ distinctOn: cols })); | ||
@@ -235,4 +246,13 @@ } | ||
| const sql = assembleSelectSQLPreSub(this._state); | ||
| assertAllNamedParamsProvided(sql, namedParams); | ||
| return collectParamValues(sql, namedParams); | ||
| assertAllProvided(sql, namedParams); | ||
| // IN-list-gated value collection (spec §6.5), shared with writes: an | ||
| // array bound outside `IN (...)` (e.g. `= ANY(:ids)`) passes through | ||
| // as ONE array value rather than being spread into N scalars. Such a | ||
| // value is the array itself (a `readonly SqlValue[]`-shaped driver | ||
| // param, serialized by the adapter), which the scalar-typed | ||
| // `QueryParamValue` return doesn't name — so cast at this boundary. | ||
| // The public return type is kept narrow (not widened to `unknown`) so | ||
| // consumers whose `select()` requires `getParams(): SqlValue[]` still | ||
| // accept the builder; the driver handles the array at runtime. | ||
| return collectScanned(sql, namedParams); | ||
| } | ||
@@ -239,0 +259,0 @@ return this._state.params; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/builder/select.ts"],"names":[],"mappings":"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"} |
@@ -73,12 +73,3 @@ /** A non-select clause fragment (where/join/group/having/order/cte). */ | ||
| }[]] ? H["id"] extends Id ? FilterOutId<R, Id> : readonly [H, ...FilterOutId<R, Id>] : readonly []; | ||
| type MkTuple<N extends number, Acc extends any[] = []> = Acc["length"] extends N ? Acc : MkTuple<N, [any, ...Acc]>; | ||
| type AutoIdFrom<Prefix extends string, List extends readonly { | ||
| id: string; | ||
| }[], N extends any[]> = HasId<List, `${Prefix}_${N["length"] & number}`> extends true ? AutoIdFrom<Prefix, List, [any, ...N]> : `${Prefix}_${N["length"] & number}`; | ||
| export type AutoId<Prefix extends string, List extends readonly { | ||
| id: string; | ||
| }[]> = number extends List["length"] ? `${Prefix}_${number}` : AutoIdFrom<Prefix, List, MkTuple<List["length"] & number>>; | ||
| export type ResolveId<Provided extends string | undefined, Prefix extends string, List extends readonly { | ||
| id: string; | ||
| }[]> = Provided extends string ? Provided : AutoId<Prefix, List>; | ||
| export type ResolveId<Provided extends string | undefined, Text extends string> = [Provided] extends [undefined] ? Text : Provided & string; | ||
| export type WithSelect<Sql extends SqlTag, Text extends string, Id extends string, Cond extends boolean> = { | ||
@@ -85,0 +76,0 @@ readonly ctes: Sql["ctes"]; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"sql-tag.d.ts","sourceRoot":"","sources":["../../src/builder/sql-tag.ts"],"names":[],"mappings":"AAEA,wEAAwE;AACxE,MAAM,WAAW,IAAI;IACjB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED,2EAA2E;AAC3E,MAAM,WAAW,OAAO;IACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CAC1B;AAED,uEAAuE;AACvE,MAAM,WAAW,MAAM;IACnB,QAAQ,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,OAAO,EAAE,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,wFAAwF;AACxF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;CACxB,CAAC;AAiBF,KAAK,KAAK,CAAC,IAAI,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,EAAE,SAAS,MAAM,IAChE,IAAI,SAAS,SAAS,CAAC,MAAM,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAAC,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,GAC1H,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GACxC,KAAK,CAAC;AAEhB,KAAK,WAAW,CACZ,IAAI,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,EACtC,EAAE,SAAS,MAAM,EACjB,IAAI,IACJ,IAAI,SAAS,SAAS,CAAC,MAAM,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAAC,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,GAC9H,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GACd,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,GACrB,SAAS,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,GAC7C,SAAS,EAAE,CAAC;AAElB,KAAK,UAAU,CACX,IAAI,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,EACtC,EAAE,SAAS,MAAM,EACjB,IAAI,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,IAC3B,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,GAC1B,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,GAC3B,SAAS,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC;AAE/B,KAAK,WAAW,CACZ,IAAI,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,EACtC,EAAE,SAAS,MAAM,IACjB,IAAI,SAAS,SAAS,CAAC,MAAM,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAAC,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,GAC9H,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GACd,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,GAClB,SAAS,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GACvC,SAAS,EAAE,CAAC;AAElB,KAAK,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,EAAE,GAAG,EAAE,IACjD,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;AAE9D,KAAK,UAAU,CACX,MAAM,SAAS,MAAM,EACrB,IAAI,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,EACtC,CAAC,SAAS,GAAG,EAAE,IACf,KAAK,CAAC,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAAC,SAAS,IAAI,GAC3D,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GACrC,GAAG,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAAC;AAM1C,MAAM,MAAM,MAAM,CAAC,MAAM,SAAS,MAAM,EAAE,IAAI,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,IAC5E,MAAM,SAAS,IAAI,CAAC,QAAQ,CAAC,GACvB,GAAG,MAAM,IAAI,MAAM,EAAE,GACrB,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;AAGrE,MAAM,MAAM,SAAS,CACjB,QAAQ,SAAS,MAAM,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,EACrB,IAAI,SAAS,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,IACtC,QAAQ,SAAS,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAkB9D,MAAM,MAAM,UAAU,CAClB,GAAG,SAAS,MAAM,EAClB,IAAI,SAAS,MAAM,EACnB,EAAE,SAAS,MAAM,EACjB,IAAI,SAAS,OAAO,IACpB;IACA,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,IAAI,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IACrF,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,GAAG,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAC/D,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,QAAQ,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,IAAI;IAC5D,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,QAAQ,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAC/E,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IACrE,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAC7D,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,GAAG,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAC9D,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAChF,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IACvE,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAClF,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IAC3E,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,GAAG,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAChE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IACjF,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IACzE,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,GAAG,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAC/D,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAClF,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IAC3E,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,GAAG,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,IAAI;IAChE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,GAAG,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,IAAI;IAC1D,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,GAAG,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,IAAI;IAC3D,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAChC,CAAC;AAIF,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;AAGhD,KAAK,SAAS,CACV,IAAI,SAAS,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EACxC,GAAG,SAAS,MAAM,EAClB,GAAG,SAAS,MAAM,GAAG,EAAE,IACvB,IAAI,SAAS,SAAS,CAAC,MAAM,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAAC,SAAS,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,GACtG,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,SAAS,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAC1E,GAAG,CAAC;AAGV,KAAK,cAAc,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EAAE,IAAI,SAAS,SAAS,IACvE,IAAI,SAAS,KAAK,GACZ,YAAY,CAAC,IAAI,CAAC,GAClB,IAAI,CAAC;AAEf,KAAK,YAAY,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,IAC7C,IAAI,SAAS,SAAS,CAAC,MAAM,CAAC,SAAS,OAAO,EAAE,GAAG,MAAM,CAAC,SAAS,SAAS,OAAO,EAAE,CAAC,GAChF,CAAC,CAAC,MAAM,CAAC,SAAS,KAAK,GACnB,SAAS,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,GAChC,YAAY,CAAC,CAAC,CAAC,GACnB,SAAS,EAAE,CAAC;AAGtB,KAAK,YAAY,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,SAAS,IACxD,IAAI,SAAS,OAAO,GACd,UAAU,GACV,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,MAAM,GAAG,SAAS,SAAS,OAAO,EAAE,GAC7E,GAAG,SAAS,SAAS,EAAE,GACnB,UAAU,GACV,UAAU,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,GACpC,UAAU,CAAC;AAGzB,KAAK,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,IAAI,SAAS,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,GAAG,SAAS,MAAM,IACvF,IAAI,SAAS,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;AAErE,KAAK,UAAU,CAAC,IAAI,SAAS,MAAM,GAAG,IAAI,IACtC,IAAI,SAAS,IAAI,GAAG,EAAE,GAAG,SAAS,IAAI,GAAG,MAAM,EAAE,CAAC;AAEtD,KAAK,UAAU,CAAC,IAAI,SAAS,SAAS,IAAI,EAAE,IACxC,IAAI,SAAS,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;AAE/D,KAAK,UAAU,CAAC,IAAI,SAAS,SAAS,IAAI,EAAE,IACxC,IAAI,SAAS,SAAS,EAAE,GAAG,EAAE,GAAG,QAAQ,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAErE,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,IAAI,IACpC,CAAC,SAAS,MAAM,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;AAE1C,KAAK,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,IAAI,IACrC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;AAE3C,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,IAAI,IACpC,CAAC,SAAS,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC;AAG3C,KAAK,WAAW,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,SAAS,IACvD,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;AAIpX,KAAK,QAAQ,CAAC,GAAG,SAAS,MAAM,IAC1B,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAChD,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC9B,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC5B,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC7B,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC/B,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC9B,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC/B,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC3B,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,SAAS,IAC3D,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAqBnE,KAAK,aAAa,CAAC,IAAI,SAAS,SAAS,IAAI,EAAE,IAC3C,IAAI,SAAS,SAAS,EAAE,GAAG,EAAE,GAAG,aAAa,CAAC;AAGlD,KAAK,iBAAiB,CAAC,GAAG,SAAS,MAAM,IACnC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAChD,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC9B,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC5B,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAC3B,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAEzD,KAAK,cAAc,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,SAAS,IAC1D,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;AAE7K;;;;;GAKG;AACH,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,SAAS,SAAS,IAC9D,MAAM,SAAS,iBAAiB,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC"} | ||
| {"version":3,"file":"sql-tag.d.ts","sourceRoot":"","sources":["../../src/builder/sql-tag.ts"],"names":[],"mappings":"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"} |
@@ -1,6 +0,6 @@ | ||
| import type { DatabaseSchema, ColumnTypeFromTableKey, RowTypeForTable, RowTypeForTables, SchemaFunctionReturn, SchemaFunctionReturnIsNullable } from "./schema.js"; | ||
| import type { DatabaseSchema, ColumnTypeFromTableKey, RowTypeForTable, RowTypeForTables, SchemaFunctionReturn, SchemaFunctionReturnIsNullable, SchemaCastType, FunctionCastType } from "./schema.js"; | ||
| import type { ColumnRef, ColumnRefValidLooseWith, ParseColumnRef, QualifiedRefScan, ResolveTableKey, UnqualifiedRefScan, UnqualifiedColumnValid } from "./columns.js"; | ||
| import type { AliasesInQuery, TablesInQuery } from "./tables.js"; | ||
| import type { CleanExpr, CleanIdent, ExtractAlias, ExtractAliasResult, ExtractBefore, ExtractBeforeFromTopLevel, IsIdentifier, IsParamPlaceholder, IsRuntimeStringFragment, IsSqlConstant, SqlConstantType, SplitBalancedParen, SplitTopLevel, Trim } from "./parsing.js"; | ||
| import type { AllTrue } from "./utils.js"; | ||
| import type { AllTrue, IsUnknown } from "./utils.js"; | ||
| export type IsIgnorableRuntimeExpr<E extends string> = IsRuntimeStringFragment<E> extends true ? true : [E] extends [" "] ? true : false; | ||
@@ -119,4 +119,4 @@ export type ExprToObject<E extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema, Nullable extends string = never> = IsIgnorableRuntimeExpr<E> extends true ? {} : ExtractAliasResult<E> extends { | ||
| type ArraySubscriptType<Base extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema, Steps extends any[]> = ExprType<Trim<Base>, Tables, Aliases, S, [any, ...Steps]> extends infer BT ? [BT] extends [never] ? unknown : NonNullable<BT> extends readonly (infer El)[] ? El | null : unknown : unknown; | ||
| export type ExprType<E extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema, Steps extends any[] = []> = Steps["length"] extends 25 ? unknown : IsIgnorableRuntimeExpr<E> extends true ? unknown : UnwrapRedundantParens<CleanExpr<E>> extends infer CE extends string ? IsRuntimeStringFragment<CE> extends true ? unknown : ExprTypeCascade<CE, Tables, Aliases, S, Steps> extends infer Raw ? [unknown] extends [Raw] ? BoolPredicateType<CE, Tables, Aliases, S, Steps> : Raw : never : unknown; | ||
| type ExprTypeCascade<CE extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema, Steps extends any[]> = CE extends "*" ? RowTypeForTables<Tables, S> : CE extends `${infer T}.*` ? RowTypeForTable<ResolveTableKey<CleanIdent<T>, Tables, Aliases, S>, S> : CE extends `(select ${infer SubBody})` ? ScalarSubqueryType<SubBody, S, [any, ...Steps]> : IsBoolExpr<CE> extends true ? boolean : IsCaseExpr<CE> extends true ? CaseType<CE, Tables, Aliases, S, [any, ...Steps]> : [OuterCastName<CE>] extends [never] ? CE extends `cast(${infer Inner} as ${infer CastTypeName})` ? ExprType<Inner, Tables, Aliases, S, [any, ...Steps]> extends never ? never : SqlTypeToTs<CastTypeName> : CE extends `cast (${infer Inner} as ${infer CastTypeName})` ? ExprType<Inner, Tables, Aliases, S, [any, ...Steps]> extends never ? never : SqlTypeToTs<CastTypeName> : CE extends `${infer Base}[${string}]` ? ArraySubscriptType<Base, Tables, Aliases, S, Steps> : CE extends `${infer Func}(${infer Args})` ? FuncOrArithType<CE, Func, Args, Tables, Aliases, S, Steps> : CE extends `${infer Func} (${infer Args})` ? FuncOrArithType<CE, Func, Args, Tables, Aliases, S, Steps> : CE extends `${string}||${string}` ? ConcatType<CE, Tables, Aliases, S> : CE extends `${infer JBase}->>${string}` ? ExprType<JBase, Tables, Aliases, S, [any, ...Steps]> extends never ? never : string : CE extends `${infer JBase}#>>${string}` ? ExprType<JBase, Tables, Aliases, S, [any, ...Steps]> extends never ? never : string : CE extends "null" ? null : CE extends `'${infer L}'` ? string : CE extends `${number}` ? number : CE extends "true" ? boolean : CE extends "false" ? boolean : IsSqlConstant<CE> extends true ? SqlConstantType<CE> : IsParamPlaceholder<CE> extends true ? unknown : [ParseColumnRef<CE, Tables, Aliases, S>] extends [infer Ref] ? [Ref] extends [never] ? IsIdentifier<CE> extends true ? never : TopLevelArithType<CE, Tables, Aliases, S, Steps> : Ref extends ColumnRef<infer TableKey extends string, infer Column extends string> ? ColumnTypeFromTableKey<TableKey, Column, S> : IsIdentifier<CE> extends true ? never : TopLevelArithType<CE, Tables, Aliases, S, Steps> : unknown : OuterCastName<CE> extends `${string}->>${string}` ? string : OuterCastName<CE> extends `${string}#>>${string}` ? string : CastInnerIsSimpleRef<OuterCastInner<CE>> extends true ? ExprType<OuterCastInner<CE>, Tables, Aliases, S, [any, ...Steps]> extends never ? never : SqlTypeToTs<OuterCastName<CE>> : CastInnerFnIsNullable<OuterCastInner<CE>, S> extends true ? SqlTypeToTs<OuterCastName<CE>> | null : SqlTypeToTs<OuterCastName<CE>>; | ||
| export type ExprType<E extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema, Steps extends any[] = []> = Steps["length"] extends 25 ? unknown : IsIgnorableRuntimeExpr<E> extends true ? unknown : UnwrapRedundantParens<CleanExpr<E>> extends infer CE extends string ? IsRuntimeStringFragment<CE> extends true ? unknown : ExprTypeCascade<CE, Tables, Aliases, S, Steps> extends infer Raw ? [unknown] extends [Raw] ? [Raw] extends [object] ? Raw : BoolPredicateType<CE, Tables, Aliases, S, Steps> : Raw : never : unknown; | ||
| type ExprTypeCascade<CE extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema, Steps extends any[]> = CE extends "*" ? RowTypeForTables<Tables, S> : CE extends `${infer T}.*` ? RowTypeForTable<ResolveTableKey<CleanIdent<T>, Tables, Aliases, S>, S> : CE extends `(select ${infer SubBody})` ? ScalarSubqueryType<SubBody, S, [any, ...Steps]> : IsBoolExpr<CE> extends true ? boolean : IsCaseExpr<CE> extends true ? CaseType<CE, Tables, Aliases, S, [any, ...Steps]> : [OuterCastName<CE>] extends [never] ? CE extends `cast(${infer Inner} as ${infer CastTypeName})` ? ExprType<Inner, Tables, Aliases, S, [any, ...Steps]> extends never ? never : CastTypeToTs<Inner, CastTypeName, S> : CE extends `cast (${infer Inner} as ${infer CastTypeName})` ? ExprType<Inner, Tables, Aliases, S, [any, ...Steps]> extends never ? never : CastTypeToTs<Inner, CastTypeName, S> : CE extends `${infer Base}[${string}]` ? ArraySubscriptType<Base, Tables, Aliases, S, Steps> : CE extends `${infer Func}(${infer Args})` ? FuncOrArithType<CE, Func, Args, Tables, Aliases, S, Steps> : CE extends `${infer Func} (${infer Args})` ? FuncOrArithType<CE, Func, Args, Tables, Aliases, S, Steps> : CE extends `${string}||${string}` ? ConcatType<CE, Tables, Aliases, S> : CE extends `${infer JBase}->>${string}` ? ExprType<JBase, Tables, Aliases, S, [any, ...Steps]> extends never ? never : string : CE extends `${infer JBase}#>>${string}` ? ExprType<JBase, Tables, Aliases, S, [any, ...Steps]> extends never ? never : string : CE extends "null" ? null : CE extends `'${infer L}'` ? string : CE extends `${number}` ? number : CE extends "true" ? boolean : CE extends "false" ? boolean : IsSqlConstant<CE> extends true ? SqlConstantType<CE> : IsParamPlaceholder<CE> extends true ? unknown : [ParseColumnRef<CE, Tables, Aliases, S>] extends [infer Ref] ? [Ref] extends [never] ? IsIdentifier<CE> extends true ? never : TopLevelArithType<CE, Tables, Aliases, S, Steps> : Ref extends ColumnRef<infer TableKey extends string, infer Column extends string> ? ColumnTypeFromTableKey<TableKey, Column, S> : IsIdentifier<CE> extends true ? never : TopLevelArithType<CE, Tables, Aliases, S, Steps> : unknown : OuterCastName<CE> extends `${string}->>${string}` ? string : OuterCastName<CE> extends `${string}#>>${string}` ? string : CastInnerIsSimpleRef<OuterCastInner<CE>> extends true ? ExprType<OuterCastInner<CE>, Tables, Aliases, S, [any, ...Steps]> extends never ? never : CastTypeToTs<OuterCastInner<CE>, OuterCastName<CE>, S> : CastTypeToTs<OuterCastInner<CE>, OuterCastName<CE>, S>; | ||
| export type ScalarSubqueryType<SubBody extends string, S extends DatabaseSchema, Steps extends any[]> = ExtractBeforeFromTopLevel<SubBody> extends infer SL extends string ? SplitTopLevel<SL> extends [infer First extends string, ...infer _Rest] ? First extends string ? `select ${SubBody}` extends infer SubQuery extends string ? TablesInQuery<SubQuery, S> extends infer SubTables extends string ? AliasesInQuery<SubQuery, S> extends infer SubAliases extends string ? ExtractAliasResult<First> extends { | ||
@@ -169,2 +169,10 @@ expr: infer RawExpr extends string; | ||
| type CastInnerFnIsNullable<Inner extends string, S extends DatabaseSchema> = CleanExpr<Inner> extends `${infer Func}(${string})` ? SchemaFunctionReturnIsNullable<CleanIdent<Func>, S> : false; | ||
| export type CastTypeToTs<Inner extends string, CastName extends string, S extends DatabaseSchema> = NormalizeCastKey<CastName> extends infer Key extends string ? FunctionCastType<CastFuncName<Inner>, Key, S> extends infer PF ? [PF] extends [never] ? CastGlobalOrBuiltin<Inner, CastName, Key, CastNameIsArray<CastName>, S> : CastNameIsArray<CastName> extends true ? PF[] : PF : never : never; | ||
| type CastGlobalOrBuiltin<Inner extends string, CastName extends string, Key extends string, IsArr extends boolean, S extends DatabaseSchema> = IsUnknown<SqlScalarToTs<Key>> extends true ? SchemaCastType<Key, S> extends infer G ? [G] extends [never] ? CastBuiltin<Inner, CastName, S> : CastInnerFnIsNullable<Inner, S> extends true ? (IsArr extends true ? G[] : G) | null : IsArr extends true ? G[] : G : never : CastBuiltin<Inner, CastName, S>; | ||
| type CastBuiltin<Inner extends string, CastName extends string, S extends DatabaseSchema> = CastInnerFnIsNullable<Inner, S> extends true ? SqlTypeToTs<CastName> | null : SqlTypeToTs<CastName>; | ||
| type CastFuncName<Inner extends string> = CleanExpr<Inner> extends `${infer Func}(${string})` ? CleanIdent<Func> : never; | ||
| type NormalizeCastKey<CastName extends string> = LastCastSegment<CastName> extends infer Last extends string ? Trim<Last> extends `${infer Base}[]` ? DropTypeQualifier<NormalizeTypeName<Base>> : DropTypeQualifier<NormalizeTypeName<Last>> : never; | ||
| type CastNameIsArray<CastName extends string> = Trim<LastCastSegment<CastName>> extends `${string}[]` ? true : false; | ||
| type LastCastSegment<T extends string> = Trim<T> extends `${string}::${infer Rest}` ? LastCastSegment<Rest> : Trim<T>; | ||
| type DropTypeQualifier<N extends string> = N extends `${string}.${infer Rest}` ? DropTypeQualifier<Rest> : N; | ||
| export type IsCaseExpr<E extends string> = Trim<E> extends `case ${string}` ? true : Trim<E> extends `(${infer Inner})` ? IsCaseExpr<Inner> : false; | ||
@@ -171,0 +179,0 @@ export type CaseType<E extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema, Steps extends any[]> = Steps["length"] extends 25 ? unknown : CaseParts<E> extends infer P ? P extends { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"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"} |
+8
-0
@@ -6,2 +6,3 @@ import type { AnyTrue, Simplify } from "./utils.js"; | ||
| functions?: Record<string, FunctionSignature>; | ||
| casts?: Record<string, any>; | ||
| }; | ||
@@ -11,2 +12,3 @@ export type FunctionSignature = { | ||
| params?: readonly any[]; | ||
| casts?: Record<string, any>; | ||
| }; | ||
@@ -44,2 +46,8 @@ export type StringKeys<T> = Extract<keyof T, string>; | ||
| } ? null extends R ? true : false : false : false; | ||
| export type SchemaCastType<Name extends string, S extends DatabaseSchema> = S extends { | ||
| casts: infer C extends Record<string, any>; | ||
| } ? MatchKeyCaseInsensitive<C, Name> extends infer K extends string ? [K] extends [never] ? never : C[K] : never : never; | ||
| export type FunctionCastType<Func extends string, Name extends string, S extends DatabaseSchema> = SchemaFunctionSig<Func, S> extends infer Sig ? [Sig] extends [never] ? never : Sig extends { | ||
| casts: infer C extends Record<string, any>; | ||
| } ? MatchKeyCaseInsensitive<C, Name> extends infer K extends string ? [K] extends [never] ? never : C[K] : never : never : never; | ||
| //# sourceMappingURL=schema.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"} |
+1
-0
@@ -5,2 +5,3 @@ export type And<A extends boolean, B extends boolean, C extends boolean, D extends boolean, E extends boolean = true> = A extends true ? (B extends true ? (C extends true ? (D extends true ? (E extends true ? true : false) : false) : false) : false) : false; | ||
| export type IsNever<T> = [T] extends [never] ? true : false; | ||
| export type IsUnknown<T> = 0 extends (1 & T) ? true : [T] extends [never] ? false : [unknown] extends [T] ? [T] extends [object] ? false : true : false; | ||
| export type IsUnion<T, U = T> = [ | ||
@@ -7,0 +8,0 @@ T |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,CACX,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,GAAG,IAAI,IACxB,CAAC,SAAS,IAAI,GACZ,CAAC,CAAC,SAAS,IAAI,GACX,CAAC,CAAC,SAAS,IAAI,GACX,CAAC,CAAC,SAAS,IAAI,GACX,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,GAC/B,KAAK,CAAC,GACV,KAAK,CAAC,GACV,KAAK,CAAC,GACV,KAAK,CAAC;AAEZ,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;AAEvE,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;AAEvE,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAK5D,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IACxB;IAAC,CAAC;CAAC,SAAS,CAAC,KAAK,CAAC,GACb,KAAK,GACL,CAAC,SAAS,GAAG,GACT,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GACX,KAAK,GACL,IAAI,GACR,KAAK,CAAC;AAEpB,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,SAAS,MAAM,IAC1D,MAAM,SAAS,CAAC,GAAG,KAAK,GAAG,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,KAAK,CAAC;AAE7E,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAC7B,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC;AAEtF,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,EAAE,CAAC;AAYxD,MAAM,MAAM,QAAQ,CAAC,GAAG,EAAE,IAAI,IAC1B;IAAC,IAAI;CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,GAC1B,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAC5B,IAAI,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC"} | ||
| {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,CACX,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,GAAG,IAAI,IACxB,CAAC,SAAS,IAAI,GACZ,CAAC,CAAC,SAAS,IAAI,GACX,CAAC,CAAC,SAAS,IAAI,GACX,CAAC,CAAC,SAAS,IAAI,GACX,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,GAC/B,KAAK,CAAC,GACV,KAAK,CAAC,GACV,KAAK,CAAC,GACV,KAAK,CAAC;AAEZ,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;AAEvE,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;AAEvE,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAW5D,MAAM,MAAM,SAAS,CAAC,CAAC,IACnB,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GACX,IAAI,GACJ,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACf,KAAK,GACL,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GACjB,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,GACnC,KAAK,CAAC;AAKxB,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IACxB;IAAC,CAAC;CAAC,SAAS,CAAC,KAAK,CAAC,GACb,KAAK,GACL,CAAC,SAAS,GAAG,GACT,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GACX,KAAK,GACL,IAAI,GACR,KAAK,CAAC;AAEpB,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,SAAS,MAAM,IAC1D,MAAM,SAAS,CAAC,GAAG,KAAK,GAAG,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,KAAK,CAAC;AAE7E,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAC7B,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC;AAEtF,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,EAAE,CAAC;AAYxD,MAAM,MAAM,QAAQ,CAAC,GAAG,EAAE,IAAI,IAC1B;IAAC,IAAI;CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,GAC1B,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAC5B,IAAI,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC"} |
| import type { AliasesInQuery, NullableRelations, TablesInQuery } from "../tables.js"; | ||
| import type { AllTrue, MergeRow, Simplify } from "../utils.js"; | ||
| import type { AllTrue, IsUnknown, MergeRow, Simplify } from "../utils.js"; | ||
| import type { CleanIdent, ExtractAlias, ExtractAliasResult, ExtractReturningList, ExtractSelectList, SplitSelectList, StripSubqueries, Trim } from "../parsing.js"; | ||
@@ -23,3 +23,2 @@ import type { ColumnExists, DatabaseSchema } from "../schema.js"; | ||
| type MergeAll<T extends any[]> = T extends [] ? {} : T extends [infer Only] ? MergeRowProj<{}, Only> : MergeAll<PairMerge<T>>; | ||
| type IsUnknown<T> = [T] extends [never] ? false : [unknown] extends [T] ? true : false; | ||
| type PreferInformative<A, B> = IsUnknown<A> extends true ? B : IsUnknown<B> extends true ? A : [NonNullable<A>] extends [NonNullable<B>] ? ([NonNullable<B>] extends [NonNullable<A>] ? B : A) : B; | ||
@@ -26,0 +25,0 @@ export type MergeRowProj<Acc, Next> = [ |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"return-types.d.ts","sourceRoot":"","sources":["../../src/validation/return-types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACnK,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACtG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACrF,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,cAAc,IAC1E,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,SAAS,MAAM,GACjD,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,SAAS,MAAM,GACrD,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC7B,YAAY,CAAC,CAAC,CAAC,SAAS,IAAI,GACxB,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GAC7D,SAAS,CAAC,CAAC,CAAC,SAAS,QAAQ,GACzB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC/B,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAClC,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GACxC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC5B,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GACnB,MAAM,GACd,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GACxC,MAAM,GACV,MAAM,CAAC;AAajB,MAAM,MAAM,iBAAiB,CACzB,CAAC,SAAS,MAAM,EAChB,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,EACtB,CAAC,SAAS,cAAc,IAExB,CAAC,SAAS,QAAQ,MAAM,EAAE,GACpB,aAAa,CAAC,CAAC,CAAC,SAAS,MAAM,KAAK,SAAS,MAAM,GAC/C,KAAK,SAAS,GAAG,MAAM,SAAS,MAAM,EAAE,GAQpC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAInF,cAAc,CAAC,KAAK,CAAC,GACzB,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAMvF,eAAe,CAAC,CAAC,CAAC,SAAS,MAAM,KAAK,SAAS,MAAM,GACjD,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,MAAM,GACnD,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,MAAM,GACpD,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GACnG,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAChH,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAChH,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3H,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,cAAc,EAAE,GAAG,IACzE,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAKhF,MAAM,MAAM,aAAa,CACrB,CAAC,SAAS,MAAM,EAChB,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,EACtB,CAAC,SAAS,cAAc,IAExB,YAAY,CAAC,CAAC,CAAC,SAAS,MAAM,KAAK,SAAS,MAAM,GAC5C,sBAAsB,CAAC,KAAK,CAAC,SAAS,IAAI,GACtC,gBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GACjE,MAAM,GACV,MAAM,CAAC;AAOjB,MAAM,MAAM,YAAY,CAAC,UAAU,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,cAAc,IAC1F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,SAAS,MAAM,GACjD,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,SAAS,MAAM,GACrD,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GAChD,OAAO,GACX,OAAO,CAAC;AAElB,MAAM,MAAM,gBAAgB,CACxB,UAAU,SAAS,MAAM,EACzB,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,EACtB,CAAC,SAAS,cAAc,EACxB,QAAQ,SAAS,MAAM,GAAG,KAAK,IAC/B,iBAAiB,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AAEjF,MAAM,MAAM,iBAAiB,CACzB,KAAK,SAAS,MAAM,EAAE,EACtB,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,EACtB,CAAC,SAAS,cAAc,EACxB,QAAQ,SAAS,MAAM,GAAG,KAAK,IAC/B,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AAQpD,MAAM,MAAM,UAAU,CAClB,KAAK,SAAS,MAAM,EAAE,EACtB,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,EACtB,CAAC,SAAS,cAAc,EACxB,QAAQ,SAAS,MAAM,GAAG,KAAK,IAC/B,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AAWxE,KAAK,UAAU,CACX,KAAK,SAAS,SAAS,MAAM,EAAE,EAC/B,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,EACtB,CAAC,SAAS,cAAc,EACxB,QAAQ,SAAS,MAAM,IACvB;KAAG,CAAC,IAAI,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,CAAC;CAAE,CAAC;AAkBjF,KAAK,SAAS,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,GAAG,SAAS,GAAG,EAAE,GAAG,EAAE,IAClD,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,IAAI,SAAS,GAAG,EAAE,CAAC,GACnD,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAC7C,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,GAClB,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC,GACd,GAAG,CAAC;AAElB,KAAK,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,IACzB,CAAC,SAAS,EAAE,GACN,EAAE,GACF,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,GAClB,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,GACtB,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAKrC,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAUvF,KAAK,iBAAiB,CAAC,CAAC,EAAE,CAAC,IACvB,SAAS,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAC3B,SAAS,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAC7B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GACrC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GACnD,CAAC,CAAC;AAIZ,MAAM,MAAM,YAAY,CAAC,GAAG,EAAE,IAAI,IAC9B;IAAC,IAAI;CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,GAC1B,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAC5B;KACG,CAAC,IAAI,MAAM,GAAG,GAAG,MAAM,IAAI,GACxB,CAAC,SAAS,MAAM,GAAG,GACb,CAAC,SAAS,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAClE,CAAC,SAAS,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK;CACnD,CAAC;AAIN,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,IAC7C,SAAS,CAAC,CAAC,CAAC,SAAS,QAAQ,GACvB,YAAY,CAAC,CAAC,CAAC,SAAS,IAAI,GACxB,aAAa,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,GACvD,aAAa,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,GACxD,KAAK,CAAC;AAEhB,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,IACvC,0BAA0B,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAEjF,MAAM,MAAM,0BAA0B,CAAC,CAAC,SAAS,MAAM,IACnD,CAAC,SAAS,GAAG,MAAM,aAAa,MAAM,SAAS,EAAE,GAC3C,SAAS,SAAS,GAAG,MAAM,IAAI,MAAM,EAAE,GACnC,KAAK,GACL,IAAI,GACR,KAAK,CAAC;AAEhB,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,IACvC,SAAS,CAAC,CAAC,CAAC,SAAS,QAAQ,GACvB,CAAC,SAAS,GAAG,MAAM,SAAS,MAAM,IAAI,EAAE,GACpC,QAAQ,IAAI,EAAE,GACd,CAAC,GACL,CAAC,CAAC;AAIZ,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,IAC7C,cAAc,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,SAAS,MAAM,GAC5C,GAAG,SAAS,GAAG,MAAM,MAAM,aAAa,MAAM,EAAE,GAC5C,MAAM,GACN,GAAG,GACP,CAAC,CAAC;AAIZ,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,IACvC,cAAc,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,SAAS,MAAM,GAC5C,GAAG,SAAS,GAAG,MAAM,aAAa,MAAM,KAAK,EAAE,GAC3C,YAAY,KAAK,EAAE,GACnB,EAAE,GACN,EAAE,CAAC;AAEb,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,MAAM,EAAE,IAG5C,KAAK,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,GACvB,CAAC,SAAS,MAAM,GACZ,aAAa,CAAC,CAAC,CAAC,GAChB,KAAK,GACT,KAAK,CAAC;AAEhB,KAAK,aAAa,CAAC,CAAC,SAAS,MAAM,IAC/B,YAAY,CAAC,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,KAAK,CAAA;CAAE,GAIxC,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GACnB,KAAK,GACL,KAAK,SAAS,MAAM,GAChB,KAAK,GACL,KAAK,GACb,KAAK,CAAC;AAIhB,MAAM,MAAM,mBAAmB,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,QAAQ,SAAS,MAAM,EAAE,CAAC,SAAS,cAAc,IACpG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAsBxH,KAAK,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;AAErG,MAAM,MAAM,qBAAqB,CAAC,GAAG,EAAE,CAAC,SAAS,MAAM,IACnD,CAAC,SAAS,UAAU,MAAM,EAAE,GAItB,CAAC,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,GACtC,CAAC,SAAS,GAAG,MAAM,aAAa,MAAM,EAAE,GACpC,GAAG,GACH,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAClB,gBAAgB,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,IAAI,SAAS,MAAM,GACrF,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAClB,GAAG,GACH;KAAG,CAAC,IAAI,MAAM,GAAG,GAAG,CAAC,SAAS,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;CAAE,GACjE,GAAG,GACP,GAAG,GACX,GAAG,GACP,GAAG,CAAC;AAEd,KAAK,gBAAgB,CAAC,KAAK,SAAS,MAAM,EAAE,IAGxC,KAAK,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,GACvB,CAAC,SAAS,MAAM,GACZ,UAAU,CAAC,CAAC,CAAC,GACb,KAAK,GACT,KAAK,CAAC;AAKhB,KAAK,UAAU,CAAC,CAAC,SAAS,MAAM,IAC5B,kBAAkB,CAAC,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,CAAA;CAAE,GACxE,WAAW,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,SAAS,MAAM,GACzC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACf,KAAK,GACL,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACf,CAAC,GACD,CAAC,SAAS,MAAM,GACZ,CAAC,GACD,CAAC,GACb,KAAK,GACT,KAAK,CAAC;AAWhB,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,IAC7B,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,MAAM,SAAS,MAAM,EAAE,GACpC,KAAK,GACL,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,MAAM,EAAE,GAClC,IAAI,CAAC,CAAC,CAAC,SAAS,SAAS,GACrB,IAAI,CAAC,CAAC,CAAC,GACP,KAAK,GACT,KAAK,CAAC"} | ||
| {"version":3,"file":"return-types.d.ts","sourceRoot":"","sources":["../../src/validation/return-types.ts"],"names":[],"mappings":"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"} |
+3
-2
| { | ||
| "name": "@kuindji/typed-sql", | ||
| "version": "0.9.2", | ||
| "version": "0.9.3", | ||
| "description": "Type-level SQL parser for TypeScript", | ||
@@ -50,2 +50,3 @@ "author": "Ivan Kuindzhi", | ||
| "typecheck": "node --max-old-space-size=8192 ./node_modules/typescript/bin/tsc --noEmit", | ||
| "typecheck:snc": "node --max-old-space-size=8192 ./node_modules/typescript/bin/tsc -p tsconfig.strict-null-false.json --noEmit", | ||
| "perf": "node scripts/perf-budget.mjs", | ||
@@ -55,3 +56,3 @@ "build": "tsc -p tsconfig.build.json", | ||
| "prepublishOnly": "npm test && npm run test:dist", | ||
| "test": "node --max-old-space-size=8192 ./node_modules/typescript/bin/tsc --noEmit && bun test" | ||
| "test": "node --max-old-space-size=8192 ./node_modules/typescript/bin/tsc --noEmit && npm run typecheck:snc && bun test" | ||
| }, | ||
@@ -58,0 +59,0 @@ "devDependencies": { |
+73
-0
@@ -118,2 +118,8 @@ # @kuindji/typed-sql | ||
| Clause methods (`select`, `join`, `where`, `groupBy`, `having`, and `orderBy`) | ||
| accept an optional second `id` argument for later replacement, removal, or | ||
| introspection. When omitted, the rendered SQL text is used as the id, so | ||
| identical implicit fragments are idempotent. Pass an explicit id only when the | ||
| same logical slot needs to be replaced with different SQL. | ||
| ### Write builders (INSERT / UPDATE / DELETE) with typed params | ||
@@ -160,2 +166,69 @@ | ||
| ## Custom cast types | ||
| The built-in scalar map resolves the common Postgres targets (`::int`, `::text`, | ||
| `::numeric`, `::timestamptz`, …). For a cast whose target it *can't* resolve — a | ||
| `CREATE TYPE`/`CREATE DOMAIN` name, or the deliberately-uninformative | ||
| `json`/`jsonb` — teach it the TS type with one of two optional schema maps: | ||
| ```ts | ||
| type Geometry = { type: "Point"; coordinates: number[] }; | ||
| type Schema = { | ||
| defaultSchema: "public"; | ||
| schemas: { public: { places: { id: number; geom: unknown } } }; | ||
| // Schema-wide: keyed by the cast TARGET name alone (case-insensitive, | ||
| // unqualified). The per-schema counterpart to `PgTypeOverrides`. | ||
| casts: { | ||
| citext: string; | ||
| geometry: Geometry; // a custom CREATE TYPE | ||
| // mood: "happy" | "sad", // a DOMAIN / enum, etc. | ||
| }; | ||
| // Per-function: a cast target determinate only in combination with a | ||
| // specific call. Bare `ST_AsGeoJSON` returns GeoJSON *text*; the `::json` | ||
| // cast parses it into an object. | ||
| functions: { | ||
| ST_AsGeoJSON: { | ||
| returns: string, | ||
| casts: { json: Geometry | null, jsonb: Geometry | null }, | ||
| }, | ||
| }; | ||
| }; | ||
| type A = GetReturnType<"select geom::geometry as g from places", Schema>; | ||
| // { g: Geometry } | ||
| type B = GetReturnType<"select geom::geometry[] as g from places", Schema>; | ||
| // { g: Geometry[] } ← a `geometry` entry covers `geometry[]` automatically | ||
| type C = GetReturnType<"select ST_AsGeoJSON(geom)::json as g from places", Schema>; | ||
| // { g: Geometry | null } | ||
| ``` | ||
| Resolution precedence for `expr::T`: | ||
| 1. **Per-function cast** (`functions[fn].casts[T]`) — when `expr` is a call to | ||
| that function. Most specific; **wins even over a built-in `T`** (so you can | ||
| model `fn(x)::text` as a branded string). Carries its own nullability. | ||
| 2. **Schema-global cast** (`casts[T]`) — only when the built-in map is | ||
| *uninformative* for `T` (an unknown/custom name, or `json`/`jsonb`). This | ||
| uninformative gate keeps built-ins authoritative: `casts` can name a custom | ||
| type but **cannot silently redefine `::text`**. | ||
| 3. **Built-in** — the usual scalar map (`PgTypeOverrides` ⊕ defaults). | ||
| `PgTypeOverrides` remains the lever for remapping a *built-in* pg type to suit a | ||
| differently-configured driver; `casts` is additive and names *custom* types — | ||
| the two are complementary. | ||
| **Nullability of a schema-global cast** is re-applied only as far as the existing | ||
| cast machinery already sees it: a join-nullable bare ref (`x.col::geometry` under | ||
| a `left join … x` → `Geometry | null`) and a schema-declared nullable function | ||
| inner propagate `| null`; **base-column** nullability is dropped by *any* cast | ||
| (custom or built-in), and a built-in-function / parenthesized / arithmetic inner | ||
| stays non-null. Recover precision with `coalesce`, a per-function entry, or a | ||
| nullable cast target — authoring the global entry as `Geometry | null` would | ||
| wrongly make *every* cast to that type nullable. | ||
| --- | ||
| ## Behavior notes | ||
@@ -162,0 +235,0 @@ |
| // src/builder/assemble.ts | ||
| import { assertAllNamedParamsProvided, expandNamedParams } from "./params.js"; | ||
| import { assertAllProvided, expandScanned } from "./scanner.js"; | ||
| import type { RuntimeSelectState } from "./state.js"; | ||
@@ -23,4 +23,4 @@ | ||
| : state.distinct | ||
| ? "SELECT DISTINCT" | ||
| : "SELECT"; | ||
| ? "SELECT DISTINCT" | ||
| : "SELECT"; | ||
@@ -94,6 +94,9 @@ const selectIds = Object.keys(state.selectSql); | ||
| if (state.namedParamsBound || Object.keys(namedParams).length > 0) { | ||
| assertAllNamedParamsProvided(sql, namedParams); | ||
| return expandNamedParams(sql, namedParams); | ||
| assertAllProvided(sql, namedParams); | ||
| // IN-list-gated expansion (spec §6.5), shared with the write builders: | ||
| // an array value only fans out to multiple `$n` slots inside `IN (...)`; | ||
| // anywhere else (e.g. `= ANY(:ids)`) it binds as a single array param. | ||
| return expandScanned(sql, namedParams); | ||
| } | ||
| return sql; | ||
| } |
@@ -174,2 +174,11 @@ // src/builder/extract-params.ts | ||
| // True iff the INSERT has a VALUES clause (single- or no-space form). When false | ||
| // the source is an embedded SELECT (`insert into t (...) select ...`) or | ||
| // `default values` — there is no positional column↔value list to zip, so the | ||
| // projection's placeholders are swept loose instead (see InsertParams). | ||
| type HasValuesClause<N extends string> = | ||
| N extends `${string} values (${string}` ? true | ||
| : N extends `${string} values(${string}` ? true | ||
| : false; | ||
| type InsertParams<N extends string, S extends DatabaseSchema> = | ||
@@ -179,3 +188,11 @@ InsertTargetTable<N, S> extends infer Table extends string | ||
| ? MultiRowValuesParams<N, Table, S> | ||
| : ZipInsert<ExtractInsertColumns<N>, ExtractInsertValues<N>, Table, S>) | ||
| : HasValuesClause<N> extends true | ||
| ? ZipInsert<ExtractInsertColumns<N>, ExtractInsertValues<N>, Table, S> | ||
| // INSERT … SELECT (no VALUES): the embedded SELECT projection has | ||
| // no value-list to position-zip, so sweep EVERY placeholder loose | ||
| // (DriverParamValue). SetParams (ON CONFLICT) and WhereParamsFor | ||
| // below still type target-scoped refs precisely; the loose sweep | ||
| // intersects as a no-op on those shared keys (`unknown & T = T`) | ||
| // and only adds the otherwise-dropped projection params. | ||
| : LooseParamsSkipLit<N>) | ||
| & SetParams<SplitTopLevel<ConflictSetBlock<N>>, Table, S> | ||
@@ -182,0 +199,0 @@ & WhereParamsFor<N, Table, S> |
+268
-126
| // src/builder/select.ts | ||
| import type { DatabaseSchema } from "../schema.js"; | ||
| import { assembleSelectSQL } from "./assemble.js"; | ||
| import { assertAllNamedParamsProvided, collectParamValues, type QueryParamInput, type QueryParamValue } from "./params.js"; | ||
| import { EMPTY_RUNTIME_STATE, type RuntimeSelectState } from "./state.js"; | ||
| import { ConditionTreeBuilder } from "./condition-tree.js"; | ||
| import { type QueryParamInput, type QueryParamValue } from "./params.js"; | ||
| import type { BuilderResultBrand } from "./return-type.js"; | ||
| import { assertAllProvided, collectScanned } from "./scanner.js"; | ||
| import type { | ||
@@ -19,4 +20,2 @@ EmptySqlTag, | ||
| WithOrderBy, | ||
| WithSelect, | ||
| WithWhere, | ||
| WithoutGroupBy, | ||
@@ -28,7 +27,10 @@ WithoutHaving, | ||
| WithoutWhere, | ||
| WithSelect, | ||
| WithWhere, | ||
| } from "./sql-tag.js"; | ||
| import type { BuilderResultBrand } from "./return-type.js"; | ||
| import { EMPTY_RUNTIME_STATE, type RuntimeSelectState } from "./state.js"; | ||
| // Text a condition contributes to the tag: a tree's Expr literal, or the string. | ||
| type CondText<C> = C extends ConditionTreeBuilder<any, infer E extends string> ? E | ||
| type CondText<C> = C extends ConditionTreeBuilder<any, infer E extends string> | ||
| ? E | ||
| : C extends string ? C | ||
@@ -41,6 +43,6 @@ : string; | ||
| : string; | ||
| type JoinArr<A extends readonly string[], Acc extends string = ""> = | ||
| A extends readonly [infer H extends string, ...infer R extends readonly string[]] | ||
| ? JoinArr<R, Acc extends "" ? H : `${Acc}, ${H}`> | ||
| : Acc; | ||
| type JoinArr<A extends readonly string[], Acc extends string = ""> = A extends | ||
| readonly [ infer H extends string, ...infer R extends readonly string[] ] | ||
| ? JoinArr<R, Acc extends "" ? H : `${Acc}, ${H}`> | ||
| : Acc; | ||
@@ -75,51 +77,79 @@ // Re-flag every select fragment the applyIf transform INTRODUCED as conditional. | ||
| ? FindFragById<Before, After[I]["id"]> extends infer B | ||
| ? [B] extends [never] | ||
| ? MarkCond<After[I]> // brand-new id → conditional | ||
| : FragEqual<B, After[I]> extends true | ||
| ? After[I] // untouched → keep its flag | ||
| : MarkCond<After[I]> // overwritten by transform → conditional | ||
| : MarkCond<After[I]> | ||
| ? [ B ] extends [ never ] ? MarkCond<After[I]> // brand-new id → conditional | ||
| : FragEqual<B, After[I]> extends true ? After[I] // untouched → keep its flag | ||
| : MarkCond<After[I]> // overwritten by transform → conditional | ||
| : MarkCond<After[I]> | ||
| : After[I]; | ||
| }; | ||
| type FindFragById<List extends readonly SelFrag[], Id extends string> = | ||
| List extends readonly [infer H extends SelFrag, ...infer R extends readonly SelFrag[]] | ||
| ? H["id"] extends Id ? H : FindFragById<R, Id> | ||
| List extends readonly [ | ||
| infer H extends SelFrag, | ||
| ...infer R extends readonly SelFrag[], | ||
| ] ? H["id"] extends Id ? H : FindFragById<R, Id> | ||
| : never; | ||
| type FragEqual<A, B> = [A] extends [B] ? ([B] extends [A] ? true : false) : false; | ||
| type MarkCond<F extends SelFrag> = { id: F["id"]; text: F["text"]; cond: true }; | ||
| type FragEqual<A, B> = [ A ] extends [ B ] | ||
| ? ([ B ] extends [ A ] ? true : false) | ||
| : false; | ||
| type MarkCond<F extends SelFrag> = { | ||
| id: F["id"]; | ||
| text: F["text"]; | ||
| cond: true; | ||
| }; | ||
| function nextAutoId(prefix: string, count: number, hasId: (id: string) => boolean): string { | ||
| let idx = count; | ||
| while (hasId(`${prefix}_${idx}`)) { | ||
| idx++; | ||
| } | ||
| return `${prefix}_${idx}`; | ||
| } | ||
| export interface SelectQueryBuilder<Schema extends DatabaseSchema, Sql extends SqlTag> { | ||
| select<const Cols extends string | readonly string[], Id extends string | undefined = undefined>( | ||
| export interface SelectQueryBuilder< | ||
| Schema extends DatabaseSchema, | ||
| Sql extends SqlTag, | ||
| > { | ||
| select< | ||
| const Cols extends string | readonly string[], | ||
| Id extends string | undefined = undefined, | ||
| >( | ||
| columns: Cols, | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithSelect<Sql, ColsText<Cols>, ResolveId<Id, "select", Sql["selects"]>, false>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithSelect<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>, false> | ||
| >; | ||
| selectIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>( | ||
| selectIf< | ||
| const Cols extends string | readonly string[], | ||
| Id extends string | undefined = undefined, | ||
| >( | ||
| condition: boolean, | ||
| columns: Cols, | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithSelect<Sql, ColsText<Cols>, ResolveId<Id, "select", Sql["selects"]>, true>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithSelect<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>, true> | ||
| >; | ||
| from<Src extends string | SelectQueryBuilder<Schema, any>>( | ||
| source: Src, | ||
| ): SelectQueryBuilder<Schema, WithFrom<Sql, Src extends string ? Src : string>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithFrom<Sql, Src extends string ? Src : string> | ||
| >; | ||
| where<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>( | ||
| where< | ||
| Cond extends string | ConditionTreeBuilder<any, any>, | ||
| Id extends string | undefined = undefined, | ||
| >( | ||
| condition: Cond, | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithWhere<Sql, CondText<Cond>, ResolveId<Id, "where", Sql["wheres"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithWhere<Sql, CondText<Cond>, ResolveId<Id, CondText<Cond>>> | ||
| >; | ||
| whereIf<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>( | ||
| whereIf< | ||
| Cond extends string | ConditionTreeBuilder<any, any>, | ||
| Id extends string | undefined = undefined, | ||
| >( | ||
| condition: boolean, | ||
| clause: Cond, | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithWhere<Sql, CondText<Cond>, ResolveId<Id, "where", Sql["wheres"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithWhere<Sql, CondText<Cond>, ResolveId<Id, CondText<Cond>>> | ||
| >; | ||
@@ -129,3 +159,3 @@ join<J extends string, Id extends string | undefined = undefined>( | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, "join", Sql["joins"]>>>; | ||
| ): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, J>>>; | ||
@@ -136,36 +166,72 @@ joinIf<J extends string, Id extends string | undefined = undefined>( | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, "join", Sql["joins"]>>>; | ||
| ): SelectQueryBuilder<Schema, WithJoin<Sql, J, ResolveId<Id, J>>>; | ||
| groupBy<const Cols extends string | readonly string[], Id extends string | undefined = undefined>( | ||
| groupBy< | ||
| const Cols extends string | readonly string[], | ||
| Id extends string | undefined = undefined, | ||
| >( | ||
| columns: Cols, | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, "group", Sql["groupBys"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>> | ||
| >; | ||
| groupByIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>( | ||
| groupByIf< | ||
| const Cols extends string | readonly string[], | ||
| Id extends string | undefined = undefined, | ||
| >( | ||
| condition: boolean, | ||
| columns: Cols, | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, "group", Sql["groupBys"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithGroupBy<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>> | ||
| >; | ||
| having<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>( | ||
| having< | ||
| Cond extends string | ConditionTreeBuilder<any, any>, | ||
| Id extends string | undefined = undefined, | ||
| >( | ||
| condition: Cond, | ||
| id?: Id, | ||
| ): SelectQueryBuilder<Schema, WithHaving<Sql, CondText<Cond>, ResolveId<Id, "having", Sql["havings"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithHaving<Sql, CondText<Cond>, ResolveId<Id, CondText<Cond>>> | ||
| >; | ||
| havingIf<Cond extends string | ConditionTreeBuilder<any, any>, Id extends string | undefined = undefined>( | ||
| 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"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithHaving<Sql, CondText<Cond>, ResolveId<Id, CondText<Cond>>> | ||
| >; | ||
| orderBy<const Cols extends string | readonly string[], Id extends string | undefined = undefined>( | ||
| 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"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithOrderBy<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>> | ||
| >; | ||
| orderByIf<const Cols extends string | readonly string[], Id extends string | undefined = undefined>( | ||
| 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"]>>>; | ||
| ): SelectQueryBuilder< | ||
| Schema, | ||
| WithOrderBy<Sql, ColsText<Cols>, ResolveId<Id, ColsText<Cols>>> | ||
| >; | ||
@@ -182,13 +248,35 @@ /** Emit `SELECT DISTINCT`. Does not change the result column set. */ | ||
| limit<const L extends number>(limit: L): SelectQueryBuilder<Schema, WithLimit<Sql, L>>; | ||
| limitIf<const L extends number>(condition: boolean, limit: L): SelectQueryBuilder<Schema, WithLimit<Sql, L>>; | ||
| offset<const O extends number>(offset: O): SelectQueryBuilder<Schema, WithOffset<Sql, O>>; | ||
| offsetIf<const O extends number>(condition: boolean, offset: O): SelectQueryBuilder<Schema, WithOffset<Sql, O>>; | ||
| limit<const L extends number>( | ||
| limit: L, | ||
| ): SelectQueryBuilder<Schema, WithLimit<Sql, L>>; | ||
| limitIf<const L extends number>( | ||
| condition: boolean, | ||
| limit: L, | ||
| ): SelectQueryBuilder<Schema, WithLimit<Sql, L>>; | ||
| offset<const O extends number>( | ||
| offset: O, | ||
| ): SelectQueryBuilder<Schema, WithOffset<Sql, O>>; | ||
| offsetIf<const O extends number>( | ||
| condition: boolean, | ||
| offset: O, | ||
| ): SelectQueryBuilder<Schema, WithOffset<Sql, O>>; | ||
| removeSelect<Id extends string>(id: Id): SelectQueryBuilder<Schema, WithoutSelect<Sql, Id>>; | ||
| removeJoin<Id extends string>(id: Id): SelectQueryBuilder<Schema, WithoutJoin<Sql, Id>>; | ||
| removeWhere<Id extends string>(id: Id): SelectQueryBuilder<Schema, WithoutWhere<Sql, Id>>; | ||
| removeGroupBy<Id extends string>(id: Id): SelectQueryBuilder<Schema, WithoutGroupBy<Sql, Id>>; | ||
| removeHaving<Id extends string>(id: Id): SelectQueryBuilder<Schema, WithoutHaving<Sql, Id>>; | ||
| removeOrderBy<Id extends string>(id: Id): SelectQueryBuilder<Schema, WithoutOrderBy<Sql, Id>>; | ||
| removeSelect<Id extends string>( | ||
| id: Id, | ||
| ): SelectQueryBuilder<Schema, WithoutSelect<Sql, Id>>; | ||
| removeJoin<Id extends string>( | ||
| id: Id, | ||
| ): SelectQueryBuilder<Schema, WithoutJoin<Sql, Id>>; | ||
| removeWhere<Id extends string>( | ||
| id: Id, | ||
| ): SelectQueryBuilder<Schema, WithoutWhere<Sql, Id>>; | ||
| removeGroupBy<Id extends string>( | ||
| id: Id, | ||
| ): SelectQueryBuilder<Schema, WithoutGroupBy<Sql, Id>>; | ||
| removeHaving<Id extends string>( | ||
| id: Id, | ||
| ): SelectQueryBuilder<Schema, WithoutHaving<Sql, Id>>; | ||
| removeOrderBy<Id extends string>( | ||
| id: Id, | ||
| ): SelectQueryBuilder<Schema, WithoutOrderBy<Sql, Id>>; | ||
@@ -213,3 +301,5 @@ // Runtime introspection over keyed clause state. Plain booleans — no | ||
| apply<Sql2 extends SqlTag>( | ||
| fn: (b: SelectQueryBuilder<Schema, Sql>) => SelectQueryBuilder<Schema, Sql2>, | ||
| fn: ( | ||
| b: SelectQueryBuilder<Schema, Sql>, | ||
| ) => SelectQueryBuilder<Schema, Sql2>, | ||
| ): SelectQueryBuilder<Schema, Sql2>; | ||
@@ -219,3 +309,5 @@ | ||
| condition: boolean, | ||
| fn: (b: SelectQueryBuilder<Schema, Sql>) => SelectQueryBuilder<Schema, Sql2>, | ||
| fn: ( | ||
| b: SelectQueryBuilder<Schema, Sql>, | ||
| ) => SelectQueryBuilder<Schema, Sql2>, | ||
| ): SelectQueryBuilder<Schema, FlagNewConditional<Sql, Sql2>>; | ||
@@ -225,9 +317,9 @@ | ||
| toString(): string; | ||
| toBrandedString(): string & { __type: BuilderResultBrand<Schema, Sql> }; | ||
| toBrandedString(): string & { __type: BuilderResultBrand<Schema, Sql>; }; | ||
| } | ||
| // (No `DefaultId`: idless calls resolve a type-level auto id via `ResolveId` | ||
| // in each method's return type — see below.) | ||
| class SelectQueryBuilderImpl<Schema extends DatabaseSchema, Sql extends SqlTag> { | ||
| class SelectQueryBuilderImpl< | ||
| Schema extends DatabaseSchema, | ||
| Sql extends SqlTag, | ||
| > { | ||
| readonly _state: RuntimeSelectState; | ||
@@ -248,9 +340,7 @@ | ||
| select(columns: string | readonly string[], id?: string): any { | ||
| const rawCols = Array.isArray(columns) ? [...columns] : [columns as string]; | ||
| const cols = rawCols.length > 0 ? [...rawCols] : []; | ||
| const key = id ?? nextAutoId( | ||
| "select", | ||
| Object.keys(this._state.selectSql).length, | ||
| candidate => candidate in this._state.selectSql, | ||
| ); | ||
| const rawCols = Array.isArray(columns) | ||
| ? [ ...columns ] | ||
| : [ columns as string ]; | ||
| const cols = rawCols.length > 0 ? [ ...rawCols ] : []; | ||
| const key = id ?? cols.join(", "); | ||
| return this.next(this.clone({ | ||
@@ -261,7 +351,16 @@ selectSql: { ...this._state.selectSql, [key]: cols }, | ||
| selectIf(condition: boolean, columns: string | readonly string[], id?: string): any { | ||
| selectIf( | ||
| condition: boolean, | ||
| columns: string | readonly string[], | ||
| id?: string, | ||
| ): any { | ||
| return condition ? this.select(columns, id) : this.next(this._state); | ||
| } | ||
| from(source: string | { toString(): string; getParams(): ReadonlyArray<QueryParamValue> }): any { | ||
| from( | ||
| source: string | { | ||
| toString(): string; | ||
| getParams(): ReadonlyArray<QueryParamValue>; | ||
| }, | ||
| ): any { | ||
| let fromSql: string; | ||
@@ -274,5 +373,5 @@ if (typeof source === "string") { | ||
| throw new Error( | ||
| "from() does not support a parameterized subquery builder: the inner " + | ||
| "builder carries params that cannot be merged into the outer query. " + | ||
| "Inline the subquery as a string or remove its params.", | ||
| "from() does not support a parameterized subquery builder: the inner " | ||
| + "builder carries params that cannot be merged into the outer query. " | ||
| + "Inline the subquery as a string or remove its params.", | ||
| ); | ||
@@ -285,3 +384,6 @@ } | ||
| where(condition: string | ConditionTreeBuilder<any, any>, id?: string): any { | ||
| where( | ||
| condition: string | ConditionTreeBuilder<any, any>, | ||
| id?: string, | ||
| ): any { | ||
| // An empty condition tree contributes nothing — treat it as a no-op | ||
@@ -293,12 +395,16 @@ // (same as a false whereIf) so we never emit an invalid `WHERE ()`. | ||
| } | ||
| const key = id ?? nextAutoId( | ||
| "where", | ||
| Object.keys(this._state.whereSql).length, | ||
| candidate => candidate in this._state.whereSql, | ||
| const sql = typeof condition === "string" | ||
| ? condition | ||
| : condition.toString(); | ||
| const key = id ?? sql; | ||
| return this.next( | ||
| this.clone({ whereSql: { ...this._state.whereSql, [key]: sql } }), | ||
| ); | ||
| const sql = typeof condition === "string" ? condition : condition.toString(); | ||
| return this.next(this.clone({ whereSql: { ...this._state.whereSql, [key]: sql } })); | ||
| } | ||
| whereIf(condition: boolean, clause: string | ConditionTreeBuilder<any, any>, id?: string): any { | ||
| whereIf( | ||
| condition: boolean, | ||
| clause: string | ConditionTreeBuilder<any, any>, | ||
| id?: string, | ||
| ): any { | ||
| return condition ? this.where(clause, id) : this.next(this._state); | ||
@@ -308,7 +414,3 @@ } | ||
| join(joinSql: string, id?: string): any { | ||
| const key = id ?? nextAutoId( | ||
| "join", | ||
| this._state.joins.length, | ||
| candidate => this._state.joins.some(j => j.id === candidate), | ||
| ); | ||
| const key = id ?? joinSql; | ||
| // Idempotent by id: re-joining an existing id only replaces its SQL in | ||
@@ -318,3 +420,5 @@ // joinSql below, keeping the ordering array (and thus its FROM-chain | ||
| const existing = this._state.joins.some(j => j.id === key); | ||
| const nextJoins = existing ? this._state.joins : [...this._state.joins, { id: key }]; | ||
| const nextJoins = existing | ||
| ? this._state.joins | ||
| : [ ...this._state.joins, { id: key } ]; | ||
| return this.next(this.clone({ | ||
@@ -331,18 +435,26 @@ joinSql: { ...this._state.joinSql, [key]: joinSql }, | ||
| groupBy(columns: string | readonly string[], id?: string): any { | ||
| const rawCols = Array.isArray(columns) ? [...columns] : [columns as string]; | ||
| const key = id ?? nextAutoId( | ||
| "group", | ||
| Object.keys(this._state.groupBySql).length, | ||
| candidate => candidate in this._state.groupBySql, | ||
| ); | ||
| const rawCols = Array.isArray(columns) | ||
| ? [ ...columns ] | ||
| : [ columns as string ]; | ||
| const key = id ?? rawCols.join(", "); | ||
| return this.next(this.clone({ | ||
| groupBySql: { ...this._state.groupBySql, [key]: rawCols.join(", ") }, | ||
| groupBySql: { | ||
| ...this._state.groupBySql, | ||
| [key]: rawCols.join(", "), | ||
| }, | ||
| })); | ||
| } | ||
| groupByIf(condition: boolean, columns: string | readonly string[], id?: string): any { | ||
| groupByIf( | ||
| condition: boolean, | ||
| columns: string | readonly string[], | ||
| id?: string, | ||
| ): any { | ||
| return condition ? this.groupBy(columns, id) : this.next(this._state); | ||
| } | ||
| having(condition: string | ConditionTreeBuilder<any, any>, id?: string): any { | ||
| having( | ||
| condition: string | ConditionTreeBuilder<any, any>, | ||
| id?: string, | ||
| ): any { | ||
| // An empty condition tree is a no-op (see where()): never emit | ||
@@ -353,12 +465,16 @@ // `HAVING ()`. String conditions are applied verbatim. | ||
| } | ||
| const key = id ?? nextAutoId( | ||
| "having", | ||
| Object.keys(this._state.havingSql).length, | ||
| candidate => candidate in this._state.havingSql, | ||
| const sql = typeof condition === "string" | ||
| ? condition | ||
| : condition.toString(); | ||
| const key = id ?? sql; | ||
| return this.next( | ||
| this.clone({ havingSql: { ...this._state.havingSql, [key]: sql } }), | ||
| ); | ||
| const sql = typeof condition === "string" ? condition : condition.toString(); | ||
| return this.next(this.clone({ havingSql: { ...this._state.havingSql, [key]: sql } })); | ||
| } | ||
| havingIf(condition: boolean, clause: string | ConditionTreeBuilder<any, any>, id?: string): any { | ||
| havingIf( | ||
| condition: boolean, | ||
| clause: string | ConditionTreeBuilder<any, any>, | ||
| id?: string, | ||
| ): any { | ||
| return condition ? this.having(clause, id) : this.next(this._state); | ||
@@ -368,14 +484,19 @@ } | ||
| orderBy(columns: string | readonly string[], id?: string): any { | ||
| const rawCols = Array.isArray(columns) ? [...columns] : [columns as string]; | ||
| const key = id ?? nextAutoId( | ||
| "order", | ||
| Object.keys(this._state.orderBySql).length, | ||
| candidate => candidate in this._state.orderBySql, | ||
| ); | ||
| const rawCols = Array.isArray(columns) | ||
| ? [ ...columns ] | ||
| : [ columns as string ]; | ||
| const key = id ?? rawCols.join(", "); | ||
| return this.next(this.clone({ | ||
| orderBySql: { ...this._state.orderBySql, [key]: rawCols.join(", ") }, | ||
| orderBySql: { | ||
| ...this._state.orderBySql, | ||
| [key]: rawCols.join(", "), | ||
| }, | ||
| })); | ||
| } | ||
| orderByIf(condition: boolean, columns: string | readonly string[], id?: string): any { | ||
| orderByIf( | ||
| condition: boolean, | ||
| columns: string | readonly string[], | ||
| id?: string, | ||
| ): any { | ||
| return condition ? this.orderBy(columns, id) : this.next(this._state); | ||
@@ -389,3 +510,5 @@ } | ||
| distinctOn(columns: string | readonly string[]): any { | ||
| const cols = Array.isArray(columns) ? columns.join(", ") : (columns as string); | ||
| const cols = Array.isArray(columns) | ||
| ? columns.join(", ") | ||
| : (columns as string); | ||
| return this.next(this.clone({ distinctOn: cols })); | ||
@@ -424,3 +547,5 @@ } | ||
| } | ||
| return this.next(this.clone({ joinSql: nextJoinSql, joins: nextJoins })); | ||
| return this.next( | ||
| this.clone({ joinSql: nextJoinSql, joins: nextJoins }), | ||
| ); | ||
| } | ||
@@ -510,6 +635,19 @@ | ||
| const namedParams = this._state.namedParams; | ||
| if (this._state.namedParamsBound || Object.keys(namedParams).length > 0) { | ||
| if ( | ||
| this._state.namedParamsBound || Object.keys(namedParams).length > 0 | ||
| ) { | ||
| const sql = assembleSelectSQLPreSub(this._state); | ||
| assertAllNamedParamsProvided(sql, namedParams); | ||
| return collectParamValues(sql, namedParams); | ||
| assertAllProvided(sql, namedParams); | ||
| // IN-list-gated value collection (spec §6.5), shared with writes: an | ||
| // array bound outside `IN (...)` (e.g. `= ANY(:ids)`) passes through | ||
| // as ONE array value rather than being spread into N scalars. Such a | ||
| // value is the array itself (a `readonly SqlValue[]`-shaped driver | ||
| // param, serialized by the adapter), which the scalar-typed | ||
| // `QueryParamValue` return doesn't name — so cast at this boundary. | ||
| // The public return type is kept narrow (not widened to `unknown`) so | ||
| // consumers whose `select()` requires `getParams(): SqlValue[]` still | ||
| // accept the builder; the driver handles the array at runtime. | ||
| return collectScanned(sql, namedParams) as ReadonlyArray< | ||
| QueryParamValue | ||
| >; | ||
| } | ||
@@ -542,4 +680,8 @@ return this._state.params; | ||
| export function createSelectQuery<Schema extends DatabaseSchema>(): SelectQueryBuilder<Schema, EmptySqlTag> { | ||
| return new SelectQueryBuilderImpl<Schema, EmptySqlTag>(EMPTY_RUNTIME_STATE) as unknown as SelectQueryBuilder<Schema, EmptySqlTag>; | ||
| export function createSelectQuery< | ||
| Schema extends DatabaseSchema, | ||
| >(): SelectQueryBuilder<Schema, EmptySqlTag> { | ||
| return new SelectQueryBuilderImpl<Schema, EmptySqlTag>( | ||
| EMPTY_RUNTIME_STATE, | ||
| ) as unknown as SelectQueryBuilder<Schema, EmptySqlTag>; | ||
| } |
+11
-34
@@ -53,12 +53,8 @@ // src/builder/sql-tag.ts | ||
| // (`fn<Schema, Sql extends SqlTag>(b)`), `Sql["wheres"]` is the symbolic | ||
| // `readonly Frag[]` and the auto id becomes a `where_${number}` pattern; the | ||
| // tuple recursion then matches a variadic `[...Frag[], X]` and TS widens the | ||
| // inferred head `H` to the declared bound. With the looser `{ id: string }` bound | ||
| // that widened element drops `text`, so the accumulated list is no longer | ||
| // assignable to `readonly Frag[]` and any downstream `Sql2 extends SqlTag` check | ||
| // (e.g. `setPeriod(b)`) fails. Both `Frag` AND `SelFrag` carry `id` + `text`, so | ||
| // the tighter bound keeps the widened element `Frag`-assignable while leaving | ||
| // concrete-tuple inference (every literal `EmptySqlTag` chain) unchanged — the | ||
| // bound is only an upper limit; exact element types are still inferred for real | ||
| // tuples. | ||
| // `readonly Frag[]`; tuple recursion can then widen the inferred head `H` to the | ||
| // declared bound. With the looser `{ id: string }` bound that widened element | ||
| // drops `text`, so the accumulated list is no longer assignable to | ||
| // `readonly Frag[]` and downstream `Sql2 extends SqlTag` checks fail. Both | ||
| // `Frag` and `SelFrag` carry `id` + `text`, so the tighter bound keeps the | ||
| // widened element `Frag`-assignable while concrete tuples remain exact. | ||
| type HasId<List extends readonly { id: string }[], Id extends string> = | ||
@@ -96,28 +92,9 @@ List extends readonly [infer H extends { id: string; text: string }, ...infer R extends readonly { id: string; text: string }[]] | ||
| type MkTuple<N extends number, Acc extends any[] = []> = | ||
| Acc["length"] extends N ? Acc : MkTuple<N, [any, ...Acc]>; | ||
| type AutoIdFrom< | ||
| Prefix extends string, | ||
| List extends readonly { id: string }[], | ||
| N extends any[], | ||
| > = HasId<List, `${Prefix}_${N["length"] & number}`> extends true | ||
| ? AutoIdFrom<Prefix, List, [any, ...N]> | ||
| : `${Prefix}_${N["length"] & number}`; | ||
| // --- type-level auto-id (mirrors runtime first-unused `<prefix>_${n}`) --- | ||
| // Normal append-only chains keep the old ids (`where_0`, `where_1`, ...). After | ||
| // removal, start at the current count and skip any surviving id to avoid | ||
| // replacing an unrelated fragment. | ||
| export type AutoId<Prefix extends string, List extends readonly { id: string }[]> = | ||
| number extends List["length"] | ||
| ? `${Prefix}_${number}` | ||
| : AutoIdFrom<Prefix, List, MkTuple<List["length"] & number>>; | ||
| // An explicit caller id wins; `undefined` → the clause's auto id. | ||
| // An explicit caller id wins; otherwise the rendered SQL text is the fragment | ||
| // id. This makes implicit identical fragments idempotent and avoids maintaining | ||
| // a second type-level/runtime auto-id algorithm. | ||
| export type ResolveId< | ||
| Provided extends string | undefined, | ||
| Prefix extends string, | ||
| List extends readonly { id: string }[], | ||
| > = Provided extends string ? Provided : AutoId<Prefix, List>; | ||
| Text extends string, | ||
| > = [Provided] extends [undefined] ? Text : Provided & string; | ||
@@ -124,0 +101,0 @@ // --- per-clause `With*` helpers used by select.ts --- |
+46
-1
@@ -10,2 +10,10 @@ import type { AnyTrue, Simplify, UnionToIntersection } from "./utils.js"; | ||
| functions?: Record<string, FunctionSignature>; | ||
| // Optional schema-wide cast-target map, keyed by the cast's target type name | ||
| // alone (case-insensitive, unqualified): `citext → string`, `geometry → | ||
| // Geometry`, a domain, an enum union. The per-schema counterpart to the | ||
| // augmentable `PgTypeOverrides`. Only consulted for cast targets the built-in | ||
| // scalar map can't resolve (the uninformative gate — see `CastTypeToTs`), so | ||
| // it names CUSTOM types and never silently redefines a built-in like `::text`. | ||
| // Absent ⇒ identical behavior to before this field existed. | ||
| casts?: Record<string, any>; | ||
| }; | ||
@@ -15,6 +23,9 @@ | ||
| // (e.g. `number | null` for a nullable numeric function). `params` is RESERVED | ||
| // for future argument-type validation and is NOT consumed anywhere yet. | ||
| // for future argument-type validation and is NOT consumed anywhere yet. `casts` | ||
| // maps a cast target name → the TS type FOR THIS function (`ST_AsGeoJSON(...)::json | ||
| // → Point | null`), for targets determinate only in combination with this call. | ||
| export type FunctionSignature = { | ||
| returns: any; | ||
| params?: readonly any[]; | ||
| casts?: Record<string, any>; | ||
| }; | ||
@@ -188,1 +199,35 @@ | ||
| : false; | ||
| // Schema-wide cast-target resolver. `Name` is the already-normalized target type | ||
| // key (lowercased, qualifier-/array-stripped — see `NormalizeCastKey`). Yields | ||
| // the declared TS type, or `never` when the schema declares no `casts` map or the | ||
| // key is absent (caller falls through to the built-in). The `S extends { casts }` | ||
| // guard makes a schema WITHOUT the field zero-cost — the lookup never | ||
| // instantiates. `[K] extends [never]` short-circuits the missing-key case without | ||
| // distributing. | ||
| export type SchemaCastType<Name extends string, S extends DatabaseSchema> = | ||
| S extends { casts: infer C extends Record<string, any> } | ||
| ? MatchKeyCaseInsensitive<C, Name> extends infer K extends string | ||
| ? [K] extends [never] | ||
| ? never | ||
| : C[K] | ||
| : never | ||
| : never; | ||
| // Per-function cast-target resolver. Mirrors `SchemaCastType` but keyed under a | ||
| // specific function's `casts` map (`functions[Func].casts[Name]`). Yields `never` | ||
| // when the function is undeclared, declares no `casts` map, or the key is absent. | ||
| // The most specific of the cast maps — an explicit entry is deliberate intent, so | ||
| // the caller lets it win even over a built-in target. | ||
| export type FunctionCastType<Func extends string, Name extends string, S extends DatabaseSchema> = | ||
| SchemaFunctionSig<Func, S> extends infer Sig | ||
| ? [Sig] extends [never] | ||
| ? never | ||
| : Sig extends { casts: infer C extends Record<string, any> } | ||
| ? MatchKeyCaseInsensitive<C, Name> extends infer K extends string | ||
| ? [K] extends [never] | ||
| ? never | ||
| : C[K] | ||
| : never | ||
| : never | ||
| : never; |
+18
-0
@@ -25,2 +25,20 @@ // Shared boolean and type utilities. | ||
| // True when `T` is exactly `unknown` (or `any`). Used to detect a cast whose | ||
| // target type carries no useful information (e.g. `::json` -> `unknown`), so a | ||
| // modeled function's declared return can take precedence over it. | ||
| // | ||
| // Robust under `strictNullChecks: false`: a naked `unknown extends T` ALSO matches | ||
| // any object type whose properties are ALL optional (under SNC-false such a type | ||
| // behaves like `{}`), which would misclassify a real object column as the | ||
| // uninformative top type. Excluding `object` keeps the test to genuine top types; | ||
| // `any` is detected up front (via `0 extends 1 & T`) so it still qualifies. | ||
| export type IsUnknown<T> = | ||
| 0 extends (1 & T) | ||
| ? true | ||
| : [T] extends [never] | ||
| ? false | ||
| : [unknown] extends [T] | ||
| ? [T] extends [object] ? false : true | ||
| : false; | ||
| // True when `T` is a union of two or more members. A single member (or `never`) | ||
@@ -27,0 +45,0 @@ // is not a union. Used to test that a JOIN ... USING column exists on more than |
| // SELECT/RETURNING result inference + select-return assembly. | ||
| import type { AliasesInQuery, NullableRelations, TablesInQuery } from "../tables.js"; | ||
| import type { AllTrue, MergeRow, Simplify } from "../utils.js"; | ||
| import type { AllTrue, IsUnknown, MergeRow, Simplify } from "../utils.js"; | ||
| import type { CleanIdent, ExtractAlias, ExtractAliasResult, ExtractReturningList, ExtractSelectList, SplitSelectList, StripSubqueries, Trim } from "../parsing.js"; | ||
@@ -181,6 +181,6 @@ import type { ColumnExists, DatabaseSchema } from "../schema.js"; | ||
| // `true` for the `unknown` top type only (a column whose type we couldn't infer). | ||
| // `[unknown] extends [T]` holds only when T is `unknown` (or `any`, which never | ||
| // reaches here from inference). Guard `never` first so `[never]` doesn't qualify. | ||
| type IsUnknown<T> = [T] extends [never] ? false : [unknown] extends [T] ? true : false; | ||
| // `IsUnknown` (from utils) is `true` only for the `unknown`/`any` top type — a | ||
| // column whose type we couldn't infer. It is robust under `strictNullChecks: | ||
| // false`, where a naive `[unknown] extends [T]` would ALSO match an all-optional | ||
| // object column (e.g. a jsonb-overlay shape) and wrongly drop it here. | ||
@@ -187,0 +187,0 @@ // Of two types for the SAME duplicate output alias, pick the more informative: |
Sorry, the diff of this file is too big to display
1302827
1.36%15038
2.33%358
25.61%