@tinqerjs/tinqer 0.0.21

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 (405) hide show
  1. package/dist/expressions/expression.d.ts +313 -0
  2. package/dist/expressions/expression.d.ts.map +1 -0
  3. package/dist/expressions/expression.js +56 -0
  4. package/dist/expressions/expression.js.map +1 -0
  5. package/dist/index.d.ts +34 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +34 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/linq/database-context.d.ts +18 -0
  10. package/dist/linq/database-context.d.ts.map +1 -0
  11. package/dist/linq/database-context.js +23 -0
  12. package/dist/linq/database-context.js.map +1 -0
  13. package/dist/linq/database-schema.d.ts +18 -0
  14. package/dist/linq/database-schema.d.ts.map +1 -0
  15. package/dist/linq/database-schema.js +23 -0
  16. package/dist/linq/database-schema.js.map +1 -0
  17. package/dist/linq/deletable.d.ts +30 -0
  18. package/dist/linq/deletable.d.ts.map +1 -0
  19. package/dist/linq/deletable.js +46 -0
  20. package/dist/linq/deletable.js.map +1 -0
  21. package/dist/linq/delete-from.d.ts +19 -0
  22. package/dist/linq/delete-from.d.ts.map +1 -0
  23. package/dist/linq/delete-from.js +11 -0
  24. package/dist/linq/delete-from.js.map +1 -0
  25. package/dist/linq/from.d.ts +19 -0
  26. package/dist/linq/from.d.ts.map +1 -0
  27. package/dist/linq/from.js +11 -0
  28. package/dist/linq/from.js.map +1 -0
  29. package/dist/linq/functions.d.ts +96 -0
  30. package/dist/linq/functions.d.ts.map +1 -0
  31. package/dist/linq/functions.js +136 -0
  32. package/dist/linq/functions.js.map +1 -0
  33. package/dist/linq/grouping.d.ts +26 -0
  34. package/dist/linq/grouping.d.ts.map +1 -0
  35. package/dist/linq/grouping.js +47 -0
  36. package/dist/linq/grouping.js.map +1 -0
  37. package/dist/linq/insert-into.d.ts +19 -0
  38. package/dist/linq/insert-into.d.ts.map +1 -0
  39. package/dist/linq/insert-into.js +11 -0
  40. package/dist/linq/insert-into.js.map +1 -0
  41. package/dist/linq/insertable.d.ts +30 -0
  42. package/dist/linq/insertable.d.ts.map +1 -0
  43. package/dist/linq/insertable.js +37 -0
  44. package/dist/linq/insertable.js.map +1 -0
  45. package/dist/linq/query-builder.d.ts +24 -0
  46. package/dist/linq/query-builder.d.ts.map +1 -0
  47. package/dist/linq/query-builder.js +21 -0
  48. package/dist/linq/query-builder.js.map +1 -0
  49. package/dist/linq/queryable.d.ts +61 -0
  50. package/dist/linq/queryable.d.ts.map +1 -0
  51. package/dist/linq/queryable.js +148 -0
  52. package/dist/linq/queryable.js.map +1 -0
  53. package/dist/linq/terminal-query.d.ts +10 -0
  54. package/dist/linq/terminal-query.d.ts.map +1 -0
  55. package/dist/linq/terminal-query.js +12 -0
  56. package/dist/linq/terminal-query.js.map +1 -0
  57. package/dist/linq/updatable.d.ts +57 -0
  58. package/dist/linq/updatable.d.ts.map +1 -0
  59. package/dist/linq/updatable.js +84 -0
  60. package/dist/linq/updatable.js.map +1 -0
  61. package/dist/linq/update.d.ts +19 -0
  62. package/dist/linq/update.d.ts.map +1 -0
  63. package/dist/linq/update.js +11 -0
  64. package/dist/linq/update.js.map +1 -0
  65. package/dist/parser/ast-types.d.ts +114 -0
  66. package/dist/parser/ast-types.d.ts.map +1 -0
  67. package/dist/parser/ast-types.js +6 -0
  68. package/dist/parser/ast-types.js.map +1 -0
  69. package/dist/parser/ast-visitor.d.ts +32 -0
  70. package/dist/parser/ast-visitor.d.ts.map +1 -0
  71. package/dist/parser/ast-visitor.js +666 -0
  72. package/dist/parser/ast-visitor.js.map +1 -0
  73. package/dist/parser/normalize-joins.d.ts +3 -0
  74. package/dist/parser/normalize-joins.d.ts.map +1 -0
  75. package/dist/parser/normalize-joins.js +109 -0
  76. package/dist/parser/normalize-joins.js.map +1 -0
  77. package/dist/parser/normalize-window-filters.d.ts +13 -0
  78. package/dist/parser/normalize-window-filters.d.ts.map +1 -0
  79. package/dist/parser/normalize-window-filters.js +212 -0
  80. package/dist/parser/normalize-window-filters.js.map +1 -0
  81. package/dist/parser/oxc-parser.d.ts +11 -0
  82. package/dist/parser/oxc-parser.d.ts.map +1 -0
  83. package/dist/parser/oxc-parser.js +27 -0
  84. package/dist/parser/oxc-parser.js.map +1 -0
  85. package/dist/parser/parse-cache-config.d.ts +31 -0
  86. package/dist/parser/parse-cache-config.d.ts.map +1 -0
  87. package/dist/parser/parse-cache-config.js +33 -0
  88. package/dist/parser/parse-cache-config.js.map +1 -0
  89. package/dist/parser/parse-cache.d.ts +65 -0
  90. package/dist/parser/parse-cache.d.ts.map +1 -0
  91. package/dist/parser/parse-cache.js +146 -0
  92. package/dist/parser/parse-cache.js.map +1 -0
  93. package/dist/parser/parse-query.d.ts +24 -0
  94. package/dist/parser/parse-query.d.ts.map +1 -0
  95. package/dist/parser/parse-query.js +118 -0
  96. package/dist/parser/parse-query.js.map +1 -0
  97. package/dist/parser/types.d.ts +11 -0
  98. package/dist/parser/types.d.ts.map +1 -0
  99. package/dist/parser/types.js +2 -0
  100. package/dist/parser/types.js.map +1 -0
  101. package/dist/plans/delete-plan.d.ts +44 -0
  102. package/dist/plans/delete-plan.d.ts.map +1 -0
  103. package/dist/plans/delete-plan.js +209 -0
  104. package/dist/plans/delete-plan.js.map +1 -0
  105. package/dist/plans/insert-plan.d.ts +50 -0
  106. package/dist/plans/insert-plan.d.ts.map +1 -0
  107. package/dist/plans/insert-plan.js +240 -0
  108. package/dist/plans/insert-plan.js.map +1 -0
  109. package/dist/plans/plan-execution.d.ts +39 -0
  110. package/dist/plans/plan-execution.d.ts.map +1 -0
  111. package/dist/plans/plan-execution.js +32 -0
  112. package/dist/plans/plan-execution.js.map +1 -0
  113. package/dist/plans/select-plan.d.ts +74 -0
  114. package/dist/plans/select-plan.d.ts.map +1 -0
  115. package/dist/plans/select-plan.js +551 -0
  116. package/dist/plans/select-plan.js.map +1 -0
  117. package/dist/plans/update-plan.d.ts +61 -0
  118. package/dist/plans/update-plan.d.ts.map +1 -0
  119. package/dist/plans/update-plan.js +297 -0
  120. package/dist/plans/update-plan.js.map +1 -0
  121. package/dist/query-tree/operations.d.ts +430 -0
  122. package/dist/query-tree/operations.d.ts.map +1 -0
  123. package/dist/query-tree/operations.js +8 -0
  124. package/dist/query-tree/operations.js.map +1 -0
  125. package/dist/visitors/aggregates/average.d.ts +11 -0
  126. package/dist/visitors/aggregates/average.d.ts.map +1 -0
  127. package/dist/visitors/aggregates/average.js +56 -0
  128. package/dist/visitors/aggregates/average.js.map +1 -0
  129. package/dist/visitors/aggregates/max.d.ts +11 -0
  130. package/dist/visitors/aggregates/max.d.ts.map +1 -0
  131. package/dist/visitors/aggregates/max.js +56 -0
  132. package/dist/visitors/aggregates/max.js.map +1 -0
  133. package/dist/visitors/aggregates/min.d.ts +11 -0
  134. package/dist/visitors/aggregates/min.d.ts.map +1 -0
  135. package/dist/visitors/aggregates/min.js +56 -0
  136. package/dist/visitors/aggregates/min.js.map +1 -0
  137. package/dist/visitors/aggregates/sum.d.ts +11 -0
  138. package/dist/visitors/aggregates/sum.d.ts.map +1 -0
  139. package/dist/visitors/aggregates/sum.js +56 -0
  140. package/dist/visitors/aggregates/sum.js.map +1 -0
  141. package/dist/visitors/ast-visitor.d.ts +15 -0
  142. package/dist/visitors/ast-visitor.d.ts.map +1 -0
  143. package/dist/visitors/ast-visitor.js +20 -0
  144. package/dist/visitors/ast-visitor.js.map +1 -0
  145. package/dist/visitors/boolean/comparison.d.ts +12 -0
  146. package/dist/visitors/boolean/comparison.d.ts.map +1 -0
  147. package/dist/visitors/boolean/comparison.js +128 -0
  148. package/dist/visitors/boolean/comparison.js.map +1 -0
  149. package/dist/visitors/boolean/logical.d.ts +12 -0
  150. package/dist/visitors/boolean/logical.d.ts.map +1 -0
  151. package/dist/visitors/boolean/logical.js +68 -0
  152. package/dist/visitors/boolean/logical.js.map +1 -0
  153. package/dist/visitors/boolean-predicates/all.d.ts +11 -0
  154. package/dist/visitors/boolean-predicates/all.d.ts.map +1 -0
  155. package/dist/visitors/boolean-predicates/all.js +49 -0
  156. package/dist/visitors/boolean-predicates/all.js.map +1 -0
  157. package/dist/visitors/boolean-predicates/any.d.ts +11 -0
  158. package/dist/visitors/boolean-predicates/any.d.ts.map +1 -0
  159. package/dist/visitors/boolean-predicates/any.js +48 -0
  160. package/dist/visitors/boolean-predicates/any.js.map +1 -0
  161. package/dist/visitors/common/identifier.d.ts +13 -0
  162. package/dist/visitors/common/identifier.d.ts.map +1 -0
  163. package/dist/visitors/common/identifier.js +46 -0
  164. package/dist/visitors/common/identifier.js.map +1 -0
  165. package/dist/visitors/common/literal.d.ts +13 -0
  166. package/dist/visitors/common/literal.d.ts.map +1 -0
  167. package/dist/visitors/common/literal.js +45 -0
  168. package/dist/visitors/common/literal.js.map +1 -0
  169. package/dist/visitors/common/member-access.d.ts +15 -0
  170. package/dist/visitors/common/member-access.d.ts.map +1 -0
  171. package/dist/visitors/common/member-access.js +192 -0
  172. package/dist/visitors/common/member-access.js.map +1 -0
  173. package/dist/visitors/contains/index.d.ts +11 -0
  174. package/dist/visitors/contains/index.d.ts.map +1 -0
  175. package/dist/visitors/contains/index.js +26 -0
  176. package/dist/visitors/contains/index.js.map +1 -0
  177. package/dist/visitors/count/index.d.ts +11 -0
  178. package/dist/visitors/count/index.d.ts.map +1 -0
  179. package/dist/visitors/count/index.js +47 -0
  180. package/dist/visitors/count/index.js.map +1 -0
  181. package/dist/visitors/delete/allow-full-delete.d.ts +14 -0
  182. package/dist/visitors/delete/allow-full-delete.d.ts.map +1 -0
  183. package/dist/visitors/delete/allow-full-delete.js +26 -0
  184. package/dist/visitors/delete/allow-full-delete.js.map +1 -0
  185. package/dist/visitors/delete/index.d.ts +10 -0
  186. package/dist/visitors/delete/index.d.ts.map +1 -0
  187. package/dist/visitors/delete/index.js +53 -0
  188. package/dist/visitors/delete/index.js.map +1 -0
  189. package/dist/visitors/delete/where-delete.d.ts +15 -0
  190. package/dist/visitors/delete/where-delete.d.ts.map +1 -0
  191. package/dist/visitors/delete/where-delete.js +59 -0
  192. package/dist/visitors/delete/where-delete.js.map +1 -0
  193. package/dist/visitors/distinct/index.d.ts +16 -0
  194. package/dist/visitors/distinct/index.d.ts.map +1 -0
  195. package/dist/visitors/distinct/index.js +20 -0
  196. package/dist/visitors/distinct/index.js.map +1 -0
  197. package/dist/visitors/from/index.d.ts +12 -0
  198. package/dist/visitors/from/index.d.ts.map +1 -0
  199. package/dist/visitors/from/index.js +58 -0
  200. package/dist/visitors/from/index.js.map +1 -0
  201. package/dist/visitors/groupby/index.d.ts +11 -0
  202. package/dist/visitors/groupby/index.d.ts.map +1 -0
  203. package/dist/visitors/groupby/index.js +51 -0
  204. package/dist/visitors/groupby/index.js.map +1 -0
  205. package/dist/visitors/groupjoin/index.d.ts +8 -0
  206. package/dist/visitors/groupjoin/index.d.ts.map +1 -0
  207. package/dist/visitors/groupjoin/index.js +184 -0
  208. package/dist/visitors/groupjoin/index.js.map +1 -0
  209. package/dist/visitors/index.d.ts +13 -0
  210. package/dist/visitors/index.d.ts.map +1 -0
  211. package/dist/visitors/index.js +266 -0
  212. package/dist/visitors/index.js.map +1 -0
  213. package/dist/visitors/insert/index.d.ts +10 -0
  214. package/dist/visitors/insert/index.d.ts.map +1 -0
  215. package/dist/visitors/insert/index.js +54 -0
  216. package/dist/visitors/insert/index.js.map +1 -0
  217. package/dist/visitors/insert/returning.d.ts +15 -0
  218. package/dist/visitors/insert/returning.d.ts.map +1 -0
  219. package/dist/visitors/insert/returning.js +60 -0
  220. package/dist/visitors/insert/returning.js.map +1 -0
  221. package/dist/visitors/insert/values.d.ts +15 -0
  222. package/dist/visitors/insert/values.d.ts.map +1 -0
  223. package/dist/visitors/insert/values.js +37 -0
  224. package/dist/visitors/insert/values.js.map +1 -0
  225. package/dist/visitors/join/context.d.ts +16 -0
  226. package/dist/visitors/join/context.d.ts.map +1 -0
  227. package/dist/visitors/join/context.js +6 -0
  228. package/dist/visitors/join/context.js.map +1 -0
  229. package/dist/visitors/join/expression.d.ts +16 -0
  230. package/dist/visitors/join/expression.d.ts.map +1 -0
  231. package/dist/visitors/join/expression.js +162 -0
  232. package/dist/visitors/join/expression.js.map +1 -0
  233. package/dist/visitors/join/index.d.ts +10 -0
  234. package/dist/visitors/join/index.d.ts.map +1 -0
  235. package/dist/visitors/join/index.js +9 -0
  236. package/dist/visitors/join/index.js.map +1 -0
  237. package/dist/visitors/join/join.d.ts +12 -0
  238. package/dist/visitors/join/join.d.ts.map +1 -0
  239. package/dist/visitors/join/join.js +348 -0
  240. package/dist/visitors/join/join.js.map +1 -0
  241. package/dist/visitors/join/result-selector.d.ts +16 -0
  242. package/dist/visitors/join/result-selector.d.ts.map +1 -0
  243. package/dist/visitors/join/result-selector.js +121 -0
  244. package/dist/visitors/join/result-selector.js.map +1 -0
  245. package/dist/visitors/join/shape.d.ts +16 -0
  246. package/dist/visitors/join/shape.d.ts.map +1 -0
  247. package/dist/visitors/join/shape.js +157 -0
  248. package/dist/visitors/join/shape.js.map +1 -0
  249. package/dist/visitors/orderby/context.d.ts +20 -0
  250. package/dist/visitors/orderby/context.d.ts.map +1 -0
  251. package/dist/visitors/orderby/context.js +25 -0
  252. package/dist/visitors/orderby/context.js.map +1 -0
  253. package/dist/visitors/orderby/index.d.ts +7 -0
  254. package/dist/visitors/orderby/index.d.ts.map +1 -0
  255. package/dist/visitors/orderby/index.js +7 -0
  256. package/dist/visitors/orderby/index.js.map +1 -0
  257. package/dist/visitors/orderby/key-selector.d.ts +13 -0
  258. package/dist/visitors/orderby/key-selector.d.ts.map +1 -0
  259. package/dist/visitors/orderby/key-selector.js +236 -0
  260. package/dist/visitors/orderby/key-selector.js.map +1 -0
  261. package/dist/visitors/orderby/orderby.d.ts +20 -0
  262. package/dist/visitors/orderby/orderby.d.ts.map +1 -0
  263. package/dist/visitors/orderby/orderby.js +83 -0
  264. package/dist/visitors/orderby/orderby.js.map +1 -0
  265. package/dist/visitors/orderby/thenby.d.ts +20 -0
  266. package/dist/visitors/orderby/thenby.d.ts.map +1 -0
  267. package/dist/visitors/orderby/thenby.js +76 -0
  268. package/dist/visitors/orderby/thenby.js.map +1 -0
  269. package/dist/visitors/predicates/first.d.ts +11 -0
  270. package/dist/visitors/predicates/first.d.ts.map +1 -0
  271. package/dist/visitors/predicates/first.js +47 -0
  272. package/dist/visitors/predicates/first.js.map +1 -0
  273. package/dist/visitors/predicates/last.d.ts +11 -0
  274. package/dist/visitors/predicates/last.d.ts.map +1 -0
  275. package/dist/visitors/predicates/last.js +48 -0
  276. package/dist/visitors/predicates/last.js.map +1 -0
  277. package/dist/visitors/predicates/single.d.ts +11 -0
  278. package/dist/visitors/predicates/single.d.ts.map +1 -0
  279. package/dist/visitors/predicates/single.js +48 -0
  280. package/dist/visitors/predicates/single.js.map +1 -0
  281. package/dist/visitors/reverse/index.d.ts +11 -0
  282. package/dist/visitors/reverse/index.d.ts.map +1 -0
  283. package/dist/visitors/reverse/index.js +14 -0
  284. package/dist/visitors/reverse/index.js.map +1 -0
  285. package/dist/visitors/select/context.d.ts +30 -0
  286. package/dist/visitors/select/context.d.ts.map +1 -0
  287. package/dist/visitors/select/context.js +30 -0
  288. package/dist/visitors/select/context.js.map +1 -0
  289. package/dist/visitors/select/index.d.ts +16 -0
  290. package/dist/visitors/select/index.d.ts.map +1 -0
  291. package/dist/visitors/select/index.js +180 -0
  292. package/dist/visitors/select/index.js.map +1 -0
  293. package/dist/visitors/select/projection.d.ts +13 -0
  294. package/dist/visitors/select/projection.d.ts.map +1 -0
  295. package/dist/visitors/select/projection.js +642 -0
  296. package/dist/visitors/select/projection.js.map +1 -0
  297. package/dist/visitors/select-many/index.d.ts +8 -0
  298. package/dist/visitors/select-many/index.d.ts.map +1 -0
  299. package/dist/visitors/select-many/index.js +244 -0
  300. package/dist/visitors/select-many/index.js.map +1 -0
  301. package/dist/visitors/shared/generic-visitor.d.ts +21 -0
  302. package/dist/visitors/shared/generic-visitor.d.ts.map +1 -0
  303. package/dist/visitors/shared/generic-visitor.js +32 -0
  304. package/dist/visitors/shared/generic-visitor.js.map +1 -0
  305. package/dist/visitors/shared/predicate-visitor.d.ts +21 -0
  306. package/dist/visitors/shared/predicate-visitor.d.ts.map +1 -0
  307. package/dist/visitors/shared/predicate-visitor.js +49 -0
  308. package/dist/visitors/shared/predicate-visitor.js.map +1 -0
  309. package/dist/visitors/shared/value-visitor.d.ts +21 -0
  310. package/dist/visitors/shared/value-visitor.d.ts.map +1 -0
  311. package/dist/visitors/shared/value-visitor.js +38 -0
  312. package/dist/visitors/shared/value-visitor.js.map +1 -0
  313. package/dist/visitors/take-skip/skip.d.ts +15 -0
  314. package/dist/visitors/take-skip/skip.d.ts.map +1 -0
  315. package/dist/visitors/take-skip/skip.js +209 -0
  316. package/dist/visitors/take-skip/skip.js.map +1 -0
  317. package/dist/visitors/take-skip/take.d.ts +15 -0
  318. package/dist/visitors/take-skip/take.d.ts.map +1 -0
  319. package/dist/visitors/take-skip/take.js +76 -0
  320. package/dist/visitors/take-skip/take.js.map +1 -0
  321. package/dist/visitors/types.d.ts +170 -0
  322. package/dist/visitors/types.d.ts.map +1 -0
  323. package/dist/visitors/types.js +184 -0
  324. package/dist/visitors/types.js.map +1 -0
  325. package/dist/visitors/update/allow-full-update.d.ts +14 -0
  326. package/dist/visitors/update/allow-full-update.d.ts.map +1 -0
  327. package/dist/visitors/update/allow-full-update.js +26 -0
  328. package/dist/visitors/update/allow-full-update.js.map +1 -0
  329. package/dist/visitors/update/index.d.ts +10 -0
  330. package/dist/visitors/update/index.d.ts.map +1 -0
  331. package/dist/visitors/update/index.js +54 -0
  332. package/dist/visitors/update/index.js.map +1 -0
  333. package/dist/visitors/update/returning-update.d.ts +15 -0
  334. package/dist/visitors/update/returning-update.d.ts.map +1 -0
  335. package/dist/visitors/update/returning-update.js +60 -0
  336. package/dist/visitors/update/returning-update.js.map +1 -0
  337. package/dist/visitors/update/set.d.ts +15 -0
  338. package/dist/visitors/update/set.d.ts.map +1 -0
  339. package/dist/visitors/update/set.js +46 -0
  340. package/dist/visitors/update/set.js.map +1 -0
  341. package/dist/visitors/update/where-update.d.ts +15 -0
  342. package/dist/visitors/update/where-update.d.ts.map +1 -0
  343. package/dist/visitors/update/where-update.js +59 -0
  344. package/dist/visitors/update/where-update.js.map +1 -0
  345. package/dist/visitors/utils.d.ts +36 -0
  346. package/dist/visitors/utils.d.ts.map +1 -0
  347. package/dist/visitors/utils.js +104 -0
  348. package/dist/visitors/utils.js.map +1 -0
  349. package/dist/visitors/value/array-literal.d.ts +12 -0
  350. package/dist/visitors/value/array-literal.d.ts.map +1 -0
  351. package/dist/visitors/value/array-literal.js +23 -0
  352. package/dist/visitors/value/array-literal.js.map +1 -0
  353. package/dist/visitors/value/call-expression.d.ts +12 -0
  354. package/dist/visitors/value/call-expression.d.ts.map +1 -0
  355. package/dist/visitors/value/call-expression.js +165 -0
  356. package/dist/visitors/value/call-expression.js.map +1 -0
  357. package/dist/visitors/value/object-literal.d.ts +12 -0
  358. package/dist/visitors/value/object-literal.d.ts.map +1 -0
  359. package/dist/visitors/value/object-literal.js +98 -0
  360. package/dist/visitors/value/object-literal.js.map +1 -0
  361. package/dist/visitors/visitor-utils.d.ts +22 -0
  362. package/dist/visitors/visitor-utils.d.ts.map +1 -0
  363. package/dist/visitors/visitor-utils.js +64 -0
  364. package/dist/visitors/visitor-utils.js.map +1 -0
  365. package/dist/visitors/where/boolean-method.d.ts +12 -0
  366. package/dist/visitors/where/boolean-method.d.ts.map +1 -0
  367. package/dist/visitors/where/boolean-method.js +150 -0
  368. package/dist/visitors/where/boolean-method.js.map +1 -0
  369. package/dist/visitors/where/case-insensitive-functions.d.ts +13 -0
  370. package/dist/visitors/where/case-insensitive-functions.d.ts.map +1 -0
  371. package/dist/visitors/where/case-insensitive-functions.js +72 -0
  372. package/dist/visitors/where/case-insensitive-functions.js.map +1 -0
  373. package/dist/visitors/where/column.d.ts +14 -0
  374. package/dist/visitors/where/column.d.ts.map +1 -0
  375. package/dist/visitors/where/column.js +57 -0
  376. package/dist/visitors/where/column.js.map +1 -0
  377. package/dist/visitors/where/comparison.d.ts +12 -0
  378. package/dist/visitors/where/comparison.d.ts.map +1 -0
  379. package/dist/visitors/where/comparison.js +141 -0
  380. package/dist/visitors/where/comparison.js.map +1 -0
  381. package/dist/visitors/where/context.d.ts +32 -0
  382. package/dist/visitors/where/context.d.ts.map +1 -0
  383. package/dist/visitors/where/context.js +18 -0
  384. package/dist/visitors/where/context.js.map +1 -0
  385. package/dist/visitors/where/index.d.ts +16 -0
  386. package/dist/visitors/where/index.d.ts.map +1 -0
  387. package/dist/visitors/where/index.js +82 -0
  388. package/dist/visitors/where/index.js.map +1 -0
  389. package/dist/visitors/where/logical.d.ts +12 -0
  390. package/dist/visitors/where/logical.d.ts.map +1 -0
  391. package/dist/visitors/where/logical.js +43 -0
  392. package/dist/visitors/where/logical.js.map +1 -0
  393. package/dist/visitors/where/predicate.d.ts +13 -0
  394. package/dist/visitors/where/predicate.d.ts.map +1 -0
  395. package/dist/visitors/where/predicate.js +131 -0
  396. package/dist/visitors/where/predicate.js.map +1 -0
  397. package/dist/visitors/where/value.d.ts +13 -0
  398. package/dist/visitors/where/value.d.ts.map +1 -0
  399. package/dist/visitors/where/value.js +356 -0
  400. package/dist/visitors/where/value.js.map +1 -0
  401. package/dist/visitors/window/index.d.ts +18 -0
  402. package/dist/visitors/window/index.d.ts.map +1 -0
  403. package/dist/visitors/window/index.js +156 -0
  404. package/dist/visitors/window/index.js.map +1 -0
  405. package/package.json +50 -0
