drizzle-orm 0.43.1-26a0497 → 0.43.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (485) hide show
  1. package/aws-data-api/pg/driver.cjs +1 -5
  2. package/aws-data-api/pg/driver.cjs.map +1 -1
  3. package/aws-data-api/pg/driver.d.cts +0 -1
  4. package/aws-data-api/pg/driver.d.ts +0 -1
  5. package/aws-data-api/pg/driver.js +1 -5
  6. package/aws-data-api/pg/driver.js.map +1 -1
  7. package/aws-data-api/pg/session.cjs +4 -15
  8. package/aws-data-api/pg/session.cjs.map +1 -1
  9. package/aws-data-api/pg/session.d.cts +2 -13
  10. package/aws-data-api/pg/session.d.ts +2 -13
  11. package/aws-data-api/pg/session.js +4 -15
  12. package/aws-data-api/pg/session.js.map +1 -1
  13. package/better-sqlite3/driver.cjs.map +1 -1
  14. package/better-sqlite3/driver.js.map +1 -1
  15. package/better-sqlite3/session.cjs +3 -9
  16. package/better-sqlite3/session.cjs.map +1 -1
  17. package/better-sqlite3/session.d.cts +2 -12
  18. package/better-sqlite3/session.d.ts +2 -12
  19. package/better-sqlite3/session.js +3 -9
  20. package/better-sqlite3/session.js.map +1 -1
  21. package/bun-sql/driver.cjs +1 -5
  22. package/bun-sql/driver.cjs.map +1 -1
  23. package/bun-sql/driver.js +1 -5
  24. package/bun-sql/driver.js.map +1 -1
  25. package/bun-sql/session.cjs +9 -21
  26. package/bun-sql/session.cjs.map +1 -1
  27. package/bun-sql/session.d.cts +2 -12
  28. package/bun-sql/session.d.ts +2 -12
  29. package/bun-sql/session.js +9 -21
  30. package/bun-sql/session.js.map +1 -1
  31. package/d1/driver.cjs +1 -5
  32. package/d1/driver.cjs.map +1 -1
  33. package/d1/driver.js +1 -5
  34. package/d1/driver.js.map +1 -1
  35. package/d1/session.cjs +9 -23
  36. package/d1/session.cjs.map +1 -1
  37. package/d1/session.d.cts +2 -12
  38. package/d1/session.d.ts +2 -12
  39. package/d1/session.js +9 -23
  40. package/d1/session.js.map +1 -1
  41. package/durable-sqlite/session.cjs +1 -1
  42. package/durable-sqlite/session.cjs.map +1 -1
  43. package/durable-sqlite/session.js +1 -1
  44. package/durable-sqlite/session.js.map +1 -1
  45. package/gel/driver.cjs +2 -9
  46. package/gel/driver.cjs.map +1 -1
  47. package/gel/driver.d.cts +0 -2
  48. package/gel/driver.d.ts +0 -2
  49. package/gel/driver.js +2 -9
  50. package/gel/driver.js.map +1 -1
  51. package/gel/session.cjs +10 -25
  52. package/gel/session.cjs.map +1 -1
  53. package/gel/session.d.cts +2 -12
  54. package/gel/session.d.ts +2 -12
  55. package/gel/session.js +10 -25
  56. package/gel/session.js.map +1 -1
  57. package/gel-core/db.cjs +0 -1
  58. package/gel-core/db.cjs.map +1 -1
  59. package/gel-core/db.d.cts +0 -4
  60. package/gel-core/db.d.ts +0 -4
  61. package/gel-core/db.js +0 -1
  62. package/gel-core/db.js.map +1 -1
  63. package/gel-core/query-builders/delete.cjs +1 -5
  64. package/gel-core/query-builders/delete.cjs.map +1 -1
  65. package/gel-core/query-builders/delete.js +1 -5
  66. package/gel-core/query-builders/delete.js.map +1 -1
  67. package/gel-core/query-builders/insert.cjs +1 -5
  68. package/gel-core/query-builders/insert.cjs.map +1 -1
  69. package/gel-core/query-builders/insert.js +1 -5
  70. package/gel-core/query-builders/insert.js.map +1 -1
  71. package/gel-core/query-builders/select.cjs +4 -29
  72. package/gel-core/query-builders/select.cjs.map +1 -1
  73. package/gel-core/query-builders/select.d.cts +0 -9
  74. package/gel-core/query-builders/select.d.ts +0 -9
  75. package/gel-core/query-builders/select.js +4 -29
  76. package/gel-core/query-builders/select.js.map +1 -1
  77. package/gel-core/query-builders/update.cjs +1 -5
  78. package/gel-core/query-builders/update.cjs.map +1 -1
  79. package/gel-core/query-builders/update.js +1 -5
  80. package/gel-core/query-builders/update.js.map +1 -1
  81. package/gel-core/session.cjs +1 -52
  82. package/gel-core/session.cjs.map +1 -1
  83. package/gel-core/session.d.cts +3 -14
  84. package/gel-core/session.d.ts +3 -14
  85. package/gel-core/session.js +2 -53
  86. package/gel-core/session.js.map +1 -1
  87. package/gel-core/utils.cjs +0 -16
  88. package/gel-core/utils.cjs.map +1 -1
  89. package/gel-core/utils.d.cts +4 -8
  90. package/gel-core/utils.d.ts +4 -8
  91. package/gel-core/utils.js +0 -15
  92. package/gel-core/utils.js.map +1 -1
  93. package/libsql/driver-core.cjs +1 -5
  94. package/libsql/driver-core.cjs.map +1 -1
  95. package/libsql/driver-core.js +1 -5
  96. package/libsql/driver-core.js.map +1 -1
  97. package/libsql/session.cjs +13 -27
  98. package/libsql/session.cjs.map +1 -1
  99. package/libsql/session.d.cts +2 -12
  100. package/libsql/session.d.ts +2 -12
  101. package/libsql/session.js +13 -27
  102. package/libsql/session.js.map +1 -1
  103. package/mysql-core/db.cjs +0 -1
  104. package/mysql-core/db.cjs.map +1 -1
  105. package/mysql-core/db.d.cts +0 -4
  106. package/mysql-core/db.d.ts +0 -4
  107. package/mysql-core/db.js +0 -1
  108. package/mysql-core/db.js.map +1 -1
  109. package/mysql-core/query-builders/delete.cjs +1 -9
  110. package/mysql-core/query-builders/delete.cjs.map +1 -1
  111. package/mysql-core/query-builders/delete.js +1 -9
  112. package/mysql-core/query-builders/delete.js.map +1 -1
  113. package/mysql-core/query-builders/insert.cjs +1 -8
  114. package/mysql-core/query-builders/insert.cjs.map +1 -1
  115. package/mysql-core/query-builders/insert.d.cts +0 -2
  116. package/mysql-core/query-builders/insert.d.ts +0 -2
  117. package/mysql-core/query-builders/insert.js +1 -8
  118. package/mysql-core/query-builders/insert.js.map +1 -1
  119. package/mysql-core/query-builders/select.cjs +3 -27
  120. package/mysql-core/query-builders/select.cjs.map +1 -1
  121. package/mysql-core/query-builders/select.d.cts +0 -9
  122. package/mysql-core/query-builders/select.d.ts +0 -9
  123. package/mysql-core/query-builders/select.js +4 -28
  124. package/mysql-core/query-builders/select.js.map +1 -1
  125. package/mysql-core/query-builders/update.cjs +1 -11
  126. package/mysql-core/query-builders/update.cjs.map +1 -1
  127. package/mysql-core/query-builders/update.d.cts +0 -2
  128. package/mysql-core/query-builders/update.d.ts +0 -2
  129. package/mysql-core/query-builders/update.js +1 -11
  130. package/mysql-core/query-builders/update.js.map +1 -1
  131. package/mysql-core/session.cjs +0 -53
  132. package/mysql-core/session.cjs.map +1 -1
  133. package/mysql-core/session.d.cts +2 -15
  134. package/mysql-core/session.d.ts +2 -15
  135. package/mysql-core/session.js +1 -54
  136. package/mysql-core/session.js.map +1 -1
  137. package/mysql-core/utils.cjs +0 -16
  138. package/mysql-core/utils.cjs.map +1 -1
  139. package/mysql-core/utils.d.cts +2 -6
  140. package/mysql-core/utils.d.ts +2 -6
  141. package/mysql-core/utils.js +0 -15
  142. package/mysql-core/utils.js.map +1 -1
  143. package/mysql-proxy/session.cjs +5 -15
  144. package/mysql-proxy/session.cjs.map +1 -1
  145. package/mysql-proxy/session.d.cts +2 -12
  146. package/mysql-proxy/session.d.ts +2 -12
  147. package/mysql-proxy/session.js +5 -15
  148. package/mysql-proxy/session.js.map +1 -1
  149. package/mysql2/driver.cjs +2 -10
  150. package/mysql2/driver.cjs.map +1 -1
  151. package/mysql2/driver.d.cts +0 -2
  152. package/mysql2/driver.d.ts +0 -2
  153. package/mysql2/driver.js +2 -10
  154. package/mysql2/driver.js.map +1 -1
  155. package/mysql2/session.cjs +5 -15
  156. package/mysql2/session.cjs.map +1 -1
  157. package/mysql2/session.d.cts +2 -12
  158. package/mysql2/session.d.ts +2 -12
  159. package/mysql2/session.js +5 -15
  160. package/mysql2/session.js.map +1 -1
  161. package/neon-http/driver.cjs +2 -9
  162. package/neon-http/driver.cjs.map +1 -1
  163. package/neon-http/driver.d.cts +0 -2
  164. package/neon-http/driver.d.ts +0 -2
  165. package/neon-http/driver.js +2 -9
  166. package/neon-http/driver.js.map +1 -1
  167. package/neon-http/session.cjs +15 -25
  168. package/neon-http/session.cjs.map +1 -1
  169. package/neon-http/session.d.cts +2 -12
  170. package/neon-http/session.d.ts +2 -12
  171. package/neon-http/session.js +15 -25
  172. package/neon-http/session.js.map +1 -1
  173. package/neon-serverless/driver.cjs +2 -9
  174. package/neon-serverless/driver.cjs.map +1 -1
  175. package/neon-serverless/driver.d.cts +0 -2
  176. package/neon-serverless/driver.d.ts +0 -2
  177. package/neon-serverless/driver.js +2 -9
  178. package/neon-serverless/driver.js.map +1 -1
  179. package/neon-serverless/session.cjs +7 -21
  180. package/neon-serverless/session.cjs.map +1 -1
  181. package/neon-serverless/session.d.cts +2 -12
  182. package/neon-serverless/session.d.ts +2 -12
  183. package/neon-serverless/session.js +7 -21
  184. package/neon-serverless/session.js.map +1 -1
  185. package/node-postgres/driver.cjs +2 -9
  186. package/node-postgres/driver.cjs.map +1 -1
  187. package/node-postgres/driver.d.cts +0 -2
  188. package/node-postgres/driver.d.ts +0 -2
  189. package/node-postgres/driver.js +2 -9
  190. package/node-postgres/driver.js.map +1 -1
  191. package/node-postgres/session.cjs +6 -19
  192. package/node-postgres/session.cjs.map +1 -1
  193. package/node-postgres/session.d.cts +2 -13
  194. package/node-postgres/session.d.ts +2 -13
  195. package/node-postgres/session.js +6 -19
  196. package/node-postgres/session.js.map +1 -1
  197. package/op-sqlite/driver.cjs +1 -5
  198. package/op-sqlite/driver.cjs.map +1 -1
  199. package/op-sqlite/driver.js +1 -5
  200. package/op-sqlite/driver.js.map +1 -1
  201. package/op-sqlite/session.cjs +9 -23
  202. package/op-sqlite/session.cjs.map +1 -1
  203. package/op-sqlite/session.d.cts +2 -12
  204. package/op-sqlite/session.d.ts +2 -12
  205. package/op-sqlite/session.js +9 -23
  206. package/op-sqlite/session.js.map +1 -1
  207. package/package.json +4 -69
  208. package/pg-core/db.cjs +0 -1
  209. package/pg-core/db.cjs.map +1 -1
  210. package/pg-core/db.d.cts +0 -4
  211. package/pg-core/db.d.ts +0 -4
  212. package/pg-core/db.js +0 -1
  213. package/pg-core/db.js.map +1 -1
  214. package/pg-core/query-builders/delete.cjs +1 -6
  215. package/pg-core/query-builders/delete.cjs.map +1 -1
  216. package/pg-core/query-builders/delete.d.cts +1 -3
  217. package/pg-core/query-builders/delete.d.ts +1 -3
  218. package/pg-core/query-builders/delete.js +1 -6
  219. package/pg-core/query-builders/delete.js.map +1 -1
  220. package/pg-core/query-builders/insert.cjs +1 -6
  221. package/pg-core/query-builders/insert.cjs.map +1 -1
  222. package/pg-core/query-builders/insert.d.cts +0 -2
  223. package/pg-core/query-builders/insert.d.ts +0 -2
  224. package/pg-core/query-builders/insert.js +1 -6
  225. package/pg-core/query-builders/insert.js.map +1 -1
  226. package/pg-core/query-builders/select.cjs +5 -31
  227. package/pg-core/query-builders/select.cjs.map +1 -1
  228. package/pg-core/query-builders/select.d.cts +6 -15
  229. package/pg-core/query-builders/select.d.ts +6 -15
  230. package/pg-core/query-builders/select.js +5 -31
  231. package/pg-core/query-builders/select.js.map +1 -1
  232. package/pg-core/query-builders/update.cjs +1 -6
  233. package/pg-core/query-builders/update.cjs.map +1 -1
  234. package/pg-core/query-builders/update.d.cts +2 -4
  235. package/pg-core/query-builders/update.d.ts +2 -4
  236. package/pg-core/query-builders/update.js +1 -6
  237. package/pg-core/query-builders/update.js.map +1 -1
  238. package/pg-core/session.cjs +1 -52
  239. package/pg-core/session.cjs.map +1 -1
  240. package/pg-core/session.d.cts +3 -14
  241. package/pg-core/session.d.ts +3 -14
  242. package/pg-core/session.js +2 -53
  243. package/pg-core/session.js.map +1 -1
  244. package/pg-core/utils.cjs +0 -16
  245. package/pg-core/utils.cjs.map +1 -1
  246. package/pg-core/utils.d.cts +4 -8
  247. package/pg-core/utils.d.ts +4 -8
  248. package/pg-core/utils.js +1 -16
  249. package/pg-core/utils.js.map +1 -1
  250. package/pg-proxy/driver.cjs +2 -7
  251. package/pg-proxy/driver.cjs.map +1 -1
  252. package/pg-proxy/driver.js +2 -7
  253. package/pg-proxy/driver.js.map +1 -1
  254. package/pg-proxy/session.cjs +5 -15
  255. package/pg-proxy/session.cjs.map +1 -1
  256. package/pg-proxy/session.d.cts +2 -12
  257. package/pg-proxy/session.d.ts +2 -12
  258. package/pg-proxy/session.js +5 -15
  259. package/pg-proxy/session.js.map +1 -1
  260. package/pglite/driver.cjs +2 -9
  261. package/pglite/driver.cjs.map +1 -1
  262. package/pglite/driver.d.cts +0 -2
  263. package/pglite/driver.d.ts +0 -2
  264. package/pglite/driver.js +2 -9
  265. package/pglite/driver.js.map +1 -1
  266. package/pglite/session.cjs +7 -19
  267. package/pglite/session.cjs.map +1 -1
  268. package/pglite/session.d.cts +2 -12
  269. package/pglite/session.d.ts +2 -12
  270. package/pglite/session.js +7 -19
  271. package/pglite/session.js.map +1 -1
  272. package/planetscale-serverless/driver.cjs +1 -5
  273. package/planetscale-serverless/driver.cjs.map +1 -1
  274. package/planetscale-serverless/driver.d.cts +0 -1
  275. package/planetscale-serverless/driver.d.ts +0 -1
  276. package/planetscale-serverless/driver.js +1 -5
  277. package/planetscale-serverless/driver.js.map +1 -1
  278. package/planetscale-serverless/session.cjs +5 -15
  279. package/planetscale-serverless/session.cjs.map +1 -1
  280. package/planetscale-serverless/session.d.cts +2 -12
  281. package/planetscale-serverless/session.d.ts +2 -12
  282. package/planetscale-serverless/session.js +5 -15
  283. package/planetscale-serverless/session.js.map +1 -1
  284. package/postgres-js/driver.cjs +1 -5
  285. package/postgres-js/driver.cjs.map +1 -1
  286. package/postgres-js/driver.js +1 -5
  287. package/postgres-js/driver.js.map +1 -1
  288. package/postgres-js/session.cjs +6 -18
  289. package/postgres-js/session.cjs.map +1 -1
  290. package/postgres-js/session.d.cts +2 -12
  291. package/postgres-js/session.d.ts +2 -12
  292. package/postgres-js/session.js +6 -18
  293. package/postgres-js/session.js.map +1 -1
  294. package/prisma/mysql/session.cjs +1 -1
  295. package/prisma/mysql/session.cjs.map +1 -1
  296. package/prisma/mysql/session.js +1 -1
  297. package/prisma/mysql/session.js.map +1 -1
  298. package/prisma/pg/session.cjs +1 -1
  299. package/prisma/pg/session.cjs.map +1 -1
  300. package/prisma/pg/session.js +1 -1
  301. package/prisma/pg/session.js.map +1 -1
  302. package/query-builders/query-builder.cjs.map +1 -1
  303. package/query-builders/query-builder.d.cts +1 -2
  304. package/query-builders/query-builder.d.ts +1 -2
  305. package/query-builders/query-builder.js.map +1 -1
  306. package/singlestore/driver.cjs +2 -12
  307. package/singlestore/driver.cjs.map +1 -1
  308. package/singlestore/driver.d.cts +0 -2
  309. package/singlestore/driver.d.ts +0 -2
  310. package/singlestore/driver.js +2 -12
  311. package/singlestore/driver.js.map +1 -1
  312. package/singlestore/session.cjs +5 -15
  313. package/singlestore/session.cjs.map +1 -1
  314. package/singlestore/session.d.cts +2 -12
  315. package/singlestore/session.d.ts +2 -12
  316. package/singlestore/session.js +5 -15
  317. package/singlestore/session.js.map +1 -1
  318. package/singlestore-core/db.cjs +0 -1
  319. package/singlestore-core/db.cjs.map +1 -1
  320. package/singlestore-core/db.d.cts +0 -4
  321. package/singlestore-core/db.d.ts +0 -4
  322. package/singlestore-core/db.js +0 -1
  323. package/singlestore-core/db.js.map +1 -1
  324. package/singlestore-core/query-builders/delete.cjs +1 -9
  325. package/singlestore-core/query-builders/delete.cjs.map +1 -1
  326. package/singlestore-core/query-builders/delete.js +1 -9
  327. package/singlestore-core/query-builders/delete.js.map +1 -1
  328. package/singlestore-core/query-builders/insert.cjs +1 -6
  329. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  330. package/singlestore-core/query-builders/insert.js +1 -6
  331. package/singlestore-core/query-builders/insert.js.map +1 -1
  332. package/singlestore-core/query-builders/select.cjs +3 -28
  333. package/singlestore-core/query-builders/select.cjs.map +1 -1
  334. package/singlestore-core/query-builders/select.d.cts +0 -9
  335. package/singlestore-core/query-builders/select.d.ts +0 -9
  336. package/singlestore-core/query-builders/select.js +3 -28
  337. package/singlestore-core/query-builders/select.js.map +1 -1
  338. package/singlestore-core/query-builders/update.cjs +1 -9
  339. package/singlestore-core/query-builders/update.cjs.map +1 -1
  340. package/singlestore-core/query-builders/update.js +1 -9
  341. package/singlestore-core/query-builders/update.js.map +1 -1
  342. package/singlestore-core/session.cjs +0 -53
  343. package/singlestore-core/session.cjs.map +1 -1
  344. package/singlestore-core/session.d.cts +2 -14
  345. package/singlestore-core/session.d.ts +2 -14
  346. package/singlestore-core/session.js +1 -54
  347. package/singlestore-core/session.js.map +1 -1
  348. package/singlestore-core/utils.cjs +0 -16
  349. package/singlestore-core/utils.cjs.map +1 -1
  350. package/singlestore-core/utils.d.cts +0 -3
  351. package/singlestore-core/utils.d.ts +0 -3
  352. package/singlestore-core/utils.js +0 -15
  353. package/singlestore-core/utils.js.map +1 -1
  354. package/sql/sql.cjs +0 -10
  355. package/sql/sql.cjs.map +1 -1
  356. package/sql/sql.js +0 -10
  357. package/sql/sql.js.map +1 -1
  358. package/sqlite-core/db.cjs +0 -1
  359. package/sqlite-core/db.cjs.map +1 -1
  360. package/sqlite-core/db.d.cts +0 -4
  361. package/sqlite-core/db.d.ts +0 -4
  362. package/sqlite-core/db.js +0 -1
  363. package/sqlite-core/db.js.map +1 -1
  364. package/sqlite-core/query-builders/delete.cjs +1 -7
  365. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  366. package/sqlite-core/query-builders/delete.js +1 -7
  367. package/sqlite-core/query-builders/delete.js.map +1 -1
  368. package/sqlite-core/query-builders/insert.cjs +1 -7
  369. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  370. package/sqlite-core/query-builders/insert.js +1 -7
  371. package/sqlite-core/query-builders/insert.js.map +1 -1
  372. package/sqlite-core/query-builders/select.cjs +3 -31
  373. package/sqlite-core/query-builders/select.cjs.map +1 -1
  374. package/sqlite-core/query-builders/select.d.cts +0 -9
  375. package/sqlite-core/query-builders/select.d.ts +0 -9
  376. package/sqlite-core/query-builders/select.js +3 -31
  377. package/sqlite-core/query-builders/select.js.map +1 -1
  378. package/sqlite-core/query-builders/update.cjs +1 -7
  379. package/sqlite-core/query-builders/update.cjs.map +1 -1
  380. package/sqlite-core/query-builders/update.js +1 -7
  381. package/sqlite-core/query-builders/update.js.map +1 -1
  382. package/sqlite-core/session.cjs +3 -62
  383. package/sqlite-core/session.cjs.map +1 -1
  384. package/sqlite-core/session.d.cts +4 -18
  385. package/sqlite-core/session.d.ts +4 -18
  386. package/sqlite-core/session.js +4 -63
  387. package/sqlite-core/session.js.map +1 -1
  388. package/sqlite-core/utils.cjs +0 -16
  389. package/sqlite-core/utils.cjs.map +1 -1
  390. package/sqlite-core/utils.d.cts +2 -6
  391. package/sqlite-core/utils.d.ts +2 -6
  392. package/sqlite-core/utils.js +0 -15
  393. package/sqlite-core/utils.js.map +1 -1
  394. package/sqlite-proxy/driver.cjs +2 -9
  395. package/sqlite-proxy/driver.cjs.map +1 -1
  396. package/sqlite-proxy/driver.js +2 -9
  397. package/sqlite-proxy/driver.js.map +1 -1
  398. package/sqlite-proxy/session.cjs +8 -22
  399. package/sqlite-proxy/session.cjs.map +1 -1
  400. package/sqlite-proxy/session.d.cts +2 -12
  401. package/sqlite-proxy/session.d.ts +2 -12
  402. package/sqlite-proxy/session.js +8 -22
  403. package/sqlite-proxy/session.js.map +1 -1
  404. package/subquery.cjs +3 -4
  405. package/subquery.cjs.map +1 -1
  406. package/subquery.d.cts +1 -2
  407. package/subquery.d.ts +1 -2
  408. package/subquery.js +3 -4
  409. package/subquery.js.map +1 -1
  410. package/tidb-serverless/driver.cjs +1 -5
  411. package/tidb-serverless/driver.cjs.map +1 -1
  412. package/tidb-serverless/driver.d.cts +0 -1
  413. package/tidb-serverless/driver.d.ts +0 -1
  414. package/tidb-serverless/driver.js +1 -5
  415. package/tidb-serverless/driver.js.map +1 -1
  416. package/tidb-serverless/session.cjs +5 -15
  417. package/tidb-serverless/session.cjs.map +1 -1
  418. package/tidb-serverless/session.d.cts +2 -12
  419. package/tidb-serverless/session.d.ts +2 -12
  420. package/tidb-serverless/session.js +5 -15
  421. package/tidb-serverless/session.js.map +1 -1
  422. package/utils.cjs +0 -22
  423. package/utils.cjs.map +1 -1
  424. package/utils.d.cts +0 -3
  425. package/utils.d.ts +0 -3
  426. package/utils.js +0 -11
  427. package/utils.js.map +1 -1
  428. package/vercel-postgres/driver.cjs +2 -9
  429. package/vercel-postgres/driver.cjs.map +1 -1
  430. package/vercel-postgres/driver.d.cts +0 -2
  431. package/vercel-postgres/driver.d.ts +0 -2
  432. package/vercel-postgres/driver.js +2 -9
  433. package/vercel-postgres/driver.js.map +1 -1
  434. package/vercel-postgres/session.cjs +7 -21
  435. package/vercel-postgres/session.cjs.map +1 -1
  436. package/vercel-postgres/session.d.cts +2 -12
  437. package/vercel-postgres/session.d.ts +2 -12
  438. package/vercel-postgres/session.js +7 -21
  439. package/vercel-postgres/session.js.map +1 -1
  440. package/version.cjs +1 -1
  441. package/version.d.cts +1 -1
  442. package/version.d.ts +1 -1
  443. package/version.js +1 -1
  444. package/xata-http/driver.cjs +2 -7
  445. package/xata-http/driver.cjs.map +1 -1
  446. package/xata-http/driver.d.cts +0 -2
  447. package/xata-http/driver.d.ts +0 -2
  448. package/xata-http/driver.js +2 -7
  449. package/xata-http/driver.js.map +1 -1
  450. package/xata-http/session.cjs +7 -21
  451. package/xata-http/session.cjs.map +1 -1
  452. package/xata-http/session.d.cts +2 -12
  453. package/xata-http/session.d.ts +2 -12
  454. package/xata-http/session.js +7 -21
  455. package/xata-http/session.js.map +1 -1
  456. package/cache/core/cache.cjs +0 -47
  457. package/cache/core/cache.cjs.map +0 -1
  458. package/cache/core/cache.d.cts +0 -35
  459. package/cache/core/cache.d.ts +0 -35
  460. package/cache/core/cache.js +0 -22
  461. package/cache/core/cache.js.map +0 -1
  462. package/cache/core/index.cjs +0 -23
  463. package/cache/core/index.cjs.map +0 -1
  464. package/cache/core/index.d.cts +0 -1
  465. package/cache/core/index.d.ts +0 -1
  466. package/cache/core/index.js +0 -2
  467. package/cache/core/index.js.map +0 -1
  468. package/cache/core/types.cjs +0 -17
  469. package/cache/core/types.cjs.map +0 -1
  470. package/cache/core/types.d.cts +0 -33
  471. package/cache/core/types.d.ts +0 -33
  472. package/cache/core/types.js +0 -1
  473. package/cache/core/types.js.map +0 -1
  474. package/cache/upstash/cache.cjs +0 -148
  475. package/cache/upstash/cache.cjs.map +0 -1
  476. package/cache/upstash/cache.d.cts +0 -29
  477. package/cache/upstash/cache.d.ts +0 -29
  478. package/cache/upstash/cache.js +0 -123
  479. package/cache/upstash/cache.js.map +0 -1
  480. package/cache/upstash/index.cjs +0 -23
  481. package/cache/upstash/index.cjs.map +0 -1
  482. package/cache/upstash/index.d.cts +0 -1
  483. package/cache/upstash/index.d.ts +0 -1
  484. package/cache/upstash/index.js +0 -2
  485. package/cache/upstash/index.js.map +0 -1
