@kuindji/typed-sql 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +7 -0
  2. package/dist/builder/assemble.d.ts.map +1 -1
  3. package/dist/builder/assemble.js +9 -10
  4. package/dist/builder/assemble.js.map +1 -1
  5. package/dist/builder/conditional-sql.d.ts +7 -2
  6. package/dist/builder/conditional-sql.d.ts.map +1 -1
  7. package/dist/builder/conditional-sql.js +9 -22
  8. package/dist/builder/conditional-sql.js.map +1 -1
  9. package/dist/builder/params.d.ts +2 -1
  10. package/dist/builder/params.d.ts.map +1 -1
  11. package/dist/builder/params.js +34 -27
  12. package/dist/builder/params.js.map +1 -1
  13. package/dist/builder/select.d.ts +7 -0
  14. package/dist/builder/select.d.ts.map +1 -1
  15. package/dist/builder/select.js +7 -2
  16. package/dist/builder/select.js.map +1 -1
  17. package/dist/builder/state.d.ts +3 -6
  18. package/dist/builder/state.d.ts.map +1 -1
  19. package/dist/builder/state.js +1 -2
  20. package/dist/builder/state.js.map +1 -1
  21. package/dist/expressions.d.ts +12 -6
  22. package/dist/expressions.d.ts.map +1 -1
  23. package/dist/parsing/extract.d.ts +2 -1
  24. package/dist/parsing/extract.d.ts.map +1 -1
  25. package/dist/parsing/normalize.d.ts +10 -5
  26. package/dist/parsing/normalize.d.ts.map +1 -1
  27. package/dist/parsing/pg-literals.d.ts +2 -2
  28. package/dist/parsing/pg-literals.d.ts.map +1 -1
  29. package/dist/parsing/tokenize.d.ts +8 -6
  30. package/dist/parsing/tokenize.d.ts.map +1 -1
  31. package/dist/tables.d.ts +2 -2
  32. package/dist/tables.d.ts.map +1 -1
  33. package/dist/validation/dispatch.d.ts +3 -1
  34. package/dist/validation/dispatch.d.ts.map +1 -1
  35. package/dist/validation/return-derived.d.ts +8 -4
  36. package/dist/validation/return-derived.d.ts.map +1 -1
  37. package/dist/validation/return-derived.js.map +1 -1
  38. package/dist/validation/return-types.d.ts +1 -1
  39. package/dist/validation/return-types.d.ts.map +1 -1
  40. package/dist/validation/validate-columns.d.ts +17 -6
  41. package/dist/validation/validate-columns.d.ts.map +1 -1
  42. package/package.json +3 -2
  43. package/src/builder/assemble.ts +9 -13
  44. package/src/builder/conditional-sql.ts +9 -27
  45. package/src/builder/params.ts +33 -27
  46. package/src/builder/select.ts +19 -2
  47. package/src/builder/state.ts +4 -6
  48. package/src/expressions.ts +47 -7
  49. package/src/parsing/extract.ts +18 -4
  50. package/src/parsing/normalize.ts +143 -48
  51. package/src/parsing/pg-literals.ts +23 -12
  52. package/src/parsing/tokenize.ts +56 -23
  53. package/src/tables.ts +35 -4
  54. package/src/validation/dispatch.ts +21 -3
  55. package/src/validation/return-derived.ts +60 -4
  56. package/src/validation/return-types.ts +9 -3
  57. package/src/validation/validate-columns.ts +123 -13
@@ -1,6 +1,6 @@
1
- import type { AliasesInQuery, TablesInQuery } from "../tables.js";
1
+ import type { AliasesInQuery, NullableRelations, TablesInQuery } from "../tables.js";
2
2
  import type { ApplyJoinNull, OuterCastTs, RefQualifier } from "../expressions.js";
3
- import type { CleanIdent, ExtractAliasResult, ExtractFromClause, ExtractSelectList, SplitBalancedParen, SplitCommaSimple, SplitSelectList, Trim, TrimLeft } from "../parsing.js";
3
+ import type { CleanIdent, ExtractAliasResult, ExtractFromClause, ExtractSelectList, SplitBalancedParen, SplitCommaSimple, SplitSelectList, StripSubqueries, Trim, TrimLeft } from "../parsing.js";
4
4
  import type { DatabaseSchema } from "../schema.js";
5
5
  import type { MergeRow, SelectReturnWith } from "./return-types.js";
6
6
  import type { Simplify, UnionToIntersection } from "../utils.js";
@@ -35,12 +35,16 @@ export type DerivedTableReturn<N extends string, S extends DatabaseSchema> = Der
35
35
  body: infer Body extends string;
36
36
  alias: infer DAlias extends string;
37
37
  cols: infer Cols extends string[];
