@uwdata/mosaic-sql 0.16.2 → 0.18.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 (469) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +0 -2
  3. package/dist/src/ast/aggregate.d.ts +82 -0
  4. package/dist/src/ast/aggregate.d.ts.map +1 -0
  5. package/dist/src/ast/aggregate.js +180 -0
  6. package/dist/src/ast/aggregate.js.map +1 -0
  7. package/dist/src/ast/between-op.d.ts +46 -0
  8. package/dist/src/ast/between-op.d.ts.map +1 -0
  9. package/dist/src/ast/between-op.js +60 -0
  10. package/dist/src/ast/between-op.js.map +1 -0
  11. package/dist/src/ast/binary-op.d.ts +21 -0
  12. package/dist/src/ast/binary-op.d.ts.map +1 -0
  13. package/dist/src/ast/binary-op.js +29 -0
  14. package/dist/src/ast/binary-op.js.map +1 -0
  15. package/dist/src/ast/case.d.ts +53 -0
  16. package/dist/src/ast/case.d.ts.map +1 -0
  17. package/dist/src/ast/case.js +75 -0
  18. package/dist/src/ast/case.js.map +1 -0
  19. package/dist/src/ast/cast.d.ts +18 -0
  20. package/dist/src/ast/cast.d.ts.map +1 -0
  21. package/dist/src/ast/cast.js +26 -0
  22. package/dist/src/ast/cast.js.map +1 -0
  23. package/dist/src/ast/collate.d.ts +18 -0
  24. package/dist/src/ast/collate.d.ts.map +1 -0
  25. package/dist/src/ast/collate.js +25 -0
  26. package/dist/src/ast/collate.js.map +1 -0
  27. package/dist/src/ast/column-param.d.ts +23 -0
  28. package/dist/src/ast/column-param.d.ts.map +1 -0
  29. package/dist/src/ast/column-param.js +29 -0
  30. package/dist/src/ast/column-param.js.map +1 -0
  31. package/dist/src/ast/column-ref.d.ts +40 -0
  32. package/dist/src/ast/column-ref.d.ts.map +1 -0
  33. package/dist/src/ast/column-ref.js +58 -0
  34. package/dist/src/ast/column-ref.js.map +1 -0
  35. package/dist/src/ast/fragment.d.ts +20 -0
  36. package/dist/src/ast/fragment.d.ts.map +1 -0
  37. package/dist/src/ast/fragment.js +26 -0
  38. package/dist/src/ast/fragment.js.map +1 -0
  39. package/dist/src/ast/from.d.ts +22 -0
  40. package/dist/src/ast/from.d.ts.map +1 -0
  41. package/dist/src/ast/from.js +37 -0
  42. package/dist/src/ast/from.js.map +1 -0
  43. package/dist/src/ast/function.d.ts +18 -0
  44. package/dist/src/ast/function.d.ts.map +1 -0
  45. package/dist/src/ast/function.js +26 -0
  46. package/dist/src/ast/function.js.map +1 -0
  47. package/dist/src/ast/in-op.d.ts +18 -0
  48. package/dist/src/ast/in-op.d.ts.map +1 -0
  49. package/dist/src/ast/in-op.js +25 -0
  50. package/dist/src/ast/in-op.js.map +1 -0
  51. package/dist/src/ast/interval.d.ts +18 -0
  52. package/dist/src/ast/interval.d.ts.map +1 -0
  53. package/dist/src/ast/interval.js +25 -0
  54. package/dist/src/ast/interval.js.map +1 -0
  55. package/dist/src/ast/literal.d.ts +16 -0
  56. package/dist/src/ast/literal.d.ts.map +1 -0
  57. package/dist/src/ast/literal.js +53 -0
  58. package/dist/src/ast/literal.js.map +1 -0
  59. package/dist/src/ast/logical-op.d.ts +32 -0
  60. package/dist/src/ast/logical-op.d.ts.map +1 -0
  61. package/dist/src/ast/logical-op.js +46 -0
  62. package/dist/src/ast/logical-op.js.map +1 -0
  63. package/dist/src/ast/node.d.ts +25 -0
  64. package/dist/src/ast/node.d.ts.map +1 -0
  65. package/dist/src/ast/node.js +36 -0
  66. package/dist/src/ast/node.js.map +1 -0
  67. package/dist/src/ast/order-by.d.ts +21 -0
  68. package/dist/src/ast/order-by.d.ts.map +1 -0
  69. package/dist/src/ast/order-by.js +36 -0
  70. package/dist/src/ast/order-by.js.map +1 -0
  71. package/dist/{types → src}/ast/param.d.ts +11 -11
  72. package/dist/src/ast/param.d.ts.map +1 -0
  73. package/dist/src/ast/param.js +28 -0
  74. package/dist/src/ast/param.js.map +1 -0
  75. package/dist/src/ast/query.d.ts +294 -0
  76. package/dist/src/ast/query.d.ts.map +1 -0
  77. package/dist/src/ast/query.js +584 -0
  78. package/dist/src/ast/query.js.map +1 -0
  79. package/dist/src/ast/sample.d.ts +27 -0
  80. package/dist/src/ast/sample.d.ts.map +1 -0
  81. package/dist/src/ast/sample.js +38 -0
  82. package/dist/src/ast/sample.js.map +1 -0
  83. package/dist/src/ast/select.d.ts +19 -0
  84. package/dist/src/ast/select.d.ts.map +1 -0
  85. package/dist/src/ast/select.js +35 -0
  86. package/dist/src/ast/select.js.map +1 -0
  87. package/dist/src/ast/subquery.d.ts +16 -0
  88. package/dist/src/ast/subquery.d.ts.map +1 -0
  89. package/dist/src/ast/subquery.js +21 -0
  90. package/dist/src/ast/subquery.js.map +1 -0
  91. package/dist/src/ast/table-ref.d.ts +24 -0
  92. package/dist/src/ast/table-ref.d.ts.map +1 -0
  93. package/dist/src/ast/table-ref.js +35 -0
  94. package/dist/src/ast/table-ref.js.map +1 -0
  95. package/dist/src/ast/unary-op.d.ts +40 -0
  96. package/dist/src/ast/unary-op.d.ts.map +1 -0
  97. package/dist/src/ast/unary-op.js +52 -0
  98. package/dist/src/ast/unary-op.js.map +1 -0
  99. package/dist/src/ast/verbatim.d.ts +18 -0
  100. package/dist/src/ast/verbatim.d.ts.map +1 -0
  101. package/dist/src/ast/verbatim.js +25 -0
  102. package/dist/src/ast/verbatim.js.map +1 -0
  103. package/dist/src/ast/window-frame.d.ts +54 -0
  104. package/dist/src/ast/window-frame.d.ts.map +1 -0
  105. package/dist/src/ast/window-frame.js +79 -0
  106. package/dist/src/ast/window-frame.js.map +1 -0
  107. package/dist/src/ast/window.d.ts +128 -0
  108. package/dist/src/ast/window.d.ts.map +1 -0
  109. package/dist/src/ast/window.js +194 -0
  110. package/dist/src/ast/window.js.map +1 -0
  111. package/dist/{types → src}/ast/with.d.ts +15 -22
  112. package/dist/src/ast/with.d.ts.map +1 -0
  113. package/dist/src/ast/with.js +36 -0
  114. package/dist/src/ast/with.js.map +1 -0
  115. package/dist/src/constants.d.ts +38 -0
  116. package/dist/src/constants.d.ts.map +1 -0
  117. package/dist/src/constants.js +38 -0
  118. package/dist/src/constants.js.map +1 -0
  119. package/dist/src/functions/aggregate.d.ts +236 -0
  120. package/dist/src/functions/aggregate.d.ts.map +1 -0
  121. package/dist/src/functions/aggregate.js +308 -0
  122. package/dist/src/functions/aggregate.js.map +1 -0
  123. package/dist/{types → src}/functions/case.d.ts +7 -7
  124. package/dist/src/functions/case.d.ts.map +1 -0
  125. package/dist/src/functions/case.js +17 -0
  126. package/dist/src/functions/case.js.map +1 -0
  127. package/dist/src/functions/cast.d.ts +23 -0
  128. package/dist/src/functions/cast.d.ts.map +1 -0
  129. package/dist/src/functions/cast.js +32 -0
  130. package/dist/src/functions/cast.js.map +1 -0
  131. package/dist/src/functions/collate.d.ts +10 -0
  132. package/dist/src/functions/collate.d.ts.map +1 -0
  133. package/dist/src/functions/collate.js +12 -0
  134. package/dist/src/functions/collate.js.map +1 -0
  135. package/dist/src/functions/column.d.ts +10 -0
  136. package/dist/src/functions/column.d.ts.map +1 -0
  137. package/dist/src/functions/column.js +17 -0
  138. package/dist/src/functions/column.js.map +1 -0
  139. package/dist/{types → src}/functions/cte.d.ts +7 -7
  140. package/dist/src/functions/cte.d.ts.map +1 -0
  141. package/dist/src/functions/cte.js +14 -0
  142. package/dist/src/functions/cte.js.map +1 -0
  143. package/dist/src/functions/datetime.d.ts +32 -0
  144. package/dist/src/functions/datetime.d.ts.map +1 -0
  145. package/dist/src/functions/datetime.js +45 -0
  146. package/dist/src/functions/datetime.js.map +1 -0
  147. package/dist/src/functions/interval.d.ts +48 -0
  148. package/dist/src/functions/interval.d.ts.map +1 -0
  149. package/dist/src/functions/interval.js +66 -0
  150. package/dist/src/functions/interval.js.map +1 -0
  151. package/dist/{types → src}/functions/literal.d.ts +8 -8
  152. package/dist/src/functions/literal.d.ts.map +1 -0
  153. package/dist/src/functions/literal.js +20 -0
  154. package/dist/src/functions/literal.js.map +1 -0
  155. package/dist/src/functions/numeric.d.ts +80 -0
  156. package/dist/src/functions/numeric.d.ts.map +1 -0
  157. package/dist/src/functions/numeric.js +110 -0
  158. package/dist/src/functions/numeric.js.map +1 -0
  159. package/dist/src/functions/operators.d.ts +169 -0
  160. package/dist/src/functions/operators.d.ts.map +1 -0
  161. package/dist/src/functions/operators.js +235 -0
  162. package/dist/src/functions/operators.js.map +1 -0
  163. package/dist/src/functions/order-by.d.ts +15 -0
  164. package/dist/src/functions/order-by.d.ts.map +1 -0
  165. package/dist/src/functions/order-by.js +19 -0
  166. package/dist/src/functions/order-by.js.map +1 -0
  167. package/dist/src/functions/spatial.d.ts +32 -0
  168. package/dist/src/functions/spatial.d.ts.map +1 -0
  169. package/dist/src/functions/spatial.js +44 -0
  170. package/dist/src/functions/spatial.js.map +1 -0
  171. package/dist/{types → src}/functions/sql-template-tag.d.ts +8 -10
  172. package/dist/src/functions/sql-template-tag.d.ts.map +1 -0
  173. package/dist/src/functions/sql-template-tag.js +44 -0
  174. package/dist/src/functions/sql-template-tag.js.map +1 -0
  175. package/dist/src/functions/string.d.ts +49 -0
  176. package/dist/src/functions/string.d.ts.map +1 -0
  177. package/dist/src/functions/string.js +67 -0
  178. package/dist/src/functions/string.js.map +1 -0
  179. package/dist/src/functions/table-ref.d.ts +10 -0
  180. package/dist/src/functions/table-ref.d.ts.map +1 -0
  181. package/dist/src/functions/table-ref.js +13 -0
  182. package/dist/src/functions/table-ref.js.map +1 -0
  183. package/dist/src/functions/util.d.ts +7 -0
  184. package/dist/src/functions/util.d.ts.map +1 -0
  185. package/dist/src/functions/util.js +9 -0
  186. package/dist/src/functions/util.js.map +1 -0
  187. package/dist/src/functions/window-frame.d.ts +41 -0
  188. package/dist/src/functions/window-frame.d.ts.map +1 -0
  189. package/dist/src/functions/window-frame.js +52 -0
  190. package/dist/src/functions/window-frame.js.map +1 -0
  191. package/dist/{types → src}/functions/window.d.ts +24 -39
  192. package/dist/src/functions/window.d.ts.map +1 -0
  193. package/dist/src/functions/window.js +96 -0
  194. package/dist/src/functions/window.js.map +1 -0
  195. package/dist/src/index.d.ts +69 -0
  196. package/dist/src/index.d.ts.map +1 -0
  197. package/{src → dist/src}/index.js +16 -12
  198. package/dist/src/index.js.map +1 -0
  199. package/dist/src/load/create.d.ts +10 -0
  200. package/dist/src/load/create.d.ts.map +1 -0
  201. package/dist/src/load/create.js +14 -0
  202. package/dist/src/load/create.js.map +1 -0
  203. package/dist/src/load/extension.d.ts +2 -0
  204. package/dist/src/load/extension.d.ts.map +1 -0
  205. package/dist/src/load/extension.js +4 -0
  206. package/dist/src/load/extension.js.map +1 -0
  207. package/dist/src/load/load.d.ts +18 -0
  208. package/dist/src/load/load.d.ts.map +1 -0
  209. package/dist/src/load/load.js +80 -0
  210. package/dist/src/load/load.js.map +1 -0
  211. package/dist/src/load/sql-from.d.ts +14 -0
  212. package/dist/src/load/sql-from.d.ts.map +1 -0
  213. package/dist/src/load/sql-from.js +29 -0
  214. package/dist/src/load/sql-from.js.map +1 -0
  215. package/dist/src/transforms/bin-1d.d.ts +16 -0
  216. package/dist/src/transforms/bin-1d.d.ts.map +1 -0
  217. package/dist/src/transforms/bin-1d.js +21 -0
  218. package/dist/src/transforms/bin-1d.js.map +1 -0
  219. package/dist/src/transforms/bin-2d.d.ts +19 -0
  220. package/dist/src/transforms/bin-2d.d.ts.map +1 -0
  221. package/dist/src/transforms/bin-2d.js +27 -0
  222. package/dist/src/transforms/bin-2d.js.map +1 -0
  223. package/dist/src/transforms/bin-date.d.ts +31 -0
  224. package/dist/src/transforms/bin-date.d.ts.map +1 -0
  225. package/dist/src/transforms/bin-date.js +20 -0
  226. package/dist/src/transforms/bin-date.js.map +1 -0
  227. package/dist/src/transforms/bin-histogram.d.ts +37 -0
  228. package/dist/src/transforms/bin-histogram.d.ts.map +1 -0
  229. package/dist/src/transforms/bin-histogram.js +32 -0
  230. package/dist/src/transforms/bin-histogram.js.map +1 -0
  231. package/dist/src/transforms/bin-linear-1d.d.ts +11 -0
  232. package/dist/src/transforms/bin-linear-1d.d.ts.map +1 -0
  233. package/dist/src/transforms/bin-linear-1d.js +25 -0
  234. package/dist/src/transforms/bin-linear-1d.js.map +1 -0
  235. package/dist/src/transforms/bin-linear-2d.d.ts +20 -0
  236. package/dist/src/transforms/bin-linear-2d.d.ts.map +1 -0
  237. package/dist/src/transforms/bin-linear-2d.js +49 -0
  238. package/dist/src/transforms/bin-linear-2d.js.map +1 -0
  239. package/dist/src/transforms/filter-query.d.ts +12 -0
  240. package/dist/src/transforms/filter-query.d.ts.map +1 -0
  241. package/dist/src/transforms/filter-query.js +39 -0
  242. package/dist/src/transforms/filter-query.js.map +1 -0
  243. package/dist/src/transforms/line-density.d.ts +24 -0
  244. package/dist/src/transforms/line-density.d.ts.map +1 -0
  245. package/dist/src/transforms/line-density.js +98 -0
  246. package/dist/src/transforms/line-density.js.map +1 -0
  247. package/dist/src/transforms/m4.d.ts +19 -0
  248. package/dist/src/transforms/m4.d.ts.map +1 -0
  249. package/dist/src/transforms/m4.js +38 -0
  250. package/dist/src/transforms/m4.js.map +1 -0
  251. package/dist/src/transforms/scales.d.ts +30 -0
  252. package/dist/src/transforms/scales.d.ts.map +1 -0
  253. package/dist/src/transforms/scales.js +103 -0
  254. package/dist/src/transforms/scales.js.map +1 -0
  255. package/dist/src/transforms/util/bin-step.d.ts +50 -0
  256. package/dist/src/transforms/util/bin-step.d.ts.map +1 -0
  257. package/dist/src/transforms/util/bin-step.js +53 -0
  258. package/dist/src/transforms/util/bin-step.js.map +1 -0
  259. package/dist/src/transforms/util/time-interval.d.ts +14 -0
  260. package/dist/src/transforms/util/time-interval.d.ts.map +1 -0
  261. package/dist/src/transforms/util/time-interval.js +88 -0
  262. package/dist/src/transforms/util/time-interval.js.map +1 -0
  263. package/dist/{types → src}/types.d.ts +6 -19
  264. package/dist/src/types.d.ts.map +1 -0
  265. package/dist/src/types.js +2 -0
  266. package/dist/src/types.js.map +1 -0
  267. package/dist/{types → src}/util/ast.d.ts +26 -25
  268. package/dist/src/util/ast.d.ts.map +1 -0
  269. package/{src → dist/src}/util/ast.js +36 -41
  270. package/dist/src/util/ast.js.map +1 -0
  271. package/dist/src/util/function.d.ts +56 -0
  272. package/dist/src/util/function.d.ts.map +1 -0
  273. package/dist/src/util/function.js +73 -0
  274. package/dist/src/util/function.js.map +1 -0
  275. package/dist/src/util/identity.d.ts +6 -0
  276. package/dist/src/util/identity.d.ts.map +1 -0
  277. package/dist/src/util/identity.js +8 -0
  278. package/dist/src/util/identity.js.map +1 -0
  279. package/dist/src/util/string.d.ts +4 -0
  280. package/dist/src/util/string.d.ts.map +1 -0
  281. package/dist/src/util/string.js +14 -0
  282. package/dist/src/util/string.js.map +1 -0
  283. package/dist/src/util/type-check.d.ts +17 -0
  284. package/dist/src/util/type-check.d.ts.map +1 -0
  285. package/dist/src/util/type-check.js +28 -0
  286. package/dist/src/util/type-check.js.map +1 -0
  287. package/dist/src/visit/clone.d.ts +7 -0
  288. package/dist/src/visit/clone.d.ts.map +1 -0
  289. package/dist/src/visit/clone.js +52 -0
  290. package/dist/src/visit/clone.js.map +1 -0
  291. package/dist/src/visit/recurse.d.ts +2 -0
  292. package/dist/src/visit/recurse.d.ts.map +1 -0
  293. package/dist/src/visit/recurse.js +36 -0
  294. package/dist/src/visit/recurse.js.map +1 -0
  295. package/dist/src/visit/rewrite.d.ts +9 -0
  296. package/dist/src/visit/rewrite.d.ts.map +1 -0
  297. package/dist/src/visit/rewrite.js +39 -0
  298. package/dist/src/visit/rewrite.js.map +1 -0
  299. package/dist/{types → src}/visit/visitors.d.ts +14 -16
  300. package/dist/src/visit/visitors.d.ts.map +1 -0
  301. package/dist/src/visit/visitors.js +95 -0
  302. package/dist/src/visit/visitors.js.map +1 -0
  303. package/dist/src/visit/walk.d.ts +21 -0
  304. package/dist/src/visit/walk.d.ts.map +1 -0
  305. package/dist/src/visit/walk.js +32 -0
  306. package/dist/src/visit/walk.js.map +1 -0
  307. package/package.json +12 -10
  308. package/src/ast/aggregate.ts +198 -0
  309. package/src/ast/{between-op.js → between-op.ts} +19 -26
  310. package/src/ast/binary-op.ts +31 -0
  311. package/src/ast/{case.js → case.ts} +29 -44
  312. package/src/ast/{cast.js → cast.ts} +8 -14
  313. package/src/ast/collate.ts +27 -0
  314. package/src/ast/column-param.ts +34 -0
  315. package/src/ast/{column-ref.js → column-ref.ts} +16 -25
  316. package/src/ast/fragment.ts +28 -0
  317. package/src/ast/from.ts +40 -0
  318. package/src/ast/{function.js → function.ts} +8 -14
  319. package/src/ast/{in-op.js → in-op.ts} +8 -14
  320. package/src/ast/{interval.js → interval.ts} +8 -14
  321. package/src/ast/{literal.js → literal.ts} +6 -9
  322. package/src/ast/logical-op.ts +50 -0
  323. package/src/ast/node.ts +39 -0
  324. package/src/ast/order-by.ts +38 -0
  325. package/src/ast/{param.js → param.ts} +6 -12
  326. package/src/ast/{query.js → query.ts} +193 -205
  327. package/src/ast/sample.ts +47 -0
  328. package/src/ast/{select.js → select.ts} +10 -16
  329. package/src/ast/subquery.ts +24 -0
  330. package/src/ast/{table-ref.js → table-ref.ts} +7 -12
  331. package/src/ast/{unary-op.js → unary-op.ts} +16 -23
  332. package/src/ast/{verbatim.js → verbatim.ts} +9 -8
  333. package/src/ast/window-frame.ts +97 -0
  334. package/src/ast/window.ts +246 -0
  335. package/src/ast/{with.js → with.ts} +19 -20
  336. package/src/{constants.js → constants.ts} +5 -6
  337. package/src/functions/aggregate.ts +344 -0
  338. package/src/functions/{case.js → case.ts} +5 -8
  339. package/src/functions/{cast.js → cast.ts} +9 -13
  340. package/src/functions/collate.ts +13 -0
  341. package/src/functions/{column.js → column.ts} +9 -10
  342. package/src/functions/{cte.js → cte.ts} +9 -6
  343. package/src/functions/datetime.ts +50 -0
  344. package/src/functions/interval.ts +74 -0
  345. package/src/functions/{literal.js → literal.ts} +6 -7
  346. package/src/functions/numeric.ts +125 -0
  347. package/src/functions/operators.ts +272 -0
  348. package/src/functions/order-by.ts +21 -0
  349. package/src/functions/spatial.ts +50 -0
  350. package/src/functions/{sql-template-tag.js → sql-template-tag.ts} +16 -13
  351. package/src/functions/string.ts +79 -0
  352. package/src/functions/{table-ref.js → table-ref.ts} +4 -4
  353. package/src/functions/util.ts +10 -0
  354. package/src/functions/window-frame.ts +58 -0
  355. package/src/functions/{window.js → window.ts} +18 -35
  356. package/src/index.ts +75 -0
  357. package/src/load/{create.js → create.ts} +9 -3
  358. package/src/load/extension.ts +3 -0
  359. package/src/load/{load.js → load.ts} +26 -11
  360. package/src/load/{sql-from.js → sql-from.ts} +14 -7
  361. package/src/transforms/{bin-1d.js → bin-1d.ts} +13 -9
  362. package/src/transforms/{bin-2d.js → bin-2d.ts} +17 -13
  363. package/src/transforms/bin-date.ts +48 -0
  364. package/src/transforms/bin-histogram.ts +61 -0
  365. package/src/transforms/{bin-linear-1d.js → bin-linear-1d.ts} +16 -11
  366. package/src/transforms/{bin-linear-2d.js → bin-linear-2d.ts} +23 -35
  367. package/src/transforms/filter-query.ts +40 -0
  368. package/src/transforms/{line-density.js → line-density.ts} +19 -17
  369. package/src/transforms/{m4.js → m4.ts} +17 -14
  370. package/src/transforms/{scales.js → scales.ts} +57 -14
  371. package/src/transforms/util/bin-step.ts +100 -0
  372. package/src/transforms/util/{time-interval.js → time-interval.ts} +32 -21
  373. package/src/types.ts +5 -30
  374. package/src/util/ast.ts +104 -0
  375. package/src/util/{function.js → function.ts} +40 -31
  376. package/src/util/identity.ts +7 -0
  377. package/src/util/{string.js → string.ts} +4 -4
  378. package/src/util/type-check.ts +31 -0
  379. package/src/visit/clone.ts +53 -0
  380. package/src/visit/{recurse.js → recurse.ts} +18 -6
  381. package/src/visit/{rewrite.js → rewrite.ts} +10 -18
  382. package/src/visit/{visitors.js → visitors.ts} +22 -30
  383. package/src/visit/walk.ts +46 -0
  384. package/dist/types/ast/aggregate.d.ts +0 -71
  385. package/dist/types/ast/between-op.d.ts +0 -46
  386. package/dist/types/ast/binary-op.d.ts +0 -28
  387. package/dist/types/ast/case.d.ts +0 -67
  388. package/dist/types/ast/cast.d.ts +0 -21
  389. package/dist/types/ast/column-param.d.ts +0 -23
  390. package/dist/types/ast/column-ref.d.ts +0 -40
  391. package/dist/types/ast/fragment.d.ts +0 -14
  392. package/dist/types/ast/from.d.ts +0 -21
  393. package/dist/types/ast/function.d.ts +0 -21
  394. package/dist/types/ast/in-op.d.ts +0 -21
  395. package/dist/types/ast/interval.d.ts +0 -21
  396. package/dist/types/ast/literal.d.ts +0 -15
  397. package/dist/types/ast/logical-op.d.ts +0 -46
  398. package/dist/types/ast/node.d.ts +0 -24
  399. package/dist/types/ast/order-by.d.ts +0 -29
  400. package/dist/types/ast/query.d.ts +0 -320
  401. package/dist/types/ast/sample.d.ts +0 -42
  402. package/dist/types/ast/select.d.ts +0 -22
  403. package/dist/types/ast/table-ref.d.ts +0 -25
  404. package/dist/types/ast/unary-op.d.ts +0 -39
  405. package/dist/types/ast/verbatim.d.ts +0 -9
  406. package/dist/types/ast/window.d.ts +0 -180
  407. package/dist/types/constants.d.ts +0 -38
  408. package/dist/types/functions/aggregate.d.ts +0 -236
  409. package/dist/types/functions/cast.d.ts +0 -26
  410. package/dist/types/functions/column.d.ts +0 -11
  411. package/dist/types/functions/datetime.d.ts +0 -45
  412. package/dist/types/functions/numeric.d.ts +0 -95
  413. package/dist/types/functions/operators.d.ts +0 -200
  414. package/dist/types/functions/order-by.d.ts +0 -18
  415. package/dist/types/functions/spatial.d.ts +0 -38
  416. package/dist/types/functions/string.d.ts +0 -57
  417. package/dist/types/functions/table-ref.d.ts +0 -9
  418. package/dist/types/functions/util.d.ts +0 -8
  419. package/dist/types/index-types.d.ts +0 -2
  420. package/dist/types/index.d.ts +0 -59
  421. package/dist/types/load/create.d.ts +0 -8
  422. package/dist/types/load/extension.d.ts +0 -1
  423. package/dist/types/load/load.d.ts +0 -12
  424. package/dist/types/load/sql-from.d.ts +0 -11
  425. package/dist/types/transforms/bin-1d.d.ts +0 -15
  426. package/dist/types/transforms/bin-2d.d.ts +0 -19
  427. package/dist/types/transforms/bin-date.d.ts +0 -44
  428. package/dist/types/transforms/bin-histogram.d.ts +0 -51
  429. package/dist/types/transforms/bin-linear-1d.d.ts +0 -12
  430. package/dist/types/transforms/bin-linear-2d.d.ts +0 -19
  431. package/dist/types/transforms/line-density.d.ts +0 -24
  432. package/dist/types/transforms/m4.d.ts +0 -21
  433. package/dist/types/transforms/scales.d.ts +0 -1
  434. package/dist/types/transforms/util/bin-step.d.ts +0 -61
  435. package/dist/types/transforms/util/time-interval.d.ts +0 -13
  436. package/dist/types/util/function.d.ts +0 -56
  437. package/dist/types/util/string.d.ts +0 -3
  438. package/dist/types/util/type-check.d.ts +0 -22
  439. package/dist/types/visit/recurse.d.ts +0 -28
  440. package/dist/types/visit/rewrite.d.ts +0 -10
  441. package/dist/types/visit/walk.d.ts +0 -10
  442. package/jsconfig.json +0 -11
  443. package/src/ast/aggregate.js +0 -167
  444. package/src/ast/binary-op.js +0 -40
  445. package/src/ast/column-param.js +0 -40
  446. package/src/ast/fragment.js +0 -26
  447. package/src/ast/from.js +0 -40
  448. package/src/ast/logical-op.js +0 -67
  449. package/src/ast/node.js +0 -29
  450. package/src/ast/order-by.js +0 -48
  451. package/src/ast/sample.js +0 -53
  452. package/src/ast/window.js +0 -294
  453. package/src/functions/aggregate.js +0 -347
  454. package/src/functions/datetime.js +0 -68
  455. package/src/functions/numeric.js +0 -143
  456. package/src/functions/operators.js +0 -301
  457. package/src/functions/order-by.js +0 -27
  458. package/src/functions/spatial.js +0 -59
  459. package/src/functions/string.js +0 -85
  460. package/src/functions/util.js +0 -14
  461. package/src/index-types.ts +0 -2
  462. package/src/load/extension.js +0 -3
  463. package/src/transforms/bin-date.js +0 -37
  464. package/src/transforms/bin-histogram.js +0 -52
  465. package/src/transforms/util/bin-step.js +0 -79
  466. package/src/util/type-check.js +0 -33
  467. package/src/visit/walk.js +0 -35
  468. package/tsconfig.json +0 -12
  469. package/vitest.config.ts +0 -3