@@ -23,7 +23,6 @@ __export(session_exports, {
23
23
  PreparedQuery: () => PreparedQuery
24
24
  });
25
25
  module.exports = __toCommonJS(session_exports);
26
- var import_core = require("../cache/core/index.cjs");
27
26
  var import_entity = require("../entity.cjs");
28
27
  var import_logger = require("../logger.cjs");
29
28
  var import_sql = require("../sql/sql.cjs");
@@ -36,20 +35,15 @@ class BetterSQLiteSession extends import_session.SQLiteSession {
36
35
  this.client = client;
37
36
  this.schema = schema;
38
37
  this.logger = options.logger ?? new import_logger.NoopLogger();
39
- this.cache = options.cache ?? new import_core.NoopCache();
40
38
  }
41
39
  static [import_entity.entityKind] = "BetterSQLiteSession";
42
40
  logger;
43
- cache;
44
- prepareQuery(query, fields, executeMethod, isResponseInArrayMode, customResultMapper, queryMetadata, cacheConfig) {
41
+ prepareQuery(query, fields, executeMethod, isResponseInArrayMode, customResultMapper) {
45
42
  const stmt = this.client.prepare(query.sql);
46
43
  return new PreparedQuery(
47
44
  stmt,
48
45
  query,
49
46
  this.logger,
50
- this.cache,
51
- queryMetadata,
52
- cacheConfig,
53
47
  fields,
54
48
  executeMethod,
55
49
  isResponseInArrayMode,
@@ -79,8 +73,8 @@ class BetterSQLiteTransaction extends import_sqlite_core.SQLiteTransaction {
79
73
  }
80
74
  }
81
75
  class PreparedQuery extends import_session.SQLitePreparedQuery {
82
- constructor(stmt, query, logger, cache, queryMetadata, cacheConfig, fields, executeMethod, _isResponseInArrayMode, customResultMapper) {
83
- super("sync", executeMethod, query, cache, queryMetadata, cacheConfig);
76
+ constructor(stmt, query, logger, fields, executeMethod, _isResponseInArrayMode, customResultMapper) {
77
+ super("sync", executeMethod, query);
84
78
  this.stmt = stmt;
85
79
  this.logger = logger;
86
80
  this.fields = fields;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/better-sqlite3/session.ts"],"sourcesContent":["import type { Database, RunResult, Statement } from 'better-sqlite3';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery as PreparedQueryBase,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface BetterSQLiteSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class BetterSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: BetterSQLiteSessionOptions = {},\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): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\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\toverride transaction<T>(\n\t\ttransaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this, this.schema);\n\t\tconst nativeTx = this.client.transaction(transaction);\n\t\treturn nativeTx[config.behavior ?? 'deferred'](tx);\n\t}\n}\n\nexport class BetterSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this.session, this.schema, this.nestedIndex + 1);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends PreparedQueryBase<\n\t{ type: 'sync'; run: RunResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\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\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => unknown,\n\t) {\n\t\tsuper('sync', executeMethod, query, cache, queryMetadata, cacheConfig);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): RunResult {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { fields, joinsNotNullableMap, query, logger, stmt, customResultMapper } = 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 stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['all'];\n\t\t}\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, stmt, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn stmt.get(...params);\n\t\t}\n\n\t\tconst row = stmt.raw().get(...params) as unknown[];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.raw().all(...params) as T['values'];\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":["PreparedQueryBase"]}