@@ -0,0 +1,430 @@
1
+ /**
2
+ * Simplified Query Operation Types for Runtime Parsing
3
+ *
4
+ * These types represent the parsed expression tree without complex generics.
5
+ * They are used by the parser to build query structures from lambda expressions.
6
+ */
7
+ import type { Expression, BooleanExpression, ValueExpression, ObjectExpression } from "../expressions/expression.js";
8
+ /**
9
+ * Parameter reference for external parameters
10
+ */
11
+ export interface ParamRef {
12
+ type: "param";
13
+ param: string;
14
+ property?: string;
15
+ }
16
+ /**
17
+ * Base query operation
18
+ */
19
+ export interface QueryOperation {
20
+ type: "queryOperation";
21
+ operationType: string;
22
+ }
23
+ /**
24
+ * FROM operation - the root of all query chains
25
+ * Can reference either a table or a subquery (derived table)
26
+ */
27
+ export interface FromOperation extends QueryOperation {
28
+ operationType: "from";
29
+ table?: string;
30
+ schema?: string;
31
+ subquery?: QueryOperation;
32
+ aliasHint?: string;
33
+ }
34
+ /**
35
+ * WHERE operation - filters the source
36
+ */
37
+ export interface WhereOperation extends QueryOperation {
38
+ operationType: "where";
39
+ source: QueryOperation;
40
+ predicate: BooleanExpression;
41
+ }
42
+ /**
43
+ * SELECT operation - projects the source
44
+ */
45
+ export interface SelectOperation extends QueryOperation {
46
+ operationType: "select";
47
+ source: QueryOperation;
48
+ selector: ValueExpression | ObjectExpression | null;
49
+ }
50
+ /**
51
+ * JOIN operation
52
+ */
53
+ export interface JoinOperation extends QueryOperation {
54
+ operationType: "join";
55
+ source: QueryOperation;
56
+ inner: QueryOperation;
57
+ outerKey: string;
58
+ innerKey: string;
59
+ outerKeySource?: number;
60
+ resultSelector?: Expression;
61
+ resultShape?: ResultShape;
62
+ joinType?: "inner" | "left" | "right" | "full" | "cross";
63
+ }
64
+ /**
65
+ * GROUP JOIN operation (LINQ-style)
66
+ */
67
+ export interface GroupJoinOperation extends QueryOperation {
68
+ operationType: "groupJoin";
69
+ source: QueryOperation;
70
+ inner: QueryOperation;
71
+ outerKey: string;
72
+ innerKey: string;
73
+ outerKeySource?: number;
74
+ resultSelector?: Expression;
75
+ resultShape?: ResultShape;
76
+ outerParam?: string;
77
+ innerGroupParam?: string;
78
+ outerBindingName?: string;
79
+ groupBindingName?: string;
80
+ }
81
+ /**
82
+ * SELECT MANY operation (LINQ-style)
83
+ */
84
+ export interface SelectManyOperation extends QueryOperation {
85
+ operationType: "selectMany";
86
+ source: QueryOperation;
87
+ collection: QueryOperation | Expression;
88
+ resultSelector?: Expression;
89
+ sourceParam?: string;
90
+ collectionParam?: string;
91
+ resultParam?: string;
92
+ collectionPropertyPath?: string[];
93
+ usesDefaultIfEmpty?: boolean;
94
+ resultShape?: ResultShape;
95
+ resultBindings?: Array<{
96
+ name: string;
97
+ source: "outer" | "inner";
98
+ path?: string[];
99
+ }>;
100
+ }
101
+ /**
102
+ * DEFAULT IF EMPTY operation
103
+ */
104
+ export interface DefaultIfEmptyOperation extends QueryOperation {
105
+ operationType: "defaultIfEmpty";
106
+ source: QueryOperation;
107
+ defaultValue?: Expression;
108
+ }
109
+ /**
110
+ * Represents the shape of a JOIN result with full nested structure preservation
111
+ */
112
+ export interface ResultShape {
113
+ type: "object";
114
+ properties: Map<string, ShapeNode>;
115
+ }
116
+ /**
117
+ * A node in the shape tree that can be a column, object, or reference
118
+ */
119
+ export type ShapeNode = ColumnShapeNode | ObjectShapeNode | ReferenceShapeNode | ArrayShapeNode;
120
+ /**
121
+ * Represents a direct column reference
122
+ */
123
+ export interface ColumnShapeNode {
124
+ type: "column";
125
+ sourceTable: number;
126
+ columnName: string;
127
+ }
128
+ /**
129
+ * Represents a nested object with properties
130
+ */
131
+ export interface ObjectShapeNode {
132
+ type: "object";
133
+ properties: Map<string, ShapeNode>;
134
+ }
135
+ /**
136
+ * Represents a reference to an entire table/parameter
137
+ */
138
+ export interface ReferenceShapeNode {
139
+ type: "reference";
140
+ sourceTable: number;
141
+ }
142
+ /**
143
+ * Represents an array (for future support)
144
+ */
145
+ export interface ArrayShapeNode {
146
+ type: "array";
147
+ elementShape: ShapeNode;
148
+ }
149
+ /**
150
+ * GROUP BY operation
151
+ */
152
+ export interface GroupByOperation extends QueryOperation {
153
+ operationType: "groupBy";
154
+ source: QueryOperation;
155
+ keySelector: Expression;
156
+ }
157
+ /**
158
+ * ORDER BY operation
159
+ */
160
+ export interface OrderByOperation extends QueryOperation {
161
+ operationType: "orderBy";
162
+ source: QueryOperation;
163
+ keySelector: string | ValueExpression;
164
+ descending: boolean;
165
+ }
166
+ /**
167
+ * THEN BY operation - secondary ordering
168
+ */
169
+ export interface ThenByOperation extends QueryOperation {
170
+ operationType: "thenBy";
171
+ source: QueryOperation;
172
+ keySelector: string | ValueExpression;
173
+ descending: boolean;
174
+ }
175
+ /**
176
+ * DISTINCT operation
177
+ */
178
+ export interface DistinctOperation extends QueryOperation {
179
+ operationType: "distinct";
180
+ source: QueryOperation;
181
+ }
182
+ /**
183
+ * TAKE operation (LIMIT)
184
+ */
185
+ export interface TakeOperation extends QueryOperation {
186
+ operationType: "take";
187
+ source: QueryOperation;
188
+ count: number | ParamRef | import("../expressions/expression.js").ValueExpression;
189
+ }
190
+ /**
191
+ * SKIP operation (OFFSET)
192
+ */
193
+ export interface SkipOperation extends QueryOperation {
194
+ operationType: "skip";
195
+ source: QueryOperation;
196
+ count: number | ParamRef | import("../expressions/expression.js").ValueExpression;
197
+ }
198
+ /**
199
+ * REVERSE operation
200
+ */
201
+ export interface ReverseOperation extends QueryOperation {
202
+ operationType: "reverse";
203
+ source: QueryOperation;
204
+ }
205
+ /**
206
+ * ZIP operation
207
+ */
208
+ export interface ZipOperation extends QueryOperation {
209
+ operationType: "zip";
210
+ source: QueryOperation;
211
+ second: QueryOperation;
212
+ resultSelector: ObjectExpression;
213
+ }
214
+ /**
215
+ * APPEND operation
216
+ */
217
+ export interface AppendOperation extends QueryOperation {
218
+ operationType: "append";
219
+ source: QueryOperation;
220
+ element: ValueExpression | ObjectExpression;
221
+ }
222
+ /**
223
+ * PREPEND operation
224
+ */
225
+ export interface PrependOperation extends QueryOperation {
226
+ operationType: "prepend";
227
+ source: QueryOperation;
228
+ element: ValueExpression | ObjectExpression;
229
+ }
230
+ /**
231
+ * HAVING operation - filters after grouping
232
+ */
233
+ export interface HavingOperation extends QueryOperation {
234
+ operationType: "having";
235
+ source: QueryOperation;
236
+ predicate: BooleanExpression;
237
+ }
238
+ /**
239
+ * FIRST operation
240
+ */
241
+ export interface FirstOperation extends QueryOperation {
242
+ operationType: "first";
243
+ source: QueryOperation;
244
+ predicate?: BooleanExpression;
245
+ }
246
+ /**
247
+ * FIRST OR DEFAULT operation
248
+ */
249
+ export interface FirstOrDefaultOperation extends QueryOperation {
250
+ operationType: "firstOrDefault";
251
+ source: QueryOperation;
252
+ predicate?: BooleanExpression;
253
+ }
254
+ /**
255
+ * SINGLE operation
256
+ */
257
+ export interface SingleOperation extends QueryOperation {
258
+ operationType: "single";
259
+ source: QueryOperation;
260
+ predicate?: BooleanExpression;
261
+ }
262
+ /**
263
+ * SINGLE OR DEFAULT operation
264
+ */
265
+ export interface SingleOrDefaultOperation extends QueryOperation {
266
+ operationType: "singleOrDefault";
267
+ source: QueryOperation;
268
+ predicate?: BooleanExpression;
269
+ }
270
+ /**
271
+ * LAST operation
272
+ */
273
+ export interface LastOperation extends QueryOperation {
274
+ operationType: "last";
275
+ source: QueryOperation;
276
+ predicate?: BooleanExpression;
277
+ }
278
+ /**
279
+ * LAST OR DEFAULT operation
280
+ */
281
+ export interface LastOrDefaultOperation extends QueryOperation {
282
+ operationType: "lastOrDefault";
283
+ source: QueryOperation;
284
+ predicate?: BooleanExpression;
285
+ }
286
+ /**
287
+ * ANY operation
288
+ */
289
+ export interface AnyOperation extends QueryOperation {
290
+ operationType: "any";
291
+ source: QueryOperation;
292
+ predicate?: BooleanExpression;
293
+ }
294
+ /**
295
+ * ALL operation
296
+ */
297
+ export interface AllOperation extends QueryOperation {
298
+ operationType: "all";
299
+ source: QueryOperation;
300
+ predicate: BooleanExpression;
301
+ }
302
+ /**
303
+ * CONTAINS operation
304
+ */
305
+ export interface ContainsOperation extends QueryOperation {
306
+ operationType: "contains";
307
+ source: QueryOperation;
308
+ value: ValueExpression;
309
+ }
310
+ /**
311
+ * COUNT operation
312
+ */
313
+ export interface CountOperation extends QueryOperation {
314
+ operationType: "count";
315
+ source: QueryOperation;
316
+ predicate?: BooleanExpression;
317
+ }
318
+ /**
319
+ * LONG COUNT operation
320
+ */
321
+ export interface LongCountOperation extends QueryOperation {
322
+ operationType: "longCount";
323
+ source: QueryOperation;
324
+ predicate?: BooleanExpression;
325
+ }
326
+ /**
327
+ * SUM operation
328
+ */
329
+ export interface SumOperation extends QueryOperation {
330
+ operationType: "sum";
331
+ source: QueryOperation;
332
+ selectorExpression?: ValueExpression;
333
+ }
334
+ /**
335
+ * AVERAGE operation
336
+ */
337
+ export interface AverageOperation extends QueryOperation {
338
+ operationType: "average";
339
+ source: QueryOperation;
340
+ selectorExpression?: ValueExpression;
341
+ }
342
+ /**
343
+ * MIN operation
344
+ */
345
+ export interface MinOperation extends QueryOperation {
346
+ operationType: "min";
347
+ source: QueryOperation;
348
+ selectorExpression?: ValueExpression;
349
+ }
350
+ /**
351
+ * MAX operation
352
+ */
353
+ export interface MaxOperation extends QueryOperation {
354
+ operationType: "max";
355
+ source: QueryOperation;
356
+ selectorExpression?: ValueExpression;
357
+ }
358
+ /**
359
+ * AGGREGATE operation
360
+ */
361
+ export interface AggregateOperation extends QueryOperation {
362
+ operationType: "aggregate";
363
+ source: QueryOperation;
364
+ seed: ValueExpression;
365
+ func: ObjectExpression;
366
+ resultSelector?: ObjectExpression;
367
+ }
368
+ /**
369
+ * TO DICTIONARY operation
370
+ */
371
+ export interface ToDictionaryOperation extends QueryOperation {
372
+ operationType: "toDictionary";
373
+ source: QueryOperation;
374
+ keySelector: string | ValueExpression;
375
+ elementSelector?: ValueExpression | ObjectExpression;
376
+ }
377
+ /**
378
+ * TO LOOKUP operation
379
+ */
380
+ export interface ToLookupOperation extends QueryOperation {
381
+ operationType: "toLookup";
382
+ source: QueryOperation;
383
+ keySelector: string | ValueExpression;
384
+ elementSelector?: ValueExpression | ObjectExpression;
385
+ }
386
+ /**
387
+ * Union type for all chainable operations
388
+ */
389
+ export type ChainableOperation = FromOperation | WhereOperation | SelectOperation | JoinOperation | GroupJoinOperation | SelectManyOperation | DefaultIfEmptyOperation | GroupByOperation | OrderByOperation | ThenByOperation | DistinctOperation | TakeOperation | SkipOperation | ReverseOperation;
390
+ /**
391
+ * Union type for all terminal operations
392
+ */
393
+ export type TerminalOperation = FirstOperation | FirstOrDefaultOperation | SingleOperation | SingleOrDefaultOperation | LastOperation | LastOrDefaultOperation | ContainsOperation | CountOperation | SumOperation | AverageOperation | MinOperation | MaxOperation;
394
+ /**
395
+ * INSERT operation
396
+ */
397
+ export interface InsertOperation extends QueryOperation {
398
+ operationType: "insert";
399
+ table: string;
400
+ schema?: string;
401
+ values: ObjectExpression;
402
+ returning?: ValueExpression | ObjectExpression;
403
+ }
404
+ /**
405
+ * UPDATE operation
406
+ */
407
+ export interface UpdateOperation extends QueryOperation {
408
+ operationType: "update";
409
+ table: string;
410
+ schema?: string;
411
+ assignments: ObjectExpression;
412
+ predicate?: BooleanExpression;
413
+ allowFullTableUpdate?: boolean;
414
+ returning?: ValueExpression | ObjectExpression;
415
+ }
416
+ /**
417
+ * DELETE operation
418
+ */
419
+ export interface DeleteOperation extends QueryOperation {
420
+ operationType: "delete";
421
+ table: string;
422
+ schema?: string;
423
+ predicate?: BooleanExpression;
424
+ allowFullTableDelete?: boolean;
425
+ }
426
+ /**
427
+ * Union type for all operations
428
+ */
429
+ export type AnyQueryOperation = ChainableOperation | TerminalOperation | InsertOperation | UpdateOperation | DeleteOperation;
430
+ //# sourceMappingURL=operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/query-tree/operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Simplified Query Operation Types for Runtime Parsing
3
+ *
4
+ * These types represent the parsed expression tree without complex generics.
5
+ * They are used by the parser to build query structures from lambda expressions.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/query-tree/operations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * AVERAGE operation visitor
3
+ */
4
+ import type { AverageOperation, QueryOperation } from "../../query-tree/operations.js";
5
+ import type { CallExpression as ASTCallExpression } from "../../parser/ast-types.js";
6
+ import type { VisitorContext } from "../types.js";
7
+ export declare function visitAverageOperation(ast: ASTCallExpression, source: QueryOperation, _methodName: string, visitorContext: VisitorContext): {
8
+ operation: AverageOperation;
9
+ autoParams: Record<string, unknown>;
10
+ } | null;
11
+ //# sourceMappingURL=average.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"average.d.ts","sourceRoot":"","sources":["../../../src/visitors/aggregates/average.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEvF,OAAO,KAAK,EACV,cAAc,IAAI,iBAAiB,EAGpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlD,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,GAC7B;IAAE,SAAS,EAAE,gBAAgB,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,IAAI,CA8D7E"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * AVERAGE operation visitor
3
+ */
4
+ import { getParameterName, getReturnExpression } from "../visitor-utils.js";
5
+ import { visitValue } from "../shared/value-visitor.js";
6
+ export function visitAverageOperation(ast, source, _methodName, visitorContext) {
7
+ const autoParams = {};
8
+ if (ast.arguments && ast.arguments.length > 0) {
9
+ const lambdaAst = ast.arguments[0];
10
+ if (lambdaAst && lambdaAst.type === "ArrowFunctionExpression") {
11
+ const arrowFunc = lambdaAst;
12
+ const paramName = getParameterName(arrowFunc);
13
+ // Create a new context for this visitor
14
+ const localTableParams = new Set(visitorContext.tableParams);
15
+ const localQueryParams = new Set(visitorContext.queryParams);
16
+ if (paramName) {
17
+ localTableParams.add(paramName);
18
+ }
19
+ // Handle both Expression body and BlockStatement body
20
+ let bodyExpr = null;
21
+ if (arrowFunc.body.type === "BlockStatement") {
22
+ // For block statements, look for a return statement
23
+ bodyExpr = getReturnExpression(arrowFunc.body.body);
24
+ }
25
+ else {
26
+ bodyExpr = arrowFunc.body;
27
+ }
28
+ if (bodyExpr) {
29
+ const result = visitValue(bodyExpr, localTableParams, localQueryParams, visitorContext.autoParams, visitorContext.autoParamCounter);
30
+ if (result.value) {
31
+ const expr = result.value;
32
+ Object.assign(autoParams, result.autoParams);
33
+ visitorContext.autoParamCounter = result.counter;
34
+ return {
35
+ operation: {
36
+ type: "queryOperation",
37
+ operationType: "average",
38
+ source,
39
+ selectorExpression: expr,
40
+ },
41
+ autoParams,
42
+ };
43
+ }
44
+ }
45
+ }
46
+ }
47
+ return {
48
+ operation: {
49
+ type: "queryOperation",
50
+ operationType: "average",
51
+ source,
52
+ },
53
+ autoParams,
54
+ };
55
+ }
56
+ //# sourceMappingURL=average.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"average.js","sourceRoot":"","sources":["../../../src/visitors/aggregates/average.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,UAAU,qBAAqB,CACnC,GAAsB,EACtB,MAAsB,EACtB,WAAmB,EACnB,cAA8B;IAE9B,MAAM,UAAU,GAA4B,EAAE,CAAC;IAE/C,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,yBAAyB,EAAE,CAAC;YAC9D,MAAM,SAAS,GAAG,SAAoC,CAAC;YACvD,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAE9C,wCAAwC;YACxC,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YAE7D,IAAI,SAAS,EAAE,CAAC;gBACd,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC;YAED,sDAAsD;YACtD,IAAI,QAAQ,GAAyB,IAAI,CAAC;YAC1C,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAC7C,oDAAoD;gBACpD,QAAQ,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;YAC5B,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,UAAU,CACvB,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,gBAAgB,CAChC,CAAC;gBAEF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;oBAC1B,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC7C,cAAc,CAAC,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC;oBAEjD,OAAO;wBACL,SAAS,EAAE;4BACT,IAAI,EAAE,gBAAgB;4BACtB,aAAa,EAAE,SAAS;4BACxB,MAAM;4BACN,kBAAkB,EAAE,IAAuB;yBAC5C;wBACD,UAAU;qBACX,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,SAAS,EAAE;YACT,IAAI,EAAE,gBAAgB;YACtB,aAAa,EAAE,SAAS;YACxB,MAAM;SACP;QACD,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * MAX operation visitor
3
+ */
4
+ import type { MaxOperation, QueryOperation } from "../../query-tree/operations.js";
5
+ import type { CallExpression as ASTCallExpression } from "../../parser/ast-types.js";
6
+ import type { VisitorContext } from "../types.js";
7
+ export declare function visitMaxOperation(ast: ASTCallExpression, source: QueryOperation, _methodName: string, visitorContext: VisitorContext): {
8
+ operation: MaxOperation;
9
+ autoParams: Record<string, unknown>;
10
+ } | null;
11
+ //# sourceMappingURL=max.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"max.d.ts","sourceRoot":"","sources":["../../../src/visitors/aggregates/max.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEnF,OAAO,KAAK,EACV,cAAc,IAAI,iBAAiB,EAGpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlD,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,GAC7B;IAAE,SAAS,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,IAAI,CA8DzE"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * MAX operation visitor
3
+ */
4
+ import { getParameterName, getReturnExpression } from "../visitor-utils.js";
5
+ import { visitValue } from "../shared/value-visitor.js";
6
+ export function visitMaxOperation(ast, source, _methodName, visitorContext) {
7
+ const autoParams = {};
8
+ if (ast.arguments && ast.arguments.length > 0) {
9
+ const lambdaAst = ast.arguments[0];
10
+ if (lambdaAst && lambdaAst.type === "ArrowFunctionExpression") {
11
+ const arrowFunc = lambdaAst;
12
+ const paramName = getParameterName(arrowFunc);
13
+ // Create a new context for this visitor
14
+ const localTableParams = new Set(visitorContext.tableParams);
15
+ const localQueryParams = new Set(visitorContext.queryParams);
16
+ if (paramName) {
17
+ localTableParams.add(paramName);
18
+ }
19
+ // Handle both Expression body and BlockStatement body
20
+ let bodyExpr = null;
21
+ if (arrowFunc.body.type === "BlockStatement") {
22
+ // For block statements, look for a return statement
23
+ bodyExpr = getReturnExpression(arrowFunc.body.body);
24
+ }
25
+ else {
26
+ bodyExpr = arrowFunc.body;
27
+ }
28
+ if (bodyExpr) {
29
+ const result = visitValue(bodyExpr, localTableParams, localQueryParams, visitorContext.autoParams, visitorContext.autoParamCounter);
30
+ if (result.value) {
31
+ const expr = result.value;
32
+ Object.assign(autoParams, result.autoParams);
33
+ visitorContext.autoParamCounter = result.counter;
34
+ return {
35
+ operation: {
36
+ type: "queryOperation",
37
+ operationType: "max",
38
+ source,
39
+ selectorExpression: expr,
40
+ },
41
+ autoParams,
42
+ };
43
+ }
44
+ }
45
+ }
46
+ }
47
+ return {
48
+ operation: {
49
+ type: "queryOperation",
50
+ operationType: "max",
51
+ source,
52
+ },
53
+ autoParams,
54
+ };
55
+ }
56
+ //# sourceMappingURL=max.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"max.js","sourceRoot":"","sources":["../../../src/visitors/aggregates/max.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,UAAU,iBAAiB,CAC/B,GAAsB,EACtB,MAAsB,EACtB,WAAmB,EACnB,cAA8B;IAE9B,MAAM,UAAU,GAA4B,EAAE,CAAC;IAE/C,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,yBAAyB,EAAE,CAAC;YAC9D,MAAM,SAAS,GAAG,SAAoC,CAAC;YACvD,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAE9C,wCAAwC;YACxC,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YAE7D,IAAI,SAAS,EAAE,CAAC;gBACd,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC;YAED,sDAAsD;YACtD,IAAI,QAAQ,GAAyB,IAAI,CAAC;YAC1C,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAC7C,oDAAoD;gBACpD,QAAQ,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;YAC5B,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,UAAU,CACvB,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,gBAAgB,CAChC,CAAC;gBAEF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;oBAC1B,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC7C,cAAc,CAAC,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC;oBAEjD,OAAO;wBACL,SAAS,EAAE;4BACT,IAAI,EAAE,gBAAgB;4BACtB,aAAa,EAAE,KAAK;4BACpB,MAAM;4BACN,kBAAkB,EAAE,IAAuB;yBAC5C;wBACD,UAAU;qBACX,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,SAAS,EAAE;YACT,IAAI,EAAE,gBAAgB;YACtB,aAAa,EAAE,KAAK;YACpB,MAAM;SACP;QACD,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * MIN operation visitor
3
+ */
4
+ import type { MinOperation, QueryOperation } from "../../query-tree/operations.js";
5
+ import type { CallExpression as ASTCallExpression } from "../../parser/ast-types.js";
6
+ import type { VisitorContext } from "../types.js";
7
+ export declare function visitMinOperation(ast: ASTCallExpression, source: QueryOperation, _methodName: string, visitorContext: VisitorContext): {
8
+ operation: MinOperation;
9
+ autoParams: Record<string, unknown>;
10
+ } | null;
11
+ //# sourceMappingURL=min.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"min.d.ts","sourceRoot":"","sources":["../../../src/visitors/aggregates/min.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEnF,OAAO,KAAK,EACV,cAAc,IAAI,iBAAiB,EAGpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlD,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,GAC7B;IAAE,SAAS,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,IAAI,CA8DzE"}