drizzle-orm 1.0.0-beta.21 → 1.0.0-beta.21-af6b4cb

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 (1631) hide show
  1. package/_relations.cjs.map +1 -1
  2. package/_relations.d.cts +2 -13
  3. package/_relations.d.ts +2 -13
  4. package/_relations.js.map +1 -1
  5. package/alias.cjs +1 -1
  6. package/alias.js +1 -1
  7. package/aws-data-api/common/index.cjs +2 -0
  8. package/aws-data-api/common/index.cjs.map +1 -1
  9. package/aws-data-api/common/index.d.cts +1 -1
  10. package/aws-data-api/common/index.d.ts +1 -1
  11. package/aws-data-api/common/index.js +2 -0
  12. package/aws-data-api/common/index.js.map +1 -1
  13. package/aws-data-api/pg/driver.cjs +93 -20
  14. package/aws-data-api/pg/driver.cjs.map +1 -1
  15. package/aws-data-api/pg/driver.d.cts +17 -13
  16. package/aws-data-api/pg/driver.d.ts +17 -13
  17. package/aws-data-api/pg/driver.js +93 -20
  18. package/aws-data-api/pg/driver.js.map +1 -1
  19. package/aws-data-api/pg/index.cjs +1 -1
  20. package/aws-data-api/pg/index.d.cts +3 -3
  21. package/aws-data-api/pg/index.d.ts +3 -3
  22. package/aws-data-api/pg/index.js +3 -3
  23. package/aws-data-api/pg/migrator.cjs.map +1 -1
  24. package/aws-data-api/pg/migrator.d.cts +1 -1
  25. package/aws-data-api/pg/migrator.d.ts +1 -1
  26. package/aws-data-api/pg/migrator.js.map +1 -1
  27. package/aws-data-api/pg/session.cjs +44 -113
  28. package/aws-data-api/pg/session.cjs.map +1 -1
  29. package/aws-data-api/pg/session.d.cts +12 -42
  30. package/aws-data-api/pg/session.d.ts +13 -43
  31. package/aws-data-api/pg/session.js +46 -114
  32. package/aws-data-api/pg/session.js.map +1 -1
  33. package/better-sqlite3/driver.cjs +5 -2
  34. package/better-sqlite3/driver.cjs.map +1 -1
  35. package/better-sqlite3/driver.d.ts +1 -1
  36. package/better-sqlite3/driver.js +5 -2
  37. package/better-sqlite3/driver.js.map +1 -1
  38. package/better-sqlite3/session.cjs +16 -15
  39. package/better-sqlite3/session.cjs.map +1 -1
  40. package/better-sqlite3/session.d.cts +10 -6
  41. package/better-sqlite3/session.d.ts +11 -7
  42. package/better-sqlite3/session.js +17 -16
  43. package/better-sqlite3/session.js.map +1 -1
  44. package/bun-sql/driver.cjs.map +1 -1
  45. package/bun-sql/driver.d.cts +7 -6
  46. package/bun-sql/driver.d.ts +7 -6
  47. package/bun-sql/driver.js.map +1 -1
  48. package/bun-sql/index.cjs +0 -1
  49. package/bun-sql/index.d.cts +2 -2
  50. package/bun-sql/index.d.ts +2 -2
  51. package/bun-sql/index.js +2 -2
  52. package/bun-sql/migrator.cjs.map +1 -1
  53. package/bun-sql/migrator.d.cts +2 -2
  54. package/bun-sql/migrator.d.ts +2 -2
  55. package/bun-sql/migrator.js.map +1 -1
  56. package/bun-sql/mysql/driver.cjs +4 -3
  57. package/bun-sql/mysql/driver.cjs.map +1 -1
  58. package/bun-sql/mysql/driver.js +3 -2
  59. package/bun-sql/mysql/driver.js.map +1 -1
  60. package/bun-sql/mysql/session.cjs +37 -24
  61. package/bun-sql/mysql/session.cjs.map +1 -1
  62. package/bun-sql/mysql/session.d.cts +10 -4
  63. package/bun-sql/mysql/session.d.ts +12 -6
  64. package/bun-sql/mysql/session.js +38 -25
  65. package/bun-sql/mysql/session.js.map +1 -1
  66. package/bun-sql/postgres/driver.cjs +144 -20
  67. package/bun-sql/postgres/driver.cjs.map +1 -1
  68. package/bun-sql/postgres/driver.d.cts +10 -6
  69. package/bun-sql/postgres/driver.d.ts +11 -7
  70. package/bun-sql/postgres/driver.js +144 -20
  71. package/bun-sql/postgres/driver.js.map +1 -1
  72. package/bun-sql/postgres/index.cjs +1 -1
  73. package/bun-sql/postgres/index.d.cts +3 -3
  74. package/bun-sql/postgres/index.d.ts +3 -3
  75. package/bun-sql/postgres/index.js +3 -3
  76. package/bun-sql/postgres/migrator.cjs.map +1 -1
  77. package/bun-sql/postgres/migrator.d.cts +1 -1
  78. package/bun-sql/postgres/migrator.d.ts +1 -1
  79. package/bun-sql/postgres/migrator.js.map +1 -1
  80. package/bun-sql/postgres/session.cjs +17 -112
  81. package/bun-sql/postgres/session.cjs.map +1 -1
  82. package/bun-sql/postgres/session.d.cts +11 -33
  83. package/bun-sql/postgres/session.d.ts +12 -34
  84. package/bun-sql/postgres/session.js +18 -112
  85. package/bun-sql/postgres/session.js.map +1 -1
  86. package/bun-sql/session.cjs +0 -1
  87. package/bun-sql/session.d.cts +2 -2
  88. package/bun-sql/session.d.ts +2 -2
  89. package/bun-sql/session.js +2 -2
  90. package/bun-sql/sqlite/driver.cjs +4 -3
  91. package/bun-sql/sqlite/driver.cjs.map +1 -1
  92. package/bun-sql/sqlite/driver.d.ts +1 -1
  93. package/bun-sql/sqlite/driver.js +3 -2
  94. package/bun-sql/sqlite/driver.js.map +1 -1
  95. package/bun-sql/sqlite/session.cjs +18 -17
  96. package/bun-sql/sqlite/session.cjs.map +1 -1
  97. package/bun-sql/sqlite/session.d.cts +9 -6
  98. package/bun-sql/sqlite/session.d.ts +10 -7
  99. package/bun-sql/sqlite/session.js +19 -18
  100. package/bun-sql/sqlite/session.js.map +1 -1
  101. package/bun-sqlite/driver.cjs +5 -2
  102. package/bun-sqlite/driver.cjs.map +1 -1
  103. package/bun-sqlite/driver.d.ts +1 -1
  104. package/bun-sqlite/driver.js +5 -2
  105. package/bun-sqlite/driver.js.map +1 -1
  106. package/bun-sqlite/session.cjs +15 -14
  107. package/bun-sqlite/session.cjs.map +1 -1
  108. package/bun-sqlite/session.d.cts +10 -6
  109. package/bun-sqlite/session.d.ts +10 -6
  110. package/bun-sqlite/session.js +16 -15
  111. package/bun-sqlite/session.js.map +1 -1
  112. package/cache/core/cache-effect.cjs +2 -2
  113. package/cache/core/cache-effect.d.ts +1 -1
  114. package/cache/core/cache-effect.js +1 -1
  115. package/cockroach/driver.cjs +10 -4
  116. package/cockroach/driver.cjs.map +1 -1
  117. package/cockroach/driver.d.cts +1 -0
  118. package/cockroach/driver.d.ts +3 -2
  119. package/cockroach/driver.js +10 -4
  120. package/cockroach/driver.js.map +1 -1
  121. package/cockroach/session.cjs +7 -9
  122. package/cockroach/session.cjs.map +1 -1
  123. package/cockroach/session.d.cts +5 -3
  124. package/cockroach/session.d.ts +7 -5
  125. package/cockroach/session.js +8 -10
  126. package/cockroach/session.js.map +1 -1
  127. package/cockroach-core/columns/bigint.cjs +4 -4
  128. package/cockroach-core/columns/bigint.cjs.map +1 -1
  129. package/cockroach-core/columns/bigint.d.cts +2 -2
  130. package/cockroach-core/columns/bigint.d.ts +2 -2
  131. package/cockroach-core/columns/bigint.js +4 -4
  132. package/cockroach-core/columns/bigint.js.map +1 -1
  133. package/cockroach-core/columns/common.cjs +5 -5
  134. package/cockroach-core/columns/common.cjs.map +1 -1
  135. package/cockroach-core/columns/common.d.cts +2 -2
  136. package/cockroach-core/columns/common.d.ts +3 -3
  137. package/cockroach-core/columns/common.js +5 -5
  138. package/cockroach-core/columns/common.js.map +1 -1
  139. package/cockroach-core/columns/custom.cjs +4 -4
  140. package/cockroach-core/columns/custom.cjs.map +1 -1
  141. package/cockroach-core/columns/custom.d.cts +2 -2
  142. package/cockroach-core/columns/custom.d.ts +2 -2
  143. package/cockroach-core/columns/custom.js +4 -4
  144. package/cockroach-core/columns/custom.js.map +1 -1
  145. package/cockroach-core/columns/date.cjs +6 -6
  146. package/cockroach-core/columns/date.cjs.map +1 -1
  147. package/cockroach-core/columns/date.d.cts +3 -3
  148. package/cockroach-core/columns/date.d.ts +3 -3
  149. package/cockroach-core/columns/date.js +6 -6
  150. package/cockroach-core/columns/date.js.map +1 -1
  151. package/cockroach-core/columns/decimal.cjs +4 -4
  152. package/cockroach-core/columns/decimal.cjs.map +1 -1
  153. package/cockroach-core/columns/decimal.d.cts +2 -2
  154. package/cockroach-core/columns/decimal.d.ts +2 -2
  155. package/cockroach-core/columns/decimal.js +4 -4
  156. package/cockroach-core/columns/decimal.js.map +1 -1
  157. package/cockroach-core/columns/float.cjs +2 -2
  158. package/cockroach-core/columns/float.cjs.map +1 -1
  159. package/cockroach-core/columns/float.d.cts +1 -1
  160. package/cockroach-core/columns/float.d.ts +1 -1
  161. package/cockroach-core/columns/float.js +2 -2
  162. package/cockroach-core/columns/float.js.map +1 -1
  163. package/cockroach-core/columns/geometry.cjs +8 -8
  164. package/cockroach-core/columns/geometry.cjs.map +1 -1
  165. package/cockroach-core/columns/geometry.d.cts +5 -5
  166. package/cockroach-core/columns/geometry.d.ts +5 -5
  167. package/cockroach-core/columns/geometry.js +8 -8
  168. package/cockroach-core/columns/geometry.js.map +1 -1
  169. package/cockroach-core/columns/integer.cjs +2 -2
  170. package/cockroach-core/columns/integer.cjs.map +1 -1
  171. package/cockroach-core/columns/integer.d.cts +1 -1
  172. package/cockroach-core/columns/integer.d.ts +1 -1
  173. package/cockroach-core/columns/integer.js +2 -2
  174. package/cockroach-core/columns/integer.js.map +1 -1
  175. package/cockroach-core/columns/jsonb.cjs +4 -4
  176. package/cockroach-core/columns/jsonb.cjs.map +1 -1
  177. package/cockroach-core/columns/jsonb.d.cts +2 -2
  178. package/cockroach-core/columns/jsonb.d.ts +2 -2
  179. package/cockroach-core/columns/jsonb.js +4 -4
  180. package/cockroach-core/columns/jsonb.js.map +1 -1
  181. package/cockroach-core/columns/vector.cjs +4 -4
  182. package/cockroach-core/columns/vector.cjs.map +1 -1
  183. package/cockroach-core/columns/vector.d.cts +2 -2
  184. package/cockroach-core/columns/vector.d.ts +2 -2
  185. package/cockroach-core/columns/vector.js +4 -4
  186. package/cockroach-core/columns/vector.js.map +1 -1
  187. package/cockroach-core/db.cjs +1 -1
  188. package/cockroach-core/db.cjs.map +1 -1
  189. package/cockroach-core/db.d.ts +2 -2
  190. package/cockroach-core/db.js +1 -1
  191. package/cockroach-core/db.js.map +1 -1
  192. package/cockroach-core/dialect.cjs +2 -2
  193. package/cockroach-core/dialect.d.ts +2 -2
  194. package/cockroach-core/dialect.js +2 -2
  195. package/cockroach-core/index.cjs +14 -14
  196. package/cockroach-core/index.js +14 -14
  197. package/cockroach-core/query-builders/delete.cjs +1 -1
  198. package/cockroach-core/query-builders/delete.cjs.map +1 -1
  199. package/cockroach-core/query-builders/delete.d.cts +1 -1
  200. package/cockroach-core/query-builders/delete.d.ts +2 -2
  201. package/cockroach-core/query-builders/delete.js +1 -1
  202. package/cockroach-core/query-builders/delete.js.map +1 -1
  203. package/cockroach-core/query-builders/index.cjs +2 -2
  204. package/cockroach-core/query-builders/index.js +2 -2
  205. package/cockroach-core/query-builders/insert.cjs +1 -1
  206. package/cockroach-core/query-builders/insert.cjs.map +1 -1
  207. package/cockroach-core/query-builders/insert.d.ts +1 -1
  208. package/cockroach-core/query-builders/insert.js +1 -1
  209. package/cockroach-core/query-builders/insert.js.map +1 -1
  210. package/cockroach-core/query-builders/query.cjs +1 -1
  211. package/cockroach-core/query-builders/query.cjs.map +1 -1
  212. package/cockroach-core/query-builders/query.js +1 -1
  213. package/cockroach-core/query-builders/query.js.map +1 -1
  214. package/cockroach-core/query-builders/raw.cjs +0 -4
  215. package/cockroach-core/query-builders/raw.cjs.map +1 -1
  216. package/cockroach-core/query-builders/raw.js +0 -4
  217. package/cockroach-core/query-builders/raw.js.map +1 -1
  218. package/cockroach-core/query-builders/refresh-materialized-view.cjs +1 -1
  219. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +1 -1
  220. package/cockroach-core/query-builders/refresh-materialized-view.js +1 -1
  221. package/cockroach-core/query-builders/refresh-materialized-view.js.map +1 -1
  222. package/cockroach-core/query-builders/select.cjs +2 -2
  223. package/cockroach-core/query-builders/select.cjs.map +1 -1
  224. package/cockroach-core/query-builders/select.d.ts +3 -3
  225. package/cockroach-core/query-builders/select.js +2 -2
  226. package/cockroach-core/query-builders/select.js.map +1 -1
  227. package/cockroach-core/query-builders/select.types.d.ts +1 -1
  228. package/cockroach-core/query-builders/update.cjs +2 -2
  229. package/cockroach-core/query-builders/update.cjs.map +1 -1
  230. package/cockroach-core/query-builders/update.d.ts +1 -1
  231. package/cockroach-core/query-builders/update.js +2 -2
  232. package/cockroach-core/query-builders/update.js.map +1 -1
  233. package/cockroach-core/schema.cjs +1 -1
  234. package/cockroach-core/schema.js +1 -1
  235. package/cockroach-core/session.cjs +2 -2
  236. package/cockroach-core/session.cjs.map +1 -1
  237. package/cockroach-core/session.d.cts +1 -1
  238. package/cockroach-core/session.d.ts +1 -1
  239. package/cockroach-core/session.js +2 -2
  240. package/cockroach-core/session.js.map +1 -1
  241. package/cockroach-core/table.cjs +1 -1
  242. package/cockroach-core/table.cjs.map +1 -1
  243. package/cockroach-core/table.js +1 -1
  244. package/cockroach-core/table.js.map +1 -1
  245. package/cockroach-core/utils.cjs +3 -3
  246. package/cockroach-core/utils.js +3 -3
  247. package/cockroach-core/view.cjs +1 -1
  248. package/cockroach-core/view.js +1 -1
  249. package/codecs.cjs +77 -0
  250. package/codecs.cjs.map +1 -0
  251. package/codecs.d.cts +68 -0
  252. package/codecs.d.ts +68 -0
  253. package/codecs.js +74 -0
  254. package/codecs.js.map +1 -0
  255. package/column.cjs +10 -5
  256. package/column.cjs.map +1 -1
  257. package/column.d.cts +3 -3
  258. package/column.d.ts +3 -3
  259. package/column.js +10 -5
  260. package/column.js.map +1 -1
  261. package/d1/driver.cjs +3 -2
  262. package/d1/driver.cjs.map +1 -1
  263. package/d1/driver.d.ts +1 -1
  264. package/d1/driver.js +3 -2
  265. package/d1/driver.js.map +1 -1
  266. package/d1/session.cjs +17 -15
  267. package/d1/session.cjs.map +1 -1
  268. package/d1/session.d.cts +9 -6
  269. package/d1/session.d.ts +10 -7
  270. package/d1/session.js +18 -16
  271. package/d1/session.js.map +1 -1
  272. package/durable-sqlite/driver.cjs +5 -2
  273. package/durable-sqlite/driver.cjs.map +1 -1
  274. package/durable-sqlite/driver.d.ts +1 -1
  275. package/durable-sqlite/driver.js +5 -2
  276. package/durable-sqlite/driver.js.map +1 -1
  277. package/durable-sqlite/migrator.cjs +1 -1
  278. package/durable-sqlite/migrator.js +1 -1
  279. package/durable-sqlite/session.cjs +15 -14
  280. package/durable-sqlite/session.cjs.map +1 -1
  281. package/durable-sqlite/session.d.cts +10 -6
  282. package/durable-sqlite/session.d.ts +10 -6
  283. package/durable-sqlite/session.js +16 -15
  284. package/durable-sqlite/session.js.map +1 -1
  285. package/effect-core/index.cjs +1 -1
  286. package/effect-core/index.js +1 -1
  287. package/effect-postgres/driver.cjs +100 -14
  288. package/effect-postgres/driver.cjs.map +1 -1
  289. package/effect-postgres/driver.d.cts +12 -8
  290. package/effect-postgres/driver.d.ts +14 -10
  291. package/effect-postgres/driver.js +100 -14
  292. package/effect-postgres/driver.js.map +1 -1
  293. package/effect-postgres/index.cjs +1 -1
  294. package/effect-postgres/index.d.cts +3 -3
  295. package/effect-postgres/index.d.ts +3 -3
  296. package/effect-postgres/index.js +3 -3
  297. package/effect-postgres/migrator.cjs.map +1 -1
  298. package/effect-postgres/migrator.d.cts +1 -1
  299. package/effect-postgres/migrator.d.ts +2 -2
  300. package/effect-postgres/migrator.js.map +1 -1
  301. package/effect-postgres/session.cjs +12 -71
  302. package/effect-postgres/session.cjs.map +1 -1
  303. package/effect-postgres/session.d.cts +14 -31
  304. package/effect-postgres/session.d.ts +17 -34
  305. package/effect-postgres/session.js +13 -71
  306. package/effect-postgres/session.js.map +1 -1
  307. package/effect-schema/column.cjs +1 -1
  308. package/effect-schema/column.d.ts +8 -8
  309. package/effect-schema/column.js +1 -1
  310. package/effect-schema/column.types.d.ts +14 -14
  311. package/effect-schema/schema.types.internal.d.ts +7 -7
  312. package/expo-sqlite/driver.cjs +5 -2
  313. package/expo-sqlite/driver.cjs.map +1 -1
  314. package/expo-sqlite/driver.d.ts +1 -1
  315. package/expo-sqlite/driver.js +5 -2
  316. package/expo-sqlite/driver.js.map +1 -1
  317. package/expo-sqlite/session.cjs +15 -14
  318. package/expo-sqlite/session.cjs.map +1 -1
  319. package/expo-sqlite/session.d.cts +10 -6
  320. package/expo-sqlite/session.d.ts +10 -6
  321. package/expo-sqlite/session.js +16 -15
  322. package/expo-sqlite/session.js.map +1 -1
  323. package/gel/driver.cjs +5 -3
  324. package/gel/driver.cjs.map +1 -1
  325. package/gel/driver.d.cts +1 -0
  326. package/gel/driver.d.ts +5 -4
  327. package/gel/driver.js +5 -3
  328. package/gel/driver.js.map +1 -1
  329. package/gel/session.cjs +13 -13
  330. package/gel/session.cjs.map +1 -1
  331. package/gel/session.d.cts +8 -5
  332. package/gel/session.d.ts +12 -9
  333. package/gel/session.js +14 -14
  334. package/gel/session.js.map +1 -1
  335. package/gel-core/columns/bigintT.cjs +2 -2
  336. package/gel-core/columns/bigintT.cjs.map +1 -1
  337. package/gel-core/columns/bigintT.d.cts +1 -1
  338. package/gel-core/columns/bigintT.d.ts +1 -1
  339. package/gel-core/columns/bigintT.js +2 -2
  340. package/gel-core/columns/bigintT.js.map +1 -1
  341. package/gel-core/columns/common.cjs +3 -3
  342. package/gel-core/columns/common.cjs.map +1 -1
  343. package/gel-core/columns/common.d.cts +1 -1
  344. package/gel-core/columns/common.d.ts +1 -1
  345. package/gel-core/columns/common.js +3 -3
  346. package/gel-core/columns/common.js.map +1 -1
  347. package/gel-core/columns/custom.cjs +4 -4
  348. package/gel-core/columns/custom.cjs.map +1 -1
  349. package/gel-core/columns/custom.d.cts +2 -2
  350. package/gel-core/columns/custom.d.ts +2 -2
  351. package/gel-core/columns/custom.js +4 -4
  352. package/gel-core/columns/custom.js.map +1 -1
  353. package/gel-core/columns/double-precision.cjs +2 -2
  354. package/gel-core/columns/double-precision.cjs.map +1 -1
  355. package/gel-core/columns/double-precision.d.cts +1 -1
  356. package/gel-core/columns/double-precision.d.ts +1 -1
  357. package/gel-core/columns/double-precision.js +2 -2
  358. package/gel-core/columns/double-precision.js.map +1 -1
  359. package/gel-core/columns/timestamp.d.ts +1 -1
  360. package/gel-core/columns/timestamptz.cjs +2 -2
  361. package/gel-core/columns/timestamptz.cjs.map +1 -1
  362. package/gel-core/columns/timestamptz.d.cts +1 -1
  363. package/gel-core/columns/timestamptz.d.ts +1 -1
  364. package/gel-core/columns/timestamptz.js +2 -2
  365. package/gel-core/columns/timestamptz.js.map +1 -1
  366. package/gel-core/db.cjs +1 -1
  367. package/gel-core/db.cjs.map +1 -1
  368. package/gel-core/db.d.ts +3 -3
  369. package/gel-core/db.js +1 -1
  370. package/gel-core/db.js.map +1 -1
  371. package/gel-core/index.cjs +13 -13
  372. package/gel-core/index.js +13 -13
  373. package/gel-core/query-builders/_query.cjs +1 -1
  374. package/gel-core/query-builders/_query.cjs.map +1 -1
  375. package/gel-core/query-builders/_query.js +1 -1
  376. package/gel-core/query-builders/_query.js.map +1 -1
  377. package/gel-core/query-builders/delete.cjs +1 -1
  378. package/gel-core/query-builders/delete.cjs.map +1 -1
  379. package/gel-core/query-builders/delete.d.ts +2 -2
  380. package/gel-core/query-builders/delete.js +1 -1
  381. package/gel-core/query-builders/delete.js.map +1 -1
  382. package/gel-core/query-builders/index.cjs +1 -1
  383. package/gel-core/query-builders/index.js +1 -1
  384. package/gel-core/query-builders/insert.cjs +1 -1
  385. package/gel-core/query-builders/insert.cjs.map +1 -1
  386. package/gel-core/query-builders/insert.d.ts +2 -2
  387. package/gel-core/query-builders/insert.js +1 -1
  388. package/gel-core/query-builders/insert.js.map +1 -1
  389. package/gel-core/query-builders/query.cjs +13 -5
  390. package/gel-core/query-builders/query.cjs.map +1 -1
  391. package/gel-core/query-builders/query.d.ts +1 -1
  392. package/gel-core/query-builders/query.js +13 -5
  393. package/gel-core/query-builders/query.js.map +1 -1
  394. package/gel-core/query-builders/raw.cjs +0 -4
  395. package/gel-core/query-builders/raw.cjs.map +1 -1
  396. package/gel-core/query-builders/raw.js +0 -4
  397. package/gel-core/query-builders/raw.js.map +1 -1
  398. package/gel-core/query-builders/refresh-materialized-view.cjs +1 -1
  399. package/gel-core/query-builders/refresh-materialized-view.cjs.map +1 -1
  400. package/gel-core/query-builders/refresh-materialized-view.d.ts +1 -1
  401. package/gel-core/query-builders/refresh-materialized-view.js +1 -1
  402. package/gel-core/query-builders/refresh-materialized-view.js.map +1 -1
  403. package/gel-core/query-builders/select.cjs +1 -1
  404. package/gel-core/query-builders/select.cjs.map +1 -1
  405. package/gel-core/query-builders/select.d.ts +3 -3
  406. package/gel-core/query-builders/select.js +1 -1
  407. package/gel-core/query-builders/select.js.map +1 -1
  408. package/gel-core/query-builders/select.types.d.ts +1 -1
  409. package/gel-core/query-builders/update.cjs +1 -1
  410. package/gel-core/query-builders/update.cjs.map +1 -1
  411. package/gel-core/query-builders/update.d.ts +2 -2
  412. package/gel-core/query-builders/update.js +1 -1
  413. package/gel-core/query-builders/update.js.map +1 -1
  414. package/gel-core/session.cjs +2 -2
  415. package/gel-core/session.cjs.map +1 -1
  416. package/gel-core/session.d.cts +3 -3
  417. package/gel-core/session.d.ts +3 -3
  418. package/gel-core/session.js +2 -2
  419. package/gel-core/session.js.map +1 -1
  420. package/gel-core/table.cjs +1 -1
  421. package/gel-core/table.cjs.map +1 -1
  422. package/gel-core/table.js +1 -1
  423. package/gel-core/table.js.map +1 -1
  424. package/gel-core/utils.cjs +4 -4
  425. package/gel-core/utils.js +4 -4
  426. package/gel-core/view.cjs +1 -1
  427. package/gel-core/view.js +1 -1
  428. package/index.cjs +12 -6
  429. package/index.d.cts +6 -6
  430. package/index.d.ts +6 -6
  431. package/index.js +9 -9
  432. package/libsql/driver-core.cjs +3 -2
  433. package/libsql/driver-core.cjs.map +1 -1
  434. package/libsql/driver-core.d.ts +1 -1
  435. package/libsql/driver-core.js +3 -2
  436. package/libsql/driver-core.js.map +1 -1
  437. package/libsql/session.cjs +14 -15
  438. package/libsql/session.cjs.map +1 -1
  439. package/libsql/session.d.cts +9 -6
  440. package/libsql/session.d.ts +10 -7
  441. package/libsql/session.js +15 -16
  442. package/libsql/session.js.map +1 -1
  443. package/mssql-core/columns/bigint.cjs +2 -2
  444. package/mssql-core/columns/bigint.cjs.map +1 -1
  445. package/mssql-core/columns/bigint.d.cts +1 -1
  446. package/mssql-core/columns/bigint.d.ts +1 -1
  447. package/mssql-core/columns/bigint.js +2 -2
  448. package/mssql-core/columns/bigint.js.map +1 -1
  449. package/mssql-core/columns/custom.cjs +4 -4
  450. package/mssql-core/columns/custom.cjs.map +1 -1
  451. package/mssql-core/columns/custom.d.cts +2 -2
  452. package/mssql-core/columns/custom.d.ts +2 -2
  453. package/mssql-core/columns/custom.js +4 -4
  454. package/mssql-core/columns/custom.js.map +1 -1
  455. package/mssql-core/columns/date.cjs +4 -4
  456. package/mssql-core/columns/date.cjs.map +1 -1
  457. package/mssql-core/columns/date.d.cts +2 -2
  458. package/mssql-core/columns/date.d.ts +2 -2
  459. package/mssql-core/columns/date.js +4 -4
  460. package/mssql-core/columns/date.js.map +1 -1
  461. package/mssql-core/columns/datetime.cjs +2 -2
  462. package/mssql-core/columns/datetime.cjs.map +1 -1
  463. package/mssql-core/columns/datetime.d.cts +1 -1
  464. package/mssql-core/columns/datetime.d.ts +1 -1
  465. package/mssql-core/columns/datetime.js +2 -2
  466. package/mssql-core/columns/datetime.js.map +1 -1
  467. package/mssql-core/columns/datetime2.cjs +2 -2
  468. package/mssql-core/columns/datetime2.cjs.map +1 -1
  469. package/mssql-core/columns/datetime2.d.cts +1 -1
  470. package/mssql-core/columns/datetime2.d.ts +1 -1
  471. package/mssql-core/columns/datetime2.js +2 -2
  472. package/mssql-core/columns/datetime2.js.map +1 -1
  473. package/mssql-core/columns/datetimeoffset.cjs +2 -2
  474. package/mssql-core/columns/datetimeoffset.cjs.map +1 -1
  475. package/mssql-core/columns/datetimeoffset.d.cts +1 -1
  476. package/mssql-core/columns/datetimeoffset.d.ts +1 -1
  477. package/mssql-core/columns/datetimeoffset.js +2 -2
  478. package/mssql-core/columns/datetimeoffset.js.map +1 -1
  479. package/mssql-core/columns/decimal.cjs +4 -4
  480. package/mssql-core/columns/decimal.cjs.map +1 -1
  481. package/mssql-core/columns/decimal.d.cts +2 -2
  482. package/mssql-core/columns/decimal.d.ts +2 -2
  483. package/mssql-core/columns/decimal.js +4 -4
  484. package/mssql-core/columns/decimal.js.map +1 -1
  485. package/mssql-core/columns/numeric.cjs +4 -4
  486. package/mssql-core/columns/numeric.cjs.map +1 -1
  487. package/mssql-core/columns/numeric.d.cts +2 -2
  488. package/mssql-core/columns/numeric.d.ts +2 -2
  489. package/mssql-core/columns/numeric.js +4 -4
  490. package/mssql-core/columns/numeric.js.map +1 -1
  491. package/mssql-core/columns/smallint.cjs +2 -2
  492. package/mssql-core/columns/smallint.cjs.map +1 -1
  493. package/mssql-core/columns/smallint.d.cts +1 -1
  494. package/mssql-core/columns/smallint.d.ts +1 -1
  495. package/mssql-core/columns/smallint.js +2 -2
  496. package/mssql-core/columns/smallint.js.map +1 -1
  497. package/mssql-core/columns/time.cjs +2 -2
  498. package/mssql-core/columns/time.cjs.map +1 -1
  499. package/mssql-core/columns/time.d.cts +1 -1
  500. package/mssql-core/columns/time.d.ts +1 -1
  501. package/mssql-core/columns/time.js +2 -2
  502. package/mssql-core/columns/time.js.map +1 -1
  503. package/mssql-core/columns/tinyint.cjs +2 -2
  504. package/mssql-core/columns/tinyint.cjs.map +1 -1
  505. package/mssql-core/columns/tinyint.d.cts +1 -1
  506. package/mssql-core/columns/tinyint.d.ts +1 -1
  507. package/mssql-core/columns/tinyint.js +2 -2
  508. package/mssql-core/columns/tinyint.js.map +1 -1
  509. package/mssql-core/columns/varchar.cjs +4 -4
  510. package/mssql-core/columns/varchar.cjs.map +1 -1
  511. package/mssql-core/columns/varchar.d.cts +2 -2
  512. package/mssql-core/columns/varchar.d.ts +2 -2
  513. package/mssql-core/columns/varchar.js +4 -4
  514. package/mssql-core/columns/varchar.js.map +1 -1
  515. package/mssql-core/dialect.cjs +2 -2
  516. package/mssql-core/dialect.d.ts +1 -1
  517. package/mssql-core/dialect.js +2 -2
  518. package/mssql-core/index.cjs +13 -13
  519. package/mssql-core/index.js +13 -13
  520. package/mssql-core/query-builders/delete.d.ts +1 -1
  521. package/mssql-core/query-builders/insert.d.ts +1 -1
  522. package/mssql-core/query-builders/select.d.ts +1 -1
  523. package/mssql-core/query-builders/update.d.ts +2 -2
  524. package/mssql-core/table.cjs +1 -1
  525. package/mssql-core/table.cjs.map +1 -1
  526. package/mssql-core/table.js +1 -1
  527. package/mssql-core/table.js.map +1 -1
  528. package/mssql-core/utils.cjs +3 -3
  529. package/mssql-core/utils.js +3 -3
  530. package/mssql-core/view.cjs +2 -2
  531. package/mssql-core/view.js +2 -2
  532. package/mysql-core/columns/bigint.cjs +8 -8
  533. package/mysql-core/columns/bigint.cjs.map +1 -1
  534. package/mysql-core/columns/bigint.d.cts +4 -4
  535. package/mysql-core/columns/bigint.d.ts +4 -4
  536. package/mysql-core/columns/bigint.js +8 -8
  537. package/mysql-core/columns/bigint.js.map +1 -1
  538. package/mysql-core/columns/binary.cjs +2 -2
  539. package/mysql-core/columns/binary.cjs.map +1 -1
  540. package/mysql-core/columns/binary.d.cts +1 -1
  541. package/mysql-core/columns/binary.d.ts +1 -1
  542. package/mysql-core/columns/binary.js +2 -2
  543. package/mysql-core/columns/binary.js.map +1 -1
  544. package/mysql-core/columns/blob.cjs +4 -4
  545. package/mysql-core/columns/blob.cjs.map +1 -1
  546. package/mysql-core/columns/blob.d.cts +2 -2
  547. package/mysql-core/columns/blob.d.ts +2 -2
  548. package/mysql-core/columns/blob.js +4 -4
  549. package/mysql-core/columns/blob.js.map +1 -1
  550. package/mysql-core/columns/boolean.cjs +2 -2
  551. package/mysql-core/columns/boolean.cjs.map +1 -1
  552. package/mysql-core/columns/boolean.d.cts +1 -1
  553. package/mysql-core/columns/boolean.d.ts +1 -1
  554. package/mysql-core/columns/boolean.js +2 -2
  555. package/mysql-core/columns/boolean.js.map +1 -1
  556. package/mysql-core/columns/custom.cjs +4 -4
  557. package/mysql-core/columns/custom.cjs.map +1 -1
  558. package/mysql-core/columns/custom.d.cts +2 -2
  559. package/mysql-core/columns/custom.d.ts +2 -2
  560. package/mysql-core/columns/custom.js +4 -4
  561. package/mysql-core/columns/custom.js.map +1 -1
  562. package/mysql-core/columns/date.cjs +4 -4
  563. package/mysql-core/columns/date.cjs.map +1 -1
  564. package/mysql-core/columns/date.d.cts +2 -2
  565. package/mysql-core/columns/date.d.ts +2 -2
  566. package/mysql-core/columns/date.js +4 -4
  567. package/mysql-core/columns/date.js.map +1 -1
  568. package/mysql-core/columns/datetime.cjs +8 -8
  569. package/mysql-core/columns/datetime.cjs.map +1 -1
  570. package/mysql-core/columns/datetime.d.cts +4 -4
  571. package/mysql-core/columns/datetime.d.ts +4 -4
  572. package/mysql-core/columns/datetime.js +8 -8
  573. package/mysql-core/columns/datetime.js.map +1 -1
  574. package/mysql-core/columns/decimal.cjs +4 -4
  575. package/mysql-core/columns/decimal.cjs.map +1 -1
  576. package/mysql-core/columns/decimal.d.cts +2 -2
  577. package/mysql-core/columns/decimal.d.ts +2 -2
  578. package/mysql-core/columns/decimal.js +4 -4
  579. package/mysql-core/columns/decimal.js.map +1 -1
  580. package/mysql-core/columns/float.cjs +2 -2
  581. package/mysql-core/columns/float.cjs.map +1 -1
  582. package/mysql-core/columns/float.d.cts +1 -1
  583. package/mysql-core/columns/float.d.ts +1 -1
  584. package/mysql-core/columns/float.js +2 -2
  585. package/mysql-core/columns/float.js.map +1 -1
  586. package/mysql-core/columns/int.cjs +2 -2
  587. package/mysql-core/columns/int.cjs.map +1 -1
  588. package/mysql-core/columns/int.d.cts +1 -1
  589. package/mysql-core/columns/int.d.ts +1 -1
  590. package/mysql-core/columns/int.js +2 -2
  591. package/mysql-core/columns/int.js.map +1 -1
  592. package/mysql-core/columns/json.cjs +2 -2
  593. package/mysql-core/columns/json.cjs.map +1 -1
  594. package/mysql-core/columns/json.d.cts +1 -1
  595. package/mysql-core/columns/json.d.ts +1 -1
  596. package/mysql-core/columns/json.js +2 -2
  597. package/mysql-core/columns/json.js.map +1 -1
  598. package/mysql-core/columns/mediumint.cjs +2 -2
  599. package/mysql-core/columns/mediumint.cjs.map +1 -1
  600. package/mysql-core/columns/mediumint.d.cts +1 -1
  601. package/mysql-core/columns/mediumint.d.ts +1 -1
  602. package/mysql-core/columns/mediumint.js +2 -2
  603. package/mysql-core/columns/mediumint.js.map +1 -1
  604. package/mysql-core/columns/serial.cjs +2 -2
  605. package/mysql-core/columns/serial.cjs.map +1 -1
  606. package/mysql-core/columns/serial.d.cts +1 -1
  607. package/mysql-core/columns/serial.d.ts +1 -1
  608. package/mysql-core/columns/serial.js +2 -2
  609. package/mysql-core/columns/serial.js.map +1 -1
  610. package/mysql-core/columns/smallint.cjs +2 -2
  611. package/mysql-core/columns/smallint.cjs.map +1 -1
  612. package/mysql-core/columns/smallint.d.cts +1 -1
  613. package/mysql-core/columns/smallint.d.ts +1 -1
  614. package/mysql-core/columns/smallint.js +2 -2
  615. package/mysql-core/columns/smallint.js.map +1 -1
  616. package/mysql-core/columns/time.cjs +2 -2
  617. package/mysql-core/columns/time.cjs.map +1 -1
  618. package/mysql-core/columns/time.d.cts +1 -1
  619. package/mysql-core/columns/time.d.ts +1 -1
  620. package/mysql-core/columns/time.js +2 -2
  621. package/mysql-core/columns/time.js.map +1 -1
  622. package/mysql-core/columns/timestamp.cjs +8 -8
  623. package/mysql-core/columns/timestamp.cjs.map +1 -1
  624. package/mysql-core/columns/timestamp.d.cts +4 -4
  625. package/mysql-core/columns/timestamp.d.ts +4 -4
  626. package/mysql-core/columns/timestamp.js +8 -8
  627. package/mysql-core/columns/timestamp.js.map +1 -1
  628. package/mysql-core/columns/tinyint.cjs +2 -2
  629. package/mysql-core/columns/tinyint.cjs.map +1 -1
  630. package/mysql-core/columns/tinyint.d.cts +1 -1
  631. package/mysql-core/columns/tinyint.d.ts +1 -1
  632. package/mysql-core/columns/tinyint.js +2 -2
  633. package/mysql-core/columns/tinyint.js.map +1 -1
  634. package/mysql-core/columns/varbinary.cjs +2 -2
  635. package/mysql-core/columns/varbinary.cjs.map +1 -1
  636. package/mysql-core/columns/varbinary.d.cts +1 -1
  637. package/mysql-core/columns/varbinary.d.ts +1 -1
  638. package/mysql-core/columns/varbinary.js +2 -2
  639. package/mysql-core/columns/varbinary.js.map +1 -1
  640. package/mysql-core/columns/year.cjs +2 -2
  641. package/mysql-core/columns/year.cjs.map +1 -1
  642. package/mysql-core/columns/year.d.cts +1 -1
  643. package/mysql-core/columns/year.d.ts +1 -1
  644. package/mysql-core/columns/year.js +2 -2
  645. package/mysql-core/columns/year.js.map +1 -1
  646. package/mysql-core/db.d.ts +2 -2
  647. package/mysql-core/dialect.cjs +2 -2
  648. package/mysql-core/dialect.d.ts +1 -1
  649. package/mysql-core/dialect.js +2 -2
  650. package/mysql-core/index.cjs +1 -1
  651. package/mysql-core/index.js +1 -1
  652. package/mysql-core/query-builders/query.cjs +13 -5
  653. package/mysql-core/query-builders/query.cjs.map +1 -1
  654. package/mysql-core/query-builders/query.d.ts +1 -1
  655. package/mysql-core/query-builders/query.js +13 -5
  656. package/mysql-core/query-builders/query.js.map +1 -1
  657. package/mysql-core/session.cjs +1 -2
  658. package/mysql-core/session.cjs.map +1 -1
  659. package/mysql-core/session.d.cts +3 -4
  660. package/mysql-core/session.d.ts +3 -4
  661. package/mysql-core/session.js +1 -2
  662. package/mysql-core/session.js.map +1 -1
  663. package/mysql-core/table.cjs +1 -1
  664. package/mysql-core/table.cjs.map +1 -1
  665. package/mysql-core/table.js +1 -1
  666. package/mysql-core/table.js.map +1 -1
  667. package/mysql-proxy/driver.cjs +5 -2
  668. package/mysql-proxy/driver.cjs.map +1 -1
  669. package/mysql-proxy/driver.js +5 -2
  670. package/mysql-proxy/driver.js.map +1 -1
  671. package/mysql-proxy/session.cjs +26 -19
  672. package/mysql-proxy/session.cjs.map +1 -1
  673. package/mysql-proxy/session.d.cts +11 -4
  674. package/mysql-proxy/session.d.ts +13 -6
  675. package/mysql-proxy/session.js +27 -20
  676. package/mysql-proxy/session.js.map +1 -1
  677. package/mysql2/driver.cjs +3 -2
  678. package/mysql2/driver.cjs.map +1 -1
  679. package/mysql2/driver.d.cts +1 -0
  680. package/mysql2/driver.d.ts +4 -3
  681. package/mysql2/driver.js +3 -2
  682. package/mysql2/driver.js.map +1 -1
  683. package/mysql2/session.cjs +49 -39
  684. package/mysql2/session.cjs.map +1 -1
  685. package/mysql2/session.d.cts +11 -4
  686. package/mysql2/session.d.ts +13 -6
  687. package/mysql2/session.js +50 -40
  688. package/mysql2/session.js.map +1 -1
  689. package/neon-http/driver.cjs +34 -65
  690. package/neon-http/driver.cjs.map +1 -1
  691. package/neon-http/driver.d.cts +15 -19
  692. package/neon-http/driver.d.ts +16 -20
  693. package/neon-http/driver.js +34 -64
  694. package/neon-http/driver.js.map +1 -1
  695. package/neon-http/index.cjs +2 -4
  696. package/neon-http/index.d.cts +3 -3
  697. package/neon-http/index.d.ts +3 -3
  698. package/neon-http/index.js +3 -3
  699. package/neon-http/migrator.cjs +1 -1
  700. package/neon-http/migrator.cjs.map +1 -1
  701. package/neon-http/migrator.d.cts +1 -1
  702. package/neon-http/migrator.d.ts +1 -1
  703. package/neon-http/migrator.js +1 -1
  704. package/neon-http/migrator.js.map +1 -1
  705. package/neon-http/session.cjs +28 -117
  706. package/neon-http/session.cjs.map +1 -1
  707. package/neon-http/session.d.cts +10 -38
  708. package/neon-http/session.d.ts +12 -40
  709. package/neon-http/session.js +30 -117
  710. package/neon-http/session.js.map +1 -1
  711. package/neon-serverless/driver.cjs +14 -32
  712. package/neon-serverless/driver.cjs.map +1 -1
  713. package/neon-serverless/driver.d.cts +12 -17
  714. package/neon-serverless/driver.d.ts +13 -18
  715. package/neon-serverless/driver.js +14 -31
  716. package/neon-serverless/driver.js.map +1 -1
  717. package/neon-serverless/index.cjs +2 -3
  718. package/neon-serverless/index.d.cts +3 -3
  719. package/neon-serverless/index.d.ts +3 -3
  720. package/neon-serverless/index.js +3 -3
  721. package/neon-serverless/migrator.cjs.map +1 -1
  722. package/neon-serverless/migrator.d.cts +1 -1
  723. package/neon-serverless/migrator.d.ts +1 -1
  724. package/neon-serverless/migrator.js.map +1 -1
  725. package/neon-serverless/session.cjs +32 -108
  726. package/neon-serverless/session.cjs.map +1 -1
  727. package/neon-serverless/session.d.cts +9 -32
  728. package/neon-serverless/session.d.ts +10 -33
  729. package/neon-serverless/session.js +34 -109
  730. package/neon-serverless/session.js.map +1 -1
  731. package/netlify-db/driver.cjs +36 -43
  732. package/netlify-db/driver.cjs.map +1 -1
  733. package/netlify-db/driver.d.cts +29 -29
  734. package/netlify-db/driver.d.ts +31 -31
  735. package/netlify-db/driver.js +35 -42
  736. package/netlify-db/driver.js.map +1 -1
  737. package/netlify-db/index.cjs +3 -2
  738. package/netlify-db/index.d.cts +3 -3
  739. package/netlify-db/index.d.ts +3 -3
  740. package/netlify-db/index.js +2 -2
  741. package/netlify-db/migrator.cjs.map +1 -1
  742. package/netlify-db/migrator.d.cts +1 -1
  743. package/netlify-db/migrator.d.ts +1 -1
  744. package/netlify-db/migrator.js.map +1 -1
  745. package/netlify-db/session.cjs +61 -39
  746. package/netlify-db/session.cjs.map +1 -1
  747. package/netlify-db/session.d.cts +22 -23
  748. package/netlify-db/session.d.ts +24 -25
  749. package/netlify-db/session.js +63 -41
  750. package/netlify-db/session.js.map +1 -1
  751. package/node-mssql/driver.cjs +9 -3
  752. package/node-mssql/driver.cjs.map +1 -1
  753. package/node-mssql/driver.d.cts +1 -0
  754. package/node-mssql/driver.d.ts +3 -2
  755. package/node-mssql/driver.js +9 -3
  756. package/node-mssql/driver.js.map +1 -1
  757. package/node-mssql/session.cjs +6 -4
  758. package/node-mssql/session.cjs.map +1 -1
  759. package/node-mssql/session.d.cts +4 -1
  760. package/node-mssql/session.d.ts +6 -3
  761. package/node-mssql/session.js +7 -5
  762. package/node-mssql/session.js.map +1 -1
  763. package/node-postgres/driver.cjs +15 -18
  764. package/node-postgres/driver.cjs.map +1 -1
  765. package/node-postgres/driver.d.cts +11 -6
  766. package/node-postgres/driver.d.ts +12 -7
  767. package/node-postgres/driver.js +15 -18
  768. package/node-postgres/driver.js.map +1 -1
  769. package/node-postgres/index.cjs +2 -2
  770. package/node-postgres/index.d.cts +3 -3
  771. package/node-postgres/index.d.ts +3 -3
  772. package/node-postgres/index.js +3 -3
  773. package/node-postgres/migrator.cjs.map +1 -1
  774. package/node-postgres/migrator.d.cts +1 -1
  775. package/node-postgres/migrator.d.ts +1 -1
  776. package/node-postgres/migrator.js.map +1 -1
  777. package/node-postgres/session.cjs +33 -126
  778. package/node-postgres/session.cjs.map +1 -1
  779. package/node-postgres/session.d.cts +10 -30
  780. package/node-postgres/session.d.ts +11 -31
  781. package/node-postgres/session.js +35 -127
  782. package/node-postgres/session.js.map +1 -1
  783. package/node-sqlite/driver.cjs +1 -1
  784. package/node-sqlite/driver.d.ts +1 -1
  785. package/node-sqlite/driver.js +1 -1
  786. package/node-sqlite/session.cjs +4 -9
  787. package/node-sqlite/session.cjs.map +1 -1
  788. package/node-sqlite/session.d.cts +3 -4
  789. package/node-sqlite/session.d.ts +4 -5
  790. package/node-sqlite/session.js +4 -9
  791. package/node-sqlite/session.js.map +1 -1
  792. package/op-sqlite/driver.cjs +3 -2
  793. package/op-sqlite/driver.cjs.map +1 -1
  794. package/op-sqlite/driver.d.ts +1 -1
  795. package/op-sqlite/driver.js +3 -2
  796. package/op-sqlite/driver.js.map +1 -1
  797. package/op-sqlite/session.cjs +18 -16
  798. package/op-sqlite/session.cjs.map +1 -1
  799. package/op-sqlite/session.d.cts +10 -6
  800. package/op-sqlite/session.d.ts +11 -7
  801. package/op-sqlite/session.js +19 -17
  802. package/op-sqlite/session.js.map +1 -1
  803. package/operations.d.cts +3 -0
  804. package/operations.d.ts +3 -0
  805. package/package.json +4727 -4715
  806. package/pg-core/{utils/array.cjs → array.cjs} +1 -1
  807. package/pg-core/array.cjs.map +1 -0
  808. package/pg-core/{utils/array.d.cts → array.d.cts} +1 -1
  809. package/pg-core/{utils/array.d.ts → array.d.ts} +1 -1
  810. package/pg-core/{utils/array.js → array.js} +1 -1
  811. package/pg-core/array.js.map +1 -0
  812. package/pg-core/async/count.cjs +2 -9
  813. package/pg-core/async/count.cjs.map +1 -1
  814. package/pg-core/async/count.js +2 -9
  815. package/pg-core/async/count.js.map +1 -1
  816. package/pg-core/async/db.cjs +10 -27
  817. package/pg-core/async/db.cjs.map +1 -1
  818. package/pg-core/async/db.d.cts +5 -13
  819. package/pg-core/async/db.d.ts +8 -16
  820. package/pg-core/async/db.js +10 -27
  821. package/pg-core/async/db.js.map +1 -1
  822. package/pg-core/async/delete.cjs +8 -13
  823. package/pg-core/async/delete.cjs.map +1 -1
  824. package/pg-core/async/delete.js +8 -13
  825. package/pg-core/async/delete.js.map +1 -1
  826. package/pg-core/async/insert.cjs +7 -12
  827. package/pg-core/async/insert.cjs.map +1 -1
  828. package/pg-core/async/insert.js +7 -12
  829. package/pg-core/async/insert.js.map +1 -1
  830. package/pg-core/async/query.cjs +8 -14
  831. package/pg-core/async/query.cjs.map +1 -1
  832. package/pg-core/async/query.js +8 -14
  833. package/pg-core/async/query.js.map +1 -1
  834. package/pg-core/async/refresh-materialized-view.cjs +1 -9
  835. package/pg-core/async/refresh-materialized-view.cjs.map +1 -1
  836. package/pg-core/async/refresh-materialized-view.js +1 -9
  837. package/pg-core/async/refresh-materialized-view.js.map +1 -1
  838. package/pg-core/async/select.cjs +4 -13
  839. package/pg-core/async/select.cjs.map +1 -1
  840. package/pg-core/async/select.js +4 -13
  841. package/pg-core/async/select.js.map +1 -1
  842. package/pg-core/async/session.cjs +46 -22
  843. package/pg-core/async/session.cjs.map +1 -1
  844. package/pg-core/async/session.d.cts +25 -31
  845. package/pg-core/async/session.d.ts +26 -32
  846. package/pg-core/async/session.js +47 -23
  847. package/pg-core/async/session.js.map +1 -1
  848. package/pg-core/async/update.cjs +11 -15
  849. package/pg-core/async/update.cjs.map +1 -1
  850. package/pg-core/async/update.js +11 -15
  851. package/pg-core/async/update.js.map +1 -1
  852. package/pg-core/codecs.cjs +156 -0
  853. package/pg-core/codecs.cjs.map +1 -0
  854. package/pg-core/codecs.d.cts +27 -0
  855. package/pg-core/codecs.d.ts +27 -0
  856. package/pg-core/codecs.js +148 -0
  857. package/pg-core/codecs.js.map +1 -0
  858. package/pg-core/columns/bigint.cjs +10 -9
  859. package/pg-core/columns/bigint.cjs.map +1 -1
  860. package/pg-core/columns/bigint.d.cts +2 -3
  861. package/pg-core/columns/bigint.d.ts +2 -3
  862. package/pg-core/columns/bigint.js +10 -9
  863. package/pg-core/columns/bigint.js.map +1 -1
  864. package/pg-core/columns/bigserial.cjs +6 -6
  865. package/pg-core/columns/bigserial.cjs.map +1 -1
  866. package/pg-core/columns/bigserial.d.cts +1 -2
  867. package/pg-core/columns/bigserial.d.ts +1 -2
  868. package/pg-core/columns/bigserial.js +6 -6
  869. package/pg-core/columns/bigserial.js.map +1 -1
  870. package/pg-core/columns/boolean.cjs +2 -0
  871. package/pg-core/columns/boolean.cjs.map +1 -1
  872. package/pg-core/columns/boolean.js +2 -0
  873. package/pg-core/columns/boolean.js.map +1 -1
  874. package/pg-core/columns/bytea.cjs +2 -8
  875. package/pg-core/columns/bytea.cjs.map +1 -1
  876. package/pg-core/columns/bytea.d.cts +0 -1
  877. package/pg-core/columns/bytea.d.ts +0 -1
  878. package/pg-core/columns/bytea.js +2 -8
  879. package/pg-core/columns/bytea.js.map +1 -1
  880. package/pg-core/columns/char.cjs +2 -0
  881. package/pg-core/columns/char.cjs.map +1 -1
  882. package/pg-core/columns/char.js +2 -0
  883. package/pg-core/columns/char.js.map +1 -1
  884. package/pg-core/columns/cidr.cjs +2 -0
  885. package/pg-core/columns/cidr.cjs.map +1 -1
  886. package/pg-core/columns/cidr.js +2 -0
  887. package/pg-core/columns/cidr.js.map +1 -1
  888. package/pg-core/columns/common.cjs +11 -9
  889. package/pg-core/columns/common.cjs.map +1 -1
  890. package/pg-core/columns/common.d.cts +34 -39
  891. package/pg-core/columns/common.d.ts +34 -39
  892. package/pg-core/columns/common.js +11 -9
  893. package/pg-core/columns/common.js.map +1 -1
  894. package/pg-core/columns/custom.cjs +16 -46
  895. package/pg-core/columns/custom.cjs.map +1 -1
  896. package/pg-core/columns/custom.d.cts +17 -8
  897. package/pg-core/columns/custom.d.ts +17 -8
  898. package/pg-core/columns/custom.js +16 -46
  899. package/pg-core/columns/custom.js.map +1 -1
  900. package/pg-core/columns/date.cjs +11 -12
  901. package/pg-core/columns/date.cjs.map +1 -1
  902. package/pg-core/columns/date.d.cts +3 -4
  903. package/pg-core/columns/date.d.ts +3 -4
  904. package/pg-core/columns/date.js +11 -12
  905. package/pg-core/columns/date.js.map +1 -1
  906. package/pg-core/columns/double-precision.cjs +2 -4
  907. package/pg-core/columns/double-precision.cjs.map +1 -1
  908. package/pg-core/columns/double-precision.d.cts +0 -1
  909. package/pg-core/columns/double-precision.d.ts +0 -1
  910. package/pg-core/columns/double-precision.js +2 -4
  911. package/pg-core/columns/double-precision.js.map +1 -1
  912. package/pg-core/columns/enum.cjs +4 -0
  913. package/pg-core/columns/enum.cjs.map +1 -1
  914. package/pg-core/columns/enum.js +4 -0
  915. package/pg-core/columns/enum.js.map +1 -1
  916. package/pg-core/columns/index.d.cts +2 -2
  917. package/pg-core/columns/index.d.ts +2 -2
  918. package/pg-core/columns/inet.cjs +2 -0
  919. package/pg-core/columns/inet.cjs.map +1 -1
  920. package/pg-core/columns/inet.js +2 -0
  921. package/pg-core/columns/inet.js.map +1 -1
  922. package/pg-core/columns/integer.cjs +2 -4
  923. package/pg-core/columns/integer.cjs.map +1 -1
  924. package/pg-core/columns/integer.d.cts +0 -1
  925. package/pg-core/columns/integer.d.ts +0 -1
  926. package/pg-core/columns/integer.js +2 -4
  927. package/pg-core/columns/integer.js.map +1 -1
  928. package/pg-core/columns/interval.cjs +2 -0
  929. package/pg-core/columns/interval.cjs.map +1 -1
  930. package/pg-core/columns/interval.js +2 -0
  931. package/pg-core/columns/interval.js.map +1 -1
  932. package/pg-core/columns/json.cjs +2 -11
  933. package/pg-core/columns/json.cjs.map +1 -1
  934. package/pg-core/columns/json.d.cts +0 -2
  935. package/pg-core/columns/json.d.ts +0 -2
  936. package/pg-core/columns/json.js +2 -11
  937. package/pg-core/columns/json.js.map +1 -1
  938. package/pg-core/columns/jsonb.cjs +2 -11
  939. package/pg-core/columns/jsonb.cjs.map +1 -1
  940. package/pg-core/columns/jsonb.d.cts +0 -2
  941. package/pg-core/columns/jsonb.d.ts +0 -2
  942. package/pg-core/columns/jsonb.js +2 -11
  943. package/pg-core/columns/jsonb.js.map +1 -1
  944. package/pg-core/columns/line.cjs +12 -8
  945. package/pg-core/columns/line.cjs.map +1 -1
  946. package/pg-core/columns/line.d.cts +5 -5
  947. package/pg-core/columns/line.d.ts +5 -5
  948. package/pg-core/columns/line.js +12 -8
  949. package/pg-core/columns/line.js.map +1 -1
  950. package/pg-core/columns/macaddr.cjs +2 -0
  951. package/pg-core/columns/macaddr.cjs.map +1 -1
  952. package/pg-core/columns/macaddr.js +2 -0
  953. package/pg-core/columns/macaddr.js.map +1 -1
  954. package/pg-core/columns/macaddr8.cjs +2 -0
  955. package/pg-core/columns/macaddr8.cjs.map +1 -1
  956. package/pg-core/columns/macaddr8.js +2 -0
  957. package/pg-core/columns/macaddr8.js.map +1 -1
  958. package/pg-core/columns/numeric.cjs +12 -15
  959. package/pg-core/columns/numeric.cjs.map +1 -1
  960. package/pg-core/columns/numeric.d.cts +4 -5
  961. package/pg-core/columns/numeric.d.ts +4 -5
  962. package/pg-core/columns/numeric.js +12 -15
  963. package/pg-core/columns/numeric.js.map +1 -1
  964. package/pg-core/columns/point.cjs +19 -21
  965. package/pg-core/columns/point.cjs.map +1 -1
  966. package/pg-core/columns/point.d.cts +5 -11
  967. package/pg-core/columns/point.d.ts +5 -11
  968. package/pg-core/columns/point.js +19 -21
  969. package/pg-core/columns/point.js.map +1 -1
  970. package/pg-core/columns/postgis_extension/geometry.cjs +12 -9
  971. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  972. package/pg-core/columns/postgis_extension/geometry.d.cts +5 -5
  973. package/pg-core/columns/postgis_extension/geometry.d.ts +5 -5
  974. package/pg-core/columns/postgis_extension/geometry.js +12 -9
  975. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  976. package/pg-core/columns/real.cjs +2 -4
  977. package/pg-core/columns/real.cjs.map +1 -1
  978. package/pg-core/columns/real.d.cts +0 -1
  979. package/pg-core/columns/real.d.ts +0 -1
  980. package/pg-core/columns/real.js +2 -4
  981. package/pg-core/columns/real.js.map +1 -1
  982. package/pg-core/columns/serial.cjs +2 -0
  983. package/pg-core/columns/serial.cjs.map +1 -1
  984. package/pg-core/columns/serial.js +2 -0
  985. package/pg-core/columns/serial.js.map +1 -1
  986. package/pg-core/columns/smallint.cjs +2 -4
  987. package/pg-core/columns/smallint.cjs.map +1 -1
  988. package/pg-core/columns/smallint.d.cts +0 -1
  989. package/pg-core/columns/smallint.d.ts +0 -1
  990. package/pg-core/columns/smallint.js +2 -4
  991. package/pg-core/columns/smallint.js.map +1 -1
  992. package/pg-core/columns/smallserial.cjs +2 -0
  993. package/pg-core/columns/smallserial.cjs.map +1 -1
  994. package/pg-core/columns/smallserial.js +2 -0
  995. package/pg-core/columns/smallserial.js.map +1 -1
  996. package/pg-core/columns/text.cjs +2 -0
  997. package/pg-core/columns/text.cjs.map +1 -1
  998. package/pg-core/columns/text.js +2 -0
  999. package/pg-core/columns/text.js.map +1 -1
  1000. package/pg-core/columns/time.cjs +2 -0
  1001. package/pg-core/columns/time.cjs.map +1 -1
  1002. package/pg-core/columns/time.js +2 -0
  1003. package/pg-core/columns/time.js.map +1 -1
  1004. package/pg-core/columns/timestamp.cjs +13 -14
  1005. package/pg-core/columns/timestamp.cjs.map +1 -1
  1006. package/pg-core/columns/timestamp.d.cts +3 -4
  1007. package/pg-core/columns/timestamp.d.ts +3 -4
  1008. package/pg-core/columns/timestamp.js +13 -14
  1009. package/pg-core/columns/timestamp.js.map +1 -1
  1010. package/pg-core/columns/uuid.cjs +2 -0
  1011. package/pg-core/columns/uuid.cjs.map +1 -1
  1012. package/pg-core/columns/uuid.js +2 -0
  1013. package/pg-core/columns/uuid.js.map +1 -1
  1014. package/pg-core/columns/varchar.cjs +2 -0
  1015. package/pg-core/columns/varchar.cjs.map +1 -1
  1016. package/pg-core/columns/varchar.js +2 -0
  1017. package/pg-core/columns/varchar.js.map +1 -1
  1018. package/pg-core/columns/vector_extension/bit.cjs +2 -0
  1019. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  1020. package/pg-core/columns/vector_extension/bit.js +2 -0
  1021. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  1022. package/pg-core/columns/vector_extension/halfvec.cjs +6 -4
  1023. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  1024. package/pg-core/columns/vector_extension/halfvec.d.cts +2 -2
  1025. package/pg-core/columns/vector_extension/halfvec.d.ts +2 -2
  1026. package/pg-core/columns/vector_extension/halfvec.js +6 -4
  1027. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  1028. package/pg-core/columns/vector_extension/sparsevec.cjs +2 -0
  1029. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  1030. package/pg-core/columns/vector_extension/sparsevec.js +2 -0
  1031. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  1032. package/pg-core/columns/vector_extension/vector.cjs +6 -4
  1033. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  1034. package/pg-core/columns/vector_extension/vector.d.cts +2 -2
  1035. package/pg-core/columns/vector_extension/vector.d.ts +2 -2
  1036. package/pg-core/columns/vector_extension/vector.js +6 -4
  1037. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  1038. package/pg-core/dialect.cjs +52 -217
  1039. package/pg-core/dialect.cjs.map +1 -1
  1040. package/pg-core/dialect.d.cts +19 -30
  1041. package/pg-core/dialect.d.ts +20 -31
  1042. package/pg-core/dialect.js +57 -221
  1043. package/pg-core/dialect.js.map +1 -1
  1044. package/pg-core/effect/count.cjs +1 -1
  1045. package/pg-core/effect/count.cjs.map +1 -1
  1046. package/pg-core/effect/count.d.cts +2 -2
  1047. package/pg-core/effect/count.d.ts +2 -2
  1048. package/pg-core/effect/count.js +1 -1
  1049. package/pg-core/effect/count.js.map +1 -1
  1050. package/pg-core/effect/db.cjs +14 -20
  1051. package/pg-core/effect/db.cjs.map +1 -1
  1052. package/pg-core/effect/db.d.cts +7 -11
  1053. package/pg-core/effect/db.d.ts +9 -13
  1054. package/pg-core/effect/db.js +14 -20
  1055. package/pg-core/effect/db.js.map +1 -1
  1056. package/pg-core/effect/delete.cjs +8 -6
  1057. package/pg-core/effect/delete.cjs.map +1 -1
  1058. package/pg-core/effect/delete.d.cts +1 -1
  1059. package/pg-core/effect/delete.d.ts +1 -1
  1060. package/pg-core/effect/delete.js +8 -6
  1061. package/pg-core/effect/delete.js.map +1 -1
  1062. package/pg-core/effect/index.cjs +3 -3
  1063. package/pg-core/effect/index.js +3 -3
  1064. package/pg-core/effect/insert.cjs +7 -5
  1065. package/pg-core/effect/insert.cjs.map +1 -1
  1066. package/pg-core/effect/insert.d.cts +1 -1
  1067. package/pg-core/effect/insert.d.ts +1 -1
  1068. package/pg-core/effect/insert.js +7 -5
  1069. package/pg-core/effect/insert.js.map +1 -1
  1070. package/pg-core/effect/query.cjs +7 -6
  1071. package/pg-core/effect/query.cjs.map +1 -1
  1072. package/pg-core/effect/query.d.cts +1 -1
  1073. package/pg-core/effect/query.d.ts +1 -1
  1074. package/pg-core/effect/query.js +7 -6
  1075. package/pg-core/effect/query.js.map +1 -1
  1076. package/pg-core/effect/refresh-materialized-view.cjs +1 -2
  1077. package/pg-core/effect/refresh-materialized-view.cjs.map +1 -1
  1078. package/pg-core/effect/refresh-materialized-view.d.cts +1 -1
  1079. package/pg-core/effect/refresh-materialized-view.d.ts +1 -1
  1080. package/pg-core/effect/refresh-materialized-view.js +1 -2
  1081. package/pg-core/effect/refresh-materialized-view.js.map +1 -1
  1082. package/pg-core/effect/select.cjs +3 -5
  1083. package/pg-core/effect/select.cjs.map +1 -1
  1084. package/pg-core/effect/select.d.cts +1 -1
  1085. package/pg-core/effect/select.d.ts +1 -1
  1086. package/pg-core/effect/select.js +3 -5
  1087. package/pg-core/effect/select.js.map +1 -1
  1088. package/pg-core/effect/session.cjs +30 -19
  1089. package/pg-core/effect/session.cjs.map +1 -1
  1090. package/pg-core/effect/session.d.cts +24 -28
  1091. package/pg-core/effect/session.d.ts +25 -29
  1092. package/pg-core/effect/session.js +31 -20
  1093. package/pg-core/effect/session.js.map +1 -1
  1094. package/pg-core/effect/update.cjs +8 -8
  1095. package/pg-core/effect/update.cjs.map +1 -1
  1096. package/pg-core/effect/update.d.cts +1 -1
  1097. package/pg-core/effect/update.d.ts +1 -1
  1098. package/pg-core/effect/update.js +8 -8
  1099. package/pg-core/effect/update.js.map +1 -1
  1100. package/pg-core/index.cjs +16 -16
  1101. package/pg-core/index.d.cts +4 -4
  1102. package/pg-core/index.d.ts +4 -4
  1103. package/pg-core/index.js +13 -13
  1104. package/pg-core/query-builders/delete.cjs +1 -1
  1105. package/pg-core/query-builders/delete.cjs.map +1 -1
  1106. package/pg-core/query-builders/delete.js +1 -1
  1107. package/pg-core/query-builders/delete.js.map +1 -1
  1108. package/pg-core/query-builders/index.cjs +1 -1
  1109. package/pg-core/query-builders/index.js +1 -1
  1110. package/pg-core/query-builders/insert.cjs +1 -1
  1111. package/pg-core/query-builders/insert.cjs.map +1 -1
  1112. package/pg-core/query-builders/insert.js +1 -1
  1113. package/pg-core/query-builders/insert.js.map +1 -1
  1114. package/pg-core/query-builders/query.cjs +0 -1
  1115. package/pg-core/query-builders/query.cjs.map +1 -1
  1116. package/pg-core/query-builders/query.d.cts +2 -1
  1117. package/pg-core/query-builders/query.d.ts +2 -1
  1118. package/pg-core/query-builders/query.js +0 -1
  1119. package/pg-core/query-builders/query.js.map +1 -1
  1120. package/pg-core/query-builders/raw.cjs +0 -4
  1121. package/pg-core/query-builders/raw.cjs.map +1 -1
  1122. package/pg-core/query-builders/raw.js +0 -4
  1123. package/pg-core/query-builders/raw.js.map +1 -1
  1124. package/pg-core/query-builders/update.cjs +1 -1
  1125. package/pg-core/query-builders/update.cjs.map +1 -1
  1126. package/pg-core/query-builders/update.js +1 -1
  1127. package/pg-core/query-builders/update.js.map +1 -1
  1128. package/pg-core/schema.cjs +1 -1
  1129. package/pg-core/schema.js +1 -1
  1130. package/pg-core/session.cjs +3 -5
  1131. package/pg-core/session.cjs.map +1 -1
  1132. package/pg-core/session.d.cts +4 -7
  1133. package/pg-core/session.d.ts +4 -7
  1134. package/pg-core/session.js +3 -5
  1135. package/pg-core/session.js.map +1 -1
  1136. package/pg-core/table.cjs +1 -1
  1137. package/pg-core/table.cjs.map +1 -1
  1138. package/pg-core/table.js +1 -1
  1139. package/pg-core/table.js.map +1 -1
  1140. package/pg-core/utils.cjs +2 -2
  1141. package/pg-core/utils.cjs.map +1 -1
  1142. package/pg-core/utils.d.cts +7 -1
  1143. package/pg-core/utils.d.ts +7 -1
  1144. package/pg-core/utils.js +2 -2
  1145. package/pg-core/utils.js.map +1 -1
  1146. package/pg-core/view.cjs +1 -1
  1147. package/pg-core/view.js +1 -1
  1148. package/pg-proxy/driver.cjs +10 -15
  1149. package/pg-proxy/driver.cjs.map +1 -1
  1150. package/pg-proxy/driver.d.cts +6 -3
  1151. package/pg-proxy/driver.d.ts +7 -4
  1152. package/pg-proxy/driver.js +10 -14
  1153. package/pg-proxy/driver.js.map +1 -1
  1154. package/pg-proxy/index.cjs +0 -2
  1155. package/pg-proxy/index.d.cts +2 -2
  1156. package/pg-proxy/index.d.ts +2 -2
  1157. package/pg-proxy/index.js +2 -2
  1158. package/pg-proxy/migrator.cjs.map +1 -1
  1159. package/pg-proxy/migrator.d.cts +1 -1
  1160. package/pg-proxy/migrator.d.ts +1 -1
  1161. package/pg-proxy/migrator.js.map +1 -1
  1162. package/pg-proxy/session.cjs +8 -84
  1163. package/pg-proxy/session.cjs.map +1 -1
  1164. package/pg-proxy/session.d.cts +9 -32
  1165. package/pg-proxy/session.d.ts +10 -33
  1166. package/pg-proxy/session.js +10 -84
  1167. package/pg-proxy/session.js.map +1 -1
  1168. package/pglite/driver.cjs +71 -33
  1169. package/pglite/driver.cjs.map +1 -1
  1170. package/pglite/driver.d.cts +12 -17
  1171. package/pglite/driver.d.ts +14 -19
  1172. package/pglite/driver.js +71 -32
  1173. package/pglite/driver.js.map +1 -1
  1174. package/pglite/index.cjs +2 -3
  1175. package/pglite/index.d.cts +3 -3
  1176. package/pglite/index.d.ts +3 -3
  1177. package/pglite/index.js +3 -3
  1178. package/pglite/migrator.cjs.map +1 -1
  1179. package/pglite/migrator.d.cts +1 -1
  1180. package/pglite/migrator.d.ts +1 -1
  1181. package/pglite/migrator.js.map +1 -1
  1182. package/pglite/session.cjs +25 -86
  1183. package/pglite/session.cjs.map +1 -1
  1184. package/pglite/session.d.cts +9 -30
  1185. package/pglite/session.d.ts +11 -32
  1186. package/pglite/session.js +27 -87
  1187. package/pglite/session.js.map +1 -1
  1188. package/planetscale-serverless/driver.cjs +3 -2
  1189. package/planetscale-serverless/driver.cjs.map +1 -1
  1190. package/planetscale-serverless/driver.d.cts +1 -0
  1191. package/planetscale-serverless/driver.d.ts +1 -0
  1192. package/planetscale-serverless/driver.js +3 -2
  1193. package/planetscale-serverless/driver.js.map +1 -1
  1194. package/planetscale-serverless/session.cjs +27 -20
  1195. package/planetscale-serverless/session.cjs.map +1 -1
  1196. package/planetscale-serverless/session.d.cts +12 -6
  1197. package/planetscale-serverless/session.d.ts +14 -8
  1198. package/planetscale-serverless/session.js +28 -21
  1199. package/planetscale-serverless/session.js.map +1 -1
  1200. package/postgres-js/driver.cjs +124 -19
  1201. package/postgres-js/driver.cjs.map +1 -1
  1202. package/postgres-js/driver.d.cts +10 -6
  1203. package/postgres-js/driver.d.ts +11 -7
  1204. package/postgres-js/driver.js +124 -19
  1205. package/postgres-js/driver.js.map +1 -1
  1206. package/postgres-js/index.cjs +2 -2
  1207. package/postgres-js/index.d.cts +3 -3
  1208. package/postgres-js/index.d.ts +3 -3
  1209. package/postgres-js/index.js +3 -3
  1210. package/postgres-js/migrator.cjs.map +1 -1
  1211. package/postgres-js/migrator.d.cts +1 -1
  1212. package/postgres-js/migrator.d.ts +1 -1
  1213. package/postgres-js/migrator.js.map +1 -1
  1214. package/postgres-js/session.cjs +17 -112
  1215. package/postgres-js/session.cjs.map +1 -1
  1216. package/postgres-js/session.d.cts +10 -31
  1217. package/postgres-js/session.d.ts +11 -32
  1218. package/postgres-js/session.js +18 -112
  1219. package/postgres-js/session.js.map +1 -1
  1220. package/prisma/mysql/driver.cjs +1 -1
  1221. package/prisma/mysql/driver.js +1 -1
  1222. package/prisma/mysql/session.cjs +2 -1
  1223. package/prisma/mysql/session.cjs.map +1 -1
  1224. package/prisma/mysql/session.d.cts +1 -0
  1225. package/prisma/mysql/session.d.ts +2 -1
  1226. package/prisma/mysql/session.js +2 -1
  1227. package/prisma/mysql/session.js.map +1 -1
  1228. package/prisma/pg/driver.cjs +9 -3
  1229. package/prisma/pg/driver.cjs.map +1 -1
  1230. package/prisma/pg/driver.d.cts +7 -3
  1231. package/prisma/pg/driver.d.ts +7 -3
  1232. package/prisma/pg/driver.js +9 -4
  1233. package/prisma/pg/driver.js.map +1 -1
  1234. package/prisma/pg/index.cjs +2 -2
  1235. package/prisma/pg/index.d.cts +3 -3
  1236. package/prisma/pg/index.d.ts +3 -3
  1237. package/prisma/pg/index.js +3 -3
  1238. package/prisma/pg/session.cjs +1 -25
  1239. package/prisma/pg/session.cjs.map +1 -1
  1240. package/prisma/pg/session.d.cts +3 -15
  1241. package/prisma/pg/session.d.ts +3 -15
  1242. package/prisma/pg/session.js +2 -25
  1243. package/prisma/pg/session.js.map +1 -1
  1244. package/prisma/sqlite/session.cjs +0 -3
  1245. package/prisma/sqlite/session.cjs.map +1 -1
  1246. package/prisma/sqlite/session.d.cts +0 -1
  1247. package/prisma/sqlite/session.d.ts +1 -2
  1248. package/prisma/sqlite/session.js +0 -3
  1249. package/prisma/sqlite/session.js.map +1 -1
  1250. package/relations.cjs +85 -24
  1251. package/relations.cjs.map +1 -1
  1252. package/relations.d.cts +41 -16
  1253. package/relations.d.ts +41 -16
  1254. package/relations.js +84 -25
  1255. package/relations.js.map +1 -1
  1256. package/row-mappers/index.cjs +1 -1
  1257. package/row-mappers/index.cjs.map +1 -1
  1258. package/row-mappers/index.js +1 -1
  1259. package/row-mappers/index.js.map +1 -1
  1260. package/selection-proxy.cjs +1 -1
  1261. package/selection-proxy.js +1 -1
  1262. package/singlestore/driver.cjs +4 -2
  1263. package/singlestore/driver.cjs.map +1 -1
  1264. package/singlestore/driver.d.cts +2 -1
  1265. package/singlestore/driver.d.ts +4 -3
  1266. package/singlestore/driver.js +4 -2
  1267. package/singlestore/driver.js.map +1 -1
  1268. package/singlestore/session.cjs +17 -7
  1269. package/singlestore/session.cjs.map +1 -1
  1270. package/singlestore/session.d.cts +8 -4
  1271. package/singlestore/session.d.ts +10 -6
  1272. package/singlestore/session.js +18 -8
  1273. package/singlestore/session.js.map +1 -1
  1274. package/singlestore-core/columns/bigint.cjs +4 -4
  1275. package/singlestore-core/columns/bigint.cjs.map +1 -1
  1276. package/singlestore-core/columns/bigint.d.cts +2 -2
  1277. package/singlestore-core/columns/bigint.d.ts +2 -2
  1278. package/singlestore-core/columns/bigint.js +4 -4
  1279. package/singlestore-core/columns/bigint.js.map +1 -1
  1280. package/singlestore-core/columns/binary.cjs +2 -2
  1281. package/singlestore-core/columns/binary.cjs.map +1 -1
  1282. package/singlestore-core/columns/binary.d.cts +1 -1
  1283. package/singlestore-core/columns/binary.d.ts +1 -1
  1284. package/singlestore-core/columns/binary.js +2 -2
  1285. package/singlestore-core/columns/binary.js.map +1 -1
  1286. package/singlestore-core/columns/boolean.cjs +2 -2
  1287. package/singlestore-core/columns/boolean.cjs.map +1 -1
  1288. package/singlestore-core/columns/boolean.d.cts +1 -1
  1289. package/singlestore-core/columns/boolean.d.ts +1 -1
  1290. package/singlestore-core/columns/boolean.js +2 -2
  1291. package/singlestore-core/columns/boolean.js.map +1 -1
  1292. package/singlestore-core/columns/custom.cjs +4 -4
  1293. package/singlestore-core/columns/custom.cjs.map +1 -1
  1294. package/singlestore-core/columns/custom.d.cts +2 -2
  1295. package/singlestore-core/columns/custom.d.ts +2 -2
  1296. package/singlestore-core/columns/custom.js +4 -4
  1297. package/singlestore-core/columns/custom.js.map +1 -1
  1298. package/singlestore-core/columns/date.cjs +2 -2
  1299. package/singlestore-core/columns/date.cjs.map +1 -1
  1300. package/singlestore-core/columns/date.d.cts +1 -1
  1301. package/singlestore-core/columns/date.d.ts +1 -1
  1302. package/singlestore-core/columns/date.js +2 -2
  1303. package/singlestore-core/columns/date.js.map +1 -1
  1304. package/singlestore-core/columns/datetime.cjs +6 -6
  1305. package/singlestore-core/columns/datetime.cjs.map +1 -1
  1306. package/singlestore-core/columns/datetime.d.cts +3 -3
  1307. package/singlestore-core/columns/datetime.d.ts +3 -3
  1308. package/singlestore-core/columns/datetime.js +6 -6
  1309. package/singlestore-core/columns/datetime.js.map +1 -1
  1310. package/singlestore-core/columns/decimal.cjs +4 -4
  1311. package/singlestore-core/columns/decimal.cjs.map +1 -1
  1312. package/singlestore-core/columns/decimal.d.cts +2 -2
  1313. package/singlestore-core/columns/decimal.d.ts +2 -2
  1314. package/singlestore-core/columns/decimal.js +4 -4
  1315. package/singlestore-core/columns/decimal.js.map +1 -1
  1316. package/singlestore-core/columns/float.cjs +2 -2
  1317. package/singlestore-core/columns/float.cjs.map +1 -1
  1318. package/singlestore-core/columns/float.d.cts +1 -1
  1319. package/singlestore-core/columns/float.d.ts +1 -1
  1320. package/singlestore-core/columns/float.js +2 -2
  1321. package/singlestore-core/columns/float.js.map +1 -1
  1322. package/singlestore-core/columns/int.cjs +2 -2
  1323. package/singlestore-core/columns/int.cjs.map +1 -1
  1324. package/singlestore-core/columns/int.d.cts +1 -1
  1325. package/singlestore-core/columns/int.d.ts +1 -1
  1326. package/singlestore-core/columns/int.js +2 -2
  1327. package/singlestore-core/columns/int.js.map +1 -1
  1328. package/singlestore-core/columns/json.cjs +2 -2
  1329. package/singlestore-core/columns/json.cjs.map +1 -1
  1330. package/singlestore-core/columns/json.d.cts +1 -1
  1331. package/singlestore-core/columns/json.d.ts +1 -1
  1332. package/singlestore-core/columns/json.js +2 -2
  1333. package/singlestore-core/columns/json.js.map +1 -1
  1334. package/singlestore-core/columns/mediumint.cjs +2 -2
  1335. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  1336. package/singlestore-core/columns/mediumint.d.cts +1 -1
  1337. package/singlestore-core/columns/mediumint.d.ts +1 -1
  1338. package/singlestore-core/columns/mediumint.js +2 -2
  1339. package/singlestore-core/columns/mediumint.js.map +1 -1
  1340. package/singlestore-core/columns/serial.cjs +2 -2
  1341. package/singlestore-core/columns/serial.cjs.map +1 -1
  1342. package/singlestore-core/columns/serial.d.cts +1 -1
  1343. package/singlestore-core/columns/serial.d.ts +1 -1
  1344. package/singlestore-core/columns/serial.js +2 -2
  1345. package/singlestore-core/columns/serial.js.map +1 -1
  1346. package/singlestore-core/columns/smallint.cjs +2 -2
  1347. package/singlestore-core/columns/smallint.cjs.map +1 -1
  1348. package/singlestore-core/columns/smallint.d.cts +1 -1
  1349. package/singlestore-core/columns/smallint.d.ts +1 -1
  1350. package/singlestore-core/columns/smallint.js +2 -2
  1351. package/singlestore-core/columns/smallint.js.map +1 -1
  1352. package/singlestore-core/columns/timestamp.cjs +6 -6
  1353. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  1354. package/singlestore-core/columns/timestamp.d.cts +3 -3
  1355. package/singlestore-core/columns/timestamp.d.ts +3 -3
  1356. package/singlestore-core/columns/timestamp.js +6 -6
  1357. package/singlestore-core/columns/timestamp.js.map +1 -1
  1358. package/singlestore-core/columns/tinyint.cjs +2 -2
  1359. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  1360. package/singlestore-core/columns/tinyint.d.cts +1 -1
  1361. package/singlestore-core/columns/tinyint.d.ts +1 -1
  1362. package/singlestore-core/columns/tinyint.js +2 -2
  1363. package/singlestore-core/columns/tinyint.js.map +1 -1
  1364. package/singlestore-core/columns/varbinary.cjs +2 -2
  1365. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  1366. package/singlestore-core/columns/varbinary.d.cts +1 -1
  1367. package/singlestore-core/columns/varbinary.d.ts +1 -1
  1368. package/singlestore-core/columns/varbinary.js +2 -2
  1369. package/singlestore-core/columns/varbinary.js.map +1 -1
  1370. package/singlestore-core/columns/vector.cjs +8 -8
  1371. package/singlestore-core/columns/vector.cjs.map +1 -1
  1372. package/singlestore-core/columns/vector.d.cts +4 -4
  1373. package/singlestore-core/columns/vector.d.ts +4 -4
  1374. package/singlestore-core/columns/vector.js +8 -8
  1375. package/singlestore-core/columns/vector.js.map +1 -1
  1376. package/singlestore-core/columns/year.cjs +2 -2
  1377. package/singlestore-core/columns/year.cjs.map +1 -1
  1378. package/singlestore-core/columns/year.d.cts +1 -1
  1379. package/singlestore-core/columns/year.d.ts +1 -1
  1380. package/singlestore-core/columns/year.js +2 -2
  1381. package/singlestore-core/columns/year.js.map +1 -1
  1382. package/singlestore-core/db.d.ts +2 -2
  1383. package/singlestore-core/dialect.cjs +2 -2
  1384. package/singlestore-core/dialect.d.ts +1 -1
  1385. package/singlestore-core/dialect.js +2 -2
  1386. package/singlestore-core/query-builders/delete.d.ts +1 -1
  1387. package/singlestore-core/query-builders/insert.d.ts +1 -1
  1388. package/singlestore-core/query-builders/query.cjs +13 -5
  1389. package/singlestore-core/query-builders/query.cjs.map +1 -1
  1390. package/singlestore-core/query-builders/query.d.ts +1 -1
  1391. package/singlestore-core/query-builders/query.js +13 -5
  1392. package/singlestore-core/query-builders/query.js.map +1 -1
  1393. package/singlestore-core/query-builders/select.d.ts +1 -1
  1394. package/singlestore-core/query-builders/update.d.ts +1 -1
  1395. package/singlestore-core/session.cjs.map +1 -1
  1396. package/singlestore-core/session.d.cts +2 -2
  1397. package/singlestore-core/session.d.ts +2 -2
  1398. package/singlestore-core/session.js.map +1 -1
  1399. package/singlestore-core/table.cjs +1 -1
  1400. package/singlestore-core/table.cjs.map +1 -1
  1401. package/singlestore-core/table.js +1 -1
  1402. package/singlestore-core/table.js.map +1 -1
  1403. package/singlestore-proxy/driver.cjs +5 -2
  1404. package/singlestore-proxy/driver.cjs.map +1 -1
  1405. package/singlestore-proxy/driver.js +5 -2
  1406. package/singlestore-proxy/driver.js.map +1 -1
  1407. package/singlestore-proxy/session.cjs +11 -6
  1408. package/singlestore-proxy/session.cjs.map +1 -1
  1409. package/singlestore-proxy/session.d.cts +9 -4
  1410. package/singlestore-proxy/session.d.ts +10 -5
  1411. package/singlestore-proxy/session.js +12 -7
  1412. package/singlestore-proxy/session.js.map +1 -1
  1413. package/sql/index.cjs +1 -0
  1414. package/sql/index.d.cts +2 -2
  1415. package/sql/index.d.ts +2 -2
  1416. package/sql/index.js +2 -2
  1417. package/sql/sql.cjs +32 -11
  1418. package/sql/sql.cjs.map +1 -1
  1419. package/sql/sql.d.cts +15 -5
  1420. package/sql/sql.d.ts +15 -5
  1421. package/sql/sql.js +32 -12
  1422. package/sql/sql.js.map +1 -1
  1423. package/sql-js/driver.cjs +5 -2
  1424. package/sql-js/driver.cjs.map +1 -1
  1425. package/sql-js/driver.d.ts +1 -1
  1426. package/sql-js/driver.js +5 -2
  1427. package/sql-js/driver.js.map +1 -1
  1428. package/sql-js/session.cjs +14 -14
  1429. package/sql-js/session.cjs.map +1 -1
  1430. package/sql-js/session.d.cts +10 -6
  1431. package/sql-js/session.d.ts +10 -6
  1432. package/sql-js/session.js +15 -15
  1433. package/sql-js/session.js.map +1 -1
  1434. package/sqlite-cloud/driver.cjs +3 -2
  1435. package/sqlite-cloud/driver.cjs.map +1 -1
  1436. package/sqlite-cloud/driver.d.ts +1 -1
  1437. package/sqlite-cloud/driver.js +3 -2
  1438. package/sqlite-cloud/driver.js.map +1 -1
  1439. package/sqlite-cloud/session.cjs +21 -20
  1440. package/sqlite-cloud/session.cjs.map +1 -1
  1441. package/sqlite-cloud/session.d.cts +9 -6
  1442. package/sqlite-cloud/session.d.ts +10 -7
  1443. package/sqlite-cloud/session.js +22 -21
  1444. package/sqlite-cloud/session.js.map +1 -1
  1445. package/sqlite-core/columns/blob.cjs +10 -10
  1446. package/sqlite-core/columns/blob.cjs.map +1 -1
  1447. package/sqlite-core/columns/blob.d.cts +5 -5
  1448. package/sqlite-core/columns/blob.d.ts +5 -5
  1449. package/sqlite-core/columns/blob.js +10 -10
  1450. package/sqlite-core/columns/blob.js.map +1 -1
  1451. package/sqlite-core/columns/custom.cjs +4 -4
  1452. package/sqlite-core/columns/custom.cjs.map +1 -1
  1453. package/sqlite-core/columns/custom.d.cts +2 -2
  1454. package/sqlite-core/columns/custom.d.ts +2 -2
  1455. package/sqlite-core/columns/custom.js +4 -4
  1456. package/sqlite-core/columns/custom.js.map +1 -1
  1457. package/sqlite-core/columns/integer.cjs +8 -8
  1458. package/sqlite-core/columns/integer.cjs.map +1 -1
  1459. package/sqlite-core/columns/integer.d.cts +4 -4
  1460. package/sqlite-core/columns/integer.d.ts +4 -4
  1461. package/sqlite-core/columns/integer.js +8 -8
  1462. package/sqlite-core/columns/integer.js.map +1 -1
  1463. package/sqlite-core/columns/numeric.cjs +4 -4
  1464. package/sqlite-core/columns/numeric.cjs.map +1 -1
  1465. package/sqlite-core/columns/numeric.d.cts +2 -2
  1466. package/sqlite-core/columns/numeric.d.ts +2 -2
  1467. package/sqlite-core/columns/numeric.js +4 -4
  1468. package/sqlite-core/columns/numeric.js.map +1 -1
  1469. package/sqlite-core/columns/text.cjs +4 -4
  1470. package/sqlite-core/columns/text.cjs.map +1 -1
  1471. package/sqlite-core/columns/text.d.cts +2 -2
  1472. package/sqlite-core/columns/text.d.ts +2 -2
  1473. package/sqlite-core/columns/text.js +4 -4
  1474. package/sqlite-core/columns/text.js.map +1 -1
  1475. package/sqlite-core/db.d.ts +1 -1
  1476. package/sqlite-core/dialect.cjs +2 -2
  1477. package/sqlite-core/dialect.d.ts +1 -1
  1478. package/sqlite-core/dialect.js +2 -2
  1479. package/sqlite-core/index.cjs +9 -9
  1480. package/sqlite-core/index.js +9 -9
  1481. package/sqlite-core/query-builders/_query.cjs +1 -1
  1482. package/sqlite-core/query-builders/_query.cjs.map +1 -1
  1483. package/sqlite-core/query-builders/_query.js +1 -1
  1484. package/sqlite-core/query-builders/_query.js.map +1 -1
  1485. package/sqlite-core/query-builders/delete.cjs +1 -1
  1486. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  1487. package/sqlite-core/query-builders/delete.js +1 -1
  1488. package/sqlite-core/query-builders/delete.js.map +1 -1
  1489. package/sqlite-core/query-builders/index.cjs +1 -1
  1490. package/sqlite-core/query-builders/index.js +1 -1
  1491. package/sqlite-core/query-builders/insert.cjs +1 -1
  1492. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  1493. package/sqlite-core/query-builders/insert.js +1 -1
  1494. package/sqlite-core/query-builders/insert.js.map +1 -1
  1495. package/sqlite-core/query-builders/query.cjs +13 -5
  1496. package/sqlite-core/query-builders/query.cjs.map +1 -1
  1497. package/sqlite-core/query-builders/query.d.ts +1 -1
  1498. package/sqlite-core/query-builders/query.js +13 -5
  1499. package/sqlite-core/query-builders/query.js.map +1 -1
  1500. package/sqlite-core/query-builders/raw.cjs +0 -4
  1501. package/sqlite-core/query-builders/raw.cjs.map +1 -1
  1502. package/sqlite-core/query-builders/raw.js +0 -4
  1503. package/sqlite-core/query-builders/raw.js.map +1 -1
  1504. package/sqlite-core/query-builders/select.cjs +2 -2
  1505. package/sqlite-core/query-builders/select.cjs.map +1 -1
  1506. package/sqlite-core/query-builders/select.js +2 -2
  1507. package/sqlite-core/query-builders/select.js.map +1 -1
  1508. package/sqlite-core/query-builders/update.cjs +2 -2
  1509. package/sqlite-core/query-builders/update.cjs.map +1 -1
  1510. package/sqlite-core/query-builders/update.js +2 -2
  1511. package/sqlite-core/query-builders/update.js.map +1 -1
  1512. package/sqlite-core/session.cjs +8 -8
  1513. package/sqlite-core/session.cjs.map +1 -1
  1514. package/sqlite-core/session.d.cts +5 -5
  1515. package/sqlite-core/session.d.ts +5 -5
  1516. package/sqlite-core/session.js +8 -8
  1517. package/sqlite-core/session.js.map +1 -1
  1518. package/sqlite-core/table.cjs +1 -1
  1519. package/sqlite-core/table.cjs.map +1 -1
  1520. package/sqlite-core/table.js +1 -1
  1521. package/sqlite-core/table.js.map +1 -1
  1522. package/sqlite-core/utils.cjs +3 -3
  1523. package/sqlite-core/utils.js +3 -3
  1524. package/sqlite-proxy/driver.cjs +3 -2
  1525. package/sqlite-proxy/driver.cjs.map +1 -1
  1526. package/sqlite-proxy/driver.d.ts +1 -1
  1527. package/sqlite-proxy/driver.js +3 -2
  1528. package/sqlite-proxy/driver.js.map +1 -1
  1529. package/sqlite-proxy/session.cjs +20 -17
  1530. package/sqlite-proxy/session.cjs.map +1 -1
  1531. package/sqlite-proxy/session.d.cts +11 -7
  1532. package/sqlite-proxy/session.d.ts +12 -8
  1533. package/sqlite-proxy/session.js +21 -18
  1534. package/sqlite-proxy/session.js.map +1 -1
  1535. package/table.d.cts +1 -1
  1536. package/table.d.ts +1 -1
  1537. package/tidb-serverless/driver.cjs +3 -2
  1538. package/tidb-serverless/driver.cjs.map +1 -1
  1539. package/tidb-serverless/driver.d.cts +1 -0
  1540. package/tidb-serverless/driver.d.ts +1 -0
  1541. package/tidb-serverless/driver.js +3 -2
  1542. package/tidb-serverless/driver.js.map +1 -1
  1543. package/tidb-serverless/session.cjs +25 -37
  1544. package/tidb-serverless/session.cjs.map +1 -1
  1545. package/tidb-serverless/session.d.cts +10 -4
  1546. package/tidb-serverless/session.d.ts +12 -6
  1547. package/tidb-serverless/session.js +26 -38
  1548. package/tidb-serverless/session.js.map +1 -1
  1549. package/tursodatabase/driver-core.cjs +3 -2
  1550. package/tursodatabase/driver-core.cjs.map +1 -1
  1551. package/tursodatabase/driver-core.d.ts +1 -1
  1552. package/tursodatabase/driver-core.js +3 -2
  1553. package/tursodatabase/driver-core.js.map +1 -1
  1554. package/tursodatabase/session.cjs +20 -19
  1555. package/tursodatabase/session.cjs.map +1 -1
  1556. package/tursodatabase/session.d.cts +9 -6
  1557. package/tursodatabase/session.d.ts +10 -7
  1558. package/tursodatabase/session.js +21 -20
  1559. package/tursodatabase/session.js.map +1 -1
  1560. package/up-migrations/effect-pg.cjs +3 -3
  1561. package/up-migrations/effect-pg.cjs.map +1 -1
  1562. package/up-migrations/effect-pg.d.ts +1 -1
  1563. package/up-migrations/effect-pg.js +3 -3
  1564. package/up-migrations/effect-pg.js.map +1 -1
  1565. package/up-migrations/pg.cjs +3 -8
  1566. package/up-migrations/pg.cjs.map +1 -1
  1567. package/up-migrations/pg.d.cts +1 -1
  1568. package/up-migrations/pg.d.ts +2 -2
  1569. package/up-migrations/pg.js +3 -8
  1570. package/up-migrations/pg.js.map +1 -1
  1571. package/up-migrations/sqlite.d.ts +2 -2
  1572. package/utils.cjs +129 -7
  1573. package/utils.cjs.map +1 -1
  1574. package/utils.d.cts +10 -3
  1575. package/utils.d.ts +10 -3
  1576. package/utils.js +127 -8
  1577. package/utils.js.map +1 -1
  1578. package/vercel-postgres/driver.cjs +14 -32
  1579. package/vercel-postgres/driver.cjs.map +1 -1
  1580. package/vercel-postgres/driver.d.cts +12 -17
  1581. package/vercel-postgres/driver.d.ts +13 -18
  1582. package/vercel-postgres/driver.js +14 -31
  1583. package/vercel-postgres/driver.js.map +1 -1
  1584. package/vercel-postgres/index.cjs +2 -3
  1585. package/vercel-postgres/index.d.cts +3 -3
  1586. package/vercel-postgres/index.d.ts +3 -3
  1587. package/vercel-postgres/index.js +3 -3
  1588. package/vercel-postgres/migrator.cjs.map +1 -1
  1589. package/vercel-postgres/migrator.d.cts +1 -1
  1590. package/vercel-postgres/migrator.d.ts +1 -1
  1591. package/vercel-postgres/migrator.js.map +1 -1
  1592. package/vercel-postgres/session.cjs +32 -110
  1593. package/vercel-postgres/session.cjs.map +1 -1
  1594. package/vercel-postgres/session.d.cts +9 -32
  1595. package/vercel-postgres/session.d.ts +10 -33
  1596. package/vercel-postgres/session.js +34 -111
  1597. package/vercel-postgres/session.js.map +1 -1
  1598. package/xata-http/driver.cjs +91 -31
  1599. package/xata-http/driver.cjs.map +1 -1
  1600. package/xata-http/driver.d.cts +10 -16
  1601. package/xata-http/driver.d.ts +11 -17
  1602. package/xata-http/driver.js +91 -30
  1603. package/xata-http/driver.js.map +1 -1
  1604. package/xata-http/index.cjs +2 -4
  1605. package/xata-http/index.d.cts +3 -3
  1606. package/xata-http/index.d.ts +3 -3
  1607. package/xata-http/index.js +3 -3
  1608. package/xata-http/migrator.cjs +1 -1
  1609. package/xata-http/migrator.cjs.map +1 -1
  1610. package/xata-http/migrator.d.cts +1 -1
  1611. package/xata-http/migrator.d.ts +1 -1
  1612. package/xata-http/migrator.js +1 -1
  1613. package/xata-http/migrator.js.map +1 -1
  1614. package/xata-http/session.cjs +24 -110
  1615. package/xata-http/session.cjs.map +1 -1
  1616. package/xata-http/session.d.cts +7 -33
  1617. package/xata-http/session.d.ts +8 -34
  1618. package/xata-http/session.js +26 -110
  1619. package/xata-http/session.js.map +1 -1
  1620. package/pg-core/query-builders/_query.cjs +0 -101
  1621. package/pg-core/query-builders/_query.cjs.map +0 -1
  1622. package/pg-core/query-builders/_query.d.cts +0 -55
  1623. package/pg-core/query-builders/_query.d.ts +0 -55
  1624. package/pg-core/query-builders/_query.js +0 -97
  1625. package/pg-core/query-builders/_query.js.map +0 -1
  1626. package/pg-core/utils/array.cjs.map +0 -1
  1627. package/pg-core/utils/array.js.map +0 -1
  1628. package/pg-core/utils/index.cjs +0 -6
  1629. package/pg-core/utils/index.d.cts +0 -2
  1630. package/pg-core/utils/index.d.ts +0 -2
  1631. package/pg-core/utils/index.js +0 -3