1
+ {"version":3,"sources":["../../src/better-sqlite3/session.ts"],"sourcesContent":["import type { Database, RunResult, Statement } from 'better-sqlite3';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery as PreparedQueryBase,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface BetterSQLiteSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class BetterSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: BetterSQLiteSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\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): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this, this.schema);\n\t\tconst nativeTx = this.client.transaction(transaction);\n\t\treturn nativeTx[config.behavior ?? 'deferred'](tx);\n\t}\n}\n\nexport class BetterSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this.session, this.schema, this.nestedIndex + 1);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends PreparedQueryBase<\n\t{ type: 'sync'; run: RunResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => unknown,\n\t) {\n\t\tsuper('sync', executeMethod, query);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): RunResult {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { fields, joinsNotNullableMap, query, logger, stmt, customResultMapper } = 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 stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['all'];\n\t\t}\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, stmt, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn stmt.get(...params);\n\t\t}\n\n\t\tconst row = stmt.raw().get(...params) as unknown[];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.raw().all(...params) as T['values'];\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":["PreparedQueryBase"]}
@@ -1,6 +1,4 @@
1
1
  import type { Database, RunResult, Statement } from 'better-sqlite3';
2
- import { type Cache } from "../cache/core/index.cjs";
3
- import type { WithCacheConfig } from "../cache/core/types.cjs";
4
2
  import { entityKind } from "../entity.cjs";
5
3
  import type { Logger } from "../logger.cjs";
6
4
  import type { RelationalSchemaConfig, TablesRelationalConfig } from "../relations.cjs";
@@ -11,7 +9,6 @@ import type { SelectedFieldsOrdered } from "../sqlite-core/query-builders/select
11
9
  import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLitePreparedQuery as PreparedQueryBase, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.cjs";
12
10
  export interface BetterSQLiteSessionOptions {
13
11
  logger?: Logger;
14
- cache?: Cache;
15
12
  }
16
13
  type PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;
17
14
  export declare class BetterSQLiteSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteSession<'sync', RunResult, TFullSchema, TSchema> {
@@ -19,12 +16,8 @@ export declare class BetterSQLiteSession<TFullSchema extends Record<string, unkn
19
16
  private schema;
20
17
  static readonly [entityKind]: string;
21
18
  private logger;
22
- private cache;
23
19
  constructor(client: Database, dialect: SQLiteSyncDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: BetterSQLiteSessionOptions);
24
- prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown, queryMetadata?: {
25
- type: 'select' | 'update' | 'delete' | 'insert';
26
- tables: string[];
27
- }, cacheConfig?: WithCacheConfig): PreparedQuery<T>;
20
+ prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown): PreparedQuery<T>;
28
21
  transaction<T>(transaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T, config?: SQLiteTransactionConfig): T;
