typhex 0.1.0-alpha.0 → 0.1.0-alpha.2

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 (179) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +1 -1
  3. package/dist/arrow/aggregates.d.ts +5 -1
  4. package/dist/arrow/aggregates.d.ts.map +1 -1
  5. package/dist/arrow/aggregates.js +23 -1
  6. package/dist/arrow/aggregates.js.map +1 -1
  7. package/dist/arrow/index.d.ts +7 -3
  8. package/dist/arrow/index.d.ts.map +1 -1
  9. package/dist/arrow/index.js +24 -3
  10. package/dist/arrow/index.js.map +1 -1
  11. package/dist/dbs/base-migrator.d.ts +0 -1
  12. package/dist/dbs/base-migrator.d.ts.map +1 -1
  13. package/dist/dbs/base-migrator.js +5 -7
  14. package/dist/dbs/base-migrator.js.map +1 -1
  15. package/dist/dbs/postgres/driver.d.ts.map +1 -1
  16. package/dist/dbs/postgres/driver.js +3 -0
  17. package/dist/dbs/postgres/driver.js.map +1 -1
  18. package/dist/dbs/postgres/query-compiler.d.ts +6 -2
  19. package/dist/dbs/postgres/query-compiler.d.ts.map +1 -1
  20. package/dist/dbs/postgres/query-compiler.js +11 -11
  21. package/dist/dbs/postgres/query-compiler.js.map +1 -1
  22. package/dist/dbs/query-compiler.d.ts +13 -13
  23. package/dist/dbs/query-compiler.d.ts.map +1 -1
  24. package/dist/dbs/query-compiler.js +11 -37
  25. package/dist/dbs/query-compiler.js.map +1 -1
  26. package/dist/dbs/sqlite/index.d.ts +2 -2
  27. package/dist/dbs/sqlite/index.d.ts.map +1 -1
  28. package/dist/dbs/sqlite/index.js +1 -1
  29. package/dist/dbs/sqlite/index.js.map +1 -1
  30. package/dist/dbs/sqlite/query-compiler.d.ts +4 -1
  31. package/dist/dbs/sqlite/query-compiler.d.ts.map +1 -1
  32. package/dist/dbs/sqlite/query-compiler.js +11 -2
  33. package/dist/dbs/sqlite/query-compiler.js.map +1 -1
  34. package/dist/dbs/types.d.ts +5 -11
  35. package/dist/dbs/types.d.ts.map +1 -1
  36. package/dist/dbs/types.js +1 -1
  37. package/dist/dbs/types.js.map +1 -1
  38. package/dist/driver/compile-only.d.ts +8 -0
  39. package/dist/driver/compile-only.d.ts.map +1 -0
  40. package/dist/driver/compile-only.js +26 -0
  41. package/dist/driver/compile-only.js.map +1 -0
  42. package/dist/driver/sqlite.d.ts.map +1 -1
  43. package/dist/driver/sqlite.js +3 -0
  44. package/dist/driver/sqlite.js.map +1 -1
  45. package/dist/entity/entity.d.ts +1 -1
  46. package/dist/entity/entity.d.ts.map +1 -1
  47. package/dist/entity/entity.js +14 -11
  48. package/dist/entity/entity.js.map +1 -1
  49. package/dist/entity/global-driver.d.ts +5 -3
  50. package/dist/entity/global-driver.d.ts.map +1 -1
  51. package/dist/entity/global-driver.js +51 -2
  52. package/dist/entity/global-driver.js.map +1 -1
  53. package/dist/entity/index.d.ts +1 -1
  54. package/dist/entity/index.d.ts.map +1 -1
  55. package/dist/entity/index.js +1 -1
  56. package/dist/entity/index.js.map +1 -1
  57. package/dist/entity/pk-columns.d.ts +0 -2
  58. package/dist/entity/pk-columns.d.ts.map +1 -1
  59. package/dist/entity/pk-columns.js +2 -10
  60. package/dist/entity/pk-columns.js.map +1 -1
  61. package/dist/entity/relations.d.ts +0 -4
  62. package/dist/entity/relations.d.ts.map +1 -1
  63. package/dist/entity/relations.js.map +1 -1
  64. package/dist/index.d.ts +3 -4
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +1 -1
  67. package/dist/index.js.map +1 -1
  68. package/dist/migration/cli.js +120 -117
  69. package/dist/migration/cli.js.map +1 -1
  70. package/dist/migration/index.d.ts +1 -1
  71. package/dist/migration/index.d.ts.map +1 -1
  72. package/dist/migration/runner.d.ts +2 -6
  73. package/dist/migration/runner.d.ts.map +1 -1
  74. package/dist/migration/runner.js +1 -3
  75. package/dist/migration/runner.js.map +1 -1
  76. package/dist/migration/types.d.ts +0 -5
  77. package/dist/migration/types.d.ts.map +1 -1
  78. package/dist/orm/db.d.ts +16 -10
  79. package/dist/orm/db.d.ts.map +1 -1
  80. package/dist/orm/db.js +37 -9
  81. package/dist/orm/db.js.map +1 -1
  82. package/dist/orm/helpers/insert-graph/insert-graph-batch-executor.d.ts +2 -2
  83. package/dist/orm/helpers/insert-graph/insert-graph-batch-executor.d.ts.map +1 -1
  84. package/dist/orm/helpers/insert-graph/insert-graph-batch-executor.js.map +1 -1
  85. package/dist/orm/helpers/insert-graph/insert-graph-executor.d.ts +3 -3
  86. package/dist/orm/helpers/insert-graph/insert-graph-executor.d.ts.map +1 -1
  87. package/dist/orm/helpers/insert-graph/insert-graph-executor.js.map +1 -1
  88. package/dist/orm/helpers/insert-graph/insert-graph-planner.d.ts +3 -3
  89. package/dist/orm/helpers/insert-graph/insert-graph-planner.d.ts.map +1 -1
  90. package/dist/orm/helpers/insert-graph/insert-graph-planner.js +1 -1
  91. package/dist/orm/helpers/insert-graph/insert-graph-planner.js.map +1 -1
  92. package/dist/orm/helpers/insert-graph/insert-graph-sequential-executor.d.ts +2 -2
  93. package/dist/orm/helpers/insert-graph/insert-graph-sequential-executor.d.ts.map +1 -1
  94. package/dist/orm/helpers/insert-graph/insert-graph-sequential-executor.js.map +1 -1
  95. package/dist/orm/helpers/insert-graph/sequence-id-assigner.d.ts +2 -2
  96. package/dist/orm/helpers/insert-graph/sequence-id-assigner.d.ts.map +1 -1
  97. package/dist/orm/helpers/insert-graph/sequence-id-assigner.js.map +1 -1
  98. package/dist/orm/helpers/query-plan/query-plan.d.ts +19 -11
  99. package/dist/orm/helpers/query-plan/query-plan.d.ts.map +1 -1
  100. package/dist/orm/helpers/query-plan/query-plan.js +24 -4
  101. package/dist/orm/helpers/query-plan/query-plan.js.map +1 -1
  102. package/dist/orm/helpers/relations/relation-assembler.d.ts.map +1 -1
  103. package/dist/orm/helpers/relations/relation-assembler.js +14 -5
  104. package/dist/orm/helpers/relations/relation-assembler.js.map +1 -1
  105. package/dist/orm/helpers/relations/relation-fetcher.d.ts +20 -0
  106. package/dist/orm/helpers/relations/relation-fetcher.d.ts.map +1 -1
  107. package/dist/orm/helpers/relations/relation-fetcher.js +106 -23
  108. package/dist/orm/helpers/relations/relation-fetcher.js.map +1 -1
  109. package/dist/orm/index.d.ts +1 -1
  110. package/dist/orm/index.d.ts.map +1 -1
  111. package/dist/orm/index.js +1 -1
  112. package/dist/orm/index.js.map +1 -1
  113. package/dist/orm/insert-builder.d.ts +37 -0
  114. package/dist/orm/insert-builder.d.ts.map +1 -0
  115. package/dist/orm/insert-builder.js +134 -0
  116. package/dist/orm/insert-builder.js.map +1 -0
  117. package/dist/orm/query-builder.d.ts +51 -52
  118. package/dist/orm/query-builder.d.ts.map +1 -1
  119. package/dist/orm/query-builder.js +197 -223
  120. package/dist/orm/query-builder.js.map +1 -1
  121. package/dist/orm/query-execution-context.d.ts +5 -0
  122. package/dist/orm/query-execution-context.d.ts.map +1 -0
  123. package/dist/orm/query-execution-context.js +16 -0
  124. package/dist/orm/query-execution-context.js.map +1 -0
  125. package/dist/orm/query-helpers.d.ts.map +1 -1
  126. package/dist/orm/query-helpers.js +1 -1
  127. package/dist/orm/query-helpers.js.map +1 -1
  128. package/dist/orm/query-state.d.ts +10 -6
  129. package/dist/orm/query-state.d.ts.map +1 -1
  130. package/dist/orm/query-state.js.map +1 -1
  131. package/dist/orm/statement.d.ts +33 -0
  132. package/dist/orm/statement.d.ts.map +1 -0
  133. package/dist/orm/statement.js +31 -0
  134. package/dist/orm/statement.js.map +1 -0
  135. package/dist/parser/group-by.d.ts.map +1 -1
  136. package/dist/parser/group-by.js +2 -1
  137. package/dist/parser/group-by.js.map +1 -1
  138. package/dist/parser/predicate-walk.d.ts.map +1 -1
  139. package/dist/parser/predicate-walk.js +12 -32
  140. package/dist/parser/predicate-walk.js.map +1 -1
  141. package/dist/parser/resolve.js +1 -1
  142. package/dist/parser/resolve.js.map +1 -1
  143. package/dist/parser/select.js +3 -3
  144. package/dist/parser/select.js.map +1 -1
  145. package/dist/schema/column-definition.d.ts +10 -0
  146. package/dist/schema/column-definition.d.ts.map +1 -0
  147. package/dist/schema/column-definition.js +13 -0
  148. package/dist/schema/column-definition.js.map +1 -0
  149. package/dist/transformer/ir-emit.d.ts.map +1 -1
  150. package/dist/transformer/ir-emit.js +3 -0
  151. package/dist/transformer/ir-emit.js.map +1 -1
  152. package/dist/transformer/select-transformer.d.ts.map +1 -1
  153. package/dist/transformer/select-transformer.js +18 -0
  154. package/dist/transformer/select-transformer.js.map +1 -1
  155. package/dist/transformer/ts-aggregates.d.ts.map +1 -1
  156. package/dist/transformer/ts-aggregates.js +9 -14
  157. package/dist/transformer/ts-aggregates.js.map +1 -1
  158. package/dist/transformer/where-transformer.d.ts.map +1 -1
  159. package/dist/transformer/where-transformer.js +15 -24
  160. package/dist/transformer/where-transformer.js.map +1 -1
  161. package/docs/guide/entities-relations.md +12 -3
  162. package/docs/guide/getting-started.md +10 -3
  163. package/docs/public-api.md +6 -6
  164. package/docs/reference/api.md +14 -6
  165. package/docs/reference/architecture.md +11 -3
  166. package/etc/typhex.api.md +59 -59
  167. package/package.json +2 -2
  168. package/dist/dbs/sqlite/driver.d.ts +0 -9
  169. package/dist/dbs/sqlite/driver.d.ts.map +0 -1
  170. package/dist/dbs/sqlite/driver.js +0 -66
  171. package/dist/dbs/sqlite/driver.js.map +0 -1
  172. package/dist/schema/index.d.ts +0 -2
  173. package/dist/schema/index.d.ts.map +0 -1
  174. package/dist/schema/index.js +0 -2
  175. package/dist/schema/index.js.map +0 -1
  176. package/dist/schema/types.d.ts +0 -16
  177. package/dist/schema/types.d.ts.map +0 -1
  178. package/dist/schema/types.js +0 -40
  179. package/dist/schema/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"select-transformer.d.ts","sourceRoot":"","sources":["../../src/transformer/select-transformer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAOL,sBAAsB,EAGvB,MAAM,aAAa,CAAC;AA0QrB,+FAA+F;AAC/F,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,EAAE,CAAC,cAAc,GAAG,IAAI,CAe1B;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"select-transformer.d.ts","sourceRoot":"","sources":["../../src/transformer/select-transformer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAOL,sBAAsB,EAGvB,MAAM,aAAa,CAAC;AA4RrB,+FAA+F;AAC/F,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,EAAE,CAAC,cAAc,GAAG,IAAI,CAe1B;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
@@ -186,6 +186,10 @@ function parseSelectObjectProperty(prop, keyName, pb, checker, capturedSubquerie
186
186
  const parsed = parseTsAggregateCall(value, [pb.paramName], resolveArg);
187
187
  if (parsed)
188
188
  return { kind: "aggregate", aggregate: { ...parsed.ir, alias: keyName } };
189
+ // Relation query chains are runtime-parser territory: it emits the canonical
190
+ // IrSelectRelation shape, while Entity.query() scalar queries remain subquery refs.
191
+ if (isDeclaredRelationQueryChain(value, pb))
192
+ return null;
189
193
  if (isTyphexQueryChain(value, checker)) {
190
194
  return {
191
195
  kind: "subquery",
@@ -198,6 +202,20 @@ function parseSelectObjectProperty(prop, keyName, pb, checker, capturedSubquerie
198
202
  return null;
199
203
  return { kind: "expression", expr };
200
204
  }
205
+ function isDeclaredRelationQueryChain(value, pb) {
206
+ let current = value;
207
+ while (ts.isCallExpression(current) && ts.isPropertyAccessExpression(current.expression)) {
208
+ const callee = current.expression;
209
+ if (callee.name.text === "query") {
210
+ if (!ts.isPropertyAccessExpression(callee.expression))
211
+ return false;
212
+ const path = memberPath(callee.expression, pb.paramName);
213
+ return path?.length === 1;
214
+ }
215
+ current = callee.expression;
216
+ }
217
+ return false;
218
+ }
201
219
  // ---------------------------------------------------------------------------
202
220
  // Public entry point
203
221
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"select-transformer.js","sourceRoot":"","sources":["../../src/transformer/select-transformer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,GAEjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GAEnB,MAAM,2BAA2B,CAAC;AAEnC,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;;GAIG;AACH,SAAS,eAAe,CACtB,EAA4C,EAC5C,EAAiB,EACjB,OAAuB,EACvB,kBAAsC,EACtC,QAAqB;IAErB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACzE,IAAI,SAAS;YAAE,OAAO,SAAS,CAAC;IAClC,CAAC;IAED,MAAM,GAAG,GAAG,4BAA4B,CAAC,EAAE,CAAC,CAAC;IAC7C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,wBAAwB,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;AAClF,CAAC;AAED;;;GAGG;AACH,SAAS,4BAA4B,CACnC,EAA4C;IAE5C,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC;QAAE,OAAO,mBAAmB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAE9D,IAAI,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IACpE,OAAO,mBAAmB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;AAC5C,CAAC;AAED,gFAAgF;AAEhF,8EAA8E;AAC9E,SAAS,qBAAqB,CAC5B,IAAoB,EACpB,SAAiB,EACjB,QAAqB;IAErB,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAClE,CAAC;IAED,IAAI,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO,wBAAwB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,2BAA2B,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,4BAA4B,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACjE,CAAC;AAED,2GAA2G;AAC3G,SAAS,wBAAwB,CAC/B,IAAiC,EACjC,SAAiB;IAEjB,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACzC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,4FAA4F;AAC5F,SAAS,2BAA2B,CAClC,IAAuB,EACvB,SAAiB,EACjB,QAAqB;IAErB,MAAM,UAAU,GAAG,CAAC,IAAmB,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC7F,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;IACnE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC3C,OAAO;QACL,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CACnC,IAAmB,EACnB,SAAiB,EACjB,QAAqB;IAErB,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACpE,OAAO;QACL,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;KAC3C,CAAC;AACJ,CAAC;AAED,+EAA+E;AAE/E;;;;GAIG;AACH,SAAS,wBAAwB,CAC/B,GAA+B,EAC/B,EAAiB,EACjB,OAAuB,EACvB,kBAAsC,EACtC,QAAqB;IAErB,MAAM,KAAK,GAAe,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAkB,EAAE,CAAC;IACrC,MAAM,UAAU,GAAsD,EAAE,CAAC;IACzE,MAAM,WAAW,GAA2C,EAAE,CAAC;IAC/D,IAAI,IAAI,GAAG,KAAK,CAAC;IAEjB,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC;YACzC,IAAI,GAAG,IAAI,CAAC;YACZ,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,MAAM,OAAO,GAAG,yBAAyB,CACvC,IAAI,EACJ,OAAO,EACP,EAAE,EACF,OAAO,EACP,kBAAkB,EAClB,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM;gBACT,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACtB,MAAM;YACR,KAAK,WAAW;gBACd,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,UAAU;gBACb,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAChE,MAAM;YACR,KAAK,YAAY;gBACf,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;gBACzD,MAAM;QACV,CAAC;IACH,CAAC;IAED,IACE,KAAK,CAAC,MAAM,KAAK,CAAC;QAClB,UAAU,CAAC,MAAM,KAAK,CAAC;QACvB,UAAU,CAAC,MAAM,KAAK,CAAC;QACvB,WAAW,CAAC,MAAM,KAAK,CAAC;QACxB,CAAC,IAAI,EACL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,KAAK,EAAE,EAAE,CAAC,SAAS;QACnB,KAAK;QACL,OAAO;QACP,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,mGAAmG;AACnG,SAAS,YAAY,CAAC,IAAyB,EAAE,EAAiB;IAChE,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;IAClC,OAAO,IAAI,KAAK,EAAE,CAAC,QAAQ,IAAI,IAAI,KAAK,EAAE,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,iFAAiF;AACjF,SAAS,kBAAkB,CAAC,IAAiC;IAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IAC5C,OAAO,IAAI,CAAC,CAAC,iDAAiD;AAChE,CAAC;AAQD,SAAS,yBAAyB,CAChC,IAAiC,EACjC,OAAe,EACf,EAAiB,EACjB,OAAuB,EACvB,kBAAsC,EACtC,QAAqB;IAErB,IAAI,EAAE,CAAC,6BAA6B,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;IAC/B,MAAM,UAAU,GAAG,CAAC,IAAmB,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;IAEhG,IAAI,EAAE,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAChC,CAAC;IAED,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,IAAI;YAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,IAAI,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;QACvE,IAAI,MAAM;YAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC;QAEtF,IAAI,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;YACvC,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,CAAC;aACxD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;IAClE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1E,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,+FAA+F;AAC/F,MAAM,UAAU,mBAAmB,CACjC,IAAuB,EACvB,OAAuB;IAEvB,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC3E,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,MAAM,EAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACvD,MAAM,kBAAkB,GAAuB,EAAE,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IACnF,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,MAAM,IAAI,GAAoB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9D,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AAC1F,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"select-transformer.js","sourceRoot":"","sources":["../../src/transformer/select-transformer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ts-aggregates.d.ts","sourceRoot":"","sources":["../../src/transformer/ts-aggregates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAK1D,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,WAAW,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,UAAU,EAAE,MAAM,EAAE,EACpB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,KAAK,MAAM,GAAG,IAAI,GAClD,sBAAsB,GAAG,IAAI,CAyB/B;AA6DD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"ts-aggregates.d.ts","sourceRoot":"","sources":["../../src/transformer/ts-aggregates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAS1D,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,WAAW,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,UAAU,EAAE,MAAM,EAAE,EACpB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,KAAK,MAAM,GAAG,IAAI,GAClD,sBAAsB,GAAG,IAAI,CAc/B;AAiED,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * for the compile-time transformer. Uses shared aggregate naming from `src/arrow`.
4
4
  */
5
5
  import ts from "typescript";
6
- import { AGGREGATE_FUNCS, toIrFuncName } from "../arrow/aggregates.js";
6
+ import { buildIrAggregate, getAggregateSeparatorArgIndex, toIrAggregateFunc, } from "../arrow/aggregates.js";
7
7
  import { resolveMemberPath } from "./ts-member.js";
8
8
  import { isIdentifierNamed } from "./ts-utils.js";
9
9
  export function parseTsAggregateCall(call, paramNames, resolveArg) {
@@ -11,21 +11,15 @@ export function parseTsAggregateCall(call, paramNames, resolveArg) {
11
11
  if (!ts.isIdentifier(callee))
12
12
  return null;
13
13
  const rawName = callee.text;
14
- const funcName = toIrFuncName(rawName);
15
- if (!AGGREGATE_FUNCS.has(funcName))
14
+ const func = toIrAggregateFunc(rawName);
15
+ if (!func)
16
16
  return null;
17
17
  const parsedArg = parseTsAggregateArg(call.arguments[0], paramNames, resolveArg);
18
18
  if (!parsedArg)
19
19
  return null;
20
20
  const { arg, distinct } = parsedArg;
21
- const separator = parseTsAggregateSeparator(funcName, call);
22
- const ir = {
23
- kind: "aggregate",
24
- func: funcName,
25
- arg,
26
- ...(distinct ? { distinct: true } : {}),
27
- ...(separator === undefined ? {} : { separator }),
28
- };
21
+ const separator = parseTsAggregateSeparator(func, call);
22
+ const ir = buildIrAggregate(func, arg, distinct, separator);
29
23
  return { ir, rawName };
30
24
  }
31
25
  function parseTsAggregateArg(argExpr, paramNames, resolveArg) {
@@ -72,10 +66,11 @@ function parseDistinctWrapperArg(distinctCall, paramNames, resolveArg) {
72
66
  }
73
67
  return { arg: null, distinct: false };
74
68
  }
75
- function parseTsAggregateSeparator(funcName, call) {
76
- if (funcName !== "GROUP_CONCAT" && funcName !== "STRING_AGG")
69
+ function parseTsAggregateSeparator(func, call) {
70
+ const index = getAggregateSeparatorArgIndex(func);
71
+ if (index === null)
77
72
  return undefined;
78
- const sepExpr = call.arguments[1];
73
+ const sepExpr = call.arguments[index];
79
74
  return sepExpr && ts.isStringLiteral(sepExpr) ? sepExpr.text : undefined;
80
75
  }
81
76
  // Re-export for tests/mocks that imported these from shared.
@@ -1 +1 @@
1
- {"version":3,"file":"ts-aggregates.js","sourceRoot":"","sources":["../../src/transformer/ts-aggregates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ts-aggregates.js","sourceRoot":"","sources":["../../src/transformer/ts-aggregates.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"where-transformer.d.ts","sourceRoot":"","sources":["../../src/transformer/where-transformer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,EACV,MAAM,EAON,OAAO,EAER,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EASL,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AAGrB;;;;iFAIiF;AACjF,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG;IAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEpF;yEACyE;AACzE,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,aAAa,GAAG,iBAAiB,GAAG,SAAS,CAEpF;AAyZD;;;;8BAI8B;AAC9B,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,kBAAkB,EAC5C,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,eAAe,GAAE,MAAM,EAAO,EAC9B,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,UAAU,CAAC,EAAE,UAAU,EAAE,GACxB;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAE5C;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,EAAE,CAAC,UAAU,EACnB,UAAU,EAAE,MAAM,EAAE,EACpB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,EACrB,OAAO,CAAC,EAAE,EAAE,CAAC,WAAW,GACvB,MAAM,GAAG,IAAI,CAOf;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,GAAE,UAAU,EAAO,GAC5B,EAAE,CAAC,cAAc,GAAG,IAAI,CAE1B;AAED,mFAAmF;AACnF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,GAAE,UAAU,EAAO,GAC5B,EAAE,CAAC,cAAc,GAAG,IAAI,CAE1B"}
1
+ {"version":3,"file":"where-transformer.d.ts","sourceRoot":"","sources":["../../src/transformer/where-transformer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,EACV,MAAM,EAON,OAAO,EAER,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EASL,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AAIrB;;;;iFAIiF;AACjF,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG;IAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEpF;yEACyE;AACzE,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,aAAa,GAAG,iBAAiB,GAAG,SAAS,CAEpF;AA+YD;;;;8BAI8B;AAC9B,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,kBAAkB,EAC5C,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,eAAe,GAAE,MAAM,EAAO,EAC9B,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,UAAU,CAAC,EAAE,UAAU,EAAE,GACxB;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAE5C;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,EAAE,CAAC,UAAU,EACnB,UAAU,EAAE,MAAM,EAAE,EACpB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,EACrB,OAAO,CAAC,EAAE,EAAE,CAAC,WAAW,GACvB,MAAM,GAAG,IAAI,CAOf;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,GAAE,UAAU,EAAO,GAC5B,EAAE,CAAC,cAAc,GAAG,IAAI,CAE1B;AAED,mFAAmF;AACnF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,GAAE,UAAU,EAAO,GAC5B,EAAE,CAAC,cAAc,GAAG,IAAI,CAE1B"}
@@ -4,7 +4,8 @@
4
4
  import * as ts from "typescript";
5
5
  import { buildParamsLiteral, captureSubqueryRef as captureSubqueryRefShared, isTyphexQueryChain, } from "./subquery-transformer.js";
6
6
  import { getArrowExpressionBody, isTyphexType, matchTyphexMethodCall, resolveMemberPath, binaryOpFromSyntaxKind, parseTsAggregateCall, irWhereToTsLiteral, getParamBindings, } from "./shared.js";
7
- import { ALLOWED_METHODS } from "../arrow/constants.js";
7
+ import { ALLOWED_METHODS, DEFAULT_ROW_PARAM } from "../arrow/constants.js";
8
+ import { buildIrCase, buildIrExists } from "../arrow/index.js";
8
9
  /** Narrow a ParamBindings into an OuterDestructured (or undefined when there
9
10
  * are no destructured locals to expose). Centralizes the conversion. */
10
11
  export function toOuterDestructured(pb) {
@@ -208,14 +209,7 @@ function conditionalExprToIr(expr, ctx) {
208
209
  const alternate = exprToIr(expr.whenFalse, ctx);
209
210
  if (!when || !then || !alternate)
210
211
  return null;
211
- if (alternate.kind === "case") {
212
- return {
213
- kind: "case",
214
- branches: [{ when, then }, ...alternate.branches],
215
- ...(alternate.else !== undefined ? { else: alternate.else } : {}),
216
- };
217
- }
218
- return { kind: "case", branches: [{ when, then }], else: alternate };
212
+ return buildIrCase(when, then, alternate);
219
213
  }
220
214
  // ---- CallExpression handling -----------------------------------------------
221
215
  /**
@@ -252,10 +246,14 @@ function tryParseAllowedMethod(call, callee, ctx) {
252
246
  const receiver = exprToIr(callee.expression, ctx);
253
247
  if (!receiver)
254
248
  return null;
255
- const args = call.arguments.map((a) => exprToIr(a, ctx));
256
- if (args.some((a) => a === null))
257
- return null;
258
- return { kind: "call", method, receiver, args: args };
249
+ const args = [];
250
+ for (const arg of call.arguments) {
251
+ const parsed = exprToIr(arg, ctx);
252
+ if (!parsed)
253
+ return null;
254
+ args.push(parsed);
255
+ }
256
+ return { kind: "call", method, receiver, args };
259
257
  }
260
258
  /**
261
259
  * Parse `relation.some(cb)` or `relation.every(cb)` into an IrExists subquery.
@@ -289,14 +287,7 @@ function tryParseSomeEvery(call, callee, ctx) {
289
287
  });
290
288
  if (!innerWhere)
291
289
  return null;
292
- return {
293
- kind: "exists",
294
- ...(method === "every" ? { negated: true } : {}),
295
- rootParam: receiver.param,
296
- relationKey: receiver.path[0],
297
- innerParam,
298
- innerWhere,
299
- };
290
+ return buildIrExists(method, receiver.param, receiver.path[0], innerParam, innerWhere);
300
291
  }
301
292
  /** Return the first parameter's name if it's a plain identifier; null otherwise. */
302
293
  function getFirstParamName(fn) {
@@ -308,9 +299,9 @@ function getFirstParamName(fn) {
308
299
  // ---------------------------------------------------------------------------
309
300
  // Arrow → IR + free-variable collection
310
301
  // ---------------------------------------------------------------------------
311
- /** Extract the lambda parameter names as strings; defaults to "u" per slot. */
302
+ /** Extract the lambda parameter names as strings; defaults to the canonical row param per slot. */
312
303
  function extractParamNames(fn) {
313
- return fn.parameters.map((p) => (p.name && ts.isIdentifier(p.name) ? p.name.text : "u"));
304
+ return fn.parameters.map((p) => p.name && ts.isIdentifier(p.name) ? p.name.text : DEFAULT_ROW_PARAM);
314
305
  }
315
306
  /**
316
307
  * Convert a where/having arrow into its IR plus the list of closure
@@ -337,7 +328,7 @@ function arrowToIr(fn, checker, extraParamNames = [], outerDestructured, outerSc
337
328
  return {
338
329
  ir: {
339
330
  node: ir,
340
- rootParam: paramNames[0] ?? "u",
331
+ rootParam: paramNames[0] ?? DEFAULT_ROW_PARAM,
341
332
  localParamNames: paramNames,
342
333
  },
343
334
  freeVars: [...freeVars],
@@ -1 +1 @@
1
- {"version":3,"file":"where-transformer.js","sourceRoot":"","sources":["../../src/transformer/where-transformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"where-transformer.js","sourceRoot":"","sources":["../../src/transformer/where-transformer.ts"],"names":[],"mappings":"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"}
@@ -81,7 +81,9 @@ SELECT id, userId, bio FROM user_profiles WHERE userId IN (?, ?, ...)
81
81
 
82
82
  ## Many-to-Many Relations
83
83
 
84
- A `manyToMany` relation works through a junction table that you manage directly in SQL (Typhex doesn't auto-migrate junction tables):
84
+ A `manyToMany` relation works through a junction table. Typhex derives the
85
+ junction column types from the two entities' primary keys and auto-registers
86
+ the junction for migration:
85
87
 
86
88
  ```ts
87
89
  import { Entity, rel, type ManyToMany } from "typhex";
@@ -102,12 +104,19 @@ export class Post extends Entity(
102
104
  }
103
105
  ```
104
106
 
105
- Create the junction table manually (once):
107
+ Include both relation endpoints when using an explicit `Db` entity collection.
108
+ The derived junction entity is added automatically:
106
109
 
107
110
  ```ts
108
- await db.run("CREATE TABLE post_tags (postId INTEGER NOT NULL, tagId INTEGER NOT NULL)");
111
+ const db = new Db({ driver, entities: [Post, Tag] });
112
+ await db.migrate(); // also creates post_tags
109
113
  ```
110
114
 
115
+ If the junction needs extra columns or constraints, define it with `Entity()`
116
+ and include that entity in the collection. An explicit collection that omits a
117
+ many-to-many target is rejected because Typhex cannot finalize the junction
118
+ schema safely.
119
+
111
120
  Then use it like any other relation in `select()`:
112
121
 
113
122
  ```ts
@@ -33,10 +33,17 @@ TypeScript infers the row type from the schema — no separate interface needed.
33
33
  ## Connect and Migrate
34
34
 
35
35
  ```ts
36
- const db = new Db(createSqliteDriver({ path: "./app.db" }));
36
+ const db = new Db({
37
+ driver: createSqliteDriver({ path: "./app.db" }),
38
+ entities: [User],
39
+ });
37
40
  await db.migrate(); // creates tables that don't exist yet
38
41
  ```
39
42
 
43
+ Passing `entities` makes schema ownership explicit: `migrate()`, `validate()`, and
44
+ `generateMigrations()` use only that collection. Omitting it keeps the
45
+ process-global entity registry fallback for compatibility.
46
+
40
47
  Use `":memory:"` for tests and one-off scripts.
41
48
 
42
49
  ## Insert Rows
@@ -227,7 +234,7 @@ SELECT COUNT(*) AS c FROM (
227
234
  ) AS "_count" -- params: ["US"]
228
235
  ```
229
236
 
230
- ## Update, Patch, and Delete
237
+ ## Update and Delete
231
238
 
232
239
  ```ts
233
240
  const updated = await User.query()
@@ -241,7 +248,7 @@ UPDATE users SET age = ? WHERE name = ?
241
248
  ```
242
249
 
243
250
  ```ts
244
- const patched = await User.query()
251
+ const updatedRow = await User.query()
245
252
  .where((u) => u.name === "Bob")
246
253
  .patch({ age: 26 });
247
254
  // Same UPDATE as above, then a SELECT ... WHERE name = ? LIMIT 1 to return the row
@@ -19,7 +19,6 @@ Public runtime exports:
19
19
  - `InsertBuilder`
20
20
  - `Entity`
21
21
  - `rel`
22
- - `getPkColumnsFromSchema`
23
22
  - `createDriver`
24
23
  - `createSqliteDriver`
25
24
  - `createPostgresDriver`
@@ -49,22 +48,23 @@ Public type exports:
49
48
  `StripParens`, `IsNotNull`, `IsGenerated`, `HasDefault`, `OptionalOnInsert`
50
49
 
51
50
  **Builder/executor types:**
52
- `DbOptions`, `QueryExecutor`, `OrderDirection`
51
+ `DbOptions`, `QueryExecutor`, `OrderDirection`, `SqlAndParams`, `RelationFetchSql`, `Statement`
53
52
 
54
53
  **Driver/config types:**
55
54
  `Driver`, `Connection`, `ExecuteResult`, `TransactionOptions`,
56
55
  `SqliteDriverOptions`, `CreateDriverOptions`, `PostgresDriverOptions`,
57
- `ColumnDef`, `TyphexConfig`, `LoadConfigOptions`
56
+ `DialectColumnDef`, `TyphexConfig`, `LoadConfigOptions`
58
57
 
59
58
  **Migration types:**
60
- `DiffAction`, `DialectName`, `MigrationFile`, `MigrationRecord`, `MigrationResult`
59
+ `DiffAction`, `DialectName`, `MigrationFile`, `MigrationRecord`, `MigrationResult`,
60
+ `PendingMigration`, `MigrationDryRun`, `MigrationDb`
61
61
 
62
62
  The IR types (`IrNode`, `IrOrderBy`, `IrSelect`), parser helpers
63
63
  (`parseArrowToIr`, `parseArrowToIrSelect`), and `QueryState` are stripped
64
64
  from the published `.d.ts` via TypeScript's `stripInternal` and the
65
65
  `@internal` JSDoc tag — they're an internal protocol between the TypeScript
66
- transformer and the runtime query builder. The internal QB helpers
67
- (`expandWithSentinels`, `logSql`, `isDebugSqlEnabled`) are also stripped.
66
+ transformer and the runtime query builder. Query execution context helpers are
67
+ also internal.
68
68
 
69
69
  ### `typhex/transformer`
70
70
 
@@ -78,12 +78,19 @@ See [Composite Primary Keys](/guide/entities-relations#composite-primary-keys) f
78
78
 
79
79
  ```ts
80
80
  new Db(driver: Driver)
81
- new Db({ driver: Driver, migrationsFolder?: string })
82
- new Db({ dialect: "sqlite", database: string, migrationsFolder?: string })
83
- new Db({ dialect: "postgres", url: string, migrationsFolder?: string })
81
+ new Db({ driver: Driver, entities?: EntityClass[], migrationsFolder?: string, setAsDefault?: boolean })
82
+ new Db({ dialect: "sqlite", database: string, entities?: EntityClass[], migrationsFolder?: string, setAsDefault?: boolean })
83
+ new Db({ dialect: "postgres", url: string, entities?: EntityClass[], migrationsFolder?: string, setAsDefault?: boolean })
84
84
  ```
85
85
 
86
- Sets the driver as the default for all entities registered in the current process.
86
+ By default, a new `Db` becomes the fallback used by `Entity.query()` when no
87
+ executor is passed. Set `setAsDefault: false` for a secondary database, then
88
+ call `db.setAsDefault()` later if needed. Closing a database clears the default
89
+ only when that same instance is currently the default.
90
+
91
+ When `entities` is provided, `migrate()`, `validate()`, and
92
+ `generateMigrations()` use that collection. When omitted, they fall back to all
93
+ entities registered in the current process for compatibility.
87
94
 
88
95
  ### `Db.fromConfig(options?)`
89
96
 
@@ -98,7 +105,8 @@ Config fields: `dialect`, `database` for SQLite, `url` for PostgreSQL, `migratio
98
105
 
99
106
  ### `db.migrate()`
100
107
 
101
- Creates all registered tables that don't exist yet.
108
+ Creates all owned entities that don't exist yet, or all process-registered
109
+ entities when the constructor omitted `entities`.
102
110
 
103
111
  ```ts
104
112
  await db.migrate();
@@ -471,7 +479,7 @@ Returns the number of rows deleted.
471
479
 
472
480
  ### `.patch(data)`
473
481
 
474
- Update matching rows and return the updated row (or `null` if no match).
482
+ Partial update: SET the given columns on matching rows and return the updated row (or `null` if no match).
475
483
 
476
484
  ```ts
477
485
  const updated = await Entity.query()
@@ -76,8 +76,16 @@ The shared IR is compiled to SQL by dialect modules. The two built-in dialects (
76
76
  - `ON CONFLICT` syntax variations
77
77
  - Database-specific aggregates (`groupConcat` vs `stringAgg` / `arrayAgg` / `jsonAgg`)
78
78
 
79
- ## Schema Registry
79
+ ## Entity Ownership
80
80
 
81
- `Entity()` registers each table definition in a global registry. When `new Db(driver)` is called, it sets the driver as the default for all registered entities, and `db.migrate()` iterates the registry to create missing tables.
81
+ Pass entity classes to `Db` to give schema operations an explicit boundary:
82
82
 
83
- This design means you don't need to pass a `db` instance to every query — the driver is resolved automatically from the registry.
83
+ ```ts
84
+ const db = new Db({ driver, entities: [User, Post] });
85
+ ```
86
+
87
+ `migrate()`, `validate()`, and `generateMigrations()` use that collection. The
88
+ process-global registry remains as a compatibility fallback when `entities` is
89
+ omitted. A new `Db` also becomes the default query executor unless
90
+ `setAsDefault: false` is passed, preserving `Entity.query()` convenience
91
+ without coupling schema ownership to that default.