38
- } ? DerivedRenamedRow<Body, Cols, S> extends infer SubRow ? BuildDerivedReturn<SplitSelectList<ExtractSelectList<N>>, DAlias, SubRow> : {} : {};
38
+ } ? DerivedRenamedRow<Body, Cols, S> extends infer SubRow ? Simplify<MergeRow<DerivedJoinedBaseRow<N, S>, BuildDerivedReturn<SplitSelectList<ExtractSelectList<N>>, DAlias, SubRow>>> : {} : {};
39
+ export type DerivedJoinedBaseRow<N extends string, S extends DatabaseSchema> = StripSubqueries<N> extends infer Outer extends string ? Outer extends `${string} join ${string}` ? TablesInQuery<Outer, S> extends infer OT extends string ? AliasesInQuery<Outer, S> extends infer OA extends string ? SelectReturnWith<ExtractSelectList<N>, OT, OA, S, NullableRelations<N, S>> : {} : {} : {} : {};
39
40
  export type BuildDerivedReturn<Exprs extends string[], DAlias extends string, SubRow, Acc = {}, Steps extends any[] = []> = Steps["length"] extends 100 ? Simplify<Acc> : Exprs extends [infer H extends string, ...infer Rest extends string[]] ? BuildDerivedReturn<Rest, DAlias, SubRow, MergeRow<Acc, DerivedExprToObject<H, DAlias, SubRow>>, [any, ...Steps]> : Simplify<Acc>;