29
22
  }
30
23
  export declare class BetterSQLiteTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteTransaction<'sync', RunResult, TFullSchema, TSchema> {
@@ -45,10 +38,7 @@ export declare class PreparedQuery<T extends PreparedQueryConfig = PreparedQuery
45
38
  private _isResponseInArrayMode;
46
39
  private customResultMapper?;
47
40
  static readonly [entityKind]: string;
48
- constructor(stmt: Statement, query: Query, logger: Logger, cache: Cache, queryMetadata: {
49
- type: 'select' | 'update' | 'delete' | 'insert';
50
- tables: string[];
51
- } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => unknown) | undefined);
41
+ constructor(stmt: Statement, query: Query, logger: Logger, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => unknown) | undefined);
52
42
  run(placeholderValues?: Record<string, unknown>): RunResult;
53
43
  all(placeholderValues?: Record<string, unknown>): T['all'];
54
44
  get(placeholderValues?: Record<string, unknown>): T['get'];
@@ -1,6 +1,4 @@
1
1
  import type { Database, RunResult, Statement } from 'better-sqlite3';
2
- import { type Cache } from "../cache/core/index.js";
3
- import type { WithCacheConfig } from "../cache/core/types.js";
4
2
  import { entityKind } from "../entity.js";
5
3
  import type { Logger } from "../logger.js";
6
4
  import type { RelationalSchemaConfig, TablesRelationalConfig } from "../relations.js";
@@ -11,7 +9,6 @@ import type { SelectedFieldsOrdered } from "../sqlite-core/query-builders/select
11
9
  import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLitePreparedQuery as PreparedQueryBase, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.js";
12
10
  export interface BetterSQLiteSessionOptions {
13
11
  logger?: Logger;
14
- cache?: Cache;
15
12
  }
16
13
  type PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;
17
14
  export declare class BetterSQLiteSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteSession<'sync', RunResult, TFullSchema, TSchema> {
@@ -19,12 +16,8 @@ export declare class BetterSQLiteSession<TFullSchema extends Record<string, unkn
19
16
  private schema;
20
17
  static readonly [entityKind]: string;
21
18
  private logger;
22
- private cache;
23
19
  constructor(client: Database, dialect: SQLiteSyncDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: BetterSQLiteSessionOptions);
24
- prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown, queryMetadata?: {
25
- type: 'select' | 'update' | 'delete' | 'insert';
26
- tables: string[];
27
- }, cacheConfig?: WithCacheConfig): PreparedQuery<T>;
20
+ prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown): PreparedQuery<T>;
28
21
  transaction<T>(transaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T, config?: SQLiteTransactionConfig): T;
29
22
  }
30
23
  export declare class BetterSQLiteTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteTransaction<'sync', RunResult, TFullSchema, TSchema> {
@@ -45,10 +38,7 @@ export declare class PreparedQuery<T extends PreparedQueryConfig = PreparedQuery
45
38
  private _isResponseInArrayMode;
46
39
  private customResultMapper?;
47
40
  static readonly [entityKind]: string;
48
- constructor(stmt: Statement, query: Query, logger: Logger, cache: Cache, queryMetadata: {
49
- type: 'select' | 'update' | 'delete' | 'insert';
50
- tables: string[];
51
- } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => unknown) | undefined);
41
+ constructor(stmt: Statement, query: Query, logger: Logger, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => unknown) | undefined);
52
42
  run(placeholderValues?: Record<string, unknown>): RunResult;