@@ -1,34 +1,40 @@
1
1
  import { entityKind, is } from "../entity.js";
2
2
  import { Column } from "../column.js";
3
- import { mapResultRow } from "../utils.js";
3
+ import { makeJitQueryMapper, mapResultRow } from "../utils.js";
4
4
  import { fillPlaceholders, sql } from "../sql/sql.js";
5
- import { NoopLogger } from "../logger.js";
6
5
  import { NoopCache } from "../cache/core/index.js";
6
+ import { NoopLogger } from "../logger.js";
7
7
  import { MySqlPreparedQuery, MySqlSession, MySqlTransaction } from "../mysql-core/session.js";
8
+ import { makeJitRqbMapper } from "../relations.js";
8
9
 
9
10
  //#region src/tidb-serverless/session.ts
10
11
  const executeRawConfig = { fullResult: true };
11
12
  const queryConfig = { arrayMode: true };
12
13
  var TiDBServerlessPreparedQuery = class extends MySqlPreparedQuery {
13
14
  static [entityKind] = "TiDBPreparedQuery";
14
- constructor(client, query, logger, cache, queryMetadata, cacheConfig, fields, customResultMapper, generatedIds, returningIds, isRqbV2Query) {
15
- super(query, cache, queryMetadata, cacheConfig);
15
+ jitMapper;
16
+ constructor(client, queryString, params, logger, cache, queryMetadata, cacheConfig, fields, useJitMapper, customResultMapper, generatedIds, returningIds, isRqbV2Query, rqbConfig) {
17
+ super(cache, queryMetadata, cacheConfig);
16
18
  this.client = client;
19
+ this.queryString = queryString;
20
+ this.params = params;
17
21
  this.logger = logger;
18
22
  this.fields = fields;
23
+ this.useJitMapper = useJitMapper;
19
24
  this.customResultMapper = customResultMapper;
20
25
  this.generatedIds = generatedIds;
21
26
  this.returningIds = returningIds;
22
27
  this.isRqbV2Query = isRqbV2Query;
28
+ this.rqbConfig = rqbConfig;
23
29
  }
24
30
  async execute(placeholderValues = {}) {
25
31
  if (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);
26
- const params = fillPlaceholders(this.query.params, placeholderValues);
27
- this.logger.logQuery(this.query.sql, params);
28
- const { fields, client, query, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } = this;
32
+ const params = fillPlaceholders(this.params, placeholderValues);
33
+ this.logger.logQuery(this.queryString, params);
34
+ const { fields, client, queryString, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } = this;
29
35
  if (!fields && !customResultMapper) {
30
- const res = await this.queryWithCache(query.sql, params, async () => {
31
- return await client.execute(query.sql, params, executeRawConfig);
36
+ const res = await this.queryWithCache(queryString, params, async () => {
37
+ return await client.execute(queryString, params, executeRawConfig);
32
38
  });
33
39
  const insertId = res.lastInsertId ?? 0;
34
40
  const affectedRows = res.rowsAffected ?? 0;
@@ -49,36 +55,18 @@ var TiDBServerlessPreparedQuery = class extends MySqlPreparedQuery {
49
55
  }
50
56
  return res;
51
57
  }
52
- const rows = await this.queryWithCache(query.sql, params, async () => {
53
- return await client.execute(query.sql, params, queryConfig);
58
+ const rows = await this.queryWithCache(queryString, params, async () => {
59
+ return await client.execute(queryString, params, queryConfig);
54
60
  });
55
61
  if (customResultMapper) return customResultMapper(rows);
56
- return rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
62
+ return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? makeJitQueryMapper(fields, joinsNotNullableMap))(rows) : rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
57
63
  }
58
64
  async executeRqbV2(placeholderValues = {}) {
59
- const params = fillPlaceholders(this.query.params, placeholderValues);
60
- this.logger.logQuery(this.query.sql, params);
61
- const { client, query, customResultMapper, returningIds, generatedIds } = this;
62
- const res = await client.execute(query.sql, params, executeRawConfig);
63
- const insertId = res.lastInsertId ?? 0;
64
- const affectedRows = res.rowsAffected ?? 0;
65
- if (returningIds) {
66
- const returningResponse = [];
67
- let j = 0;
68
- for (let i = insertId; i < insertId + affectedRows; i++) {
69
- for (const column of returningIds) {
70
- const key = returningIds[0].path[0];
71
- if (is(column.field, Column)) {
72
- if (column.field.primary && column.field.autoIncrement) returningResponse.push({ [key]: i });
73
- if (column.field.defaultFn && generatedIds) returningResponse.push({ [key]: generatedIds[j][key] });
74
- }
75
- }
76
- j++;
77
- }
78
- return customResultMapper(returningResponse);
79
- }
80
- const { rows } = res;
81
- return customResultMapper(rows ?? []);
65
+ const params = fillPlaceholders(this.params, placeholderValues);
66
+ this.logger.logQuery(this.queryString, params);
67
+ const { client, queryString, customResultMapper } = this;
68
+ const { rows } = await client.execute(queryString, params, executeRawConfig);
69
+ return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? makeJitRqbMapper(this.rqbConfig))(rows ?? []) : customResultMapper(rows ?? []);
82
70
  }
83
71
  iterator(_placeholderValues) {
84
72
  throw new Error("Streaming is not supported by the TiDB Cloud Serverless driver");
@@ -100,10 +88,10 @@ var TiDBServerlessSession = class TiDBServerlessSession extends MySqlSession {
100
88
  this.cache = options.cache ?? new NoopCache();
101
89
  }
102
90
  prepareQuery(query, fields, customResultMapper, generatedIds, returningIds, queryMetadata, cacheConfig) {
103
- return new TiDBServerlessPreparedQuery(this.client, query, this.logger, this.cache, queryMetadata, cacheConfig, fields, customResultMapper, generatedIds, returningIds);
91
+ return new TiDBServerlessPreparedQuery(this.client, query.sql, query.params, this.logger, this.cache, queryMetadata, cacheConfig, fields, this.options.useJitMapper, customResultMapper, generatedIds, returningIds);
104
92
  }
105
- prepareRelationalQuery(query, fields, customResultMapper, generatedIds, returningIds) {
106
- return new TiDBServerlessPreparedQuery(this.client, query, this.logger, this.cache, void 0, void 0, fields, customResultMapper, generatedIds, returningIds, true);
93
+ prepareRelationalQuery(query, fields, customResultMapper, config, generatedIds, returningIds) {
94
+ return new TiDBServerlessPreparedQuery(this.client, query.sql, query.params, this.logger, this.cache, void 0, void 0, fields, this.options.useJitMapper, customResultMapper, generatedIds, returningIds, true, config);
107
95
  }
108
96
  all(query) {
109
97
  const querySql = this.dialect.sqlToQuery(query);
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","names":[],"sources":["../../src/tidb-serverless/session.ts"],"sourcesContent":["import type { Connection, ExecuteOptions, FullResult, Tx } from '@tidbcloud/serverless';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { Column } from '~/column.ts';\n\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n} from '~/mysql-core/session.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nconst executeRawConfig = { fullResult: true } satisfies ExecuteOptions;\nconst queryConfig = { arrayMode: true } satisfies ExecuteOptions;\n\nexport class TiDBServerlessPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'TiDBPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: Tx | Connection,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper(query, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, query, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await client.execute(query.sql, params, executeRawConfig) as FullResult;\n\t\t\t});\n\t\t\tconst insertId = res.lastInsertId ?? 0;\n\t\t\tconst affectedRows = res.rowsAffected ?? 0;\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\t\t\treturn res;\n\t\t}\n\n\t\tconst rows = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await client.execute(query.sql, params, queryConfig) as unknown[][];\n\t\t});\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => T['execute'])(rows);\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, query, customResultMapper, returningIds, generatedIds } = this;\n\t\tconst res = await client.execute(query.sql, params, executeRawConfig) as FullResult;\n\t\tconst insertId = res.lastInsertId ?? 0;\n\t\tconst affectedRows = res.rowsAffected ?? 0;\n\t\t// for each row, I need to check keys from\n\t\tif (returningIds) {\n\t\t\tconst returningResponse = [];\n\t\t\tlet j = 0;\n\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tj++;\n\t\t\t}\n\n\t\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(returningResponse);\n\t\t}\n\n\t\tconst { rows } = res;\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(\n\t\t\t(rows ?? []) as Record<string, any>[],\n\t\t);\n\t}\n\n\toverride iterator(_placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']> {\n\t\tthrow new Error('Streaming is not supported by the TiDB Cloud Serverless driver');\n\t}\n}\n\nexport interface TiDBServerlessSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class TiDBServerlessSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<\n\tTiDBServerlessQueryResultHKT,\n\tTiDBServerlessPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'TiDBServerlessSession';\n\n\tprivate logger: Logger;\n\tprivate client: Tx | Connection;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate baseClient: Connection,\n\t\tdialect: MySqlDialect,\n\t\ttx: Tx | undefined,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: TiDBServerlessSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.client = tx ?? baseClient;\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): MySqlPreparedQuery<T> {\n\t\treturn new TiDBServerlessPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): MySqlPreparedQuery<T> {\n\t\treturn new TiDBServerlessPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\t\treturn this.client.execute(querySql.sql, querySql.params) as Promise<T[]>;\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst nativeTx = await this.baseClient.begin();\n\t\ttry {\n\t\t\tconst session = new TiDBServerlessSession(\n\t\t\t\tthis.baseClient,\n\t\t\t\tthis.dialect,\n\t\t\t\tnativeTx,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t);\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait nativeTx.commit();\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait nativeTx.rollback();\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class TiDBServerlessTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tTiDBServerlessQueryResultHKT,\n\tTiDBServerlessPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'TiDBServerlessTransaction';\n\n\tconstructor(\n\t\tdialect: MySqlDialect,\n\t\tsession: MySqlSession,\n\t\trelations: TRelations,\n\t\tschema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tnestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, relations, schema, nestedIndex, 'default');\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface TiDBServerlessQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: FullResult;\n}\n\nexport interface TiDBServerlessPreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: TiDBServerlessPreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"session.js","names":[],"sources":["../../src/tidb-serverless/session.ts"],"sourcesContent":["import type { Connection, ExecuteOptions, FullResult, Tx } from '@tidbcloud/serverless';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { Column } from '~/column.ts';\n\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n} from '~/mysql-core/session.ts';\nimport {\n\ttype AnyRelations,\n\tmakeJitRqbMapper,\n\ttype RelationalQueryMapperConfig,\n\ttype RelationalRowsMapper,\n} from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, makeJitQueryMapper, mapResultRow, type RowsMapper } from '~/utils.ts';\n\nconst executeRawConfig = { fullResult: true } satisfies ExecuteOptions;\nconst queryConfig = { arrayMode: true } satisfies ExecuteOptions;\n\nexport class TiDBServerlessPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'TiDBPreparedQuery';\n\tprivate jitMapper?: RowsMapper<T['execute']> | RelationalRowsMapper<T['execute']>;\n\n\tconstructor(\n\t\tprivate client: Tx | Connection,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate useJitMapper: boolean | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t\tprivate rqbConfig?: RelationalQueryMapperConfig,\n\t) {\n\t\tsuper(cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.queryString, params);\n\n\t\tconst { fields, client, queryString, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(queryString, params, async () => {\n\t\t\t\treturn await client.execute(queryString, params, executeRawConfig) as FullResult;\n\t\t\t});\n\t\t\tconst insertId = res.lastInsertId ?? 0;\n\t\t\tconst affectedRows = res.rowsAffected ?? 0;\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\t\t\treturn res;\n\t\t}\n\n\t\tconst rows = await this.queryWithCache(queryString, params, async () => {\n\t\t\treturn await client.execute(queryString, params, queryConfig) as unknown[][];\n\t\t});\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => T['execute'])(rows);\n\t\t}\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RowsMapper<T['execute']>\n\t\t\t\t?? makeJitQueryMapper<T['execute']>(fields!, joinsNotNullableMap))(rows)\n\t\t\t: rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.queryString, params);\n\n\t\tconst { client, queryString, customResultMapper } = this;\n\t\tconst res = await client.execute(queryString, params, executeRawConfig) as FullResult;\n\n\t\tconst { rows } = res;\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RelationalRowsMapper<T['execute']>\n\t\t\t\t?? makeJitRqbMapper<T['execute']>(this.rqbConfig!))((rows ?? []) as Record<string, any>[])\n\t\t\t: (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(\n\t\t\t\t(rows ?? []) as Record<string, any>[],\n\t\t\t);\n\t}\n\n\toverride iterator(_placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']> {\n\t\tthrow new Error('Streaming is not supported by the TiDB Cloud Serverless driver');\n\t}\n}\n\nexport interface TiDBServerlessSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tuseJitMapper?: boolean;\n}\n\nexport class TiDBServerlessSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<\n\tTiDBServerlessQueryResultHKT,\n\tTiDBServerlessPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'TiDBServerlessSession';\n\n\tprivate logger: Logger;\n\tprivate client: Tx | Connection;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate baseClient: Connection,\n\t\tdialect: MySqlDialect,\n\t\ttx: Tx | undefined,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: TiDBServerlessSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.client = tx ?? baseClient;\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): MySqlPreparedQuery<T> {\n\t\treturn new TiDBServerlessPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tconfig: RelationalQueryMapperConfig,\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): MySqlPreparedQuery<T> {\n\t\treturn new TiDBServerlessPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t\tconfig,\n\t\t);\n\t}\n\n\toverride all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\t\treturn this.client.execute(querySql.sql, querySql.params) as Promise<T[]>;\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst nativeTx = await this.baseClient.begin();\n\t\ttry {\n\t\t\tconst session = new TiDBServerlessSession(\n\t\t\t\tthis.baseClient,\n\t\t\t\tthis.dialect,\n\t\t\t\tnativeTx,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t);\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait nativeTx.commit();\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait nativeTx.rollback();\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class TiDBServerlessTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tTiDBServerlessQueryResultHKT,\n\tTiDBServerlessPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'TiDBServerlessTransaction';\n\n\tconstructor(\n\t\tdialect: MySqlDialect,\n\t\tsession: MySqlSession,\n\t\trelations: TRelations,\n\t\tschema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tnestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, relations, schema, nestedIndex, 'default');\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new TiDBServerlessTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface TiDBServerlessQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: FullResult;\n}\n\nexport interface TiDBServerlessPreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: TiDBServerlessPreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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"}
@@ -2,9 +2,9 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
3
3
  const require_tursodatabase_session = require('./session.cjs');