@@ -1,46 +0,0 @@
1
- export class BetweenOpNode extends AbstractBetweenOpNode {
2
- /**
3
- * Instantiate a between operator node.
4
- * @param {ExprNode} expr The input expression.
5
- * @param {[ExprNode, ExprNode]} extent
6
- * The range extent.
7
- */
8
- constructor(expr: ExprNode, extent: [ExprNode, ExprNode]);
9
- }
10
- export class NotBetweenOpNode extends AbstractBetweenOpNode {
11
- /**
12
- * Instantiate a not between operator node.
13
- * @param {ExprNode} expr The input expression.
14
- * @param {[ExprNode, ExprNode]} extent
15
- * The range extent.
16
- */
17
- constructor(expr: ExprNode, extent: [ExprNode, ExprNode]);
18
- }
19
- declare class AbstractBetweenOpNode extends ExprNode {
20
- /**
21
- * Instantiate an abstract between operator node.
22
- * @param {string} type The node type.
23
- * @param {ExprNode} expr The input expression.
24
- * @param {[ExprNode, ExprNode]} extent The range extent.
25
- */
26
- constructor(type: string, expr: ExprNode, extent: [ExprNode, ExprNode]);
27
- /**
28
- * The input expression.
29
- * @type {ExprNode}
30
- * @readonly
31
- */
32
- readonly expr: ExprNode;
33
- /**
34
- * The range extent.
35
- * @type {[ExprNode, ExprNode]}
36
- * @readonly
37
- */
38
- readonly extent: [ExprNode, ExprNode];
39
- /**
40
- * Generate a SQL query string for this node.
41
- * @returns {string}
42
- */
43
- toSQL(op: any): string;
44
- }
45
- import { ExprNode } from './node.js';
46
- export {};
@@ -1,28 +0,0 @@
1
- export class BinaryOpNode extends ExprNode {
2
- /**
3
- * Instantiate a binary operator node.
4
- * @param {string} op The operator type.
5
- * @param {ExprNode} left The left input expression.
6
- * @param {ExprNode} right The right input expression.
7
- */
8
- constructor(op: string, left: ExprNode, right: ExprNode);
9
- /**
10
- * The operator type.
11
- * @type {string}
12
- * @readonly
13
- */
14
- readonly op: string;
15
- /**
16
- * The left input expression.
17
- * @type {ExprNode}
18
- * @readonly
19
- */
20
- readonly left: ExprNode;
21
- /**
22
- * The right input expression.
23
- * @type {ExprNode}
24
- * @readonly
25
- */
26
- readonly right: ExprNode;
27
- }
28
- import { ExprNode } from './node.js';
@@ -1,67 +0,0 @@
1
- export class CaseNode extends ExprNode {
2
- /**
3
- * Instantiate a case node.
4
- * @param {ExprNode} [expr] An optional base expression, that comes
5
- * immediately after the CASE keyword. If specified, this case statement
6
- * acts like a switch statement, with WHEN expressions as values to
7
- * match against the switch value rather than boolean conditions.
8
- * @param {WhenNode[]} [when] An array of WHEN/THEN expression nodes.
9
- * @param {ExprNode} [elseExpr] An ELSE expression.
10
- */
11
- constructor(expr?: ExprNode, when?: WhenNode[], elseExpr?: ExprNode);
12
- /**
13
- * The optional base expression.
14
- * @type {ExprNode}
15
- * @readonly
16
- */
17
- readonly expr: ExprNode;
18
- /**
19
- * An array of WHEN/THEN expression nodes.
20
- * @type {WhenNode[]}
21
- * @readonly
22
- */
23
- readonly _when: WhenNode[];
24
- /**
25
- * An ELSE expression.
26
- * @type {ExprNode}
27
- * @readonly
28
- */
29
- readonly _else: ExprNode;
30
- /**
31
- * Return a new case node with the given conditional added as
32
- * the last WHEN / THEN pair.
33
- * @param {ExprValue} cond The WHEN condition expression.
34
- * @param {ExprValue} value The THEN value expression.
35
- * @returns {CaseNode}
36
- */
37
- when(cond: ExprValue, value: ExprValue): CaseNode;
38
- /**
39
- * Return a new case node with the given ELSE expression.
40
- * @param {ExprValue} expr The ELSE expression.
41
- * @returns {CaseNode}
42
- */
43
- else(expr: ExprValue): CaseNode;
44
- }
45
- export class WhenNode extends SQLNode {
46
- /**
47
- * Instantiate a case node.
48
- * @param {ExprNode} when The WHEN condition expression.
49
- * @param {ExprNode} then The THEN value expression.
50
- */
51
- constructor(when: ExprNode, then: ExprNode);
52
- /**
53
- * The condition expression.
54
- * @type {ExprNode}
55
- * @readonly
56
- */
57
- readonly when: ExprNode;
58
- /**
59
- * The value expression.
60
- * @type {ExprNode}
61
- * @readonly
62
- */
63
- readonly then: ExprNode;
64
- }
65
- import { ExprNode } from './node.js';
66
- import type { ExprValue } from '../types.js';
67
- import { SQLNode } from './node.js';
@@ -1,21 +0,0 @@
1
- export class CastNode extends ExprNode {
2
- /**
3
- * Instantiate a cast node.
4
- * @param {ExprNode} expr The expression to type cast.
5
- * @param {string} type The type to cast to.
6
- */
7
- constructor(expr: ExprNode, type: string);
8
- /**
9
- * The expression to type cast.
10
- * @type {ExprNode}
11
- * @readonly
12
- */
13
- readonly expr: ExprNode;
14
- /**
15
- * The type to cast to.
16
- * @type {string}
17
- * @readonly
18
- */
19
- readonly cast: string;
20
- }
21
- import { ExprNode } from './node.js';
@@ -1,23 +0,0 @@
1
- /**
2
- * Check if a value is a dynamic column reference node.
3
- * @param {*} value The value to check.
4
- * @returns {value is ColumnParamNode}
5
- */
6
- export function isColumnParam(value: any): value is ColumnParamNode;
7
- export class ColumnParamNode extends ColumnRefNode {
8
- /**
9
- * Instantiate a column param node.
10
- * @param {ParamNode} param The column name as a parameter node.
11
- * @param {TableRefNode} [table] The table reference.
12
- */
13
- constructor(param: ParamNode, table?: TableRefNode);
14
- /**
15
- * The column name as a parameter node.
16
- * @type {ParamNode}
17
- * @readonly
18
- */
19
- readonly param: ParamNode;
20
- }
21
- import { ColumnRefNode } from './column-ref.js';
22
- import type { ParamNode } from './param.js';
23
- import type { TableRefNode } from './table-ref.js';
@@ -1,40 +0,0 @@
1
- /**
2
- * Check if a value is a column reference node.
3
- * @param {*} value The value to check.
4
- * @returns {value is ColumnRefNode}
5
- */
6
- export function isColumnRef(value: any): value is ColumnRefNode;
7
- export class ColumnRefNode extends ExprNode {
8
- /**
9
- * Instantiate a column reference node.
10
- * @param {TableRefNode} [table] The table reference.
11
- */
12
- constructor(type: any, table?: TableRefNode);
13
- /**
14
- * The table reference.
15
- * @type {TableRefNode}
16
- * @readonly
17
- */
18
- readonly table: TableRefNode;
19
- /**
20
- * Returns the column name.
21
- * @returns {string}
22
- */
23
- get column(): string;
24
- }
25
- export class ColumnNameRefNode extends ColumnRefNode {
26
- /**
27
- * Instantiate a column reference node.
28
- * @param {string} name The column name.
29
- * @param {TableRefNode} [table] The table reference.
30
- */
31
- constructor(name: string, table?: TableRefNode);
32
- /**
33
- * The column name.
34
- * @type {string}
35
- * @readonly
36
- */
37
- readonly name: string;
38
- }
39
- import { ExprNode } from './node.js';
40
- import type { TableRefNode } from './table-ref.js';
@@ -1,14 +0,0 @@
1
- export class FragmentNode extends ExprNode {
2
- /**
3
- * Instantiate a fragment node with arbitrary content.
4
- * @param {ExprNode[]} spans The consecutive parts making up the fragment.
5
- */
6
- constructor(spans: ExprNode[]);
7
- /**
8
- * The consecutive parts making up the fragment.
9
- * @type {ExprNode[]}
10
- * @readonly
11
- */
12
- readonly spans: ExprNode[];
13
- }
14
- import { ExprNode } from './node.js';
@@ -1,21 +0,0 @@
1
- export class FromClauseNode extends SQLNode {
2
- /**
3
- * Instantiate a from node.
4
- * @param {SQLNode} expr The from expression.
5
- * @param {string} alias The output name.
6
- */
7
- constructor(expr: SQLNode, alias: string);
8
- /**
9
- * The from expression.
10
- * @type {SQLNode}
11
- * @readonly
12
- */
13
- readonly expr: SQLNode;
14
- /**
15
- * The output name.
16
- * @type {string}
17
- * @readonly
18
- */
19
- readonly alias: string;
20
- }
21
- import { SQLNode } from './node.js';
@@ -1,21 +0,0 @@
1
- export class FunctionNode extends ExprNode {
2
- /**
3
- * Instantiate a function node.
4
- * @param {string} name The function name.
5
- * @param {ExprNode[]} [args=[]] The function arguments.
6
- */
7
- constructor(name: string, args?: ExprNode[]);
8
- /**
9
- * The function name.
10
- * @type {string}
11
- * @readonly
12
- */
13
- readonly name: string;
14
- /**
15
- * The function arguments.
16
- * @type {ExprNode[]}
17
- * @readonly
18
- */
19
- readonly args: ExprNode[];
20
- }
21
- import { ExprNode } from './node.js';
@@ -1,21 +0,0 @@
1
- export class InOpNode extends ExprNode {
2
- /**
3
- * Instantiate an in operator node.
4
- * @param {ExprNode} expr The input expression.
5
- * @param {ExprNode[]} values The value set.
6
- */
7
- constructor(expr: ExprNode, values: ExprNode[]);
8
- /**
9
- * The input expression.
10
- * @type {ExprNode}
11
- * @readonly
12
- */
13
- readonly expr: ExprNode;
14
- /**
15
- * The value set.
16
- * @type {ExprNode[]}
17
- * @readonly
18
- */
19
- readonly values: ExprNode[];
20
- }
21
- import { ExprNode } from './node.js';
@@ -1,21 +0,0 @@
1
- export class IntervalNode extends ExprNode {
2
- /**
3
- * Instantiate an interval node.
4
- * @param {string} name The interval name.
5
- * @param {number} [steps=1] The interval steps.
6
- */
7
- constructor(name: string, steps?: number);
8
- /**
9
- * The interval name.
10
- * @type {string}
11
- * @readonly
12
- */
13
- readonly name: string;
14
- /**
15
- * The interval steps.
16
- * @type {number}
17
- * @readonly
18
- */
19
- readonly steps: number;
20
- }
21
- import { ExprNode } from './node.js';
@@ -1,15 +0,0 @@
1
- export function literalToSQL(value: any): string;
2
- export class LiteralNode extends ExprNode {
3
- /**
4
- * Instantiate an literal node.
5
- * @param {*} value The literal value.
6
- */
7
- constructor(value: any);
8
- /**
9
- * The literal value.
10
- * @type {any}
11
- * @readonly
12
- */
13
- readonly value: any;
14
- }
15
- import { ExprNode } from './node.js';
@@ -1,46 +0,0 @@
1
- /**
2
- * @template {ExprNode} T
3
- */
4
- export class LogicalOpNode<T extends ExprNode> extends ExprNode {
5
- /**
6
- * Instantiate a logical operator node.
7
- * @param {string} op The logical operation.
8
- * @param {T[]} clauses The input clause expressions.
9
- */
10
- constructor(op: string, clauses: T[]);
11
- /**
12
- * The logical operator.
13
- * @type {string}
14
- * @readonly
15
- */
16
- readonly op: string;
17
- /**
18
- * The input clause expressions.
19
- * @type {T[]}
20
- * @readonly
21
- */
22
- readonly clauses: T[];
23
- }
24
- /**
25
- * @template {ExprNode} T
26
- * @extends {LogicalOpNode<T>}
27
- */
28
- export class AndNode<T extends ExprNode> extends LogicalOpNode<T> {
29
- /**
30
- * Instantiate a logical AND operator node.
31
- * @param {T[]} clauses The input clause expressions.
32
- */
33
- constructor(clauses: T[]);
34
- }
35
- /**
36
- * @template {ExprNode} T
37
- * @extends {LogicalOpNode<T>}
38
- */
39
- export class OrNode<T extends ExprNode> extends LogicalOpNode<T> {
40
- /**
41
- * Instantiate a logical OR operator node.
42
- * @param {T[]} clauses The input clause expressions.
43
- */
44
- constructor(clauses: T[]);
45
- }
46
- import { ExprNode } from './node.js';
@@ -1,24 +0,0 @@
1
- /**
2
- * Check if a value is a SQL AST node.
3
- * @param {*} value The value to check.
4
- * @returns {value is SQLNode}
5
- */
6
- export function isNode(value: any): value is SQLNode;
7
- export class SQLNode {
8
- /**
9
- * Instantiate a SQL AST node.
10
- * @param {string} type The SQL AST node type.
11
- */
12
- constructor(type: string);
13
- /**
14
- * The SQL AST node type.
15
- * @type {string}
16
- * @readonly
17
- */
18
- readonly type: string;
19
- }
20
- /**
21
- * AST node corresponding to an individual expression.
22
- */
23
- export class ExprNode extends SQLNode {
24
- }
@@ -1,29 +0,0 @@
1
- export class OrderByNode extends ExprNode {
2
- /**
3
- * Instantiate an order by entry node.
4
- * @param {ExprNode} expr The expression to order by.
5
- * @param {boolean | undefined} [desc] Flag indicating descending order.
6
- * @param {boolean | undefined} [nullsFirst] Flag indicating if null
7
- * values should be sorted first.
8
- */
9
- constructor(expr: ExprNode, desc?: boolean | undefined, nullsFirst?: boolean | undefined);
10
- /**
11
- * The expression to order by.
12
- * @type {ExprNode}
13
- * @readonly
14
- */
15
- readonly expr: ExprNode;
16
- /**
17
- * Flag indicating descending order.
18
- * @type {boolean | undefined}
19
- * @readonly
20
- */
21
- readonly desc: boolean | undefined;
22
- /**
23
- * Flag indicating if null values should be sorted first.
24
- * @type {boolean | undefined}
25
- * @readonly
26
- */
27
- readonly nullsFirst: boolean | undefined;
28
- }
29
- import { ExprNode } from './node.js';