53
43
  all(placeholderValues?: Record<string, unknown>): T['all'];
54
44
  get(placeholderValues?: Record<string, unknown>): T['get'];
@@ -1,4 +1,3 @@
1
- import { NoopCache } from "../cache/core/index.js";
2
1
  import { entityKind } from "../entity.js";
3
2
  import { NoopLogger } from "../logger.js";
4
3
  import { fillPlaceholders, sql } from "../sql/sql.js";
@@ -14,20 +13,15 @@ class BetterSQLiteSession extends SQLiteSession {
14
13
  this.client = client;
15
14
  this.schema = schema;
16
15
  this.logger = options.logger ?? new NoopLogger();
17
- this.cache = options.cache ?? new NoopCache();
18
16
  }
19
17
  static [entityKind] = "BetterSQLiteSession";
20
18
  logger;
21
- cache;
22
- prepareQuery(query, fields, executeMethod, isResponseInArrayMode, customResultMapper, queryMetadata, cacheConfig) {
19
+ prepareQuery(query, fields, executeMethod, isResponseInArrayMode, customResultMapper) {
23
20
  const stmt = this.client.prepare(query.sql);
24
21
  return new PreparedQuery(
25
22
  stmt,
26
23
  query,
27
24
  this.logger,
28
- this.cache,
29
- queryMetadata,
30
- cacheConfig,
31
25
  fields,
32
26
  executeMethod,
33
27
  isResponseInArrayMode,
@@ -57,8 +51,8 @@ class BetterSQLiteTransaction extends SQLiteTransaction {
57
51
  }
58
52
  }
59
53
  class PreparedQuery extends PreparedQueryBase {
60
- constructor(stmt, query, logger, cache, queryMetadata, cacheConfig, fields, executeMethod, _isResponseInArrayMode, customResultMapper) {
61
- super("sync", executeMethod, query, cache, queryMetadata, cacheConfig);
54
+ constructor(stmt, query, logger, fields, executeMethod, _isResponseInArrayMode, customResultMapper) {
55
+ super("sync", executeMethod, query);
62
56
  this.stmt = stmt;
63
57
  this.logger = logger;
64
58
  this.fields = fields;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/better-sqlite3/session.ts"],"sourcesContent":["import type { Database, RunResult, Statement } from 'better-sqlite3';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery as PreparedQueryBase,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface BetterSQLiteSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class BetterSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: BetterSQLiteSessionOptions = {},\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): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\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\toverride transaction<T>(\n\t\ttransaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this, this.schema);\n\t\tconst nativeTx = this.client.transaction(transaction);\n\t\treturn nativeTx[config.behavior ?? 'deferred'](tx);\n\t}\n}\n\nexport class BetterSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this.session, this.schema, this.nestedIndex + 1);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends PreparedQueryBase<\n\t{ type: 'sync'; run: RunResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\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\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => unknown,\n\t) {\n\t\tsuper('sync', executeMethod, query, cache, queryMetadata, cacheConfig);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): RunResult {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { fields, joinsNotNullableMap, query, logger, stmt, customResultMapper } = 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 stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['all'];\n\t\t}\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, stmt, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn stmt.get(...params);\n\t\t}\n\n\t\tconst row = stmt.raw().get(...params) as unknown[];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.raw().all(...params) as T['values'];\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/better-sqlite3/session.ts"],"sourcesContent":["import type { Database, RunResult, Statement } from 'better-sqlite3';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery as PreparedQueryBase,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface BetterSQLiteSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class BetterSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: BetterSQLiteSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\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): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this, this.schema);\n\t\tconst nativeTx = this.client.transaction(transaction);\n\t\treturn nativeTx[config.behavior ?? 'deferred'](tx);\n\t}\n}\n\nexport class BetterSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', RunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: BetterSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new BetterSQLiteTransaction('sync', this.dialect, this.session, this.schema, this.nestedIndex + 1);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends PreparedQueryBase<\n\t{ type: 'sync'; run: RunResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'BetterSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => unknown,\n\t) {\n\t\tsuper('sync', executeMethod, query);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): RunResult {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { fields, joinsNotNullableMap, query, logger, stmt, customResultMapper } = 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 stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['all'];\n\t\t}\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, stmt, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn stmt.get(...params);\n\t\t}\n\n\t\tconst row = stmt.raw().get(...params) as unknown[];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.raw().all(...params) as T['values'];\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":[]}
@@ -53,13 +53,9 @@ function construct(client, config = {}) {
53
53
  tableNamesMap: tablesConfig.tableNamesMap
54
54
  };
55
55
  }
56
- const session = new import_session.BunSQLSession(client, dialect, schema, { logger, cache: config.cache });
56
+ const session = new import_session.BunSQLSession(client, dialect, schema, { logger });
57
57
  const db = new BunSQLDatabase(dialect, session, schema);
58
58
  db.$client = client;
59
- db.$cache = config.cache;
60
- if (db.$cache) {
61
- db.$cache["invalidate"] = config.cache?.onMutate;
62
- }
63
59
  return db;
64
60
  }
65
61
  function drizzle(...params) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/bun-sql/driver.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SQLOptions } from 'bun';\nimport { SQL } from 'bun';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { BunSQLQueryResultHKT } from './session.ts';\nimport { BunSQLSession } from './session.ts';\n\nexport class BunSQLDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends PgDatabase<BunSQLQueryResultHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLDatabase';\n}\n\nfunction construct<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: SQL,\n\tconfig: DrizzleConfig<TSchema> = {},\n): BunSQLDatabase<TSchema> & {\n\t$client: SQL;\n} {\n\tconst dialect = new PgDialect({ 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: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\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 session = new BunSQLSession(client, dialect, schema, { logger, cache: config.cache });\n\tconst db = new BunSQLDatabase(dialect, session, schema as any) as BunSQLDatabase<TSchema>;\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\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends SQL = SQL,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & SQLOptions);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): BunSQLDatabase<TSchema> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new SQL(params[0]);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & SQLOptions;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = new SQL({ url, ...config });\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = new SQL(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<TSchema extends Record<string, unknown> = Record<string, never>>(\n\t\tconfig?: DrizzleConfig<TSchema>,\n\t): BunSQLDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAoB;AACpB,oBAA2B;AAC3B,oBAA8B;AAC9B,gBAA2B;AAC3B,qBAA0B;AAC1B,uBAKO;AACP,mBAA6C;AAE7C,qBAA8B;AAEvB,MAAM,uBAEH,qBAA0C;AAAA,EACnD,QAA0B,wBAAU,IAAY;AACjD;AAEA,SAAS,UACR,QACA,SAAiC,CAAC,GAGjC;AACD,QAAM,UAAU,IAAI,yBAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,6BAAc,QAAQ,SAAS,QAAQ,EAAE,QAAQ,OAAO,OAAO,MAAM,CAAC;AAC1F,QAAM,KAAK,IAAI,eAAe,SAAS,SAAS,MAAa;AAC7D,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AAEA,SAAO;AACR;AAEO,SAAS,WAIZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,WAAW,IAAI,eAAI,OAAO,CAAC,CAAC;AAElC,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,UAAI,uBAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMA,YAAW,IAAI,eAAI,EAAE,KAAK,GAAG,OAAO,CAAC;AAC3C,aAAO,UAAUA,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,WAAW,IAAI,eAAI,UAAU;AACnC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KACf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAXO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
1
+ {"version":3,"sources":["../../src/bun-sql/driver.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SQLOptions } from 'bun';\nimport { SQL } from 'bun';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { BunSQLQueryResultHKT } from './session.ts';\nimport { BunSQLSession } from './session.ts';\n\nexport class BunSQLDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends PgDatabase<BunSQLQueryResultHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLDatabase';\n}\n\nfunction construct<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: SQL,\n\tconfig: DrizzleConfig<TSchema> = {},\n): BunSQLDatabase<TSchema> & {\n\t$client: SQL;\n} {\n\tconst dialect = new PgDialect({ 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: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\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 session = new BunSQLSession(client, dialect, schema, { logger });\n\tconst db = new BunSQLDatabase(dialect, session, schema as any) as BunSQLDatabase<TSchema>;\n\t(<any> db).$client = client;\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends SQL = SQL,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & SQLOptions);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): BunSQLDatabase<TSchema> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new SQL(params[0]);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & SQLOptions;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = new SQL({ url, ...config });\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = new SQL(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<TSchema extends Record<string, unknown> = Record<string, never>>(\n\t\tconfig?: DrizzleConfig<TSchema>,\n\t): BunSQLDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAoB;AACpB,oBAA2B;AAC3B,oBAA8B;AAC9B,gBAA2B;AAC3B,qBAA0B;AAC1B,uBAKO;AACP,mBAA6C;AAE7C,qBAA8B;AAEvB,MAAM,uBAEH,qBAA0C;AAAA,EACnD,QAA0B,wBAAU,IAAY;AACjD;AAEA,SAAS,UACR,QACA,SAAiC,CAAC,GAGjC;AACD,QAAM,UAAU,IAAI,yBAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,6BAAc,QAAQ,SAAS,QAAQ,EAAE,OAAO,CAAC;AACrE,QAAM,KAAK,IAAI,eAAe,SAAS,SAAS,MAAa;AAC7D,EAAO,GAAI,UAAU;AAErB,SAAO;AACR;AAEO,SAAS,WAIZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,WAAW,IAAI,eAAI,OAAO,CAAC,CAAC;AAElC,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,UAAI,uBAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMA,YAAW,IAAI,eAAI,EAAE,KAAK,GAAG,OAAO,CAAC;AAC3C,aAAO,UAAUA,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,WAAW,IAAI,eAAI,UAAU;AACnC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KACf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAXO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
package/bun-sql/driver.js CHANGED
@@ -32,13 +32,9 @@ function construct(client, config = {}) {
32
32
  tableNamesMap: tablesConfig.tableNamesMap
33
33
  };
34
34
  }
35
- const session = new BunSQLSession(client, dialect, schema, { logger, cache: config.cache });
35
+ const session = new BunSQLSession(client, dialect, schema, { logger });
36
36
  const db = new BunSQLDatabase(dialect, session, schema);
37
37
  db.$client = client;
38
- db.$cache = config.cache;
39
- if (db.$cache) {
40
- db.$cache["invalidate"] = config.cache?.onMutate;
41
- }
42
38
  return db;
43
39
  }