4
4
  let __entity_ts = require("../entity.cjs");
5
+ let __logger_ts = require("../logger.cjs");
5
6
  let ___relations_ts = require("../_relations.cjs");
6
7
  ___relations_ts = require_runtime.__toESM(___relations_ts);
7
- let __logger_ts = require("../logger.cjs");
8
8
  let __sqlite_core_db_ts = require("../sqlite-core/db.cjs");
9
9
  let __sqlite_core_dialect_ts = require("../sqlite-core/dialect.cjs");
10
10
 
@@ -30,7 +30,8 @@ function construct(client, config = {}) {
30
30
  const relations = config.relations ?? {};
31
31
  const db = new TursoDatabaseDatabase("async", dialect, new require_tursodatabase_session.TursoDatabaseSession(client, dialect, relations, schema, {
32
32
  logger,
33
- cache: config.cache
33
+ cache: config.cache,
34
+ useJitMapper: config.useJitMappers
34
35
  }), relations, schema);
35
36
  db.$client = client;
36
37
  db.$cache = config.cache;
@@ -1 +1 @@
1
- {"version":3,"file":"driver-core.cjs","names":["BaseSQLiteDatabase","entityKind","SQLiteAsyncDialect","DefaultLogger","V1","TursoDatabaseSession"],"sources":["../../src/tursodatabase/driver-core.ts"],"sourcesContent":["import type { DatabasePromise } from '@tursodatabase/database-common';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { TursoDatabaseSession } from './session.ts';\n\nexport type TursoDatabaseRunResult = Awaited<ReturnType<ReturnType<DatabasePromise['prepare']>['run']>>;\n\nexport class TursoDatabaseDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', TursoDatabaseRunResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: TursoDatabaseSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n}\n\n/** @internal */\nexport function construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: DatabasePromise,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): TursoDatabaseDatabase<TSchema, TRelations> & {\n\t$client: DatabasePromise;\n} {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new TursoDatabaseSession(\n\t\tclient,\n\t\tdialect,\n\t\trelations,\n\t\tschema,\n\t\t{ logger, cache: config.cache },\n\t);\n\tconst db = new TursoDatabaseDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as TursoDatabaseSession<\n\t\t\tTSchema,\n\t\t\tTRelations,\n\t\t\tV1.ExtractTablesWithRelations<TSchema>\n\t\t>,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as TursoDatabaseDatabase<TSchema, TRelations>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\treturn db as any;\n}\n"],"mappings":";;;;;;;;;;;AAYA,IAAa,wBAAb,cAGUA,uCAAyE;CAClF,QAA0BC,0BAAsB;;;AAWjD,SAAgB,UAIf,QACA,SAA6C,EAAE,EAG9C;CACD,MAAM,UAAU,IAAIC,4CAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAIC,2BAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAeC,gBAAG,8BACvB,OAAO,QACPA,gBAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAQxC,MAAM,KAAK,IAAI,sBACd,SACA,SATe,IAAIC,mDACnB,QACA,SACA,WACA,QACA;EAAE;EAAQ,OAAO,OAAO;EAAO,CAC/B,EASA,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAEjD,QAAO"}
1
+ {"version":3,"file":"driver-core.cjs","names":["BaseSQLiteDatabase","entityKind","SQLiteAsyncDialect","DefaultLogger","V1","TursoDatabaseSession"],"sources":["../../src/tursodatabase/driver-core.ts"],"sourcesContent":["import type { DatabasePromise } from '@tursodatabase/database-common';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { TursoDatabaseSession } from './session.ts';\n\nexport type TursoDatabaseRunResult = Awaited<ReturnType<ReturnType<DatabasePromise['prepare']>['run']>>;\n\nexport class TursoDatabaseDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', TursoDatabaseRunResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: TursoDatabaseSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n}\n\n/** @internal */\nexport function construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: DatabasePromise,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): TursoDatabaseDatabase<TSchema, TRelations> & {\n\t$client: DatabasePromise;\n} {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new TursoDatabaseSession(\n\t\tclient,\n\t\tdialect,\n\t\trelations,\n\t\tschema,\n\t\t{ logger, cache: config.cache, useJitMapper: config.useJitMappers },\n\t);\n\tconst db = new TursoDatabaseDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as TursoDatabaseSession<\n\t\t\tTSchema,\n\t\t\tTRelations,\n\t\t\tV1.ExtractTablesWithRelations<TSchema>\n\t\t>,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as TursoDatabaseDatabase<TSchema, TRelations>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\treturn db as any;\n}\n"],"mappings":";;;;;;;;;;;AAYA,IAAa,wBAAb,cAGUA,uCAAyE;CAClF,QAA0BC,0BAAsB;;;AAWjD,SAAgB,UAIf,QACA,SAA6C,EAAE,EAG9C;CACD,MAAM,UAAU,IAAIC,4CAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAIC,2BAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAeC,gBAAG,8BACvB,OAAO,QACPA,gBAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAQxC,MAAM,KAAK,IAAI,sBACd,SACA,SATe,IAAIC,mDACnB,QACA,SACA,WACA,QACA;EAAE;EAAQ,OAAO,OAAO;EAAO,cAAc,OAAO;EAAe,CACnE,EASA,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAEjD,QAAO"}
@@ -1,6 +1,6 @@
1
1
  import { entityKind } from "../entity.js";
2
- import { BaseSQLiteDatabase } from "../sqlite-core/db.js";
3
2
  import { AnyRelations, EmptyRelations } from "../relations.js";
3
+ import { BaseSQLiteDatabase } from "../sqlite-core/db.js";
4
4
  import { DatabasePromise } from "@tursodatabase/database-common";
5
5
 
6
6
  //#region src/tursodatabase/driver-core.d.ts
@@ -1,7 +1,7 @@
1
1
  import { TursoDatabaseSession } from "./session.js";
2
2
  import { entityKind } from "../entity.js";
3
- import * as V1 from "../_relations.js";
4
3
  import { DefaultLogger } from "../logger.js";
4
+ import * as V1 from "../_relations.js";
5
5
  import { BaseSQLiteDatabase } from "../sqlite-core/db.js";
6
6
  import { SQLiteAsyncDialect } from "../sqlite-core/dialect.js";
7
7
 
@@ -27,7 +27,8 @@ function construct(client, config = {}) {
27
27
  const relations = config.relations ?? {};
28
28
  const db = new TursoDatabaseDatabase("async", dialect, new TursoDatabaseSession(client, dialect, relations, schema, {
29
29
  logger,
30
- cache: config.cache
30
+ cache: config.cache,
31
+ useJitMapper: config.useJitMappers
31
32
  }), relations, schema);
32
33
  db.$client = client;
33
34
  db.$cache = config.cache;
@@ -1 +1 @@
1
- {"version":3,"file":"driver-core.js","names":[],"sources":["../../src/tursodatabase/driver-core.ts"],"sourcesContent":["import type { DatabasePromise } from '@tursodatabase/database-common';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { TursoDatabaseSession } from './session.ts';\n\nexport type TursoDatabaseRunResult = Awaited<ReturnType<ReturnType<DatabasePromise['prepare']>['run']>>;\n\nexport class TursoDatabaseDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', TursoDatabaseRunResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: TursoDatabaseSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n}\n\n/** @internal */\nexport function construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: DatabasePromise,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): TursoDatabaseDatabase<TSchema, TRelations> & {\n\t$client: DatabasePromise;\n} {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new TursoDatabaseSession(\n\t\tclient,\n\t\tdialect,\n\t\trelations,\n\t\tschema,\n\t\t{ logger, cache: config.cache },\n\t);\n\tconst db = new TursoDatabaseDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as TursoDatabaseSession<\n\t\t\tTSchema,\n\t\t\tTRelations,\n\t\t\tV1.ExtractTablesWithRelations<TSchema>\n\t\t>,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as TursoDatabaseDatabase<TSchema, TRelations>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\treturn db as any;\n}\n"],"mappings":";;;;;;;;AAYA,IAAa,wBAAb,cAGU,mBAAyE;CAClF,QAA0B,cAAsB;;;AAWjD,SAAgB,UAIf,QACA,SAA6C,EAAE,EAG9C;CACD,MAAM,UAAU,IAAI,mBAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAI,eAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAe,GAAG,8BACvB,OAAO,QACP,GAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAQxC,MAAM,KAAK,IAAI,sBACd,SACA,SATe,IAAI,qBACnB,QACA,SACA,WACA,QACA;EAAE;EAAQ,OAAO,OAAO;EAAO,CAC/B,EASA,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAEjD,QAAO"}
1
+ {"version":3,"file":"driver-core.js","names":[],"sources":["../../src/tursodatabase/driver-core.ts"],"sourcesContent":["import type { DatabasePromise } from '@tursodatabase/database-common';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { TursoDatabaseSession } from './session.ts';\n\nexport type TursoDatabaseRunResult = Awaited<ReturnType<ReturnType<DatabasePromise['prepare']>['run']>>;\n\nexport class TursoDatabaseDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', TursoDatabaseRunResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: TursoDatabaseSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n}\n\n/** @internal */\nexport function construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: DatabasePromise,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): TursoDatabaseDatabase<TSchema, TRelations> & {\n\t$client: DatabasePromise;\n} {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new TursoDatabaseSession(\n\t\tclient,\n\t\tdialect,\n\t\trelations,\n\t\tschema,\n\t\t{ logger, cache: config.cache, useJitMapper: config.useJitMappers },\n\t);\n\tconst db = new TursoDatabaseDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as TursoDatabaseSession<\n\t\t\tTSchema,\n\t\t\tTRelations,\n\t\t\tV1.ExtractTablesWithRelations<TSchema>\n\t\t>,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as TursoDatabaseDatabase<TSchema, TRelations>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\treturn db as any;\n}\n"],"mappings":";;;;;;;;AAYA,IAAa,wBAAb,cAGU,mBAAyE;CAClF,QAA0B,cAAsB;;;AAWjD,SAAgB,UAIf,QACA,SAA6C,EAAE,EAG9C;CACD,MAAM,UAAU,IAAI,mBAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAI,eAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAe,GAAG,8BACvB,OAAO,QACP,GAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAQxC,MAAM,KAAK,IAAI,sBACd,SACA,SATe,IAAI,qBACnB,QACA,SACA,WACA,QACA;EAAE;EAAQ,OAAO,OAAO;EAAO,cAAc,OAAO;EAAe,CACnE,EASA,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAEjD,QAAO"}
@@ -3,9 +3,10 @@ const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
3
3
  let __entity_ts = require("../entity.cjs");
4
4
  let __utils_ts = require("../utils.cjs");
5
5
  let __sql_sql_ts = require("../sql/sql.cjs");
6
- let __logger_ts = require("../logger.cjs");
7
6
  let __cache_core_index_ts = require("../cache/core/index.cjs");
7
+ let __logger_ts = require("../logger.cjs");
8
8
  let __errors_ts = require("../errors.cjs");
9
+ let __relations_ts = require("../relations.cjs");
9
10
  let __sqlite_core_index_ts = require("../sqlite-core/index.cjs");
10
11
  let __sqlite_core_session_ts = require("../sqlite-core/session.cjs");
11
12
 
@@ -23,11 +24,11 @@ var TursoDatabaseSession = class TursoDatabaseSession extends __sqlite_core_sess
23
24
  this.logger = options.logger ?? new __logger_ts.NoopLogger();
24
25
  this.cache = options.cache ?? new __cache_core_index_ts.NoopCache();
25
26
  }
26
- prepareQuery(query, fields, executeMethod, isResponseInArrayMode, customResultMapper, queryMetadata, cacheConfig) {
27
- return new TursoDatabasePreparedQuery(this.client.prepare(query.sql), query, this.logger, this.cache, queryMetadata, cacheConfig, fields, executeMethod, isResponseInArrayMode, customResultMapper);
27
+ prepareQuery(query, fields, executeMethod, customResultMapper, queryMetadata, cacheConfig) {
28
+ return new TursoDatabasePreparedQuery(this.client.prepare(query.sql), query, this.logger, this.cache, queryMetadata, cacheConfig, fields, executeMethod, this.options.useJitMapper, customResultMapper);
28
29
  }
29
- prepareRelationalQuery(query, fields, executeMethod, customResultMapper) {
30
- return new TursoDatabasePreparedQuery(this.client.prepare(query.sql), query, this.logger, this.cache, void 0, void 0, fields, executeMethod, false, customResultMapper, true);
30
+ prepareRelationalQuery(query, fields, executeMethod, customResultMapper, config) {
31
+ return new TursoDatabasePreparedQuery(this.client.prepare(query.sql), query, this.logger, this.cache, void 0, void 0, fields, executeMethod, this.options.useJitMapper, customResultMapper, true, config);
31
32
  }
32
33
  async transaction(transaction, _config, tx) {
33
34
  const session = new TursoDatabaseSession(this.client, this.dialect, this.relations, this.schema, this.options);
@@ -37,7 +38,7 @@ var TursoDatabaseSession = class TursoDatabaseSession extends __sqlite_core_sess
37
38
  async run(query) {
38
39
  const staticQuery = this.dialect.sqlToQuery(query);
39
40
  try {
40
- return await this.prepareOneTimeQuery(staticQuery, void 0, "run", false).run();
41
+ return await this.prepareOneTimeQuery(staticQuery, void 0, "run").run();
41
42
  } catch (err) {
42
43
  throw new __errors_ts.DrizzleError({
43
44
  cause: err,
@@ -46,13 +47,13 @@ var TursoDatabaseSession = class TursoDatabaseSession extends __sqlite_core_sess
46
47
  }
47
48
  }
48
49
  async all(query) {
49
- return await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), void 0, "run", false).all();
50
+ return await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), void 0, "run").all();
50
51
  }
51
52
  async get(query) {
52
- return await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), void 0, "run", false).get();
53
+ return await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), void 0, "run").get();
53
54
  }
