@typesql/core 0.7.6 → 0.8.1

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 (798) hide show
  1. package/README.md +9 -5
  2. package/dist/adapter.d.ts +1 -0
  3. package/dist/adapter.d.ts.map +1 -1
  4. package/dist/adapter.js +1 -0
  5. package/dist/adapter.js.map +1 -1
  6. package/dist/cache/dialect.d.ts +23 -0
  7. package/dist/cache/dialect.d.ts.map +1 -0
  8. package/dist/cache/dialect.js +2 -0
  9. package/dist/cache/dialect.js.map +1 -0
  10. package/dist/cache/dialects.d.ts +4 -0
  11. package/dist/cache/dialects.d.ts.map +1 -0
  12. package/dist/cache/dialects.js +5 -0
  13. package/dist/cache/dialects.js.map +1 -0
  14. package/dist/cache/discover.d.ts +2 -1
  15. package/dist/cache/discover.d.ts.map +1 -1
  16. package/dist/cache/discover.js +27 -28
  17. package/dist/cache/discover.js.map +1 -1
  18. package/dist/cache/evaluate.d.ts +4 -3
  19. package/dist/cache/evaluate.d.ts.map +1 -1
  20. package/dist/cache/evaluate.js +5 -5
  21. package/dist/cache/evaluate.js.map +1 -1
  22. package/dist/cache/format.d.ts +6 -4
  23. package/dist/cache/format.d.ts.map +1 -1
  24. package/dist/cache/format.js +11 -7
  25. package/dist/cache/format.js.map +1 -1
  26. package/dist/cache/job.d.ts +8 -1
  27. package/dist/cache/job.d.ts.map +1 -1
  28. package/dist/cache/job.js +97 -34
  29. package/dist/cache/job.js.map +1 -1
  30. package/dist/cache/mapper.d.ts +3 -2
  31. package/dist/cache/mapper.d.ts.map +1 -1
  32. package/dist/cache/mapper.js +26 -8
  33. package/dist/cache/mapper.js.map +1 -1
  34. package/dist/cache/print.d.ts +1 -2
  35. package/dist/cache/print.d.ts.map +1 -1
  36. package/dist/cache/print.js +1 -5
  37. package/dist/cache/print.js.map +1 -1
  38. package/dist/cache/scan.d.ts +4 -1
  39. package/dist/cache/scan.d.ts.map +1 -1
  40. package/dist/cache/scan.js +17 -6
  41. package/dist/cache/scan.js.map +1 -1
  42. package/dist/cache/store.d.ts +1 -1
  43. package/dist/cache/store.d.ts.map +1 -1
  44. package/dist/cache/store.js +6 -3
  45. package/dist/cache/store.js.map +1 -1
  46. package/dist/create-sql.d.ts +12 -10
  47. package/dist/create-sql.d.ts.map +1 -1
  48. package/dist/create-sql.js +3 -2
  49. package/dist/create-sql.js.map +1 -1
  50. package/dist/dialect.d.ts +32 -0
  51. package/dist/dialect.d.ts.map +1 -0
  52. package/dist/dialect.js +2 -0
  53. package/dist/dialect.js.map +1 -0
  54. package/dist/engine/cache.d.ts +30 -89
  55. package/dist/engine/cache.d.ts.map +1 -1
  56. package/dist/engine/carried.d.ts +36 -0
  57. package/dist/engine/carried.d.ts.map +1 -0
  58. package/dist/engine/carried.js +2 -0
  59. package/dist/engine/carried.js.map +1 -0
  60. package/dist/engine/chars.d.ts.map +1 -0
  61. package/dist/engine/{lexer/chars.js.map → chars.js.map} +1 -1
  62. package/dist/engine/contract.d.ts +75 -0
  63. package/dist/engine/contract.d.ts.map +1 -0
  64. package/dist/engine/contract.js +2 -0
  65. package/dist/engine/contract.js.map +1 -0
  66. package/dist/engine/infer.d.ts +28 -71
  67. package/dist/engine/infer.d.ts.map +1 -1
  68. package/dist/engine/{binder/narrow.d.ts → narrow.d.ts} +8 -10
  69. package/dist/engine/narrow.d.ts.map +1 -0
  70. package/dist/engine/{binder/narrow.js.map → narrow.js.map} +1 -1
  71. package/dist/engine/object.d.ts.map +1 -0
  72. package/dist/engine/{ddl/object.js.map → object.js.map} +1 -1
  73. package/dist/engine/params.d.ts +29 -0
  74. package/dist/engine/params.d.ts.map +1 -0
  75. package/dist/engine/{typer/params.js.map → params.js.map} +1 -1
  76. package/dist/engine/{parser/util.d.ts → parse.d.ts} +3 -15
  77. package/dist/engine/parse.d.ts.map +1 -0
  78. package/dist/engine/parse.js +2 -0
  79. package/dist/engine/parse.js.map +1 -0
  80. package/dist/engine/suggest.d.ts +2 -29
  81. package/dist/engine/suggest.d.ts.map +1 -1
  82. package/dist/engine/tokens.d.ts.map +1 -0
  83. package/dist/engine/{lexer/tokens.js.map → tokens.js.map} +1 -1
  84. package/dist/engine/write.d.ts +16 -34
  85. package/dist/engine/write.d.ts.map +1 -1
  86. package/dist/errors.d.ts.map +1 -0
  87. package/dist/errors.js.map +1 -0
  88. package/dist/index.d.ts +8 -11
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.js +3 -2
  91. package/dist/index.js.map +1 -1
  92. package/dist/memo.d.ts +2 -0
  93. package/dist/memo.d.ts.map +1 -0
  94. package/dist/memo.js +14 -0
  95. package/dist/memo.js.map +1 -0
  96. package/dist/migrations.d.ts +8 -11
  97. package/dist/migrations.d.ts.map +1 -1
  98. package/dist/migrations.js +0 -3
  99. package/dist/migrations.js.map +1 -1
  100. package/dist/postgres/cache-dialect.d.ts +3 -0
  101. package/dist/postgres/cache-dialect.d.ts.map +1 -0
  102. package/dist/postgres/cache-dialect.js +31 -0
  103. package/dist/postgres/cache-dialect.js.map +1 -0
  104. package/dist/postgres/dialect.d.ts +32 -0
  105. package/dist/postgres/dialect.d.ts.map +1 -0
  106. package/dist/postgres/dialect.js +4 -0
  107. package/dist/postgres/dialect.js.map +1 -0
  108. package/dist/postgres/engine/ast.d.ts.map +1 -0
  109. package/dist/postgres/engine/ast.js.map +1 -0
  110. package/dist/{engine → postgres/engine}/binder/clauses.d.ts +2 -2
  111. package/dist/postgres/engine/binder/clauses.d.ts.map +1 -0
  112. package/dist/postgres/engine/binder/clauses.js.map +1 -0
  113. package/dist/{engine → postgres/engine}/binder/from.d.ts +3 -3
  114. package/dist/postgres/engine/binder/from.d.ts.map +1 -0
  115. package/dist/postgres/engine/binder/from.js.map +1 -0
  116. package/dist/{engine → postgres/engine}/binder/resolve.d.ts +3 -3
  117. package/dist/postgres/engine/binder/resolve.d.ts.map +1 -0
  118. package/dist/postgres/engine/binder/resolve.js.map +1 -0
  119. package/dist/postgres/engine/cache.d.ts +72 -0
  120. package/dist/postgres/engine/cache.d.ts.map +1 -0
  121. package/dist/postgres/engine/cache.js +2 -0
  122. package/dist/postgres/engine/cache.js.map +1 -0
  123. package/dist/{engine → postgres/engine}/ddl/alter-table.d.ts +2 -2
  124. package/dist/postgres/engine/ddl/alter-table.d.ts.map +1 -0
  125. package/dist/postgres/engine/ddl/alter-table.js.map +1 -0
  126. package/dist/{engine → postgres/engine}/ddl/apply.d.ts +1 -1
  127. package/dist/postgres/engine/ddl/apply.d.ts.map +1 -0
  128. package/dist/postgres/engine/ddl/apply.js.map +1 -0
  129. package/dist/{engine → postgres/engine}/ddl/column.d.ts +1 -1
  130. package/dist/postgres/engine/ddl/column.d.ts.map +1 -0
  131. package/dist/postgres/engine/ddl/column.js.map +1 -0
  132. package/dist/{engine → postgres/engine}/ddl/create-table.d.ts +2 -2
  133. package/dist/postgres/engine/ddl/create-table.d.ts.map +1 -0
  134. package/dist/postgres/engine/ddl/create-table.js.map +1 -0
  135. package/dist/{engine → postgres/engine}/ddl/query.d.ts +3 -3
  136. package/dist/postgres/engine/ddl/query.d.ts.map +1 -0
  137. package/dist/postgres/engine/ddl/query.js.map +1 -0
  138. package/dist/{engine → postgres/engine}/ddl/registry.d.ts +2 -2
  139. package/dist/postgres/engine/ddl/registry.d.ts.map +1 -0
  140. package/dist/postgres/engine/ddl/registry.js.map +1 -0
  141. package/dist/{engine → postgres/engine}/ddl/relation.d.ts +3 -3
  142. package/dist/postgres/engine/ddl/relation.d.ts.map +1 -0
  143. package/dist/postgres/engine/ddl/relation.js.map +1 -0
  144. package/dist/{engine → postgres/engine}/ddl/schema.d.ts +2 -2
  145. package/dist/postgres/engine/ddl/schema.d.ts.map +1 -0
  146. package/dist/postgres/engine/ddl/schema.js.map +1 -0
  147. package/dist/{engine → postgres/engine}/ddl/script.d.ts +2 -2
  148. package/dist/postgres/engine/ddl/script.d.ts.map +1 -0
  149. package/dist/postgres/engine/ddl/script.js.map +1 -0
  150. package/dist/{engine → postgres/engine}/ddl/view.d.ts +2 -2
  151. package/dist/postgres/engine/ddl/view.d.ts.map +1 -0
  152. package/dist/postgres/engine/ddl/view.js.map +1 -0
  153. package/dist/{engine → postgres/engine}/diagnostics.d.ts +2 -2
  154. package/dist/postgres/engine/diagnostics.d.ts.map +1 -0
  155. package/dist/postgres/engine/diagnostics.js.map +1 -0
  156. package/dist/postgres/engine/engine.d.ts +35 -0
  157. package/dist/postgres/engine/engine.d.ts.map +1 -0
  158. package/dist/postgres/engine/engine.js +2 -0
  159. package/dist/postgres/engine/engine.js.map +1 -0
  160. package/dist/{engine → postgres/engine}/index.d.ts +12 -14
  161. package/dist/postgres/engine/index.d.ts.map +1 -0
  162. package/dist/{type-map → postgres/engine}/index.js.map +1 -1
  163. package/dist/postgres/engine/infer.d.ts +63 -0
  164. package/dist/postgres/engine/infer.d.ts.map +1 -0
  165. package/dist/postgres/engine/infer.js +2 -0
  166. package/dist/postgres/engine/infer.js.map +1 -0
  167. package/dist/{engine → postgres/engine}/json.d.ts +4 -7
  168. package/dist/postgres/engine/json.d.ts.map +1 -0
  169. package/dist/{engine → postgres/engine}/json.js.map +1 -1
  170. package/dist/{engine → postgres/engine}/lexer/lex.d.ts +4 -4
  171. package/dist/postgres/engine/lexer/lex.d.ts.map +1 -0
  172. package/dist/postgres/engine/lexer/lex.js.map +1 -0
  173. package/dist/{engine → postgres/engine}/lexer/unicode.d.ts +1 -1
  174. package/dist/postgres/engine/lexer/unicode.d.ts.map +1 -0
  175. package/dist/postgres/engine/lexer/unicode.js.map +1 -0
  176. package/dist/{engine → postgres/engine}/parser/ddl.d.ts +1 -1
  177. package/dist/postgres/engine/parser/ddl.d.ts.map +1 -0
  178. package/dist/postgres/engine/parser/ddl.js.map +1 -0
  179. package/dist/{engine → postgres/engine}/parser/dml.d.ts +1 -1
  180. package/dist/postgres/engine/parser/dml.d.ts.map +1 -0
  181. package/dist/postgres/engine/parser/dml.js.map +1 -0
  182. package/dist/{engine → postgres/engine}/parser/expr.d.ts +1 -1
  183. package/dist/postgres/engine/parser/expr.d.ts.map +1 -0
  184. package/dist/postgres/engine/parser/expr.js.map +1 -0
  185. package/dist/{engine → postgres/engine}/parser/fast.d.ts +3 -3
  186. package/dist/postgres/engine/parser/fast.d.ts.map +1 -0
  187. package/dist/postgres/engine/parser/fast.js.map +1 -0
  188. package/dist/{engine → postgres/engine}/parser/json.d.ts +1 -1
  189. package/dist/postgres/engine/parser/json.d.ts.map +1 -0
  190. package/dist/postgres/engine/parser/json.js.map +1 -0
  191. package/dist/postgres/engine/parser/keywords.d.ts.map +1 -0
  192. package/dist/postgres/engine/parser/keywords.js.map +1 -0
  193. package/dist/{engine → postgres/engine}/parser/merge.d.ts +1 -1
  194. package/dist/postgres/engine/parser/merge.d.ts.map +1 -0
  195. package/dist/postgres/engine/parser/merge.js.map +1 -0
  196. package/dist/{engine → postgres/engine}/parser/select.d.ts +1 -1
  197. package/dist/postgres/engine/parser/select.d.ts.map +1 -0
  198. package/dist/postgres/engine/parser/select.js.map +1 -0
  199. package/dist/{engine → postgres/engine}/parser/stmt.d.ts +1 -1
  200. package/dist/postgres/engine/parser/stmt.d.ts.map +1 -0
  201. package/dist/postgres/engine/parser/stmt.js.map +1 -0
  202. package/dist/{engine → postgres/engine}/parser/typename.d.ts +1 -1
  203. package/dist/postgres/engine/parser/typename.d.ts.map +1 -0
  204. package/dist/postgres/engine/parser/typename.js.map +1 -0
  205. package/dist/postgres/engine/parser/util.d.ts +16 -0
  206. package/dist/postgres/engine/parser/util.d.ts.map +1 -0
  207. package/dist/postgres/engine/parser/util.js.map +1 -0
  208. package/dist/{engine → postgres/engine}/parser/utility.d.ts +2 -2
  209. package/dist/postgres/engine/parser/utility.d.ts.map +1 -0
  210. package/dist/postgres/engine/parser/utility.js.map +1 -0
  211. package/dist/{engine → postgres/engine}/parser/xml.d.ts +1 -1
  212. package/dist/postgres/engine/parser/xml.d.ts.map +1 -0
  213. package/dist/postgres/engine/parser/xml.js.map +1 -0
  214. package/dist/{engine → postgres/engine}/project/dml.d.ts +5 -4
  215. package/dist/postgres/engine/project/dml.d.ts.map +1 -0
  216. package/dist/postgres/engine/project/dml.js.map +1 -0
  217. package/dist/{engine → postgres/engine}/project/merge.d.ts +3 -3
  218. package/dist/postgres/engine/project/merge.d.ts.map +1 -0
  219. package/dist/postgres/engine/project/merge.js.map +1 -0
  220. package/dist/{engine → postgres/engine}/project/naming.d.ts +1 -1
  221. package/dist/postgres/engine/project/naming.d.ts.map +1 -0
  222. package/dist/postgres/engine/project/naming.js.map +1 -0
  223. package/dist/{engine → postgres/engine}/project/select.d.ts +3 -3
  224. package/dist/postgres/engine/project/select.d.ts.map +1 -0
  225. package/dist/postgres/engine/project/select.js.map +1 -0
  226. package/dist/{engine → postgres/engine}/project/stmt.d.ts +2 -2
  227. package/dist/postgres/engine/project/stmt.d.ts.map +1 -0
  228. package/dist/postgres/engine/project/stmt.js.map +1 -0
  229. package/dist/{engine → postgres/engine}/shape.d.ts +3 -5
  230. package/dist/postgres/engine/shape.d.ts.map +1 -0
  231. package/dist/{engine → postgres/engine}/shape.js.map +1 -1
  232. package/dist/postgres/engine/suggest.d.ts +30 -0
  233. package/dist/postgres/engine/suggest.d.ts.map +1 -0
  234. package/dist/postgres/engine/suggest.js +2 -0
  235. package/dist/postgres/engine/suggest.js.map +1 -0
  236. package/dist/{engine → postgres/engine}/typer/catalog.d.ts +2 -2
  237. package/dist/postgres/engine/typer/catalog.d.ts.map +1 -0
  238. package/dist/postgres/engine/typer/catalog.js.map +1 -0
  239. package/dist/{engine → postgres/engine}/typer/operators.d.ts +1 -1
  240. package/dist/postgres/engine/typer/operators.d.ts.map +1 -0
  241. package/dist/postgres/engine/typer/operators.js.map +1 -0
  242. package/dist/{engine → postgres/engine}/typer/params.d.ts +2 -27
  243. package/dist/postgres/engine/typer/params.d.ts.map +1 -0
  244. package/dist/postgres/engine/typer/params.js +2 -0
  245. package/dist/postgres/engine/typer/params.js.map +1 -0
  246. package/dist/postgres/engine/typer/pg-functions.d.ts.map +1 -0
  247. package/dist/postgres/engine/typer/pg-functions.js.map +1 -0
  248. package/dist/{engine → postgres/engine}/typer/sqljson.d.ts +2 -2
  249. package/dist/postgres/engine/typer/sqljson.d.ts.map +1 -0
  250. package/dist/postgres/engine/typer/sqljson.js.map +1 -0
  251. package/dist/{engine → postgres/engine}/typer/typeof.d.ts +2 -2
  252. package/dist/postgres/engine/typer/typeof.d.ts.map +1 -0
  253. package/dist/postgres/engine/typer/typeof.js.map +1 -0
  254. package/dist/{engine → postgres/engine}/typer/xml.d.ts +2 -2
  255. package/dist/postgres/engine/typer/xml.d.ts.map +1 -0
  256. package/dist/postgres/engine/typer/xml.js.map +1 -0
  257. package/dist/postgres/engine/write.d.ts +6 -0
  258. package/dist/postgres/engine/write.d.ts.map +1 -0
  259. package/dist/postgres/engine/write.js +2 -0
  260. package/dist/postgres/engine/write.js.map +1 -0
  261. package/dist/postgres/index.d.ts +9 -0
  262. package/dist/postgres/index.d.ts.map +1 -0
  263. package/dist/postgres/index.js +3 -0
  264. package/dist/postgres/index.js.map +1 -0
  265. package/dist/postgres/migrations.d.ts +8 -0
  266. package/dist/postgres/migrations.d.ts.map +1 -0
  267. package/dist/postgres/migrations.js +5 -0
  268. package/dist/postgres/migrations.js.map +1 -0
  269. package/dist/postgres/schema/column.d.ts +10 -0
  270. package/dist/postgres/schema/column.d.ts.map +1 -0
  271. package/dist/{engine/ddl → postgres/schema}/column.js.map +1 -1
  272. package/dist/postgres/schema/index.d.ts +6 -0
  273. package/dist/postgres/schema/index.d.ts.map +1 -0
  274. package/dist/postgres/schema/index.js.map +1 -0
  275. package/dist/postgres/schema/normalize.d.ts.map +1 -0
  276. package/dist/postgres/schema/normalize.js.map +1 -0
  277. package/dist/{schema → postgres/schema}/pg-catalog.d.ts +1 -1
  278. package/dist/postgres/schema/pg-catalog.d.ts.map +1 -0
  279. package/dist/postgres/schema/pg-catalog.js.map +1 -0
  280. package/dist/{schema → postgres/schema}/pg-types.d.ts +4 -0
  281. package/dist/postgres/schema/pg-types.d.ts.map +1 -0
  282. package/dist/postgres/schema/pg-types.js.map +1 -0
  283. package/dist/postgres/sql/call.d.ts +6 -0
  284. package/dist/postgres/sql/call.d.ts.map +1 -0
  285. package/dist/postgres/sql/call.js +2 -0
  286. package/dist/postgres/sql/call.js.map +1 -0
  287. package/dist/postgres/sql/types.d.ts +6 -0
  288. package/dist/postgres/sql/types.d.ts.map +1 -0
  289. package/dist/postgres/sql/types.js.map +1 -0
  290. package/dist/{type-map → postgres/type-map}/index.d.ts +1 -1
  291. package/dist/postgres/type-map/index.d.ts.map +1 -0
  292. package/dist/postgres/type-map/index.js.map +1 -0
  293. package/dist/row-keys.js +1 -1
  294. package/dist/row-keys.js.map +1 -1
  295. package/dist/runtime/inline.d.ts +1 -1
  296. package/dist/runtime/inline.d.ts.map +1 -1
  297. package/dist/runtime/json.d.ts +1 -1
  298. package/dist/runtime/json.d.ts.map +1 -1
  299. package/dist/runtime/splice.d.ts +0 -1
  300. package/dist/runtime/splice.d.ts.map +1 -1
  301. package/dist/runtime/splice.js +1 -13
  302. package/dist/runtime/splice.js.map +1 -1
  303. package/dist/runtime/sqlite-params.d.ts +12 -0
  304. package/dist/runtime/sqlite-params.d.ts.map +1 -0
  305. package/dist/runtime/sqlite-params.js +37 -0
  306. package/dist/runtime/sqlite-params.js.map +1 -0
  307. package/dist/runtime/write.d.ts +1 -1
  308. package/dist/runtime/write.d.ts.map +1 -1
  309. package/dist/runtime/write.js +6 -3
  310. package/dist/runtime/write.js.map +1 -1
  311. package/dist/schema.d.ts +49 -0
  312. package/dist/schema.d.ts.map +1 -0
  313. package/dist/schema.js +2 -0
  314. package/dist/schema.js.map +1 -0
  315. package/dist/sql/{types.d.ts → api.d.ts} +14 -12
  316. package/dist/sql/api.d.ts.map +1 -0
  317. package/dist/sql/api.js +2 -0
  318. package/dist/sql/api.js.map +1 -0
  319. package/dist/sql/call.d.ts +34 -43
  320. package/dist/sql/call.d.ts.map +1 -1
  321. package/dist/sql/fragment.d.ts +3 -3
  322. package/dist/sql/fragment.d.ts.map +1 -1
  323. package/dist/{engine → sql}/inline.d.ts +2 -36
  324. package/dist/sql/inline.d.ts.map +1 -0
  325. package/dist/{engine → sql}/inline.js.map +1 -1
  326. package/dist/{engine → sql}/named.d.ts +1 -1
  327. package/dist/sql/named.d.ts.map +1 -0
  328. package/dist/{engine → sql}/named.js.map +1 -1
  329. package/dist/{engine/lexer → sql}/next.d.ts.map +1 -1
  330. package/dist/{engine/lexer → sql}/next.js.map +1 -1
  331. package/dist/sql/slots.d.ts +2 -2
  332. package/dist/sql/slots.d.ts.map +1 -1
  333. package/dist/{engine → sql}/splice.d.ts +1 -1
  334. package/dist/sql/splice.d.ts.map +1 -0
  335. package/dist/{engine → sql}/splice.js.map +1 -1
  336. package/dist/sql/text.d.ts +4 -4
  337. package/dist/sql/text.d.ts.map +1 -1
  338. package/dist/sql/write.d.ts +28 -0
  339. package/dist/sql/write.d.ts.map +1 -0
  340. package/dist/sql/write.js +2 -0
  341. package/dist/sql/write.js.map +1 -0
  342. package/dist/sqlite/cache-dialect.d.ts +3 -0
  343. package/dist/sqlite/cache-dialect.d.ts.map +1 -0
  344. package/dist/sqlite/cache-dialect.js +31 -0
  345. package/dist/sqlite/cache-dialect.js.map +1 -0
  346. package/dist/sqlite/dialect.d.ts +32 -0
  347. package/dist/sqlite/dialect.d.ts.map +1 -0
  348. package/dist/sqlite/dialect.js +5 -0
  349. package/dist/sqlite/dialect.js.map +1 -0
  350. package/dist/sqlite/engine/ast.d.ts +240 -0
  351. package/dist/sqlite/engine/ast.d.ts.map +1 -0
  352. package/dist/sqlite/engine/ast.js +2 -0
  353. package/dist/sqlite/engine/ast.js.map +1 -0
  354. package/dist/sqlite/engine/binder/scope.d.ts +355 -0
  355. package/dist/sqlite/engine/binder/scope.d.ts.map +1 -0
  356. package/dist/sqlite/engine/binder/scope.js +2 -0
  357. package/dist/sqlite/engine/binder/scope.js.map +1 -0
  358. package/dist/sqlite/engine/cache.d.ts +39 -0
  359. package/dist/sqlite/engine/cache.d.ts.map +1 -0
  360. package/dist/sqlite/engine/cache.js +2 -0
  361. package/dist/sqlite/engine/cache.js.map +1 -0
  362. package/dist/sqlite/engine/ddl/apply.d.ts +190 -0
  363. package/dist/sqlite/engine/ddl/apply.d.ts.map +1 -0
  364. package/dist/sqlite/engine/ddl/apply.js +2 -0
  365. package/dist/sqlite/engine/ddl/apply.js.map +1 -0
  366. package/dist/sqlite/engine/diagnostics.d.ts +42 -0
  367. package/dist/sqlite/engine/diagnostics.d.ts.map +1 -0
  368. package/dist/sqlite/engine/diagnostics.js +2 -0
  369. package/dist/sqlite/engine/diagnostics.js.map +1 -0
  370. package/dist/sqlite/engine/engine.d.ts +34 -0
  371. package/dist/sqlite/engine/engine.d.ts.map +1 -0
  372. package/dist/sqlite/engine/engine.js +2 -0
  373. package/dist/sqlite/engine/engine.js.map +1 -0
  374. package/dist/sqlite/engine/index.d.ts +14 -0
  375. package/dist/sqlite/engine/index.d.ts.map +1 -0
  376. package/dist/sqlite/engine/index.js +2 -0
  377. package/dist/{engine → sqlite/engine}/index.js.map +1 -1
  378. package/dist/sqlite/engine/infer.d.ts +58 -0
  379. package/dist/sqlite/engine/infer.d.ts.map +1 -0
  380. package/dist/sqlite/engine/infer.js +2 -0
  381. package/dist/sqlite/engine/infer.js.map +1 -0
  382. package/dist/sqlite/engine/lexer.d.ts +52 -0
  383. package/dist/sqlite/engine/lexer.d.ts.map +1 -0
  384. package/dist/sqlite/engine/lexer.js +2 -0
  385. package/dist/sqlite/engine/lexer.js.map +1 -0
  386. package/dist/sqlite/engine/parser/ddl.d.ts +186 -0
  387. package/dist/sqlite/engine/parser/ddl.d.ts.map +1 -0
  388. package/dist/sqlite/engine/parser/ddl.js +2 -0
  389. package/dist/{engine → sqlite/engine}/parser/ddl.js.map +1 -1
  390. package/dist/sqlite/engine/parser/dml.d.ts +85 -0
  391. package/dist/sqlite/engine/parser/dml.d.ts.map +1 -0
  392. package/dist/sqlite/engine/parser/dml.js +2 -0
  393. package/dist/{engine → sqlite/engine}/parser/dml.js.map +1 -1
  394. package/dist/sqlite/engine/parser/expr.d.ts +321 -0
  395. package/dist/sqlite/engine/parser/expr.d.ts.map +1 -0
  396. package/dist/sqlite/engine/parser/expr.js +2 -0
  397. package/dist/sqlite/engine/parser/expr.js.map +1 -0
  398. package/dist/sqlite/engine/parser/keywords.d.ts +5 -0
  399. package/dist/sqlite/engine/parser/keywords.d.ts.map +1 -0
  400. package/dist/sqlite/engine/parser/keywords.js +2 -0
  401. package/dist/sqlite/engine/parser/keywords.js.map +1 -0
  402. package/dist/sqlite/engine/parser/select.d.ts +169 -0
  403. package/dist/sqlite/engine/parser/select.d.ts.map +1 -0
  404. package/dist/sqlite/engine/parser/select.js +2 -0
  405. package/dist/sqlite/engine/parser/select.js.map +1 -0
  406. package/dist/sqlite/engine/parser/stmt.d.ts +17 -0
  407. package/dist/sqlite/engine/parser/stmt.d.ts.map +1 -0
  408. package/dist/sqlite/engine/parser/stmt.js +2 -0
  409. package/dist/sqlite/engine/parser/stmt.js.map +1 -0
  410. package/dist/sqlite/engine/parser/util.d.ts +64 -0
  411. package/dist/sqlite/engine/parser/util.d.ts.map +1 -0
  412. package/dist/sqlite/engine/parser/util.js +2 -0
  413. package/dist/sqlite/engine/parser/util.js.map +1 -0
  414. package/dist/sqlite/engine/project/dml.d.ts +139 -0
  415. package/dist/sqlite/engine/project/dml.d.ts.map +1 -0
  416. package/dist/sqlite/engine/project/dml.js +2 -0
  417. package/dist/sqlite/engine/project/dml.js.map +1 -0
  418. package/dist/sqlite/engine/project/select.d.ts +271 -0
  419. package/dist/sqlite/engine/project/select.d.ts.map +1 -0
  420. package/dist/sqlite/engine/project/select.js +2 -0
  421. package/dist/sqlite/engine/project/select.js.map +1 -0
  422. package/dist/sqlite/engine/tokens.d.ts +60 -0
  423. package/dist/sqlite/engine/tokens.d.ts.map +1 -0
  424. package/dist/sqlite/engine/tokens.js +2 -0
  425. package/dist/sqlite/engine/tokens.js.map +1 -0
  426. package/dist/sqlite/engine/typer/functions.d.ts +195 -0
  427. package/dist/sqlite/engine/typer/functions.d.ts.map +1 -0
  428. package/dist/sqlite/engine/typer/functions.js +2 -0
  429. package/dist/sqlite/engine/typer/functions.js.map +1 -0
  430. package/dist/sqlite/engine/typer/json.d.ts +51 -0
  431. package/dist/sqlite/engine/typer/json.d.ts.map +1 -0
  432. package/dist/sqlite/engine/typer/json.js +2 -0
  433. package/dist/sqlite/engine/typer/json.js.map +1 -0
  434. package/dist/sqlite/engine/typer/params.d.ts +183 -0
  435. package/dist/sqlite/engine/typer/params.d.ts.map +1 -0
  436. package/dist/sqlite/engine/typer/params.js +2 -0
  437. package/dist/sqlite/engine/typer/params.js.map +1 -0
  438. package/dist/sqlite/engine/typer/typeof.d.ts +173 -0
  439. package/dist/sqlite/engine/typer/typeof.d.ts.map +1 -0
  440. package/dist/sqlite/engine/typer/typeof.js +2 -0
  441. package/dist/sqlite/engine/typer/typeof.js.map +1 -0
  442. package/dist/sqlite/engine/types.d.ts +47 -0
  443. package/dist/sqlite/engine/types.d.ts.map +1 -0
  444. package/dist/sqlite/engine/types.js +2 -0
  445. package/dist/sqlite/engine/types.js.map +1 -0
  446. package/dist/sqlite/engine/write.d.ts +6 -0
  447. package/dist/sqlite/engine/write.d.ts.map +1 -0
  448. package/dist/sqlite/engine/write.js +2 -0
  449. package/dist/sqlite/engine/write.js.map +1 -0
  450. package/dist/sqlite/index.d.ts +9 -0
  451. package/dist/sqlite/index.d.ts.map +1 -0
  452. package/dist/sqlite/index.js +3 -0
  453. package/dist/sqlite/index.js.map +1 -0
  454. package/dist/sqlite/migrations.d.ts +8 -0
  455. package/dist/sqlite/migrations.d.ts.map +1 -0
  456. package/dist/sqlite/migrations.js +5 -0
  457. package/dist/sqlite/migrations.js.map +1 -0
  458. package/dist/sqlite/schema/index.d.ts +51 -0
  459. package/dist/sqlite/schema/index.d.ts.map +1 -0
  460. package/dist/sqlite/schema/index.js +2 -0
  461. package/dist/{schema → sqlite/schema}/index.js.map +1 -1
  462. package/dist/sqlite/sql/call.d.ts +6 -0
  463. package/dist/sqlite/sql/call.d.ts.map +1 -0
  464. package/dist/sqlite/sql/call.js +2 -0
  465. package/dist/sqlite/sql/call.js.map +1 -0
  466. package/dist/sqlite/sql/types.d.ts +6 -0
  467. package/dist/sqlite/sql/types.d.ts.map +1 -0
  468. package/dist/sqlite/sql/types.js +2 -0
  469. package/dist/{sql → sqlite/sql}/types.js.map +1 -1
  470. package/dist/sqlite/type-map/index.d.ts +52 -0
  471. package/dist/sqlite/type-map/index.d.ts.map +1 -0
  472. package/dist/sqlite/type-map/index.js +2 -0
  473. package/dist/sqlite/type-map/index.js.map +1 -0
  474. package/dist/transaction.d.ts +4 -4
  475. package/dist/transaction.d.ts.map +1 -1
  476. package/dist/transaction.js +4 -4
  477. package/dist/transaction.js.map +1 -1
  478. package/package.json +18 -5
  479. package/src/adapter.ts +7 -0
  480. package/src/cache/dialect.ts +20 -0
  481. package/src/cache/dialects.ts +8 -0
  482. package/src/cache/discover.ts +30 -28
  483. package/src/cache/evaluate.ts +7 -2
  484. package/src/cache/format.ts +18 -7
  485. package/src/cache/job.ts +134 -37
  486. package/src/cache/mapper.ts +30 -15
  487. package/src/cache/print.ts +2 -7
  488. package/src/cache/scan.ts +20 -6
  489. package/src/cache/store.ts +11 -4
  490. package/src/create-sql.ts +21 -16
  491. package/src/dialect.ts +47 -0
  492. package/src/engine/cache.ts +56 -149
  493. package/src/engine/carried.ts +112 -0
  494. package/src/engine/contract.ts +96 -0
  495. package/src/engine/infer.ts +53 -146
  496. package/src/engine/{binder/narrow.ts → narrow.ts} +10 -6
  497. package/src/engine/params.ts +36 -0
  498. package/src/engine/{parser/util.ts → parse.ts} +2 -61
  499. package/src/engine/suggest.ts +13 -93
  500. package/src/engine/write.ts +28 -85
  501. package/src/index.ts +32 -24
  502. package/src/memo.ts +15 -0
  503. package/src/migrations.ts +11 -27
  504. package/src/postgres/cache-dialect.ts +33 -0
  505. package/src/postgres/dialect.ts +47 -0
  506. package/src/{engine → postgres/engine}/binder/clauses.ts +2 -2
  507. package/src/{engine → postgres/engine}/binder/from.ts +20 -16
  508. package/src/{engine → postgres/engine}/binder/resolve.ts +5 -5
  509. package/src/postgres/engine/cache.ts +161 -0
  510. package/src/{engine → postgres/engine}/ddl/alter-table.ts +7 -2
  511. package/src/{engine → postgres/engine}/ddl/apply.ts +1 -1
  512. package/src/{engine → postgres/engine}/ddl/column.ts +1 -1
  513. package/src/{engine → postgres/engine}/ddl/create-table.ts +2 -2
  514. package/src/{engine → postgres/engine}/ddl/query.ts +3 -3
  515. package/src/{engine → postgres/engine}/ddl/registry.ts +7 -2
  516. package/src/{engine → postgres/engine}/ddl/relation.ts +3 -3
  517. package/src/{engine → postgres/engine}/ddl/schema.ts +7 -2
  518. package/src/{engine → postgres/engine}/ddl/script.ts +2 -2
  519. package/src/{engine → postgres/engine}/ddl/view.ts +2 -2
  520. package/src/{engine → postgres/engine}/diagnostics.ts +2 -2
  521. package/src/postgres/engine/engine.ts +43 -0
  522. package/src/{engine → postgres/engine}/index.ts +48 -51
  523. package/src/postgres/engine/infer.ts +147 -0
  524. package/src/{engine → postgres/engine}/json.ts +5 -3
  525. package/src/{engine → postgres/engine}/lexer/lex.ts +4 -4
  526. package/src/{engine → postgres/engine}/lexer/unicode.ts +1 -1
  527. package/src/{engine → postgres/engine}/parser/ddl.ts +7 -1
  528. package/src/{engine → postgres/engine}/parser/dml.ts +1 -1
  529. package/src/{engine → postgres/engine}/parser/expr.ts +3 -3
  530. package/src/{engine → postgres/engine}/parser/fast.ts +3 -3
  531. package/src/{engine → postgres/engine}/parser/json.ts +7 -1
  532. package/src/{engine → postgres/engine}/parser/merge.ts +1 -1
  533. package/src/{engine → postgres/engine}/parser/select.ts +7 -1
  534. package/src/{engine → postgres/engine}/parser/stmt.ts +1 -1
  535. package/src/{engine → postgres/engine}/parser/typename.ts +7 -1
  536. package/src/postgres/engine/parser/util.ts +86 -0
  537. package/src/{engine → postgres/engine}/parser/utility.ts +2 -2
  538. package/src/{engine → postgres/engine}/parser/xml.ts +1 -1
  539. package/src/{engine → postgres/engine}/project/dml.ts +16 -16
  540. package/src/{engine → postgres/engine}/project/merge.ts +7 -7
  541. package/src/{engine → postgres/engine}/project/naming.ts +1 -1
  542. package/src/{engine → postgres/engine}/project/select.ts +15 -15
  543. package/src/{engine → postgres/engine}/project/stmt.ts +2 -2
  544. package/src/{engine → postgres/engine}/shape.ts +3 -2
  545. package/src/postgres/engine/suggest.ts +83 -0
  546. package/src/{engine → postgres/engine}/typer/catalog.ts +2 -2
  547. package/src/{engine → postgres/engine}/typer/operators.ts +1 -1
  548. package/src/{engine → postgres/engine}/typer/params.ts +10 -43
  549. package/src/{engine → postgres/engine}/typer/sqljson.ts +8 -8
  550. package/src/{engine → postgres/engine}/typer/typeof.ts +8 -2
  551. package/src/{engine → postgres/engine}/typer/xml.ts +2 -2
  552. package/src/postgres/engine/write.ts +22 -0
  553. package/src/postgres/index.ts +39 -0
  554. package/src/postgres/migrations.ts +21 -0
  555. package/src/postgres/schema/column.ts +28 -0
  556. package/src/{schema → postgres/schema}/index.ts +2 -4
  557. package/src/{schema → postgres/schema}/pg-catalog.ts +1 -1
  558. package/src/{schema → postgres/schema}/pg-types.ts +4 -0
  559. package/src/postgres/sql/call.ts +12 -0
  560. package/src/postgres/sql/types.ts +6 -0
  561. package/src/{type-map → postgres/type-map}/index.ts +1 -1
  562. package/src/row-keys.ts +1 -1
  563. package/src/runtime/inline.ts +1 -1
  564. package/src/runtime/json.ts +1 -1
  565. package/src/runtime/splice.ts +2 -16
  566. package/src/runtime/sqlite-params.ts +53 -0
  567. package/src/runtime/write.ts +7 -1
  568. package/src/schema.ts +44 -0
  569. package/src/sql/{types.ts → api.ts} +29 -27
  570. package/src/sql/call.ts +91 -83
  571. package/src/sql/fragment.ts +5 -5
  572. package/src/{engine → sql}/inline.ts +2 -103
  573. package/src/{engine → sql}/named.ts +1 -1
  574. package/src/sql/next.ts +4101 -0
  575. package/src/sql/slots.ts +2 -2
  576. package/src/{engine → sql}/splice.ts +1 -1
  577. package/src/sql/text.ts +4 -4
  578. package/src/sql/write.ts +73 -0
  579. package/src/sqlite/cache-dialect.ts +32 -0
  580. package/src/sqlite/dialect.ts +48 -0
  581. package/src/sqlite/engine/ast.ts +262 -0
  582. package/src/sqlite/engine/binder/scope.ts +738 -0
  583. package/src/sqlite/engine/cache.ts +84 -0
  584. package/src/sqlite/engine/ddl/apply.ts +500 -0
  585. package/src/sqlite/engine/diagnostics.ts +121 -0
  586. package/src/sqlite/engine/engine.ts +42 -0
  587. package/src/sqlite/engine/index.ts +47 -0
  588. package/src/sqlite/engine/infer.ts +140 -0
  589. package/src/sqlite/engine/lexer.ts +367 -0
  590. package/src/sqlite/engine/parser/ddl.ts +790 -0
  591. package/src/sqlite/engine/parser/dml.ts +388 -0
  592. package/src/sqlite/engine/parser/expr.ts +857 -0
  593. package/src/sqlite/engine/parser/keywords.ts +79 -0
  594. package/src/sqlite/engine/parser/select.ts +611 -0
  595. package/src/sqlite/engine/parser/stmt.ts +107 -0
  596. package/src/sqlite/engine/parser/util.ts +106 -0
  597. package/src/sqlite/engine/project/dml.ts +648 -0
  598. package/src/sqlite/engine/project/select.ts +835 -0
  599. package/src/sqlite/engine/tokens.ts +62 -0
  600. package/src/sqlite/engine/typer/functions.ts +306 -0
  601. package/src/sqlite/engine/typer/json.ts +111 -0
  602. package/src/sqlite/engine/typer/params.ts +828 -0
  603. package/src/sqlite/engine/typer/typeof.ts +707 -0
  604. package/src/sqlite/engine/types.ts +81 -0
  605. package/src/sqlite/engine/write.ts +22 -0
  606. package/src/sqlite/index.ts +51 -0
  607. package/src/sqlite/migrations.ts +21 -0
  608. package/src/sqlite/schema/index.ts +53 -0
  609. package/src/sqlite/sql/call.ts +12 -0
  610. package/src/sqlite/sql/types.ts +6 -0
  611. package/src/sqlite/type-map/index.ts +78 -0
  612. package/src/transaction.ts +23 -15
  613. package/CHANGELOG.md +0 -345
  614. package/dist/engine/ast.d.ts.map +0 -1
  615. package/dist/engine/ast.js.map +0 -1
  616. package/dist/engine/binder/clauses.d.ts.map +0 -1
  617. package/dist/engine/binder/clauses.js.map +0 -1
  618. package/dist/engine/binder/from.d.ts.map +0 -1
  619. package/dist/engine/binder/from.js.map +0 -1
  620. package/dist/engine/binder/narrow.d.ts.map +0 -1
  621. package/dist/engine/binder/resolve.d.ts.map +0 -1
  622. package/dist/engine/binder/resolve.js.map +0 -1
  623. package/dist/engine/ddl/alter-table.d.ts.map +0 -1
  624. package/dist/engine/ddl/alter-table.js.map +0 -1
  625. package/dist/engine/ddl/apply.d.ts.map +0 -1
  626. package/dist/engine/ddl/apply.js.map +0 -1
  627. package/dist/engine/ddl/column.d.ts.map +0 -1
  628. package/dist/engine/ddl/create-table.d.ts.map +0 -1
  629. package/dist/engine/ddl/create-table.js.map +0 -1
  630. package/dist/engine/ddl/object.d.ts.map +0 -1
  631. package/dist/engine/ddl/query.d.ts.map +0 -1
  632. package/dist/engine/ddl/query.js.map +0 -1
  633. package/dist/engine/ddl/registry.d.ts.map +0 -1
  634. package/dist/engine/ddl/registry.js.map +0 -1
  635. package/dist/engine/ddl/relation.d.ts.map +0 -1
  636. package/dist/engine/ddl/relation.js.map +0 -1
  637. package/dist/engine/ddl/schema.d.ts.map +0 -1
  638. package/dist/engine/ddl/schema.js.map +0 -1
  639. package/dist/engine/ddl/script.d.ts.map +0 -1
  640. package/dist/engine/ddl/script.js.map +0 -1
  641. package/dist/engine/ddl/view.d.ts.map +0 -1
  642. package/dist/engine/ddl/view.js.map +0 -1
  643. package/dist/engine/diagnostics.d.ts.map +0 -1
  644. package/dist/engine/diagnostics.js.map +0 -1
  645. package/dist/engine/errors.d.ts.map +0 -1
  646. package/dist/engine/errors.js.map +0 -1
  647. package/dist/engine/index.d.ts.map +0 -1
  648. package/dist/engine/inline.d.ts.map +0 -1
  649. package/dist/engine/json.d.ts.map +0 -1
  650. package/dist/engine/lexer/chars.d.ts.map +0 -1
  651. package/dist/engine/lexer/lex.d.ts.map +0 -1
  652. package/dist/engine/lexer/lex.js.map +0 -1
  653. package/dist/engine/lexer/tokens.d.ts.map +0 -1
  654. package/dist/engine/lexer/unicode.d.ts.map +0 -1
  655. package/dist/engine/lexer/unicode.js.map +0 -1
  656. package/dist/engine/named.d.ts.map +0 -1
  657. package/dist/engine/parser/ddl.d.ts.map +0 -1
  658. package/dist/engine/parser/dml.d.ts.map +0 -1
  659. package/dist/engine/parser/expr.d.ts.map +0 -1
  660. package/dist/engine/parser/expr.js.map +0 -1
  661. package/dist/engine/parser/fast.d.ts.map +0 -1
  662. package/dist/engine/parser/fast.js.map +0 -1
  663. package/dist/engine/parser/json.d.ts.map +0 -1
  664. package/dist/engine/parser/json.js.map +0 -1
  665. package/dist/engine/parser/keywords.d.ts.map +0 -1
  666. package/dist/engine/parser/keywords.js.map +0 -1
  667. package/dist/engine/parser/merge.d.ts.map +0 -1
  668. package/dist/engine/parser/merge.js.map +0 -1
  669. package/dist/engine/parser/select.d.ts.map +0 -1
  670. package/dist/engine/parser/select.js.map +0 -1
  671. package/dist/engine/parser/stmt.d.ts.map +0 -1
  672. package/dist/engine/parser/stmt.js.map +0 -1
  673. package/dist/engine/parser/typename.d.ts.map +0 -1
  674. package/dist/engine/parser/typename.js.map +0 -1
  675. package/dist/engine/parser/util.d.ts.map +0 -1
  676. package/dist/engine/parser/util.js.map +0 -1
  677. package/dist/engine/parser/utility.d.ts.map +0 -1
  678. package/dist/engine/parser/utility.js.map +0 -1
  679. package/dist/engine/parser/xml.d.ts.map +0 -1
  680. package/dist/engine/parser/xml.js.map +0 -1
  681. package/dist/engine/project/dml.d.ts.map +0 -1
  682. package/dist/engine/project/dml.js.map +0 -1
  683. package/dist/engine/project/merge.d.ts.map +0 -1
  684. package/dist/engine/project/merge.js.map +0 -1
  685. package/dist/engine/project/naming.d.ts.map +0 -1
  686. package/dist/engine/project/naming.js.map +0 -1
  687. package/dist/engine/project/select.d.ts.map +0 -1
  688. package/dist/engine/project/select.js.map +0 -1
  689. package/dist/engine/project/stmt.d.ts.map +0 -1
  690. package/dist/engine/project/stmt.js.map +0 -1
  691. package/dist/engine/shape.d.ts.map +0 -1
  692. package/dist/engine/splice.d.ts.map +0 -1
  693. package/dist/engine/typer/catalog.d.ts.map +0 -1
  694. package/dist/engine/typer/catalog.js.map +0 -1
  695. package/dist/engine/typer/operators.d.ts.map +0 -1
  696. package/dist/engine/typer/operators.js.map +0 -1
  697. package/dist/engine/typer/params.d.ts.map +0 -1
  698. package/dist/engine/typer/pg-functions.d.ts.map +0 -1
  699. package/dist/engine/typer/pg-functions.js.map +0 -1
  700. package/dist/engine/typer/sqljson.d.ts.map +0 -1
  701. package/dist/engine/typer/sqljson.js.map +0 -1
  702. package/dist/engine/typer/typeof.d.ts.map +0 -1
  703. package/dist/engine/typer/typeof.js.map +0 -1
  704. package/dist/engine/typer/xml.d.ts.map +0 -1
  705. package/dist/engine/typer/xml.js.map +0 -1
  706. package/dist/schema/column.d.ts +0 -50
  707. package/dist/schema/column.d.ts.map +0 -1
  708. package/dist/schema/column.js.map +0 -1
  709. package/dist/schema/index.d.ts +0 -5
  710. package/dist/schema/index.d.ts.map +0 -1
  711. package/dist/schema/normalize.d.ts.map +0 -1
  712. package/dist/schema/normalize.js.map +0 -1
  713. package/dist/schema/pg-catalog.d.ts.map +0 -1
  714. package/dist/schema/pg-catalog.js.map +0 -1
  715. package/dist/schema/pg-types.d.ts.map +0 -1
  716. package/dist/schema/pg-types.js.map +0 -1
  717. package/dist/sql/types.d.ts.map +0 -1
  718. package/dist/type-map/index.d.ts.map +0 -1
  719. package/src/engine/lexer/next.ts +0 -4101
  720. package/src/schema/column.ts +0 -64
  721. /package/dist/engine/{lexer/chars.d.ts → chars.d.ts} +0 -0
  722. /package/dist/engine/{lexer/chars.js → chars.js} +0 -0
  723. /package/dist/engine/{binder/narrow.js → narrow.js} +0 -0
  724. /package/dist/engine/{ddl/object.d.ts → object.d.ts} +0 -0
  725. /package/dist/engine/{ddl/object.js → object.js} +0 -0
  726. /package/dist/engine/{typer/params.js → params.js} +0 -0
  727. /package/dist/engine/{lexer/tokens.d.ts → tokens.d.ts} +0 -0
  728. /package/dist/engine/{lexer/tokens.js → tokens.js} +0 -0
  729. /package/dist/{engine/errors.d.ts → errors.d.ts} +0 -0
  730. /package/dist/{engine/errors.js → errors.js} +0 -0
  731. /package/dist/{engine → postgres/engine}/ast.d.ts +0 -0
  732. /package/dist/{engine → postgres/engine}/ast.js +0 -0
  733. /package/dist/{engine → postgres/engine}/binder/clauses.js +0 -0
  734. /package/dist/{engine → postgres/engine}/binder/from.js +0 -0
  735. /package/dist/{engine → postgres/engine}/binder/resolve.js +0 -0
  736. /package/dist/{engine → postgres/engine}/ddl/alter-table.js +0 -0
  737. /package/dist/{engine → postgres/engine}/ddl/apply.js +0 -0
  738. /package/dist/{engine → postgres/engine}/ddl/column.js +0 -0
  739. /package/dist/{engine → postgres/engine}/ddl/create-table.js +0 -0
  740. /package/dist/{engine → postgres/engine}/ddl/query.js +0 -0
  741. /package/dist/{engine → postgres/engine}/ddl/registry.js +0 -0
  742. /package/dist/{engine → postgres/engine}/ddl/relation.js +0 -0
  743. /package/dist/{engine → postgres/engine}/ddl/schema.js +0 -0
  744. /package/dist/{engine → postgres/engine}/ddl/script.js +0 -0
  745. /package/dist/{engine → postgres/engine}/ddl/view.js +0 -0
  746. /package/dist/{engine → postgres/engine}/diagnostics.js +0 -0
  747. /package/dist/{engine → postgres/engine}/index.js +0 -0
  748. /package/dist/{engine → postgres/engine}/json.js +0 -0
  749. /package/dist/{engine → postgres/engine}/lexer/lex.js +0 -0
  750. /package/dist/{engine → postgres/engine}/lexer/unicode.js +0 -0
  751. /package/dist/{engine → postgres/engine}/parser/ddl.js +0 -0
  752. /package/dist/{engine → postgres/engine}/parser/dml.js +0 -0
  753. /package/dist/{engine → postgres/engine}/parser/expr.js +0 -0
  754. /package/dist/{engine → postgres/engine}/parser/fast.js +0 -0
  755. /package/dist/{engine → postgres/engine}/parser/json.js +0 -0
  756. /package/dist/{engine → postgres/engine}/parser/keywords.d.ts +0 -0
  757. /package/dist/{engine → postgres/engine}/parser/keywords.js +0 -0
  758. /package/dist/{engine → postgres/engine}/parser/merge.js +0 -0
  759. /package/dist/{engine → postgres/engine}/parser/select.js +0 -0
  760. /package/dist/{engine → postgres/engine}/parser/stmt.js +0 -0
  761. /package/dist/{engine → postgres/engine}/parser/typename.js +0 -0
  762. /package/dist/{engine → postgres/engine}/parser/util.js +0 -0
  763. /package/dist/{engine → postgres/engine}/parser/utility.js +0 -0
  764. /package/dist/{engine → postgres/engine}/parser/xml.js +0 -0
  765. /package/dist/{engine → postgres/engine}/project/dml.js +0 -0
  766. /package/dist/{engine → postgres/engine}/project/merge.js +0 -0
  767. /package/dist/{engine → postgres/engine}/project/naming.js +0 -0
  768. /package/dist/{engine → postgres/engine}/project/select.js +0 -0
  769. /package/dist/{engine → postgres/engine}/project/stmt.js +0 -0
  770. /package/dist/{engine → postgres/engine}/shape.js +0 -0
  771. /package/dist/{engine → postgres/engine}/typer/catalog.js +0 -0
  772. /package/dist/{engine → postgres/engine}/typer/operators.js +0 -0
  773. /package/dist/{engine → postgres/engine}/typer/pg-functions.d.ts +0 -0
  774. /package/dist/{engine → postgres/engine}/typer/pg-functions.js +0 -0
  775. /package/dist/{engine → postgres/engine}/typer/sqljson.js +0 -0
  776. /package/dist/{engine → postgres/engine}/typer/typeof.js +0 -0
  777. /package/dist/{engine → postgres/engine}/typer/xml.js +0 -0
  778. /package/dist/{schema → postgres/schema}/column.js +0 -0
  779. /package/dist/{schema → postgres/schema}/index.js +0 -0
  780. /package/dist/{schema → postgres/schema}/normalize.d.ts +0 -0
  781. /package/dist/{schema → postgres/schema}/normalize.js +0 -0
  782. /package/dist/{schema → postgres/schema}/pg-catalog.js +0 -0
  783. /package/dist/{schema → postgres/schema}/pg-types.js +0 -0
  784. /package/dist/{sql → postgres/sql}/types.js +0 -0
  785. /package/dist/{type-map → postgres/type-map}/index.js +0 -0
  786. /package/dist/{engine → sql}/inline.js +0 -0
  787. /package/dist/{engine → sql}/named.js +0 -0
  788. /package/dist/{engine/lexer → sql}/next.d.ts +0 -0
  789. /package/dist/{engine/lexer → sql}/next.js +0 -0
  790. /package/dist/{engine → sql}/splice.js +0 -0
  791. /package/src/engine/{lexer/chars.ts → chars.ts} +0 -0
  792. /package/src/engine/{ddl/object.ts → object.ts} +0 -0
  793. /package/src/engine/{lexer/tokens.ts → tokens.ts} +0 -0
  794. /package/src/{engine/errors.ts → errors.ts} +0 -0
  795. /package/src/{engine → postgres/engine}/ast.ts +0 -0
  796. /package/src/{engine → postgres/engine}/parser/keywords.ts +0 -0
  797. /package/src/{engine → postgres/engine}/typer/pg-functions.ts +0 -0
  798. /package/src/{schema → postgres/schema}/normalize.ts +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @typesql/core