44
40
  function drizzle(...params) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/bun-sql/driver.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SQLOptions } from 'bun';\nimport { SQL } from 'bun';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { BunSQLQueryResultHKT } from './session.ts';\nimport { BunSQLSession } from './session.ts';\n\nexport class BunSQLDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends PgDatabase<BunSQLQueryResultHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLDatabase';\n}\n\nfunction construct<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: SQL,\n\tconfig: DrizzleConfig<TSchema> = {},\n): BunSQLDatabase<TSchema> & {\n\t$client: SQL;\n} {\n\tconst dialect = new PgDialect({ 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: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\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 session = new BunSQLSession(client, dialect, schema, { logger, cache: config.cache });\n\tconst db = new BunSQLDatabase(dialect, session, schema as any) as BunSQLDatabase<TSchema>;\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\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends SQL = SQL,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & SQLOptions);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): BunSQLDatabase<TSchema> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new SQL(params[0]);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & SQLOptions;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = new SQL({ url, ...config });\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = new SQL(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<TSchema extends Record<string, unknown> = Record<string, never>>(\n\t\tconfig?: DrizzleConfig<TSchema>,\n\t): BunSQLDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":"AAGA,SAAS,WAAW;AACpB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAC1B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AACP,SAA6B,gBAAgB;AAE7C,SAAS,qBAAqB;AAEvB,MAAM,uBAEH,WAA0C;AAAA,EACnD,QAA0B,UAAU,IAAY;AACjD;AAEA,SAAS,UACR,QACA,SAAiC,CAAC,GAGjC;AACD,QAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,cAAc,QAAQ,SAAS,QAAQ,EAAE,QAAQ,OAAO,OAAO,MAAM,CAAC;AAC1F,QAAM,KAAK,IAAI,eAAe,SAAS,SAAS,MAAa;AAC7D,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AAEA,SAAO;AACR;AAEO,SAAS,WAIZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,WAAW,IAAI,IAAI,OAAO,CAAC,CAAC;AAElC,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,MAAI,SAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMA,YAAW,IAAI,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;AAC3C,aAAO,UAAUA,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,WAAW,IAAI,IAAI,UAAU;AACnC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KACf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAXO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