54
55
  async values(query) {
55
- return await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), void 0, "run", false).values();
56
+ return await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), void 0, "run").values();
56
57
  }
57
58
  };
58
59
  var TursoDatabaseTransaction = class extends __sqlite_core_index_ts.SQLiteTransaction {
@@ -63,14 +64,16 @@ var TursoDatabaseTransaction = class extends __sqlite_core_index_ts.SQLiteTransa
63
64
  };
64
65
  var TursoDatabasePreparedQuery = class extends __sqlite_core_session_ts.SQLitePreparedQuery {
65
66
  static [__entity_ts.entityKind] = "TursoDatabasePreparedQuery";
66
- constructor(stmt, query, logger, cache, queryMetadata, cacheConfig, fields, executeMethod, _isResponseInArrayMode, customResultMapper, isRqbV2Query) {
67
+ jitMapper;
68
+ constructor(stmt, query, logger, cache, queryMetadata, cacheConfig, fields, executeMethod, useJitMapper, customResultMapper, isRqbV2Query, rqbConfig) {
67
69
  super("async", executeMethod, query, cache, queryMetadata, cacheConfig);
68
70
  this.stmt = stmt;
69
71
  this.logger = logger;
70
72
  this.fields = fields;
71
- this._isResponseInArrayMode = _isResponseInArrayMode;
73
+ this.useJitMapper = useJitMapper;
72
74
  this.customResultMapper = customResultMapper;
73
75
  this.isRqbV2Query = isRqbV2Query;
76
+ this.rqbConfig = rqbConfig;
74
77
  }
75
78
  async run(placeholderValues) {
76
79
  const { stmt, query, logger } = this;
@@ -90,13 +93,15 @@ var TursoDatabasePreparedQuery = class extends __sqlite_core_session_ts.SQLitePr
90
93
  return await (params.length ? stmt.raw(false).all(...params) : stmt.raw(false).all());
91
94
  });
92
95
  }