41
+ export type IsBareIdent<S extends string> = S extends "" ? false : S extends `${string}${" " | "(" | ")" | "+" | "-" | "*" | "/" | ":" | "'" | "\"" | "[" | "]" | "," | "." | "=" | "<" | ">" | "|" | "%" | "!" | "~" | "@"}${string}` ? false : true;
42
+ export type SimpleQualRef<E extends string> = CleanIdent<E> extends `${infer Q}.${infer Col}` ? IsBareIdent<Q> extends true ? IsBareIdent<Col> extends true ? Q : never : never : never;
43
+ export type IsForeignSimpleRef<RawExpr extends string, DAlias extends string> = SimpleQualRef<RawExpr> extends infer Q extends string ? [Q] extends [never] ? false : Q extends DAlias ? (DAlias extends Q ? false : true) : true : false;
40
44
  export type DerivedExprToObject<E extends string, DAlias extends string, SubRow, Nullable extends string = never> = ExtractAliasResult<E> extends {
41
45
  expr: infer RawExpr extends string;
42
46
  alias: infer OutAlias;
43
- } ? [OutAlias] extends [never] ? CleanIdent<RawExpr> extends "*" ? SubRow : CleanIdent<RawExpr> extends `${DAlias}.*` ? SubRow : DerivedColKey<RawExpr, DAlias> extends infer K extends string ? {
47
+ } ? IsForeignSimpleRef<RawExpr, DAlias> extends true ? {} : [OutAlias] extends [never] ? CleanIdent<RawExpr> extends "*" ? SubRow : CleanIdent<RawExpr> extends `${DAlias}.*` ? SubRow : DerivedColKey<RawExpr, DAlias> extends infer K extends string ? {
44
48
  [P in K]: ApplyJoinNull<DerivedProjType<RawExpr, K, SubRow>, RawExpr, Nullable>;
45
49
  } : Record<string, unknown> : OutAlias extends string ? {
46
50
  [P in OutAlias]: ApplyJoinNull<DerivedProjType<RawExpr, DerivedColKey<RawExpr, DAlias>, SubRow>, RawExpr, Nullable>;
@@ -1 +1 @@
1
- {"version":3,"file":"return-derived.d.ts","sourceRoot":"","sources":["../../src/validation/return-derived.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"return-derived.d.ts","sourceRoot":"","sources":["../../src/validation/return-derived.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"return-derived.js","sourceRoot":"","sources":["../../src/validation/return-derived.ts"],"names":[],"mappings":";AA0PA,8EAA8E;AAC9E,gFAAgF;AAChF,6EAA6E"}
1
+ {"version":3,"file":"return-derived.js","sourceRoot":"","sources":["../../src/validation/return-derived.ts"],"names":[],"mappings":";AAkTA,8EAA8E;AAC9E,gFAAgF;AAChF,6EAA6E"}
@@ -35,7 +35,7 @@ export type RefScanBeforeOrderBy<N extends string> = RefScanSegment<N> extends i
35
35
  export type RefScanOrderBy<N extends string> = RefScanSegment<N> extends infer Seg extends string ? Seg extends `${string} order by ${infer After}` ? `order by ${After}` : "" : "";
36
36
  export type SelectAliases<Exprs extends string[], Acc extends string = never, Steps extends any[] = []> = Steps["length"] extends 140 ? Acc : Exprs extends [infer H extends string, ...infer Rest extends string[]] ? ExtractAlias<H> extends {
37
37
  alias: infer Alias;
38
- } ? Alias extends string ? SelectAliases<Rest, Acc | Alias, [any, ...Steps]> : SelectAliases<Rest, Acc, [any, ...Steps]> : SelectAliases<Rest, Acc, [any, ...Steps]> : Acc;
38
+ } ? [Alias] extends [never] ? SelectAliases<Rest, Acc, [any, ...Steps]> : Alias extends string ? SelectAliases<Rest, Acc | Alias, [any, ...Steps]> : SelectAliases<Rest, Acc, [any, ...Steps]> : SelectAliases<Rest, Acc, [any, ...Steps]> : Acc;
39
39
  export type ColumnsExistInTable<Cols extends string[], TableKey extends string, S extends DatabaseSchema> = AllTrue<Cols[number] extends infer C ? (C extends string ? ColumnExists<TableKey, CleanIdent<C>, S> : true) : true>;
40
40
  export {};
41
41
  //# sourceMappingURL=return-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"return-types.d.ts","sourceRoot":"","sources":["../../src/validation/return-types.ts"],"names":[],"mappings":"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"}
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,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACzI,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,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,GAMpC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,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;AAGxE,KAAK,UAAU,CACX,KAAK,SAAS,MAAM,EAAE,EACtB,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,EACtB,CAAC,SAAS,cAAc,EACxB,QAAQ,SAAS,MAAM,EACvB,GAAG,SAAS,GAAG,EAAE,GAAG,EAAE,IACtB,GAAG,CAAC,QAAQ,CAAC,SAAS,GAAG,GACvB,GAAG,GACH,KAAK,SAAS,CAAC,MAAM,CAAC,SAAS,MAAM,EAAE,GAAG,MAAM,IAAI,SAAS,MAAM,EAAE,CAAC,GAClE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,GAAG,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GACvG,GAAG,CAAC;AAUd,KAAK,SAAS,CAAC,CAAC,SAAS,GAAG,EAAE,IAC1B,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,IAAI,SAAS,GAAG,EAAE,CAAC,GACnD,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,GACxC,CAAC,CAAC;AAEZ,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;AAUrC,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;AAKnC,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,CACrB,KAAK,SAAS,MAAM,EAAE,EACtB,GAAG,SAAS,MAAM,GAAG,KAAK,EAC1B,KAAK,SAAS,GAAG,EAAE,GAAG,EAAE,IACxB,KAAK,CAAC,QAAQ,CAAC,SAAS,GAAG,GACzB,GAAG,GACH,KAAK,SAAS,CAAC,MAAM,CAAC,SAAS,MAAM,EAAE,GAAG,MAAM,IAAI,SAAS,MAAM,EAAE,CAAC,GAClE,YAAY,CAAC,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,KAAK,CAAA;CAAE,GAK1C,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GACnB,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,GACzC,KAAK,SAAS,MAAM,GAChB,aAAa,CAAC,IAAI,EAAE,GAAG,GAAG,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,GACjD,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,GACjD,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,GAC7C,GAAG,CAAC;AAId,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"}
@@ -3,9 +3,9 @@ import type { AllTrue, And, StartsWith } from "../utils.js";
3
3
  import type { CleanIdent, DQuoteSpaceSentinel, ExceedsLengthBudget, ExtractAliasResult, ExtractBefore, ExtractConflictColumns, ExtractConflictUpdateExcludedCols, ExtractConflictUpdateSetColumns, ExtractInsertColumns, ExtractLastWhere, ExtractReturningList, ExtractSelectList, ExtractUpdateSetColumns, ReplaceAll, SplitSelectList, StripSubqueries, TokenizeLoose, Trim } from "../parsing.js";
4
4
  import type { ColumnRefValidLooseWith, IsSimpleRefPart, QualifiedColumnRefs, ResolveAlias, TableKeysByName, UnqualifiedColumnRefs, UnqualifiedColumnValid } from "../columns.js";
5
5
  import type { ColumnsExistInTable, RefScanBeforeOrderBy, RefScanOrderBy, RefScanSegment, SelectAliasesInQuery, SelectAliasSet } from "./return-types.js";
6
- import type { CteRow, SingleCteMatch } from "./cte.js";
6
+ import type { CteNames, CteRow, SingleCteMatch } from "./cte.js";
7
7
  import type { DatabaseSchema } from "../schema.js";
8
- import type { DerivedRenamedRow, DerivedTableMatch } from "./return-derived.js";
8
+ import type { AliasHasNoSpace, DerivedRenamedRow, DerivedTableMatch } from "./return-derived.js";
9
9
  import type { ExprsValidList } from "../expressions.js";
10
10
  import type { HasReturning, QueryKind, ValidateSQLNormalized } from "./dispatch.js";
11
11
  export type ValidateCteShape<N extends string, S extends DatabaseSchema> = SingleCteMatch<N> extends {
@@ -44,20 +44,31 @@ export type SelectUnqualifiedRefsScoped<N extends string, S extends DatabaseSche
44
44
  SelectAliases
45
45
  ] extends [never] ? UnqualifiedColumnRefsValidFor<N, S, Tables, Aliases, TokenizeLoose<RefScanSegment<N>>, never> : And<UnqualifiedColumnRefsValidFor<N, S, Tables, Aliases, TokenizeLoose<RefScanBeforeOrderBy<N>>, never>, UnqualifiedColumnRefsValidFor<N, S, Tables, Aliases, TokenizeLoose<RefScanOrderBy<N>>, SelectAliases>, true, true, true>;
46
46
  export type ColumnsValidInSelectOrReturning<N extends string, S extends DatabaseSchema> = TablesInQuery<N, S> extends infer Tables extends string ? AliasesInQuery<N, S> extends infer Aliases extends string ? ColumnsValidInSelectOrReturningFor<N, S, Tables, Aliases> : true : true;
47
- export type ColumnsValidInSelectOrReturningFor<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string> = HasReturning<N> extends true ? [Tables] extends [never] ? true : ExprsValidList<SplitSelectList<ReplaceAll<ExtractReturningList<N>, DQuoteSpaceSentinel, " ">>, Tables, Aliases, S> : QueryKind<N> extends "select" ? [Tables] extends [never] ? true : ExprsValidList<SplitSelectList<ReplaceAll<ExtractSelectList<N>, DQuoteSpaceSentinel, " ">>, Tables, Aliases, S> : true;
47
+ export type ColumnsValidInSelectOrReturningFor<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string> = HasReturning<N> extends true ? [Tables] extends [never] ? true : ExprsValidList<SplitSelectList<ReplaceAll<ExtractReturningList<N>, DQuoteSpaceSentinel, " ">>, Tables, Aliases, S, [], SelectLocalRels<N>> : QueryKind<N> extends "select" ? [Tables] extends [never] ? true : ExprsValidList<SplitSelectList<ReplaceAll<ExtractSelectList<N>, DQuoteSpaceSentinel, " ">>, Tables, Aliases, S, [], SelectLocalRels<N>> : true;
48
+ type SelectLocalRels<N extends string> = N extends `with ${string}` ? CteNames<N> : never;
48
49
  export type ColumnsValidInInsert<N extends string, S extends DatabaseSchema> = QueryKind<N> extends "insert" ? InsertTargetTable<N, S> extends infer TableKey extends string ? TableKey extends never ? true : And<ColumnsExistInTable<ExtractInsertColumns<N>, TableKey, S>, ColumnsExistInTable<ExtractConflictColumns<N>, TableKey, S>, ColumnsExistInTable<ExtractConflictUpdateSetColumns<N>, TableKey, S>, ColumnsExistInTable<ExtractConflictUpdateExcludedCols<N>, TableKey, S>, true> : true : true;
49
50
  export type ColumnsValidInUpdate<N extends string, S extends DatabaseSchema> = QueryKind<N> extends "update" ? UpdateTargetTable<N, S> extends infer TableKey extends string ? TableKey extends never ? true : ColumnsExistInTable<ExtractUpdateSetColumns<N>, TableKey, S> : true : true;
50
51
  export type QualifiedColumnRefsValid<N extends string, S extends DatabaseSchema> = TablesInQuery<N, S> extends infer Tables extends string ? AliasesInQuery<N, S> extends infer Aliases extends string ? TokenizeLoose<RefScanSegment<N>> extends infer LooseTokens extends string[] ? QualifiedColumnRefsValidFor<N, S, Tables, Aliases, LooseTokens> : true : true : true;
51
- export type QualifiedColumnRefsValidFor<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string, LooseTokens extends string[]> = QualifiedColumnRefs<LooseTokens, S, Tables, Aliases> extends infer Cols ? AllTrue<Cols extends string ? ColumnRefValidLooseWith<Cols, Tables, Aliases, S> : true> : true;
52
+ export type QualifiedColumnRefsValidFor<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string, LooseTokens extends string[]> = HasLocalRelations<N> extends true ? QualifiedRefsValidWithLocal<N, S, Tables, Aliases, LooseTokens, CteNames<N>> : QualifiedColumnRefs<LooseTokens, S, Tables, Aliases> extends infer Cols ? AllTrue<Cols extends string ? ColumnRefValidLooseWith<Cols, Tables, Aliases, S> : true> : true;
53
+ type HasLocalRelations<N extends string> = N extends `with ${string}` ? true : N extends `${string} from (${string}` ? true : N extends `${string} join (${string}` ? true : false;
54
+ type QualifiedRefsValidWithLocal<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string, LooseTokens extends string[], Ctes extends string> = QualifiedColumnRefs<LooseTokens, S, Tables, Aliases> extends infer Cols ? AllTrue<Cols extends string ? IsLocalRelation<RefQualifierOf<Cols>, Ctes, N> extends true ? true : ColumnRefValidLooseWith<Cols, Tables, Aliases, S> : true> : true;
55
+ type RefQualifierOf<Col extends string> = Col extends `${infer Q}.${string}` ? CleanIdent<Q> : never;
56
+ type IsLocalRelation<Q extends string, Ctes extends string, N extends string> = [
57
+ Q
58
+ ] extends [never] ? false : Q extends Ctes ? true : IsDerivedSourceAlias<Q, N>;
59
+ type IsDerivedSourceAlias<Q extends string, N extends string> = N extends `${string}) as ${Q} ${string}` ? true : N extends `${string}) as ${Q}(${string}` ? true : N extends `${string}) as ${Q}` ? true : N extends `${string}) ${Q} ${string}` ? true : N extends `${string}) ${Q}(${string}` ? true : N extends `${string}) ${Q}` ? true : false;
52
60
  export type AliasedTableKeys<Aliases extends string> = Aliases extends `${string}=>${infer T}` ? T : never;
53
61
  export type QualifierShadowedByAlias<Q extends string, Tables extends string, Aliases extends string, S extends DatabaseSchema> = [
54
62
  ResolveAlias<CleanIdent<Q>, Aliases>
55
63
  ] extends [never] ? [Extract<TableKeysByName<CleanIdent<Q>, Tables>, AliasedTableKeys<Aliases>>] extends [never] ? false : true : false;
56
64
  export type NoAliasShadowedQualifiers<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string> = [
57
65
  AliasedTableKeys<Aliases>
58
- ] extends [never] ? true : AllTrue<QualifiedColumnRefs<TokenizeLoose<N>, S, Tables, Aliases> extends infer R ? R extends `${infer Q}.${string}` ? QualifierShadowedByAlias<Q, Tables, Aliases, S> extends true ? false : true : true : true>;
66
+ ] extends [never] ? true : N extends `${string}.${string}` ? AllTrue<QualifiedColumnRefs<TokenizeLoose<N>, S, Tables, Aliases> extends infer R ? R extends `${infer Q}.${string}` ? QualifierShadowedByAlias<Q, Tables, Aliases, S> extends true ? false : true : true : true> : true;
59
67
  export type OuterScopeUnqualifiedValid<N extends string, S extends DatabaseSchema> = StartsWith<N, "select "> extends true ? Lowercase<N> extends `${string}(${string}select${string}` ? ExceedsLengthBudget<N> extends true ? true : StripSubqueries<N> extends infer Stripped extends string ? TablesInQuery<Stripped, S> extends infer OT extends string ? [OT] extends [never] ? true : AllTablesValidFor<OT, S> extends true ? AliasesInQuery<Stripped, S> extends infer OA extends string ? UnqualifiedColumnRefsValidFor<Stripped, S, OT, OA, TokenizeLoose<RefScanSegment<Stripped>>, SelectAliasesInQuery<Stripped>> : true : true : true : true : true : true;