1
+ {"version":3,"sources":["../../src/bun-sql/driver.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SQLOptions } from 'bun';\nimport { SQL } from 'bun';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { BunSQLQueryResultHKT } from './session.ts';\nimport { BunSQLSession } from './session.ts';\n\nexport class BunSQLDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends PgDatabase<BunSQLQueryResultHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLDatabase';\n}\n\nfunction construct<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: SQL,\n\tconfig: DrizzleConfig<TSchema> = {},\n): BunSQLDatabase<TSchema> & {\n\t$client: SQL;\n} {\n\tconst dialect = new PgDialect({ 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: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\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 session = new BunSQLSession(client, dialect, schema, { logger });\n\tconst db = new BunSQLDatabase(dialect, session, schema as any) as BunSQLDatabase<TSchema>;\n\t(<any> db).$client = client;\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends SQL = SQL,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & SQLOptions);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): BunSQLDatabase<TSchema> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new SQL(params[0]);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & SQLOptions;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = new SQL({ url, ...config });\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = new SQL(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<TSchema extends Record<string, unknown> = Record<string, never>>(\n\t\tconfig?: DrizzleConfig<TSchema>,\n\t): BunSQLDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":"AAGA,SAAS,WAAW;AACpB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAC1B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AACP,SAA6B,gBAAgB;AAE7C,SAAS,qBAAqB;AAEvB,MAAM,uBAEH,WAA0C;AAAA,EACnD,QAA0B,UAAU,IAAY;AACjD;AAEA,SAAS,UACR,QACA,SAAiC,CAAC,GAGjC;AACD,QAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,cAAc,QAAQ,SAAS,QAAQ,EAAE,OAAO,CAAC;AACrE,QAAM,KAAK,IAAI,eAAe,SAAS,SAAS,MAAa;AAC7D,EAAO,GAAI,UAAU;AAErB,SAAO;AACR;AAEO,SAAS,WAIZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,WAAW,IAAI,IAAI,OAAO,CAAC,CAAC;AAElC,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,MAAI,SAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMA,YAAW,IAAI,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;AAC3C,aAAO,UAAUA,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,WAAW,IAAI,IAAI,UAAU;AACnC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KACf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAXO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
@@ -23,7 +23,6 @@ __export(session_exports, {
23
23
  BunSQLTransaction: () => BunSQLTransaction
24
24
  });
25
25
  module.exports = __toCommonJS(session_exports);
26
- var import_core = require("../cache/core/index.cjs");
27
26
  var import_entity = require("../entity.cjs");
28
27
  var import_logger = require("../logger.cjs");
29
28
  var import_pg_core = require("../pg-core/index.cjs");
@@ -32,8 +31,8 @@ var import_sql = require("../sql/sql.cjs");
32
31
  var import_tracing = require("../tracing.cjs");
33
32
  var import_utils = require("../utils.cjs");
34
33
  class BunSQLPreparedQuery extends import_session.PgPreparedQuery {
35
- constructor(client, queryString, params, logger, cache, queryMetadata, cacheConfig, fields, _isResponseInArrayMode, customResultMapper) {
36
- super({ sql: queryString, params }, cache, queryMetadata, cacheConfig);
34
+ constructor(client, queryString, params, logger, fields, _isResponseInArrayMode, customResultMapper) {
35
+ super({ sql: queryString, params });
37
36
  this.client = client;
38
37
  this.queryString = queryString;
39
38
  this.params = params;
@@ -53,20 +52,16 @@ class BunSQLPreparedQuery extends import_session.PgPreparedQuery {
53
52
  this.logger.logQuery(this.queryString, params);
54
53
  const { fields, queryString: query, client, joinsNotNullableMap, customResultMapper } = this;
55
54
  if (!fields && !customResultMapper) {
56
- return import_tracing.tracer.startActiveSpan("drizzle.driver.execute", async () => {
57
- return await this.queryWithCache(query, params, async () => {
58
- return await client.unsafe(query, params);
59
- });
55
+ return import_tracing.tracer.startActiveSpan("drizzle.driver.execute", () => {
56
+ return client.unsafe(query, params);
60
57
  });
61
58
  }
62
- const rows = await import_tracing.tracer.startActiveSpan("drizzle.driver.execute", async () => {
59
+ const rows = await import_tracing.tracer.startActiveSpan("drizzle.driver.execute", () => {
63
60
  span?.setAttributes({
64
61
  "drizzle.query.text": query,
65
62
  "drizzle.query.params": JSON.stringify(params)
66
63
  });
67
- return await this.queryWithCache(query, params, async () => {
68
- return client.unsafe(query, params).values();
69
- });
64
+ return client.unsafe(query, params).values();
70
65
  });
71
66
  return import_tracing.tracer.startActiveSpan("drizzle.mapResponse", () => {
72
67
  return customResultMapper ? customResultMapper(rows) : rows.map((row) => (0, import_utils.mapResultRow)(fields, row, joinsNotNullableMap));
@@ -81,14 +76,12 @@ class BunSQLPreparedQuery extends import_session.PgPreparedQuery {
81
76
  "drizzle.query.params": JSON.stringify(params)
82
77
  });
83
78
  this.logger.logQuery(this.queryString, params);
84
- return import_tracing.tracer.startActiveSpan("drizzle.driver.execute", async () => {
79
+ return import_tracing.tracer.startActiveSpan("drizzle.driver.execute", () => {
85
80
  span?.setAttributes({
86
81
  "drizzle.query.text": this.queryString,
87
82
  "drizzle.query.params": JSON.stringify(params)
88
83
  });
89
- return await this.queryWithCache(this.queryString, params, async () => {
90
- return await this.client.unsafe(this.queryString, params);
91
- });
84
+ return this.client.unsafe(this.queryString, params);
92
85
  });
93
86
  });
94
87
  }
@@ -104,20 +97,15 @@ class BunSQLSession extends import_session.PgSession {
104
97
  this.schema = schema;
105
98
  this.options = options;
106
99
  this.logger = options.logger ?? new import_logger.NoopLogger();
107
- this.cache = options.cache ?? new import_core.NoopCache();
108
100
  }
109
101
  static [import_entity.entityKind] = "BunSQLSession";
110
102
  logger;
111
- cache;
112
- prepareQuery(query, fields, name, isResponseInArrayMode, customResultMapper, queryMetadata, cacheConfig) {
103
+ prepareQuery(query, fields, name, isResponseInArrayMode, customResultMapper) {
113
104
  return new BunSQLPreparedQuery(
114
105
  this.client,
115
106
  query.sql,
116
107
  query.params,
117
108
  this.logger,
118
- this.cache,
119
- queryMetadata,
120
- cacheConfig,
121
109
  fields,
122
110
  isResponseInArrayMode,
123
111
  customResultMapper
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/bun-sql/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SavepointSQL, SQL, TransactionSQL } from 'bun';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport class BunSQLPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'BunSQLPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: SQL,\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 _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params }, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async (span) => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tspan?.setAttributes({\n\t\t\t\t'drizzle.query.text': this.queryString,\n\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t});\n\n\t\t\tthis.logger.logQuery(this.queryString, params);\n\n\t\t\tconst { fields, queryString: query, client, joinsNotNullableMap, customResultMapper } = this;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async () => {\n\t\t\t\t\treturn await this.queryWithCache(query, params, async () => {\n\t\t\t\t\t\treturn await client.unsafe(query, params as any[]);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst rows: any[] = await tracer.startActiveSpan('drizzle.driver.execute', async () => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.text': query,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\n\t\t\t\treturn await this.queryWithCache(query, params, async () => {\n\t\t\t\t\treturn client.unsafe(query, params as any[]).values();\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(rows)\n\t\t\t\t\t: rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async (span) => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tspan?.setAttributes({\n\t\t\t\t'drizzle.query.text': this.queryString,\n\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t});\n\t\t\tthis.logger.logQuery(this.queryString, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async () => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.text': this.queryString,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn await this.queryWithCache(this.queryString, params, async () => {\n\t\t\t\t\treturn await this.client.unsafe(this.queryString, params as any[]);\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface BunSQLSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class BunSQLSession<\n\tTSQL extends SQL,\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<BunSQLQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLSession';\n\n\tlogger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tpublic client: TSQL,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\t/** @internal */\n\t\treadonly options: BunSQLSessionOptions = {},\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 PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\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): PgPreparedQuery<T> {\n\t\treturn new BunSQLPreparedQuery(\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\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tquery(query: string, params: unknown[]): Promise<any> {\n\t\tthis.logger.logQuery(query, params);\n\t\treturn this.client.unsafe(query, params as any[]).values();\n\t}\n\n\tqueryObjects(\n\t\tquery: string,\n\t\tparams: unknown[],\n\t): Promise<any> {\n\t\treturn this.client.unsafe(query, params as any[]);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: BunSQLTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig,\n\t): Promise<T> {\n\t\treturn this.client.begin(async (client) => {\n\t\t\tconst session = new BunSQLSession<TransactionSQL, TFullSchema, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new BunSQLTransaction(this.dialect, session, this.schema);\n\t\t\tif (config) {\n\t\t\t\tawait tx.setTransaction(config);\n\t\t\t}\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport class BunSQLTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<BunSQLQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLTransaction';\n\n\tconstructor(\n\t\tdialect: PgDialect,\n\t\t/** @internal */\n\t\toverride readonly session: BunSQLSession<TransactionSQL | SavepointSQL, TFullSchema, TSchema>,\n\t\tschema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tnestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, schema, nestedIndex);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: BunSQLTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn (this.session.client as TransactionSQL).savepoint((client) => {\n\t\t\tconst session = new BunSQLSession<SavepointSQL, TFullSchema, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.session.options,\n\t\t\t);\n\t\t\tconst tx = new BunSQLTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport interface BunSQLQueryResultHKT extends PgQueryResultHKT {\n\ttype: Assume<this['row'], Record<string, any>[]>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAsC;AAEtC,oBAA2B;AAE3B,oBAA2B;AAE3B,qBAA8B;AAG9B,qBAA2C;AAE3C,iBAA6C;AAC7C,qBAAuB;AACvB,mBAA0C;AAEnC,MAAM,4BAA2D,+BAAmB;AAAA,EAG1F,YACS,QACA,aACA,QACA,QACR,OACA,eAIA,aACQ,QACA,wBACA,oBACP;AACD,UAAM,EAAE,KAAK,aAAa,OAAO,GAAG,OAAO,eAAe,WAAW;AAd7D;AACA;AACA;AACA;AAOA;AACA;AACA;AAAA,EAGT;AAAA,EAlBA,QAA0B,wBAAU,IAAY;AAAA,EAoBhD,MAAM,QAAQ,oBAAyD,CAAC,GAA0B;AACjG,WAAO,sBAAO,gBAAgB,mBAAmB,OAAO,SAAS;AAChE,YAAM,aAAS,6BAAiB,KAAK,QAAQ,iBAAiB;AAE9D,YAAM,cAAc;AAAA,QACnB,sBAAsB,KAAK;AAAA,QAC3B,wBAAwB,KAAK,UAAU,MAAM;AAAA,MAC9C,CAAC;AAED,WAAK,OAAO,SAAS,KAAK,aAAa,MAAM;AAE7C,YAAM,EAAE,QAAQ,aAAa,OAAO,QAAQ,qBAAqB,mBAAmB,IAAI;AACxF,UAAI,CAAC,UAAU,CAAC,oBAAoB;AACnC,eAAO,sBAAO,gBAAgB,0BAA0B,YAAY;AACnE,iBAAO,MAAM,KAAK,eAAe,OAAO,QAAQ,YAAY;AAC3D,mBAAO,MAAM,OAAO,OAAO,OAAO,MAAe;AAAA,UAClD,CAAC;AAAA,QACF,CAAC;AAAA,MACF;AAEA,YAAM,OAAc,MAAM,sBAAO,gBAAgB,0BAA0B,YAAY;AACtF,cAAM,cAAc;AAAA,UACnB,sBAAsB;AAAA,UACtB,wBAAwB,KAAK,UAAU,MAAM;AAAA,QAC9C,CAAC;AAED,eAAO,MAAM,KAAK,eAAe,OAAO,QAAQ,YAAY;AAC3D,iBAAO,OAAO,OAAO,OAAO,MAAe,EAAE,OAAO;AAAA,QACrD,CAAC;AAAA,MACF,CAAC;AAED,aAAO,sBAAO,gBAAgB,uBAAuB,MAAM;AAC1D,eAAO,qBACJ,mBAAmB,IAAI,IACvB,KAAK,IAAI,CAAC,YAAQ,2BAA2B,QAAS,KAAK,mBAAmB,CAAC;AAAA,MACnF,CAAC;AAAA,IACF,CAAC;AAAA,EACF;AAAA,EAEA,IAAI,oBAAyD,CAAC,GAAsB;AACnF,WAAO,sBAAO,gBAAgB,mBAAmB,OAAO,SAAS;AAChE,YAAM,aAAS,6BAAiB,KAAK,QAAQ,iBAAiB;AAC9D,YAAM,cAAc;AAAA,QACnB,sBAAsB,KAAK;AAAA,QAC3B,wBAAwB,KAAK,UAAU,MAAM;AAAA,MAC9C,CAAC;AACD,WAAK,OAAO,SAAS,KAAK,aAAa,MAAM;AAC7C,aAAO,sBAAO,gBAAgB,0BAA0B,YAAY;AACnE,cAAM,cAAc;AAAA,UACnB,sBAAsB,KAAK;AAAA,UAC3B,wBAAwB,KAAK,UAAU,MAAM;AAAA,QAC9C,CAAC;AACD,eAAO,MAAM,KAAK,eAAe,KAAK,aAAa,QAAQ,YAAY;AACtE,iBAAO,MAAM,KAAK,OAAO,OAAO,KAAK,aAAa,MAAe;AAAA,QAClE,CAAC;AAAA,MACF,CAAC;AAAA,IACF,CAAC;AAAA,EACF;AAAA;AAAA,EAGA,wBAAiC;AAChC,WAAO,KAAK;AAAA,EACb;AACD;AAOO,MAAM,sBAIH,yBAAsD;AAAA,EAM/D,YACQ,QACP,SACQ,QAEC,UAAgC,CAAC,GACzC;AACD,UAAM,OAAO;AANN;AAEC;AAEC;AAGT,SAAK,SAAS,QAAQ,UAAU,IAAI,yBAAW;AAC/C,SAAK,QAAQ,QAAQ,SAAS,IAAI,sBAAU;AAAA,EAC7C;AAAA,EAfA,QAA0B,wBAAU,IAAY;AAAA,EAEhD;AAAA,EACQ;AAAA,EAcR,aACC,OACA,QACA,MACA,uBACA,oBACA,eAIA,aACqB;AACrB,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,MAAM;AAAA,MACN,MAAM;AAAA,MACN,KAAK;AAAA,MACL,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA,EAEA,MAAM,OAAe,QAAiC;AACrD,SAAK,OAAO,SAAS,OAAO,MAAM;AAClC,WAAO,KAAK,OAAO,OAAO,OAAO,MAAe,EAAE,OAAO;AAAA,EAC1D;AAAA,EAEA,aACC,OACA,QACe;AACf,WAAO,KAAK,OAAO,OAAO,OAAO,MAAe;AAAA,EACjD;AAAA,EAES,YACR,aACA,QACa;AACb,WAAO,KAAK,OAAO,MAAM,OAAO,WAAW;AAC1C,YAAM,UAAU,IAAI;AAAA,QACnB;AAAA,QACA,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,MACN;AACA,YAAM,KAAK,IAAI,kBAAkB,KAAK,SAAS,SAAS,KAAK,MAAM;AACnE,UAAI,QAAQ;AACX,cAAM,GAAG,eAAe,MAAM;AAAA,MAC/B;AACA,aAAO,YAAY,EAAE;AAAA,IACtB,CAAC;AAAA,EACF;AACD;AAEO,MAAM,0BAGH,6BAA0D;AAAA,EAGnE,YACC,SAEkB,SAClB,QACA,cAAc,GACb;AACD,UAAM,SAAS,SAAS,QAAQ,WAAW;AAJzB;AAAA,EAKnB;AAAA,EAVA,QAA0B,wBAAU,IAAY;AAAA,EAYvC,YACR,aACa;AACb,WAAQ,KAAK,QAAQ,OAA0B,UAAU,CAAC,WAAW;AACpE,YAAM,UAAU,IAAI;AAAA,QACnB;AAAA,QACA,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK,QAAQ;AAAA,MACd;AACA,YAAM,KAAK,IAAI,kBAAwC,KAAK,SAAS,SAAS,KAAK,MAAM;AACzF,aAAO,YAAY,EAAE;AAAA,IACtB,CAAC;AAAA,EACF;AACD;","names":[]}
1
+ {"version":3,"sources":["../../src/bun-sql/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SavepointSQL, SQL, TransactionSQL } from 'bun';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport class BunSQLPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'BunSQLPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: SQL,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params });\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async (span) => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tspan?.setAttributes({\n\t\t\t\t'drizzle.query.text': this.queryString,\n\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t});\n\n\t\t\tthis.logger.logQuery(this.queryString, params);\n\n\t\t\tconst { fields, queryString: query, client, joinsNotNullableMap, customResultMapper } = this;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', () => {\n\t\t\t\t\treturn client.unsafe(query, params as any[]);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst rows: any[] = await tracer.startActiveSpan('drizzle.driver.execute', () => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.text': query,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\n\t\t\t\treturn client.unsafe(query, params as any[]).values();\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(rows)\n\t\t\t\t\t: rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async (span) => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tspan?.setAttributes({\n\t\t\t\t'drizzle.query.text': this.queryString,\n\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t});\n\t\t\tthis.logger.logQuery(this.queryString, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', () => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.text': this.queryString,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.client.unsafe(this.queryString, params as any[]);\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface BunSQLSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class BunSQLSession<\n\tTSQL extends SQL,\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<BunSQLQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLSession';\n\n\tlogger: Logger;\n\n\tconstructor(\n\t\tpublic client: TSQL,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\t/** @internal */\n\t\treadonly options: BunSQLSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t): PgPreparedQuery<T> {\n\t\treturn new BunSQLPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tquery(query: string, params: unknown[]): Promise<any> {\n\t\tthis.logger.logQuery(query, params);\n\t\treturn this.client.unsafe(query, params as any[]).values();\n\t}\n\n\tqueryObjects(\n\t\tquery: string,\n\t\tparams: unknown[],\n\t): Promise<any> {\n\t\treturn this.client.unsafe(query, params as any[]);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: BunSQLTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig,\n\t): Promise<T> {\n\t\treturn this.client.begin(async (client) => {\n\t\t\tconst session = new BunSQLSession<TransactionSQL, TFullSchema, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new BunSQLTransaction(this.dialect, session, this.schema);\n\t\t\tif (config) {\n\t\t\t\tawait tx.setTransaction(config);\n\t\t\t}\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport class BunSQLTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<BunSQLQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunSQLTransaction';\n\n\tconstructor(\n\t\tdialect: PgDialect,\n\t\t/** @internal */\n\t\toverride readonly session: BunSQLSession<TransactionSQL | SavepointSQL, TFullSchema, TSchema>,\n\t\tschema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tnestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, schema, nestedIndex);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: BunSQLTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn (this.session.client as TransactionSQL).savepoint((client) => {\n\t\t\tconst session = new BunSQLSession<SavepointSQL, TFullSchema, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.session.options,\n\t\t\t);\n\t\t\tconst tx = new BunSQLTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport interface BunSQLQueryResultHKT extends PgQueryResultHKT {\n\ttype: Assume<this['row'], Record<string, any>[]>;\n}\n"],"mappings":"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","names":[]}
@@ -1,6 +1,4 @@
1
1
  import type { SavepointSQL, SQL, TransactionSQL } from 'bun';
2
- import { type Cache } from "../cache/core/index.cjs";
3
- import type { WithCacheConfig } from "../cache/core/types.cjs";
4
2
  import { entityKind } from "../entity.cjs";
5
3
  import type { Logger } from "../logger.cjs";
6
4
  import type { PgDialect } from "../pg-core/dialect.cjs";
@@ -20,30 +18,22 @@ export declare class BunSQLPreparedQuery<T extends PreparedQueryConfig> extends
20
18
  private _isResponseInArrayMode;
21
19
  private customResultMapper?;
22
20
  static readonly [entityKind]: string;
23
- constructor(client: SQL, queryString: string, params: unknown[], logger: Logger, cache: Cache, queryMetadata: {
24
- type: 'select' | 'update' | 'delete' | 'insert';
25
- tables: string[];
26
- } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
21
+ constructor(client: SQL, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
27
22
  execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
28
23
  all(placeholderValues?: Record<string, unknown> | undefined): Promise<T['all']>;
29
24
  }
30
25
  export interface BunSQLSessionOptions {
31
26
  logger?: Logger;
32
- cache?: Cache;
33
27
  }
34
28
  export declare class BunSQLSession<TSQL extends SQL, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgSession<BunSQLQueryResultHKT, TFullSchema, TSchema> {
35
29
  client: TSQL;
36
30
  private schema;
37
31
  static readonly [entityKind]: string;
38
32
  logger: Logger;
39
- private cache;
40
33
  constructor(client: TSQL, dialect: PgDialect, schema: RelationalSchemaConfig<TSchema> | undefined,
41
34
  /** @internal */
42
35
  options?: BunSQLSessionOptions);
43
- prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute'], queryMetadata?: {
44
- type: 'select' | 'update' | 'delete' | 'insert';
45
- tables: string[];
46
- }, cacheConfig?: WithCacheConfig): PgPreparedQuery<T>;
36
+ prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute']): PgPreparedQuery<T>;
47
37
  query(query: string, params: unknown[]): Promise<any>;
48
38
  queryObjects(query: string, params: unknown[]): Promise<any>;
49
39
  transaction<T>(transaction: (tx: BunSQLTransaction<TFullSchema, TSchema>) => Promise<T>, config?: PgTransactionConfig): Promise<T>;
@@ -1,6 +1,4 @@
1
1
  import type { SavepointSQL, SQL, TransactionSQL } from 'bun';
2
- import { type Cache } from "../cache/core/index.js";
3
- import type { WithCacheConfig } from "../cache/core/types.js";
4
2
  import { entityKind } from "../entity.js";
5
3
  import type { Logger } from "../logger.js";
6
4
  import type { PgDialect } from "../pg-core/dialect.js";
@@ -20,30 +18,22 @@ export declare class BunSQLPreparedQuery<T extends PreparedQueryConfig> extends
20
18
  private _isResponseInArrayMode;
21
19
  private customResultMapper?;
22
20
  static readonly [entityKind]: string;
23
- constructor(client: SQL, queryString: string, params: unknown[], logger: Logger, cache: Cache, queryMetadata: {
24
- type: 'select' | 'update' | 'delete' | 'insert';
25
- tables: string[];
26
- } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
21
+ constructor(client: SQL, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
27
22
  execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
28
23
  all(placeholderValues?: Record<string, unknown> | undefined): Promise<T['all']>;
29
24
  }
30
25
  export interface BunSQLSessionOptions {
31
26
  logger?: Logger;
32
- cache?: Cache;
33
27
  }
34
28
  export declare class BunSQLSession<TSQL extends SQL, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgSession<BunSQLQueryResultHKT, TFullSchema, TSchema> {
35
29
  client: TSQL;
36
30
  private schema;
37
31
  static readonly [entityKind]: string;
38
32
  logger: Logger;
39
- private cache;
40
33
  constructor(client: TSQL, dialect: PgDialect, schema: RelationalSchemaConfig<TSchema> | undefined,
41
34
  /** @internal */
42
35
  options?: BunSQLSessionOptions);
43
- prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute'], queryMetadata?: {
44
- type: 'select' | 'update' | 'delete' | 'insert';
45
- tables: string[];
46
- }, cacheConfig?: WithCacheConfig): PgPreparedQuery<T>;
36
+ prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute']): PgPreparedQuery<T>;
47
37
  query(query: string, params: unknown[]): Promise<any>;
48
38
  queryObjects(query: string, params: unknown[]): Promise<any>;
49
39
  transaction<T>(transaction: (tx: BunSQLTransaction<TFullSchema, TSchema>) => Promise<T>, config?: PgTransactionConfig): Promise<T>;