93
- return (await this.values(placeholderValues)).map((row) => (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap));
96
+ const rows = await this.values(placeholderValues);
97
+ return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? (0, __utils_ts.makeJitQueryMapper)(fields, joinsNotNullableMap))(rows) : rows.map((row) => (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap));
94
98
  }
95
99
  async allRqbV2(placeholderValues) {
96
100
  const { logger, query, customResultMapper, stmt } = this;
97
101
  const params = (0, __sql_sql_ts.fillPlaceholders)(query.params, placeholderValues ?? {});
98
102
  logger.logQuery(query.sql, params);
99
- return customResultMapper(await (params.length ? stmt.raw(false).all(...params) : stmt.raw(false).all()));
103
+ const rows = await (params.length ? stmt.raw(false).all(...params) : stmt.raw(false).all());
104
+ return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? (0, __relations_ts.makeJitRqbMapper)(this.rqbConfig))(rows) : customResultMapper(rows);
100
105
  }
101
106
  async get(placeholderValues) {
102
107
  if (this.isRqbV2Query) return await this.getRqbV2(placeholderValues);
@@ -112,7 +117,7 @@ var TursoDatabasePreparedQuery = class extends __sqlite_core_session_ts.SQLitePr
112
117
  return await (params.length ? stmt.raw(true).get(...params) : stmt.raw(true).get());
113
118
  });