60
68
  export type UnqualifiedColumnRefsValid<N extends string, S extends DatabaseSchema> = TablesInQuery<N, S> extends infer Tables extends string ? AliasesInQuery<N, S> extends infer Aliases extends string ? TokenizeLoose<RefScanSegment<N>> extends infer LooseTokens extends string[] ? SelectAliasesInQuery<N> extends infer SelectAliases extends string ? UnqualifiedColumnRefsValidFor<N, S, Tables, Aliases, LooseTokens, SelectAliases> : true : true : true : true;
61
- export type UnqualifiedColumnRefsValidFor<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string, LooseTokens extends string[], SelectAliases extends string> = UnqualifiedColumnRefs<LooseTokens, S, Tables, Aliases> extends infer Cols ? AllTrue<Cols extends string ? CleanIdent<Cols> extends SelectAliases ? true : UnqualifiedColumnValid<Cols, Tables, Aliases, S> : true> : true;
69
+ export type UnqualifiedColumnRefsValidFor<N extends string, S extends DatabaseSchema, Tables extends string, Aliases extends string, LooseTokens extends string[], SelectAliases extends string> = UnqualifiedColumnRefs<LooseTokens, S, Tables, Aliases> extends infer Cols ? AllTrue<Cols extends string ? CleanIdent<Cols> extends SelectAliases ? true : UnqualifiedColumnValid<Cols, Tables, Aliases, S> extends true ? true : CleanIdent<Cols> extends SourceAliasListCols<N> ? true : false : true> : true;
70
+ type SourceAliasListCols<N extends string> = N extends `with ${infer CteHead}(${infer CteCols}) as (${infer Rest}` ? AliasHasNoSpace<Trim<CteHead>> extends true ? ColNamesFromList<CteCols> | DerivedAliasListCols<Rest> : DerivedAliasListCols<N> : DerivedAliasListCols<N>;
71
+ type DerivedAliasListCols<N extends string, Steps extends any[] = []> = Steps["length"] extends 15 ? never : N extends `${string}) as ${infer Rest}` ? Rest extends `${infer Alias}(${infer Cols})${infer Tail}` ? AliasHasNoSpace<Trim<Alias>> extends true ? ColNamesFromList<Cols> | DerivedAliasListCols<Tail, [any, ...Steps]> : DerivedAliasListCols<Tail, [any, ...Steps]> : never : never;
72
+ type ColNamesFromList<L extends string> = L extends `${infer A},${infer R}` ? CleanIdent<A> | ColNamesFromList<R> : CleanIdent<L>;
62
73
  export {};