2
2
 
3
- Write Postgres SQL in TypeScript and get exact types for rows and parameters. TypeSQL parses your SQL inside the type checker: no codegen, no database connection, no build step.
3
+ Write SQL in TypeScript and get exact types for rows and parameters. TypeSQL parses your SQL inside the type checker: no codegen, no database connection, no build step.
4
4
 
5
5
  ## Install
6
6
 
@@ -12,10 +12,11 @@ Requires TypeScript 7.1 or later.
12
12
 
13
13
  ## Usage
14
14
 
15
- Describe your tables with Postgres type names, then write queries:
15
+ Describe your tables with your database's type names, then write queries:
16
16
 
17
17
  ```ts
18
- import { createSql, type Col, type Generated, type Nullable } from "@typesql/core";
18
+ import { createSql } from "@typesql/core";
19
+ import { type Col, type Generated, type Nullable, postgres } from "@typesql/core/postgres";
19
20
 
20
21
  interface DB {
21
22
  users: {
@@ -30,7 +31,7 @@ interface DB {
30
31
  };
31
32
  }
32
33
 
33
- const sql = createSql<DB>();
34
+ const sql = createSql<DB>(postgres);
34
35
 
35
36
  const query = sql(
36
37
  `SELECT u.email, p.title
@@ -42,7 +43,9 @@ const query = sql(
42
43
  sql("SELECT emial FROM users");
43
44
  ```
44
45
 
45
- [Open the example in the TypeScript Playground](https://www.typescriptlang.org/play/#code/JYWwDg9gTgLgBAbwFAEgYE8wFM4GEIA2ANKgMZRYCGMWAygI7GobZwDiWAdllNVgCYk0mHADkArgQKUARgSxCWOAAqVeIAM4AVEYpFwAShADuO7CQC+cAGZQIIOACIAAko2MA9KWhZHAbiQkYE4aKGtKUhwAEQAhRFRxDR4NAC54lBRgfjSObl4afgAeR2CYABZHAD4AjKwQSmACNPwCYpoADxgqmpR+YA0waXQAfU5KECw0iSlZeTasTu7UFHIqAuHqHK4ePiLHGFAsDRhxsBgALyWUCxrIY9T0zOz2bfyBYtKADiuUSnEYAAW0GGWWahA+IQq1WWBxg8jBrX2Cy60IyMgg-HQU0k0jkWHmi1RNyQFkC3k4xzg7gIcAAvHBVnwGK1YpUABQASgCSHJlPodKpjDZqAABrQAKIAGXFuC0cHEADoskR5Qq6g1iHAwArYfIkHADYajcaAGIGADyAFl5UkoBp5XBpSa5QApc0ASVEWog9y1cHNXu1f0BwKyAsVWX1xujhoA6gAJcUGcWqsP0gAkAEYRUIAOwkLlIJSGEwCoymESFJQQaxwejQ4uqdT2+lN8baSvV2v17m8+DHagtwUEYUoMVSmVy4NAqAgwQMiDiEJsgBUHJV9XabN1WA5cAAgrQ4NIaJSzVbvb62BaAKrKOAxACacGnof4OaQheLtBOMCH5bMfEuypX8NGhHkIApeB1UaAVHEofhKGcBZTnkBVvBAfwIKghkKF2AVqVHEVPQlAw5U9LRzRtZI4DZGCCD3AA1fdJRvcUjzZdMEGpBUwDUcY6PqRoOQsPdky0G8DFET02DgZVcLWAQNhgD8v30XA8IKMsTEAqsRBrBTdnAwjx2lWU4E4CY4HPa1EmSEVCxMkik3I0RKMvP9aJ3JiWLYjisw5HMnHjLApAgRxCyAA) <span data-playground="core"></span>: edit the SQL and hover the types, with nothing to install. The Playground runs TypeScript 6, so treat it as a demo.
46
+ [Open the example in the TypeScript Playground](https://www.typescriptlang.org/play/#code/JYWwDg9gTgLgBAbzgYygUwIYzQZQI4A2ANHDAJ5hpwAKGUGIAzgCoVonmVwBKEA7qy4BfOADMoEEHABEAAU5pGhAPTJoaaQG4AUKEixE2gJAK4AYQjFjpgOJoAdmnrYAJkWts4AOQCuBAhgARgTsxpCMMADm6IzuIuKSMvJsSgSq6srhUTFa2rr22FCiGMhUACIAQoZGPoxOjABc1UbALk12js5oLgA80sAFACzSAHw6RkZoIBjABE0WBH3YAB4wo+NGLsCMYAFkAPr2DGhNvv5BIUtoq+vGRqiYrvtY7Q5OWN1LoIowDGAwAC9bkYhOMso1mq1Xp0Pr1+gUABzAowYHwwAAW0H2UPMlj6AxgwzGdxgwBgIXmeOkKzWxImgQgLjIpz8AWCaCuNzpoO0QjyansETgqTgAF4UOgPvhFpURgAKLLRRQASh02gFQrwYuFhDlxgABjgAKIAGSNZmYcB8ADpWiQbVMZsQ4GBraTyWhtHBvT7fX6AGLcADyAFkrXUoIwrXAzf7LQApIMASS8LogESjYDgQdTrtRGKxrW1NtaXr95Z9AHUABJG7hGq22lzagAkAEZ9e4jAB2dyq7SmXh8bVDwQchQQURwPDE0y0ehMbXzhgsNg9CdTmdqjXwCJYKPi1J6oyG03my35zFQbFuFAQHwFOUAKmVJGmyzl7pCyrgAEEcHAATYEKgahmmGZwDYwYAKrUHAFQAJpwJehYuJ22j9qYOC-DAB48PwY7rmwk7CjhjDEuqECCvAjqzNq0gYC4GCyNcfwhNaaggLkO4So83TakeBopsa3CWimzBBuG9RwHKtEED+ABqv4mtBRoAXKLYIKk1pgHQDCydMszKkIP71sw0HcF4KY2HAdq8bCzwwOhmGeGYkquCOBFrhu9muBRR6nmaFpwPYIBUKBYa1PU+r9gFwl1mJXgSeBuEyV+aCKcpqnqe2yqdjI1ZoP4EDSP2QA) <span data-playground="core"></span>: edit the SQL and hover the types, with nothing to install. The Playground runs TypeScript 6, so treat it as a demo.
47
+
48
+ For SQLite, import `sqlite` and the schema markers from `@typesql/core/sqlite` and use SQLite's type names (`integer`, `text`, `real`, `blob`). See [SQLite](https://typesql.karsli.net/guide/sqlite).
46
49
 
47
50
  ## Run queries
48
51
 
@@ -52,6 +55,7 @@ sql("SELECT emial FROM users");
52
55
  |---|---|
53
56
  | [`@typesql/pg`](https://www.npmjs.com/package/@typesql/pg) | node-postgres |
54
57
  | [`@typesql/postgres`](https://www.npmjs.com/package/@typesql/postgres) | postgres.js |
58
+ | [`@typesql/sqlite`](https://www.npmjs.com/package/@typesql/sqlite) | node:sqlite, better-sqlite3, bun:sqlite |
55
59
  | [`@typesql/kysely`](https://www.npmjs.com/package/@typesql/kysely) | Kysely, with its `DB` interface as the schema |
56
60
  | [`@typesql/drizzle`](https://www.npmjs.com/package/@typesql/drizzle) | Drizzle, with its schema |
57
61
  | [`@typesql/prisma`](https://www.npmjs.com/package/@typesql/prisma) | Prisma Client, with its schema |
package/dist/adapter.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export { mapRows, rowKeysOf } from "./query.js";
2
2
  export { camelCase } from "./row-keys.js";
3
3
  export { JsonParam } from "./runtime/json.js";
4
+ export { paramNumbers, positional, type SplitStatement, splitParams, sqliteValue, } from "./runtime/sqlite-params.js";
4
5
  export { createTransactionalSql, runTransaction, type SqlDriver, } from "./transaction.js";
5
6
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACN,sBAAsB,EACtB,cAAc,EACd,KAAK,SAAS,GACd,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACN,YAAY,EACZ,UAAU,EACV,KAAK,cAAc,EACnB,WAAW,EACX,WAAW,GACX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,sBAAsB,EACtB,cAAc,EACd,KAAK,SAAS,GACd,MAAM,kBAAkB,CAAC"}
package/dist/adapter.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export { mapRows, rowKeysOf } from "./query.js";
2
2
  export { camelCase } from "./row-keys.js";
3
3
  export { JsonParam } from "./runtime/json.js";
4
+ export { paramNumbers, positional, splitParams, sqliteValue, } from "./runtime/sqlite-params.js";
4
5
  export { createTransactionalSql, runTransaction, } from "./transaction.js";
5
6
  //# sourceMappingURL=adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACN,sBAAsB,EACtB,cAAc,GAEd,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACN,YAAY,EACZ,UAAU,EAEV,WAAW,EACX,WAAW,GACX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,sBAAsB,EACtB,cAAc,GAEd,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { Names } from "./scan.js";
2
+ export type WordSlot = "rel" | "relci" | "pg" | "fn" | "fnci" | "cat" | "catci";
3
+ export interface CacheDialect {
4
+ readonly name: string;
5
+ readonly dir: string;
6
+ readonly typesName: string;
7
+ readonly engine: string;
8
+ readonly specifiers: readonly string[];
9
+ readonly versionFile: string;
10
+ readonly sqlTypes: readonly string[];
11
+ readonly queryAliases: {
12
+ readonly [alias: string]: number;
13
+ };
14
+ readonly ddlAliases: {
15
+ readonly [alias: string]: number;
16
+ };
17
+ readonly looksLikeQuery: RegExp;
18
+ readonly looksLikeDdl: RegExp;
19
+ readonly wordSlots: readonly WordSlot[];
20
+ scanNames(text: string): Names;
21
+ touchesAllTables(text: string): boolean;
22
+ }
23
+ //# sourceMappingURL=dialect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialect.d.ts","sourceRoot":"","sources":["../../src/cache/dialect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;AAEhF,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC5D,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC1D,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;IAC/B,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACxC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=dialect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialect.js","sourceRoot":"","sources":["../../src/cache/dialect.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import type { CacheDialect } from "./dialect.js";
2
+ export declare const DIALECTS: readonly CacheDialect[];
3
+ export declare const dialectNamed: (name: string | undefined) => CacheDialect;
4
+ //# sourceMappingURL=dialects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialects.d.ts","sourceRoot":"","sources":["../../src/cache/dialects.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,eAAO,MAAM,QAAQ,EAAE,SAAS,YAAY,EAAiC,CAAC;AAE9E,eAAO,MAAM,YAAY,SAAU,MAAM,GAAG,SAAS,KAAG,YACF,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { postgresCache } from "../postgres/cache-dialect.js";
2
+ import { sqliteCache } from "../sqlite/cache-dialect.js";
3
+ export const DIALECTS = [postgresCache, sqliteCache];
4
+ export const dialectNamed = (name) => DIALECTS.find((d) => d.name === name) ?? DIALECTS[0];
5
+ //# sourceMappingURL=dialects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialects.js","sourceRoot":"","sources":["../../src/cache/dialects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAGzD,MAAM,CAAC,MAAM,QAAQ,GAA4B,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAwB,EAAgB,EAAE,CACtE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Checker, Program, Type } from "typescript/async";
2
+ import type { CacheDialect } from "./dialect.js";
2
3
  export interface Kinds {
3
4
  readonly CallExpression: number;
4
5
  readonly PropertyAccessExpression: number;
@@ -25,7 +26,7 @@ export interface DdlSite {
25
26
  readonly file: string;
26
27
  readonly db: Type;
27
28
  }
28
- export declare function discover(program: Program, checker: Checker, kinds: Kinds, isCorePath: (path: string) => boolean, include: (fileName: string) => boolean): Promise<{
29
+ export declare function discover(program: Program, checker: Checker, kinds: Kinds, isCorePath: (path: string) => boolean, include: (fileName: string) => boolean, dialect: CacheDialect): Promise<{
29
30
  sql: SqlSite[];
30
31
  types: TypeSite[];
31
32
  ddl: DdlSite[];
@@ -1 +1 @@
1
- {"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/cache/discover.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACX,OAAO,EACP,OAAO,EAEP,IAAI,EACJ,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CAClB;AAqBD,wBAAsB,QAAQ,CAC7B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EACrC,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,GACpC,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,GAAG,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC,CAkJhE;AAmFD,wBAAsB,SAAS,CAC9B,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACnC,OAAO,CAAC,OAAO,CAAC,CAQlB"}
1
+ {"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/cache/discover.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACX,OAAO,EACP,OAAO,EAEP,IAAI,EACJ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CAClB;AAGD,wBAAsB,QAAQ,CAC7B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EACrC,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,EACtC,OAAO,EAAE,YAAY,GACnB,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,GAAG,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC,CAkKhE;AAoFD,wBAAsB,SAAS,CAC9B,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACnC,OAAO,CAAC,OAAO,CAAC,CAQlB"}
@@ -1,21 +1,15 @@
1
+ import { sep } from "node:path";
1
2
  const SLOT = /\{[A-Za-z_][A-Za-z0-9_]*\}/;
2
- const QUERY_ALIASES = {
3
- RowOf: 2,
4
- ParamsOf: 2,
5
- ArgsOf: 2,
6
- ParamsArgs: 2,
7
- Validate: 1,
8
- KindOf: 1,
9
- NamesOf: 1,
10
- Analysis: 1,
11
- };
12
- const DDL_ALIASES = {
13
- ApplyDdl: 1,
14
- ValidateDdl: 1,
15
- };
16
- const LOOKS_LIKE_QUERY = /^\s*(\(\s*)*(select|with|insert|update|delete|values|table)\b/i;
17
- const LOOKS_LIKE_DDL = /^\s*(create|alter|drop|comment)\b/i;
18
- export async function discover(program, checker, kinds, isCorePath, include) {
3
+ export async function discover(program, checker, kinds, isCorePath, include, dialect) {
4
+ const { queryAliases, ddlAliases, looksLikeQuery, looksLikeDdl } = dialect;
5
+ const isDialectPath = (path) => {
6
+ if (!isCorePath(path))
7
+ return false;
8
+ const root = Math.max(path.lastIndexOf(`${sep}dist${sep}`), path.lastIndexOf(`${sep}src${sep}`));
9
+ return path
10
+ .slice(path.indexOf(sep, root + 1) + 1)
11
+ .startsWith(`${dialect.dir}${sep}`);
12
+ };
19
13
  const sql = [];
20
14
  const types = [];
21
15
  const ddl = [];
@@ -40,8 +34,11 @@ export async function discover(program, checker, kinds, isCorePath, include) {
40
34
  sym = await checker.getAliasedSymbol(sym);
41
35
  const args = r.typeArguments ?? [];
42
36
  const isCore = !!sym && sym.declarations.some((d) => isCorePath(d.path));
43
- const qAt = isCore
44
- ? (QUERY_ALIASES[sym.name] ?? DDL_ALIASES[sym.name])
37
+ const isOurs = !!sym && sym.declarations.some((d) => isDialectPath(d.path));
38
+ if (isCore && !isOurs)
39
+ return;
40
+ const qAt = isOurs
41
+ ? (queryAliases[sym.name] ?? ddlAliases[sym.name])
45
42
  : undefined;
46
43
  if (qAt !== undefined && args[0] && args[qAt]) {
47
44
  const db = await checker.getTypeFromTypeNode(args[0]);
@@ -49,7 +46,7 @@ export async function discover(program, checker, kinds, isCorePath, include) {
49
46
  const key = literalOf(args[qAt], kinds);
50
47
  if (key === null)
51
48
  return;
52
- (sym.name in DDL_ALIASES ? ddl : types).push({
49
+ (sym.name in ddlAliases ? ddl : types).push({
53
50
  key,
54
51
  db,
55
52
  file: fileName,
@@ -57,7 +54,7 @@ export async function discover(program, checker, kinds, isCorePath, include) {
57
54
  return;
58
55
  }
59
56
  const wrapped = sym && !isCore
60
- ? await wrappedCoreAlias(sym, program, checker, kinds, isCorePath, aliasMemo)
57
+ ? await wrappedCoreAlias(sym, program, checker, kinds, isCorePath, aliasMemo, dialect)
61
58
  : null;
62
59
  if (wrapped) {
63
60
  const key = args[wrapped.param]
@@ -74,7 +71,7 @@ export async function discover(program, checker, kinds, isCorePath, include) {
74
71
  for (const a of args) {
75
72
  const key = literalOf(a, kinds);
76
73
  if (key !== null &&
77
- (LOOKS_LIKE_QUERY.test(key) || LOOKS_LIKE_DDL.test(key)))
74
+ (looksLikeQuery.test(key) || looksLikeDdl.test(key)))
78
75
  loose.push(key);
79
76
  }
80
77
  }
@@ -90,7 +87,9 @@ export async function discover(program, checker, kinds, isCorePath, include) {
90
87
  if (!a.isStringLiteralType() ||
91
88
  !(await isCoreRef(r, ["Migrations"], isCorePath)))
92
89
  return;
93
- const [db] = await checker.getTypeArguments(r);
90
+ const [types, db] = await checker.getTypeArguments(r);
91
+ if ((await types?.getSymbol())?.name !== dialect.typesName)
92
+ return;
94
93
  if (db)
95
94
  ddl.push({ key: a.value, db, file: fileName });
96
95
  }));
@@ -99,7 +98,7 @@ export async function discover(program, checker, kinds, isCorePath, include) {
99
98
  const callees = others.length
100
99
  ? await checker.getTypeAtLocation(others.map((c) => c.expression))
101
100
  : [];
102
- const hits = (await Promise.all(others.map((_, i) => isCoreRef(callees[i], ["Sql", "TransactionalSql"], isCorePath).then((ok) => (ok ? i : -1))))).filter((i) => i >= 0);
101
+ const hits = (await Promise.all(others.map((_, i) => isCoreRef(callees[i], dialect.sqlTypes, isDialectPath).then((ok) => ok ? i : -1)))).filter((i) => i >= 0);
103
102
  const firstArgs = hits.length
104
103
  ? await checker.getTypeAtLocation(hits.map((i) => others[i].arguments[0]))
105
104
  : [];
@@ -119,7 +118,7 @@ export async function discover(program, checker, kinds, isCorePath, include) {
119
118
  }));
120
119
  for (const key of loose)
121
120
  for (const db of fileDbs.values())
122
- (LOOKS_LIKE_DDL.test(key) ? ddl : types).push({
121
+ (looksLikeDdl.test(key) ? ddl : types).push({
123
122
  key,
124
123
  db,
125
124
  file: fileName,
@@ -127,7 +126,7 @@ export async function discover(program, checker, kinds, isCorePath, include) {
127
126
  }
128
127
  return { sql, types, ddl };
129
128
  }
130
- function wrappedCoreAlias(sym, program, checker, kinds, isCorePath, memo) {
129
+ function wrappedCoreAlias(sym, program, checker, kinds, isCorePath, memo, { queryAliases, ddlAliases }) {
131
130
  let found = memo.get(sym.id);
132
131
  if (!found) {
133
132
  found = (async () => {
@@ -144,7 +143,7 @@ function wrappedCoreAlias(sym, program, checker, kinds, isCorePath, memo) {
144
143
  target = await checker.getAliasedSymbol(target);
145
144
  if (!target || !target.declarations.some((d) => isCorePath(d.path)))
146
145
  return null;
147
- const qAt = QUERY_ALIASES[target.name] ?? DDL_ALIASES[target.name];
146
+ const qAt = queryAliases[target.name] ?? ddlAliases[target.name];
148
147
  const qArg = qAt === undefined ? undefined : ref.typeArguments?.[qAt];
149
148
  const dbArg = ref.typeArguments?.[0];
150
149
  if (!qArg || !dbArg || qArg.kind !== kinds.TypeReference)
@@ -157,7 +156,7 @@ function wrappedCoreAlias(sym, program, checker, kinds, isCorePath, memo) {
157
156
  return {
158
157
  param,
159
158
  db: await checker.getTypeFromTypeNode(dbArg),
160
- ddl: target.name in DDL_ALIASES,
159
+ ddl: target.name in ddlAliases,
161
160
  };
162
161
  })();
163
162
  memo.set(sym.id, found);
@@ -1 +1 @@
1
- {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/cache/discover.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/cache/discover.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { Node, SourceFile } from "typescript/ast";
2
2
  import type { API as AsyncAPI, Checker, Program, Type } from "typescript/async";
3
+ import type { CacheDialect } from "./dialect.js";
3
4
  import type { Kinds } from "./discover.js";
4
5
  export interface TypeScript {
5
6
  readonly API: typeof AsyncAPI;
@@ -9,7 +10,7 @@ export interface TypeScript {
9
10
  };
10
11
  }
11
12
  export declare function loadTypeScript(configFile: string): Promise<TypeScript>;
12
- export declare const PROBE_HEAD = "import type * as __T from \"@typesql/core/engine\";\nexport declare const __v: __T.CacheVersion;\nexport declare const __fc: __T.FunctionCatalog;\n";
13
+ export declare const probeHead: (dialect: CacheDialect) => string;
13
14
  export interface ProbeProgram {
14
15
  readonly program: Program;
15
16
  readonly checker: Checker;
@@ -35,11 +36,11 @@ export type Evaluated = {
35
36
  } | {
36
37
  readonly error: string;
37
38
  };
38
- export declare function evaluateTypes(session: ProbeSession, base: string, exprs: readonly string[], isCorePath: (path: string) => boolean): Promise<Evaluated[]>;
39
+ export declare function evaluateTypes(session: ProbeSession, base: string, exprs: readonly string[], isCorePath: (path: string) => boolean, dialect: CacheDialect): Promise<Evaluated[]>;
39
40
  export declare function evaluateAnalyses(session: ProbeSession, base: string, items: readonly {
40
41
  readonly db: string;
41
42
  readonly text: string;
42
- }[], isCorePath: (path: string) => boolean): Promise<Evaluated[]>;
43
+ }[], isCorePath: (path: string) => boolean, dialect: CacheDialect): Promise<Evaluated[]>;
43
44
  export declare function declarations(sf: SourceFile, kinds: TypeScript["kinds"]): Map<string, Node>;
44
45
  export declare function declTypes(checker: Checker, sf: SourceFile, kinds: TypeScript["kinds"]): Promise<Map<string, Type>>;
45
46
  export declare function badDeclarations(program: Program, sf: SourceFile): Promise<Map<string, string>>;
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/cache/evaluate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/cache/evaluate.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export async function loadTypeScript(configFile) {
25
25
  },
26
26
  };
27
27
  }
28
- export const PROBE_HEAD = `import type * as __T from "@typesql/core/engine";\nexport declare const __v: __T.CacheVersion;\nexport declare const __fc: __T.FunctionCatalog;\n`;
28
+ export const probeHead = (dialect) => `import type * as __T from ${JSON.stringify(dialect.engine)};\nexport declare const __v: __T.CacheVersion;\nexport declare const __fc: __T.FunctionCatalog;\n`;
29
29
  export class ProbeSession {
30
30
  ts;
31
31
  api;
@@ -89,7 +89,7 @@ export class ProbeSession {
89
89
  return { program: project.program, checker: project.checker, sf };
90
90
  }
91
91
  }
92
- export async function evaluateTypes(session, base, exprs, isCorePath) {
92
+ export async function evaluateTypes(session, base, exprs, isCorePath, dialect) {
93
93
  let probe = base;
94
94
  exprs.forEach((e, i) => {
95
95
  probe += `export declare const __x_${i}: ${e};\n`;
@@ -107,11 +107,11 @@ export async function evaluateTypes(session, base, exprs, isCorePath) {
107
107
  const t = types.get(name);
108
108
  if (!t)
109
109
  return { error: "no declaration" };
110
- return { text: coreNames(await printer.print(t)) };
110
+ return { text: coreNames(await printer.print(t), dialect.specifiers) };
111
111
  }));
112
112
  }
113
- export function evaluateAnalyses(session, base, items, isCorePath) {
114
- return evaluateTypes(session, base, items.map((a) => `__T.CacheAnalysis<${a.db}, ${JSON.stringify(a.text)}>`), isCorePath);
113
+ export function evaluateAnalyses(session, base, items, isCorePath, dialect) {
114
+ return evaluateTypes(session, base, items.map((a) => `__T.CacheAnalysis<${a.db}, ${JSON.stringify(a.text)}>`), isCorePath, dialect);
115
115
  }
116
116
  export function declarations(sf, kinds) {
117
117
  const out = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../src/cache/evaluate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../src/cache/evaluate.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
- export declare const FORMAT = 1;
1
+ import type { CacheDialect } from "./dialect.js";
2
+ export declare const FORMAT = 2;
2
3
  export interface CacheFile {
3
4
  readonly typesqlcache: typeof FORMAT;
5
+ readonly dialect: string;
4
6
  readonly engine: string;
5
7
  readonly groups: {
6
8
  readonly [group: string]: Group;
@@ -18,7 +20,7 @@ export interface CacheFile {
18
20
  export interface Snapshot {
19
21
  readonly t: string;
20
22
  readonly w: {
21
- readonly [word: string]: readonly [string, string, string, string];
23
+ readonly [word: string]: readonly string[];
22
24
  };
23
25
  readonly q: {
24
26
  readonly [pair: string]: string;
@@ -52,11 +54,11 @@ export interface DdlEntry {
52
54
  readonly x?: string;
53
55
  readonly e?: string;
54
56
  }
55
- export declare const emptyCache: (engine: string) => CacheFile;
57
+ export declare const emptyCache: (dialect: string, engine: string) => CacheFile;
56
58
  export declare function parseCache(text: string): CacheFile | null;
57
59
  export declare const stringifyCache: (file: CacheFile) => string;
58
60
  export declare const canonical: (v: unknown) => string;
59
61
  export declare const hash: (text: string, length?: number) => string;
60
- export declare function render(file: CacheFile | null, id: string, engine: string): string;
62
+ export declare function render(file: CacheFile | null, id: string, dialect: CacheDialect, engine: string): string;
61
63
  export declare const fileId: (fileName: string) => string;
62
64
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/cache/format.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,IAAI,CAAC;AAExB,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,MAAM,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAC;IACrD,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,QAAQ,CAAC,GAAG,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,QAAQ,EAAE,CAAA;KAAE,CAAC;IAC9D,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;CACjE;AAED,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE;QACX,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;KACnE,CAAC;IACF,QAAQ,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAChD;AAED,MAAM,WAAW,KAAM,SAAQ,QAAQ;IACtC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAC;CACpD;AAED,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,CAAC,EAAE,QAAQ,GAAG;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,QAAQ,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,UAAU,WAAY,MAAM,KAAG,SAO1C,CAAC;AAEH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAkBzD;AAaD,eAAO,MAAM,cAAc,SAAU,SAAS,KAAG,MACJ,CAAC;AAE9C,eAAO,MAAM,SAAS,MAAO,OAAO,KAAG,MAAmC,CAAC;AAE3E,eAAO,MAAM,IAAI,SAAU,MAAM,sBAAgB,MACgB,CAAC;AAclE,wBAAgB,MAAM,CACrB,IAAI,EAAE,SAAS,GAAG,IAAI,EACtB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,GACZ,MAAM,CA2DR;AAED,eAAO,MAAM,MAAM,aAAc,MAAM,KAAG,MAA2B,CAAC"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/cache/format.ts"],"names":[],"mappings":"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"}