114
119
  if (row === void 0) return row;
115
- return (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap);
120
+ return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? (0, __utils_ts.makeJitQueryMapper)(fields, joinsNotNullableMap))([row])[0] : (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap);
116
121
  }
117
122
  async getRqbV2(placeholderValues) {
118
123
  const { logger, query, stmt, customResultMapper } = this;
@@ -120,7 +125,7 @@ var TursoDatabasePreparedQuery = class extends __sqlite_core_session_ts.SQLitePr
120
125
  logger.logQuery(query.sql, params);
121
126
  const row = await (params.length ? stmt.raw(false).get(...params) : stmt.raw(false).get());
122
127
  if (row === void 0) return row;
123
- return customResultMapper([row]);
128
+ return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? (0, __relations_ts.makeJitRqbMapper)(this.rqbConfig))([row]) : customResultMapper([row]);
124
129
  }
125
130
  async values(placeholderValues) {
126
131
  const { logger, stmt, query } = this;
@@ -130,10 +135,6 @@ var TursoDatabasePreparedQuery = class extends __sqlite_core_session_ts.SQLitePr
130
135
  return await (params.length ? stmt.raw(true).all(...params) : stmt.raw(true).all());
131
136
  });
132
137
  }
133
- /** @internal */
134
- isResponseInArrayMode() {
135
- return this._isResponseInArrayMode;
136
- }
137
138
  };