63
74
  //# sourceMappingURL=validate-columns.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-columns.d.ts","sourceRoot":"","sources":["../../src/validation/validate-columns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-columns.d.ts","sourceRoot":"","sources":["../../src/validation/validate-columns.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kuindji/typed-sql",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "description": "Type-level SQL parser for TypeScript",
5
5
  "author": "Ivan Kuindzhi",
6
6
  "license": "MIT",
@@ -48,7 +48,8 @@
48
48
  "scripts": {
49
49
  "typecheck": "node --max-old-space-size=8192 ./node_modules/typescript/bin/tsc --noEmit",
50
50
  "build": "tsc -p tsconfig.build.json",
51
- "prepublishOnly": "npm test && npm run build",
51
+ "test:dist": "npm run build && node scripts/dist-smoke.mjs",
52
+ "prepublishOnly": "npm test && npm run test:dist",
52
53
  "test": "node --max-old-space-size=8192 ./node_modules/typescript/bin/tsc --noEmit && bun test"
53
54
  },
54
55
  "devDependencies": {
@@ -15,15 +15,17 @@ import type { RuntimeSelectState } from "./state.js";
15
15
  export function assembleSelectSQL(state: RuntimeSelectState): string {
16
16
  const parts: string[] = [];
17
17
 
18
- const cteIds = Object.keys(state.cteSql);
19
- if (cteIds.length > 0) {
20
- const withParts = cteIds.map(id => state.cteSql[id]).join(", ");
21
- parts.push(`WITH ${withParts}`);
22
- }
18
+ // `SELECT` / `SELECT DISTINCT` / `SELECT DISTINCT ON (...)` prefix, shared
19
+ // by the projected and `*` paths.
20
+ const distinctPrefix = state.distinctOn
21
+ ? `SELECT DISTINCT ON (${state.distinctOn})`
22
+ : state.distinct
23
+ ? "SELECT DISTINCT"
24
+ : "SELECT";
23
25
 
24
26
  const selectIds = Object.keys(state.selectSql);
25
27
  if (selectIds.length === 0) {
26
- parts.push("SELECT *");
28
+ parts.push(`${distinctPrefix} *`);
27
29
  }
28
30
  else {
29
31
  const selectFragments: string[] = [];
@@ -36,9 +38,7 @@ export function assembleSelectSQL(state: RuntimeSelectState): string {
36
38
  const selectSql = selectFragments.length > 0
37
39
  ? selectFragments.join(", ")
38
40
  : "*";
39
- parts.push(
40
- state.distinct ? `SELECT DISTINCT ${selectSql}` : `SELECT ${selectSql}`,
41
- );
41
+ parts.push(`${distinctPrefix} ${selectSql}`);
42
42
  }
43
43
 
44
44
  if (state.fromSql) {
@@ -87,10 +87,6 @@ export function assembleSelectSQL(state: RuntimeSelectState): string {
87
87
  parts.push(`OFFSET ${state.offset}`);
88
88
  }
89
89
 
90
- if (state.unionSql) {
91
- parts.push(state.unionSql);
92
- }
93
-
94
90
  const sql = parts.join(" ");
95
91
  const namedParams = state.namedParams;
96
92
  if (namedParams && Object.keys(namedParams).length > 0) {
@@ -6,7 +6,7 @@
6
6
  // (GetReturnType / ValidateSQL).
7
7
  import type { DatabaseSchema } from "../schema.js";
8
8
  import type { GetReturnType, ValidateSQL } from "../index.js";
9
- import type { QueryParamValue } from "./params.js";
9
+ import { collectParamValues, expandNamedParams, type QueryParamValue } from "./params.js";
10
10
 
11
11
  // ============================================================================
12
12
  // Runtime (ported from OLD conditional/runtime.ts)
@@ -76,37 +76,19 @@ export function processConditionalSQL(
76
76
  return result;
77
77
  }
78
78
 
79
- /** Convert :name placeholders to positional $n; return processed SQL + values. */
79
+ /**
80
+ * Convert :name placeholders to positional $n; return processed SQL + values.
81
+ * Delegates to the shared scanner-backed expander (params.ts) so a `:name`
82
+ * inside a string literal, comment, or `::cast` is left alone, and a used param
83
+ * whose value is `undefined` throws instead of silently passing through.
84
+ */
80
85
  export function processParams(
81
86
  sql: string,
82
87
  params: Record<string, QueryParamValue>,
83
88
  ): ConditionalSQLOutput {
84
- // Find all param references in order of first appearance.
85
- const paramRegex = /:([a-zA-Z_][a-zA-Z0-9_]*)(?![a-zA-Z0-9_])/g;
86
- const usedParams: string[] = [];
87
- let match;
88
-
89
- while ((match = paramRegex.exec(sql)) !== null) {
90
- const name = match[1];
91
- if (name in params && !usedParams.includes(name)) {
92
- usedParams.push(name);
93
- }
94
- }
95
-
96
- // Replace each param with positional placeholder.
97
- let processedSql = sql;
98
- for (let i = 0; i < usedParams.length; i++) {
99
- const name = usedParams[i];
100
- const regex = new RegExp(`:${name}(?![a-zA-Z0-9_])`, "g");
101
- processedSql = processedSql.replace(regex, `$${i + 1}`);
102
- }
103
-
104
- // Extract param values in order.
105
- const paramValues = usedParams.map(name => params[name]);
106
-
107
89
  return {
108
- sql: processedSql,
109
- params: paramValues,
90
+ sql: expandNamedParams(sql, params),
91
+ params: collectParamValues(sql, params),
110
92
  };
111
93
  }
112
94
 
@@ -1,4 +1,5 @@
1
1
  // src/builder/params.ts
2
+ import { scanPlaceholders, type PlaceholderOccurrence } from "./scanner.js";
2
3
 
3
4
  /** Runtime parameter value type supported by query builders. */
4
5
  export type QueryParamValue = string | number | boolean | null;
@@ -16,23 +17,22 @@ export type QueryParamInput =
16
17
  | readonly QueryParamValue[]
17
18
  | undefined;
18
19
 
19
- // Ported verbatim from OLD: trailing negative lookahead stops a short param
20
- // (:te) from clobbering a longer one (:text). Matching the second colon of a
21
- // ::cast is intentional parity (pinned by params.test.ts).
22
- const PARAM_REGEX = /:([a-zA-Z_][a-zA-Z0-9_]*)(?![a-zA-Z0-9_])/g;
20
+ // Placeholder detection is delegated to the shared scanner (scanner.ts), so the
21
+ // SELECT / conditional-SQL path skips string literals, comments, dollar-quotes,
22
+ // and `::cast` types exactly like the write builders — a single source of truth
23
+ // for what counts as a real `:name`. Array values still expand UNCONDITIONALLY
24
+ // here (any position), which is the builder's long-standing semantics and
25
+ // differs from the scanner's IN-list-gated expansion used by createSql/mutate.
23
26
 
24
27
  /** Param names in order of first appearance that are present in `params`. */
25
28
  function usedParamNames(
26
- sql: string,
29
+ occ: readonly PlaceholderOccurrence[],
27
30
  params: Record<string, QueryParamInput>,
28
31
  ): string[] {
29
32
  const used: string[] = [];
30
- let match: RegExpExecArray | null;
31
- PARAM_REGEX.lastIndex = 0;
32
- while ((match = PARAM_REGEX.exec(sql)) !== null) {
33
- const name = match[1];
34
- if (name in params && !used.includes(name)) {
35
- used.push(name);
33
+ for (const o of occ) {
34
+ if (o.name in params && !used.includes(o.name)) {
35
+ used.push(o.name);
36
36
  }
37
37
  }
38
38
  return used;
@@ -40,29 +40,35 @@ function usedParamNames(
40
40
 
41
41
  /**
42
42
  * Replace :name placeholders with $n positional placeholders, ordered by
43
- * first appearance. Array values expand to consecutive placeholders.
43
+ * first appearance. Array values expand to consecutive placeholders. A `:name`
44
+ * inside a string literal / comment / `::cast` is not a placeholder.
44
45
  */
45
46
  export function expandNamedParams(
46
47
  sql: string,
47
48
  params: Record<string, QueryParamInput>,
48
49
  ): string {
49
- const used = usedParamNames(sql, params);
50
- let out = sql;
50
+ const occ = scanPlaceholders(sql);
51
+ const used = usedParamNames(occ, params);
52
+ // First-appearance starting position for each used name; arrays reserve a
53
+ // contiguous block, repeats reuse the same block.
54
+ const startPos = new Map<string, number>();
51
55
  let position = 1;
52
56
  for (const name of used) {
57
+ startPos.set(name, position);
53
58
  const value = params[name];
54
- const regex = new RegExp(`:${name}(?![a-zA-Z0-9_])`, "g");
55
- if (Array.isArray(value)) {
56
- const placeholders = value
57
- .map((_, i) => `$${position + i}`)
58
- .join(", ");
59
- out = out.replace(regex, placeholders);
60
- position += value.length;
61
- }
62
- else {
63
- out = out.replace(regex, `$${position}`);
64
- position++;
65
- }
59
+ position += Array.isArray(value) ? value.length : 1;
60
+ }
61
+ // Rewrite right-to-left so earlier indices stay valid as we splice.
62
+ let out = sql;
63
+ for (let k = occ.length - 1; k >= 0; k--) {
64
+ const o = occ[k];
65
+ const p = startPos.get(o.name);
66
+ if (p === undefined) continue; // not provided → left as literal :name
67
+ const value = params[o.name];
68
+ const replacement = Array.isArray(value)
69
+ ? value.map((_, i) => `$${p + i}`).join(", ")
70
+ : `$${p}`;
71
+ out = out.slice(0, o.start) + replacement + out.slice(o.end);
66
72
  }
67
73
  return out;
68
74
  }
@@ -75,7 +81,7 @@ export function collectParamValues(
75
81
  sql: string,
76
82
  params: Record<string, QueryParamInput>,
77
83
  ): QueryParamValue[] {
78
- const used = usedParamNames(sql, params);
84
+ const used = usedParamNames(scanPlaceholders(sql), params);
79
85
  const result: QueryParamValue[] = [];
80
86
  for (const name of used) {
81
87
  const value = params[name];
@@ -155,6 +155,16 @@ export interface SelectQueryBuilder<Schema extends DatabaseSchema, Sql extends S
155
155
  id?: Id,
156
156
  ): SelectQueryBuilder<Schema, WithOrderBy<Sql, ColsText<Cols>, ResolveId<Id, "order", Sql["orderBys"]>>>;
157
157
 
158
+ /** Emit `SELECT DISTINCT`. Does not change the result column set. */
159
+ distinct(): SelectQueryBuilder<Schema, Sql>;
160
+ /**
161
+ * Emit `SELECT DISTINCT ON (columns)` (PostgreSQL). Does not change the
162
+ * result column set; pair with a matching ORDER BY for deterministic rows.
163
+ */
164
+ distinctOn<const Cols extends string | readonly string[]>(
165
+ columns: Cols,
166
+ ): SelectQueryBuilder<Schema, Sql>;
167
+
158
168
  limit<const L extends number>(limit: L): SelectQueryBuilder<Schema, WithLimit<Sql, L>>;
159
169
  limitIf<const L extends number>(condition: boolean, limit: L): SelectQueryBuilder<Schema, WithLimit<Sql, L>>;
160
170
  offset<const O extends number>(offset: O): SelectQueryBuilder<Schema, WithOffset<Sql, O>>;
@@ -319,6 +329,15 @@ class SelectQueryBuilderImpl<Schema extends DatabaseSchema, Sql extends SqlTag>
319
329
  return condition ? this.orderBy(columns, id) : this.next(this._state);
320
330
  }
321
331
 
332
+ distinct(): any {
333
+ return this.next(this.clone({ distinct: true }));
334
+ }
335
+
336
+ distinctOn(columns: string | readonly string[]): any {
337
+ const cols = Array.isArray(columns) ? columns.join(", ") : (columns as string);
338
+ return this.next(this.clone({ distinctOn: cols }));
339
+ }
340
+
322
341
  limit(limit: number): any {
323
342
  return this.next(this.clone({ limit }));
324
343
  }
@@ -453,7 +472,6 @@ class SelectQueryBuilderImpl<Schema extends DatabaseSchema, Sql extends SqlTag>
453
472
  // getParams scans fragments joined by " " BEFORE $n substitution).
454
473
  function assembleSelectSQLPreSub(state: RuntimeSelectState): string {
455
474
  return [
456
- ...Object.values(state.cteSql),
457
475
  ...Object.values(state.selectSql).flat(),
458
476
  state.fromSql ?? "",
459
477
  ...Object.values(state.joinSql),
@@ -461,7 +479,6 @@ function assembleSelectSQLPreSub(state: RuntimeSelectState): string {
461
479
  ...Object.values(state.groupBySql),
462
480
  ...Object.values(state.havingSql),
463
481
  ...Object.values(state.orderBySql),
464
- state.unionSql ?? "",
465
482
  ].join(" ");
466
483
  }
467
484
 
@@ -23,11 +23,10 @@ export interface RuntimeSelectState {
23
23
  readonly havingSql: { readonly [id: string]: string };
24
24
  /** Raw ORDER BY fragments by id (joined with ", "). */
25
25
  readonly orderBySql: { readonly [id: string]: string };
26
- /** Raw CTE fragments by id. */
27
- readonly cteSql: { readonly [id: string]: string };
28
- /** Raw UNION fragment (if any). */
29
- readonly unionSql?: string;
26
+ /** SELECT DISTINCT when true (ignored if `distinctOn` is set). */
30
27
  readonly distinct: boolean;
28
+ /** SELECT DISTINCT ON (...) expression list, if set (already joined). */
29
+ readonly distinctOn?: string;
31
30
  readonly limit?: number;
32
31
  readonly offset?: number;
33
32
  /** Legacy positional params (kept for getParams() fallback). */
@@ -45,9 +44,8 @@ export const EMPTY_RUNTIME_STATE: RuntimeSelectState = {
45
44
  groupBySql: {},
46
45
  havingSql: {},
47
46
  orderBySql: {},
48
- cteSql: {},
49
- unionSql: undefined,
50
47
  distinct: false,
48
+ distinctOn: undefined,
51
49
  limit: undefined,
52
50
  offset: undefined,
53
51
  params: [],