138
139
 
139
140
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"session.cjs","names":["SQLiteSession","entityKind","NoopLogger","NoopCache","DrizzleError","SQLiteTransaction","SQLitePreparedQuery"],"sources":["../../src/tursodatabase/session.ts"],"sourcesContent":["import type { DatabasePromise } from '@tursodatabase/database-common';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DrizzleError } from '~/errors.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL } from '~/sql/sql.ts';\nimport type { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport type {\n\tPreparedQueryConfig as PreparedQueryConfigBase,\n\tResult,\n\tSQLiteExecuteMethod,\n\tSQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\nimport type { TursoDatabaseRunResult } from './driver-core.ts';\n\nexport interface TursoDatabaseSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class TursoDatabaseSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<'async', TursoDatabaseRunResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: DatabasePromise,\n\t\tdialect: SQLiteAsyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: TursoDatabaseSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): TursoDatabasePreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\n\t\treturn new TursoDatabasePreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): TursoDatabasePreparedQuery<T, true> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\n\t\treturn new TursoDatabasePreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (db: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\t_config?: SQLiteTransactionConfig,\n\t\ttx?: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>,\n\t): Promise<T> {\n\t\tconst session = new TursoDatabaseSession<TFullSchema, TRelations, TSchema>(\n\t\t\tthis.client,\n\t\t\tthis.dialect,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.options,\n\t\t);\n\t\tconst localTx = tx ?? new TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t'async',\n\t\t\tthis.dialect,\n\t\t\tsession,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t);\n\n\t\tconst clientTx = this.client.transaction(async () => await transaction(localTx));\n\n\t\tconst result = await clientTx();\n\t\treturn result;\n\t}\n\n\toverride async run(query: SQL): Result<'async', TursoDatabaseRunResult> {\n\t\tconst staticQuery = this.dialect.sqlToQuery(query);\n\t\ttry {\n\t\t\treturn await this.prepareOneTimeQuery(staticQuery, undefined, 'run', false).run() as Result<\n\t\t\t\t'async',\n\t\t\t\tTursoDatabaseRunResult\n\t\t\t>;\n\t\t} catch (err) {\n\t\t\tthrow new DrizzleError({ cause: err, message: `Failed to run the query '${staticQuery.sql}'` });\n\t\t}\n\t}\n\n\toverride async all<T = unknown>(query: SQL): Result<'async', T[]> {\n\t\treturn await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).all() as Result<\n\t\t\t'async',\n\t\t\tT[]\n\t\t>;\n\t}\n\n\toverride async get<T = unknown>(query: SQL): Result<'async', T> {\n\t\treturn await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).get() as Result<\n\t\t\t'async',\n\t\t\tT\n\t\t>;\n\t}\n\n\toverride async values<T extends any[] = unknown[]>(\n\t\tquery: SQL,\n\t): Result<'async', T[]> {\n\t\treturn await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).values() as Result<\n\t\t\t'async',\n\t\t\tT[]\n\t\t>;\n\t}\n}\n\nexport class TursoDatabaseTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<'async', TursoDatabaseRunResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseTransaction';\n\n\toverride async transaction<T>(\n\t\t_transaction: (tx: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\t// Not supported by driver\n\t\tthrow new Error('Nested transactions are not supported');\n\n\t\t// const savepointName = `sp${this.nestedIndex}`;\n\n\t\t// const tx = new TursoDatabaseTransaction(\n\t\t// \t'async',\n\t\t// \tthis.dialect,\n\t\t// \tthis.session,\n\t\t// \tthis.relations,\n\t\t// \tthis.schema,\n\t\t// \tthis.nestedIndex + 1,\n\t\t// );\n\n\t\t// await this.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\t// try {\n\t\t// \tconst result = await (<TursoDatabaseSession<TFullSchema, TRelations, TSchema>> (this.session)).transaction(\n\t\t// \t\ttransaction,\n\t\t// \t\tundefined,\n\t\t// \t\ttx,\n\t\t// \t);\n\t\t// \tawait this.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t// \treturn result;\n\t\t// } catch (err) {\n\t\t// \tawait this.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t// \tthrow err;\n\t\t// }\n\t}\n}\n\nexport class TursoDatabasePreparedQuery<\n\tT extends PreparedQueryConfig = PreparedQueryConfig,\n\tTIsRqbV2 extends boolean = false,\n> extends SQLitePreparedQuery<\n\t{\n\t\ttype: 'async';\n\t\trun: TursoDatabaseRunResult;\n\t\tall: T['all'];\n\t\tget: T['get'];\n\t\tvalues: T['values'];\n\t\texecute: T['execute'];\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabasePreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: ReturnType<DatabasePromise['prepare']>,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\t/** @internal */ public fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper('async', executeMethod, query, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync run(placeholderValues?: Record<string, unknown>): Promise<TursoDatabaseRunResult> {\n\t\tconst { stmt, query, logger } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (params.length ? stmt.run(...params) : stmt.run());\n\t\t});\n\t}\n\n\tasync all(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tif (this.isRqbV2Query) return await this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, logger, query, customResultMapper, joinsNotNullableMap, stmt } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await (params.length ? stmt.raw(false).all(...params) : stmt.raw(false).all());\n\t\t\t});\n\t\t}\n\n\t\tconst rows = await this.values(placeholderValues) as unknown[][];\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async allRqbV2(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tconst { logger, query, customResultMapper, stmt } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst rows = await (params.length ? stmt.raw(false).all(...params) : stmt.raw(false).all());\n\n\t\treturn (customResultMapper as (\n\t\t\trows: Record<string, unknown>[],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => unknown)(rows as Record<string, unknown>[]) as T['all'];\n\t}\n\n\tasync get(placeholderValues?: Record<string, unknown>): Promise<T['get']> {\n\t\tif (this.isRqbV2Query) return await this.getRqbV2(placeholderValues);\n\n\t\tconst { fields, logger, query, stmt, customResultMapper, joinsNotNullableMap } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await (params.length ? stmt.raw(false).get(...params) : stmt.raw(false).get());\n\t\t\t});\n\t\t}\n\n\t\tconst row = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (params.length ? stmt.raw(true).get(...params) : stmt.raw(true).get());\n\t\t});\n\n\t\tif (row === undefined) return row;\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate async getRqbV2(placeholderValues?: Record<string, unknown>) {\n\t\tconst { logger, query, stmt, customResultMapper } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst row = await (params.length ? stmt.raw(false).get(...params) : stmt.raw(false).get());\n\n\t\tif (row === undefined) return row;\n\n\t\treturn (customResultMapper as (\n\t\t\trows: Record<string, unknown>[],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => unknown)([row] as Record<string, unknown>[]) as T['get'];\n\t}\n\n\tasync values(placeholderValues?: Record<string, unknown>): Promise<T['values']> {\n\t\tconst { logger, stmt, query } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (params.length ? stmt.raw(true).all(...params) : stmt.raw(true).all());\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"session.cjs","names":["SQLiteSession","entityKind","NoopLogger","NoopCache","DrizzleError","SQLiteTransaction","SQLitePreparedQuery"],"sources":["../../src/tursodatabase/session.ts"],"sourcesContent":["import type { DatabasePromise } from '@tursodatabase/database-common';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DrizzleError } from '~/errors.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport {\n\ttype AnyRelations,\n\tmakeJitRqbMapper,\n\ttype RelationalQueryMapperConfig,\n\ttype RelationalRowsMapper,\n} from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL } from '~/sql/sql.ts';\nimport type { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport type {\n\tPreparedQueryConfig as PreparedQueryConfigBase,\n\tResult,\n\tSQLiteExecuteMethod,\n\tSQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { makeJitQueryMapper, mapResultRow, type RowsMapper } from '~/utils.ts';\nimport type { TursoDatabaseRunResult } from './driver-core.ts';\n\nexport interface TursoDatabaseSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tuseJitMapper?: boolean;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class TursoDatabaseSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<'async', TursoDatabaseRunResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: DatabasePromise,\n\t\tdialect: SQLiteAsyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: TursoDatabaseSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): TursoDatabasePreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\n\t\treturn new TursoDatabasePreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t\tconfig: RelationalQueryMapperConfig,\n\t): TursoDatabasePreparedQuery<T, true> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\n\t\treturn new TursoDatabasePreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t\tconfig,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (db: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\t_config?: SQLiteTransactionConfig,\n\t\ttx?: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>,\n\t): Promise<T> {\n\t\tconst session = new TursoDatabaseSession<TFullSchema, TRelations, TSchema>(\n\t\t\tthis.client,\n\t\t\tthis.dialect,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.options,\n\t\t);\n\t\tconst localTx = tx ?? new TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t'async',\n\t\t\tthis.dialect,\n\t\t\tsession,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t);\n\n\t\tconst clientTx = this.client.transaction(async () => await transaction(localTx));\n\n\t\tconst result = await clientTx();\n\t\treturn result;\n\t}\n\n\toverride async run(query: SQL): Result<'async', TursoDatabaseRunResult> {\n\t\tconst staticQuery = this.dialect.sqlToQuery(query);\n\t\ttry {\n\t\t\treturn await this.prepareOneTimeQuery(staticQuery, undefined, 'run').run() as Result<\n\t\t\t\t'async',\n\t\t\t\tTursoDatabaseRunResult\n\t\t\t>;\n\t\t} catch (err) {\n\t\t\tthrow new DrizzleError({ cause: err, message: `Failed to run the query '${staticQuery.sql}'` });\n\t\t}\n\t}\n\n\toverride async all<T = unknown>(query: SQL): Result<'async', T[]> {\n\t\treturn await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run').all() as Result<\n\t\t\t'async',\n\t\t\tT[]\n\t\t>;\n\t}\n\n\toverride async get<T = unknown>(query: SQL): Result<'async', T> {\n\t\treturn await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run').get() as Result<\n\t\t\t'async',\n\t\t\tT\n\t\t>;\n\t}\n\n\toverride async values<T extends any[] = unknown[]>(\n\t\tquery: SQL,\n\t): Result<'async', T[]> {\n\t\treturn await this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run').values() as Result<\n\t\t\t'async',\n\t\t\tT[]\n\t\t>;\n\t}\n}\n\nexport class TursoDatabaseTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<'async', TursoDatabaseRunResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabaseTransaction';\n\n\toverride async transaction<T>(\n\t\t_transaction: (tx: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\t// Not supported by driver\n\t\tthrow new Error('Nested transactions are not supported');\n\n\t\t// const savepointName = `sp${this.nestedIndex}`;\n\n\t\t// const tx = new TursoDatabaseTransaction(\n\t\t// \t'async',\n\t\t// \tthis.dialect,\n\t\t// \tthis.session,\n\t\t// \tthis.relations,\n\t\t// \tthis.schema,\n\t\t// \tthis.nestedIndex + 1,\n\t\t// );\n\n\t\t// await this.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\t// try {\n\t\t// \tconst result = await (<TursoDatabaseSession<TFullSchema, TRelations, TSchema>> (this.session)).transaction(\n\t\t// \t\ttransaction,\n\t\t// \t\tundefined,\n\t\t// \t\ttx,\n\t\t// \t);\n\t\t// \tawait this.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t// \treturn result;\n\t\t// } catch (err) {\n\t\t// \tawait this.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t// \tthrow err;\n\t\t// }\n\t}\n}\n\nexport class TursoDatabasePreparedQuery<\n\tT extends PreparedQueryConfig = PreparedQueryConfig,\n\tTIsRqbV2 extends boolean = false,\n> extends SQLitePreparedQuery<\n\t{\n\t\ttype: 'async';\n\t\trun: TursoDatabaseRunResult;\n\t\tall: T['all'];\n\t\tget: T['get'];\n\t\tvalues: T['values'];\n\t\texecute: T['execute'];\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'TursoDatabasePreparedQuery';\n\tprivate jitMapper?: RowsMapper<any> | RelationalRowsMapper<any>;\n\n\tconstructor(\n\t\tprivate stmt: ReturnType<DatabasePromise['prepare']>,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\t/** @internal */ public fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate useJitMapper: boolean | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t\tprivate rqbConfig?: RelationalQueryMapperConfig,\n\t) {\n\t\tsuper('async', executeMethod, query, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync run(placeholderValues?: Record<string, unknown>): Promise<TursoDatabaseRunResult> {\n\t\tconst { stmt, query, logger } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (params.length ? stmt.run(...params) : stmt.run());\n\t\t});\n\t}\n\n\tasync all(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tif (this.isRqbV2Query) return await this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, logger, query, customResultMapper, joinsNotNullableMap, stmt } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await (params.length ? stmt.raw(false).all(...params) : stmt.raw(false).all());\n\t\t\t});\n\t\t}\n\n\t\tconst rows = await this.values(placeholderValues) as unknown[][];\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RowsMapper<T['all']>\n\t\t\t\t?? makeJitQueryMapper<T['all']>(fields!, joinsNotNullableMap))(rows)\n\t\t\t: rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async allRqbV2(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tconst { logger, query, customResultMapper, stmt } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst rows = await (params.length ? stmt.raw(false).all(...params) : stmt.raw(false).all());\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RelationalRowsMapper<T['all']>\n\t\t\t\t?? makeJitRqbMapper<T['all']>(this.rqbConfig!))(rows)\n\t\t\t: (customResultMapper as (\n\t\t\t\trows: Record<string, unknown>[],\n\t\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t\t) => unknown)(rows as Record<string, unknown>[]) as T['all'];\n\t}\n\n\tasync get(placeholderValues?: Record<string, unknown>): Promise<T['get']> {\n\t\tif (this.isRqbV2Query) return await this.getRqbV2(placeholderValues);\n\n\t\tconst { fields, logger, query, stmt, customResultMapper, joinsNotNullableMap } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await (params.length ? stmt.raw(false).get(...params) : stmt.raw(false).get());\n\t\t\t});\n\t\t}\n\n\t\tconst row = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (params.length ? stmt.raw(true).get(...params) : stmt.raw(true).get());\n\t\t});\n\n\t\tif (row === undefined) return row;\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RowsMapper<T['get'][]>\n\t\t\t\t?? makeJitQueryMapper<T['get'][]>(fields!, joinsNotNullableMap))(\n\t\t\t\t\t[row],\n\t\t\t\t)[0]\n\t\t\t: mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate async getRqbV2(placeholderValues?: Record<string, unknown>) {\n\t\tconst { logger, query, stmt, customResultMapper } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst row = await (params.length ? stmt.raw(false).get(...params) : stmt.raw(false).get());\n\n\t\tif (row === undefined) return row;\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RelationalRowsMapper<T['get'][]>\n\t\t\t\t?? makeJitRqbMapper<T['get'][]>(this.rqbConfig!))([row])\n\t\t\t: (customResultMapper as (\n\t\t\t\trows: Record<string, unknown>[],\n\t\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t\t) => unknown)([row] as Record<string, unknown>[]) as T['get'];\n\t}\n\n\tasync values(placeholderValues?: Record<string, unknown>): Promise<T['values']> {\n\t\tconst { logger, stmt, query } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (params.length ? stmt.raw(true).all(...params) : stmt.raw(true).all());\n\t\t});\n\t}\n}\n"],"mappings":"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"}
@@ -3,10 +3,10 @@ import { entityKind } from "../entity.cjs";
3
3
  import { Query, SQL } from "../sql/sql.cjs";
4
4
  import * as V1 from "../_relations.cjs";
5
5
  import { WithCacheConfig } from "../cache/core/types.cjs";
6
- import { AnyRelations } from "../relations.cjs";
6
+ import { AnyRelations, RelationalQueryMapperConfig } from "../relations.cjs";
7
+ import { Logger } from "../logger.cjs";
7
8
  import { SQLiteAsyncDialect } from "../sqlite-core/dialect.cjs";
8
9
  import { PreparedQueryConfig, Result, SQLiteExecuteMethod, SQLitePreparedQuery, SQLiteSession, SQLiteTransactionConfig } from "../sqlite-core/session.cjs";
9
- import { Logger } from "../logger.cjs";
10
10
  import { Cache } from "../cache/core/index.cjs";
11
11
  import { SQLiteTransaction as SQLiteTransaction$1 } from "../sqlite-core/index.cjs";
12
12
  import { SelectedFieldsOrdered as SelectedFieldsOrdered$1 } from "../sqlite-core/query-builders/select.types.cjs";
@@ -16,6 +16,7 @@ import { DatabasePromise } from "@tursodatabase/database-common";
16
16
  interface TursoDatabaseSessionOptions {
17
17
  logger?: Logger;
18
18
  cache?: Cache;
19
+ useJitMapper?: boolean;
19
20
  }
20
21
  type PreparedQueryConfig$2 = Omit<PreparedQueryConfig, 'statement' | 'run'>;
21
22
  declare class TursoDatabaseSession<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends SQLiteSession<'async', TursoDatabaseRunResult, TFullSchema, TRelations, TSchema> {
@@ -27,11 +28,11 @@ declare class TursoDatabaseSession<TFullSchema extends Record<string, unknown>,
27
28
  private logger;
28
29
  private cache;
29
30
  constructor(client: DatabasePromise, dialect: SQLiteAsyncDialect, relations: TRelations, schema: V1.RelationalSchemaConfig<TSchema> | undefined, options: TursoDatabaseSessionOptions);
30
- prepareQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown, queryMetadata?: {
31
+ prepareQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod, customResultMapper?: (rows: unknown[][]) => unknown, queryMetadata?: {
31
32
  type: 'select' | 'update' | 'delete' | 'insert';
32
33
  tables: string[];
33
34
  }, cacheConfig?: WithCacheConfig): TursoDatabasePreparedQuery<T>;
34
- prepareRelationalQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod, customResultMapper: (rows: Record<string, unknown>[]) => unknown): TursoDatabasePreparedQuery<T, true>;
35
+ prepareRelationalQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod, customResultMapper: (rows: Record<string, unknown>[]) => unknown, config: RelationalQueryMapperConfig): TursoDatabasePreparedQuery<T, true>;
35
36
  transaction<T>(transaction: (db: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>, _config?: SQLiteTransactionConfig, tx?: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>): Promise<T>;
36
37
  run(query: SQL): Result<'async', TursoDatabaseRunResult>;
37
38
  all<T = unknown>(query: SQL): Result<'async', T[]>;
@@ -52,16 +53,18 @@ declare class TursoDatabasePreparedQuery<T extends PreparedQueryConfig$2 = Prepa
52
53
  }> {
53
54
  private stmt;
54
55
  private logger;
55
- private _isResponseInArrayMode;
56
+ private useJitMapper;
56
57
  private customResultMapper?;
57
58
  private isRqbV2Query?;
59
+ private rqbConfig?;
58
60
  static readonly [entityKind]: string;
61
+ private jitMapper?;
59
62
  constructor(stmt: ReturnType<DatabasePromise['prepare']>, query: Query, logger: Logger, cache: Cache, queryMetadata: {
60
63
  type: 'select' | 'update' | 'delete' | 'insert';
61
64
  tables: string[];
62
65
  } | undefined, cacheConfig: WithCacheConfig | undefined, /** @internal */
63
66
 
64
- fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][], mapColumnValue?: (value: unknown) => unknown) => unknown) | undefined, isRqbV2Query?: TIsRqbV2 | undefined);
67
+ fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod, useJitMapper: boolean | undefined, customResultMapper?: ((rows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][], mapColumnValue?: (value: unknown) => unknown) => unknown) | undefined, isRqbV2Query?: TIsRqbV2 | undefined, rqbConfig?: RelationalQueryMapperConfig | undefined);
65
68
  run(placeholderValues?: Record<string, unknown>): Promise<TursoDatabaseRunResult>;
66
69
  all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;
67
70
  private allRqbV2;
@@ -1,13 +1,13 @@
1
1
  import { TursoDatabaseRunResult } from "./driver-core.js";
2
2
  import { entityKind } from "../entity.js";
3
3
  import { Query, SQL } from "../sql/sql.js";
4
- import * as V1 from "../_relations.js";
5
- import { Logger } from "../logger.js";
6
4
  import { Cache } from "../cache/core/index.js";
5
+ import { Logger } from "../logger.js";
6
+ import * as V1 from "../_relations.js";
7
+ import { AnyRelations, RelationalQueryMapperConfig } from "../relations.js";
7
8
  import { SQLiteAsyncDialect } from "../sqlite-core/dialect.js";
8
9
  import { SQLiteTransaction } from "../sqlite-core/index.js";
9
10
  import { PreparedQueryConfig as PreparedQueryConfig$1, Result, SQLiteExecuteMethod as SQLiteExecuteMethod$1, SQLitePreparedQuery as SQLitePreparedQuery$1, SQLiteSession as SQLiteSession$1, SQLiteTransactionConfig as SQLiteTransactionConfig$1 } from "../sqlite-core/session.js";
10
- import { AnyRelations } from "../relations.js";
11
11
  import { WithCacheConfig } from "../cache/core/types.js";
12
12
  import { SelectedFieldsOrdered as SelectedFieldsOrdered$1 } from "../sqlite-core/query-builders/select.types.js";
13
13
  import { DatabasePromise } from "@tursodatabase/database-common";
@@ -16,6 +16,7 @@ import { DatabasePromise } from "@tursodatabase/database-common";
16
16
  interface TursoDatabaseSessionOptions {
17
17
  logger?: Logger;
18
18
  cache?: Cache;
19
+ useJitMapper?: boolean;
19
20
  }
20
21
  type PreparedQueryConfig$2 = Omit<PreparedQueryConfig$1, 'statement' | 'run'>;
21
22
  declare class TursoDatabaseSession<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends SQLiteSession$1<'async', TursoDatabaseRunResult, TFullSchema, TRelations, TSchema> {
@@ -27,11 +28,11 @@ declare class TursoDatabaseSession<TFullSchema extends Record<string, unknown>,
27
28
  private logger;
28
29
  private cache;
29
30
  constructor(client: DatabasePromise, dialect: SQLiteAsyncDialect, relations: TRelations, schema: V1.RelationalSchemaConfig<TSchema> | undefined, options: TursoDatabaseSessionOptions);
30
- prepareQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod$1, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown, queryMetadata?: {
31
+ prepareQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod$1, customResultMapper?: (rows: unknown[][]) => unknown, queryMetadata?: {
31
32
  type: 'select' | 'update' | 'delete' | 'insert';
32
33
  tables: string[];
33
34
  }, cacheConfig?: WithCacheConfig): TursoDatabasePreparedQuery<T>;
34
- prepareRelationalQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod$1, customResultMapper: (rows: Record<string, unknown>[]) => unknown): TursoDatabasePreparedQuery<T, true>;
35
+ prepareRelationalQuery<T extends Omit<PreparedQueryConfig$2, 'run'>>(query: Query, fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod$1, customResultMapper: (rows: Record<string, unknown>[]) => unknown, config: RelationalQueryMapperConfig): TursoDatabasePreparedQuery<T, true>;
35
36
  transaction<T>(transaction: (db: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>, _config?: SQLiteTransactionConfig$1, tx?: TursoDatabaseTransaction<TFullSchema, TRelations, TSchema>): Promise<T>;
36
37
  run(query: SQL): Result<'async', TursoDatabaseRunResult>;
37
38
  all<T = unknown>(query: SQL): Result<'async', T[]>;
@@ -52,16 +53,18 @@ declare class TursoDatabasePreparedQuery<T extends PreparedQueryConfig$2 = Prepa
52
53
  }> {
53
54
  private stmt;
54
55
  private logger;
55
- private _isResponseInArrayMode;
56
+ private useJitMapper;
56
57
  private customResultMapper?;
57
58
  private isRqbV2Query?;
59
+ private rqbConfig?;
58
60
  static readonly [entityKind]: string;
61
+ private jitMapper?;
59
62
  constructor(stmt: ReturnType<DatabasePromise['prepare']>, query: Query, logger: Logger, cache: Cache, queryMetadata: {
60
63
  type: 'select' | 'update' | 'delete' | 'insert';
61
64
  tables: string[];
62
65
  } | undefined, cacheConfig: WithCacheConfig | undefined, /** @internal */
63
66
 
64
- fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod$1, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][], mapColumnValue?: (value: unknown) => unknown) => unknown) | undefined, isRqbV2Query?: TIsRqbV2 | undefined);
67
+ fields: SelectedFieldsOrdered$1 | undefined, executeMethod: SQLiteExecuteMethod$1, useJitMapper: boolean | undefined, customResultMapper?: ((rows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][], mapColumnValue?: (value: unknown) => unknown) => unknown) | undefined, isRqbV2Query?: TIsRqbV2 | undefined, rqbConfig?: RelationalQueryMapperConfig | undefined);
65
68
  run(placeholderValues?: Record<string, unknown>): Promise<TursoDatabaseRunResult>;
66
69
  all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;
67
70
  private allRqbV2;