drizzle-orm 0.43.0-e2b296d → 0.43.1-26a0497

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 (507) hide show
  1. package/aws-data-api/pg/driver.cjs +5 -1
  2. package/aws-data-api/pg/driver.cjs.map +1 -1
  3. package/aws-data-api/pg/driver.d.cts +1 -0
  4. package/aws-data-api/pg/driver.d.ts +1 -0
  5. package/aws-data-api/pg/driver.js +5 -1
  6. package/aws-data-api/pg/driver.js.map +1 -1
  7. package/aws-data-api/pg/session.cjs +15 -4
  8. package/aws-data-api/pg/session.cjs.map +1 -1
  9. package/aws-data-api/pg/session.d.cts +13 -2
  10. package/aws-data-api/pg/session.d.ts +13 -2
  11. package/aws-data-api/pg/session.js +15 -4
  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 +9 -3
  16. package/better-sqlite3/session.cjs.map +1 -1
  17. package/better-sqlite3/session.d.cts +12 -2
  18. package/better-sqlite3/session.d.ts +12 -2
  19. package/better-sqlite3/session.js +9 -3
  20. package/better-sqlite3/session.js.map +1 -1
  21. package/bun-sql/driver.cjs +5 -1
  22. package/bun-sql/driver.cjs.map +1 -1
  23. package/bun-sql/driver.js +5 -1
  24. package/bun-sql/driver.js.map +1 -1
  25. package/bun-sql/session.cjs +21 -9
  26. package/bun-sql/session.cjs.map +1 -1
  27. package/bun-sql/session.d.cts +12 -2
  28. package/bun-sql/session.d.ts +12 -2
  29. package/bun-sql/session.js +21 -9
  30. package/bun-sql/session.js.map +1 -1
  31. package/cache/core/cache.cjs +47 -0
  32. package/cache/core/cache.cjs.map +1 -0
  33. package/cache/core/cache.d.cts +35 -0
  34. package/cache/core/cache.d.ts +35 -0
  35. package/cache/core/cache.js +22 -0
  36. package/cache/core/cache.js.map +1 -0
  37. package/cache/core/index.cjs +23 -0
  38. package/cache/core/index.cjs.map +1 -0
  39. package/cache/core/index.d.cts +1 -0
  40. package/cache/core/index.d.ts +1 -0
  41. package/cache/core/index.js +2 -0
  42. package/cache/core/index.js.map +1 -0
  43. package/cache/core/types.cjs +17 -0
  44. package/cache/core/types.cjs.map +1 -0
  45. package/cache/core/types.d.cts +33 -0
  46. package/cache/core/types.d.ts +33 -0
  47. package/cache/core/types.js +1 -0
  48. package/cache/core/types.js.map +1 -0
  49. package/cache/upstash/cache.cjs +148 -0
  50. package/cache/upstash/cache.cjs.map +1 -0
  51. package/cache/upstash/cache.d.cts +29 -0
  52. package/cache/upstash/cache.d.ts +29 -0
  53. package/cache/upstash/cache.js +123 -0
  54. package/cache/upstash/cache.js.map +1 -0
  55. package/cache/upstash/index.cjs +23 -0
  56. package/cache/upstash/index.cjs.map +1 -0
  57. package/cache/upstash/index.d.cts +1 -0
  58. package/cache/upstash/index.d.ts +1 -0
  59. package/cache/upstash/index.js +2 -0
  60. package/cache/upstash/index.js.map +1 -0
  61. package/d1/driver.cjs +5 -1
  62. package/d1/driver.cjs.map +1 -1
  63. package/d1/driver.js +5 -1
  64. package/d1/driver.js.map +1 -1
  65. package/d1/session.cjs +23 -9
  66. package/d1/session.cjs.map +1 -1
  67. package/d1/session.d.cts +12 -2
  68. package/d1/session.d.ts +12 -2
  69. package/d1/session.js +23 -9
  70. package/d1/session.js.map +1 -1
  71. package/durable-sqlite/session.cjs +1 -1
  72. package/durable-sqlite/session.cjs.map +1 -1
  73. package/durable-sqlite/session.js +1 -1
  74. package/durable-sqlite/session.js.map +1 -1
  75. package/gel/driver.cjs +9 -2
  76. package/gel/driver.cjs.map +1 -1
  77. package/gel/driver.d.cts +2 -0
  78. package/gel/driver.d.ts +2 -0
  79. package/gel/driver.js +9 -2
  80. package/gel/driver.js.map +1 -1
  81. package/gel/session.cjs +25 -10
  82. package/gel/session.cjs.map +1 -1
  83. package/gel/session.d.cts +12 -2
  84. package/gel/session.d.ts +12 -2
  85. package/gel/session.js +25 -10
  86. package/gel/session.js.map +1 -1
  87. package/gel-core/db.cjs +1 -0
  88. package/gel-core/db.cjs.map +1 -1
  89. package/gel-core/db.d.cts +4 -0
  90. package/gel-core/db.d.ts +4 -0
  91. package/gel-core/db.js +1 -0
  92. package/gel-core/db.js.map +1 -1
  93. package/gel-core/dialect.cjs +1 -1
  94. package/gel-core/dialect.cjs.map +1 -1
  95. package/gel-core/dialect.js +1 -1
  96. package/gel-core/dialect.js.map +1 -1
  97. package/gel-core/query-builders/delete.cjs +5 -1
  98. package/gel-core/query-builders/delete.cjs.map +1 -1
  99. package/gel-core/query-builders/delete.js +5 -1
  100. package/gel-core/query-builders/delete.js.map +1 -1
  101. package/gel-core/query-builders/insert.cjs +5 -1
  102. package/gel-core/query-builders/insert.cjs.map +1 -1
  103. package/gel-core/query-builders/insert.js +5 -1
  104. package/gel-core/query-builders/insert.js.map +1 -1
  105. package/gel-core/query-builders/select.cjs +29 -4
  106. package/gel-core/query-builders/select.cjs.map +1 -1
  107. package/gel-core/query-builders/select.d.cts +9 -0
  108. package/gel-core/query-builders/select.d.ts +9 -0
  109. package/gel-core/query-builders/select.js +29 -4
  110. package/gel-core/query-builders/select.js.map +1 -1
  111. package/gel-core/query-builders/update.cjs +5 -1
  112. package/gel-core/query-builders/update.cjs.map +1 -1
  113. package/gel-core/query-builders/update.js +5 -1
  114. package/gel-core/query-builders/update.js.map +1 -1
  115. package/gel-core/session.cjs +52 -1
  116. package/gel-core/session.cjs.map +1 -1
  117. package/gel-core/session.d.cts +14 -3
  118. package/gel-core/session.d.ts +14 -3
  119. package/gel-core/session.js +53 -2
  120. package/gel-core/session.js.map +1 -1
  121. package/gel-core/utils.cjs +16 -0
  122. package/gel-core/utils.cjs.map +1 -1
  123. package/gel-core/utils.d.cts +8 -4
  124. package/gel-core/utils.d.ts +8 -4
  125. package/gel-core/utils.js +15 -0
  126. package/gel-core/utils.js.map +1 -1
  127. package/libsql/driver-core.cjs +5 -1
  128. package/libsql/driver-core.cjs.map +1 -1
  129. package/libsql/driver-core.js +5 -1
  130. package/libsql/driver-core.js.map +1 -1
  131. package/libsql/session.cjs +27 -13
  132. package/libsql/session.cjs.map +1 -1
  133. package/libsql/session.d.cts +12 -2
  134. package/libsql/session.d.ts +12 -2
  135. package/libsql/session.js +27 -13
  136. package/libsql/session.js.map +1 -1
  137. package/mysql-core/db.cjs +1 -0
  138. package/mysql-core/db.cjs.map +1 -1
  139. package/mysql-core/db.d.cts +4 -0
  140. package/mysql-core/db.d.ts +4 -0
  141. package/mysql-core/db.js +1 -0
  142. package/mysql-core/db.js.map +1 -1
  143. package/mysql-core/dialect.cjs +1 -1
  144. package/mysql-core/dialect.cjs.map +1 -1
  145. package/mysql-core/dialect.js +1 -1
  146. package/mysql-core/dialect.js.map +1 -1
  147. package/mysql-core/query-builders/delete.cjs +9 -1
  148. package/mysql-core/query-builders/delete.cjs.map +1 -1
  149. package/mysql-core/query-builders/delete.js +9 -1
  150. package/mysql-core/query-builders/delete.js.map +1 -1
  151. package/mysql-core/query-builders/insert.cjs +8 -1
  152. package/mysql-core/query-builders/insert.cjs.map +1 -1
  153. package/mysql-core/query-builders/insert.d.cts +2 -0
  154. package/mysql-core/query-builders/insert.d.ts +2 -0
  155. package/mysql-core/query-builders/insert.js +8 -1
  156. package/mysql-core/query-builders/insert.js.map +1 -1
  157. package/mysql-core/query-builders/select.cjs +27 -3
  158. package/mysql-core/query-builders/select.cjs.map +1 -1
  159. package/mysql-core/query-builders/select.d.cts +9 -0
  160. package/mysql-core/query-builders/select.d.ts +9 -0
  161. package/mysql-core/query-builders/select.js +28 -4
  162. package/mysql-core/query-builders/select.js.map +1 -1
  163. package/mysql-core/query-builders/update.cjs +11 -1
  164. package/mysql-core/query-builders/update.cjs.map +1 -1
  165. package/mysql-core/query-builders/update.d.cts +2 -0
  166. package/mysql-core/query-builders/update.d.ts +2 -0
  167. package/mysql-core/query-builders/update.js +11 -1
  168. package/mysql-core/query-builders/update.js.map +1 -1
  169. package/mysql-core/session.cjs +53 -0
  170. package/mysql-core/session.cjs.map +1 -1
  171. package/mysql-core/session.d.cts +15 -2
  172. package/mysql-core/session.d.ts +15 -2
  173. package/mysql-core/session.js +54 -1
  174. package/mysql-core/session.js.map +1 -1
  175. package/mysql-core/utils.cjs +16 -0
  176. package/mysql-core/utils.cjs.map +1 -1
  177. package/mysql-core/utils.d.cts +6 -2
  178. package/mysql-core/utils.d.ts +6 -2
  179. package/mysql-core/utils.js +15 -0
  180. package/mysql-core/utils.js.map +1 -1
  181. package/mysql-proxy/session.cjs +15 -5
  182. package/mysql-proxy/session.cjs.map +1 -1
  183. package/mysql-proxy/session.d.cts +12 -2
  184. package/mysql-proxy/session.d.ts +12 -2
  185. package/mysql-proxy/session.js +15 -5
  186. package/mysql-proxy/session.js.map +1 -1
  187. package/mysql2/driver.cjs +10 -2
  188. package/mysql2/driver.cjs.map +1 -1
  189. package/mysql2/driver.d.cts +2 -0
  190. package/mysql2/driver.d.ts +2 -0
  191. package/mysql2/driver.js +10 -2
  192. package/mysql2/driver.js.map +1 -1
  193. package/mysql2/session.cjs +15 -5
  194. package/mysql2/session.cjs.map +1 -1
  195. package/mysql2/session.d.cts +12 -2
  196. package/mysql2/session.d.ts +12 -2
  197. package/mysql2/session.js +15 -5
  198. package/mysql2/session.js.map +1 -1
  199. package/neon-http/driver.cjs +9 -2
  200. package/neon-http/driver.cjs.map +1 -1
  201. package/neon-http/driver.d.cts +2 -0
  202. package/neon-http/driver.d.ts +2 -0
  203. package/neon-http/driver.js +9 -2
  204. package/neon-http/driver.js.map +1 -1
  205. package/neon-http/session.cjs +25 -15
  206. package/neon-http/session.cjs.map +1 -1
  207. package/neon-http/session.d.cts +12 -2
  208. package/neon-http/session.d.ts +12 -2
  209. package/neon-http/session.js +25 -15
  210. package/neon-http/session.js.map +1 -1
  211. package/neon-serverless/driver.cjs +9 -2
  212. package/neon-serverless/driver.cjs.map +1 -1
  213. package/neon-serverless/driver.d.cts +2 -0
  214. package/neon-serverless/driver.d.ts +2 -0
  215. package/neon-serverless/driver.js +9 -2
  216. package/neon-serverless/driver.js.map +1 -1
  217. package/neon-serverless/session.cjs +21 -7
  218. package/neon-serverless/session.cjs.map +1 -1
  219. package/neon-serverless/session.d.cts +12 -2
  220. package/neon-serverless/session.d.ts +12 -2
  221. package/neon-serverless/session.js +21 -7
  222. package/neon-serverless/session.js.map +1 -1
  223. package/node-postgres/driver.cjs +9 -2
  224. package/node-postgres/driver.cjs.map +1 -1
  225. package/node-postgres/driver.d.cts +2 -0
  226. package/node-postgres/driver.d.ts +2 -0
  227. package/node-postgres/driver.js +9 -2
  228. package/node-postgres/driver.js.map +1 -1
  229. package/node-postgres/session.cjs +19 -6
  230. package/node-postgres/session.cjs.map +1 -1
  231. package/node-postgres/session.d.cts +13 -2
  232. package/node-postgres/session.d.ts +13 -2
  233. package/node-postgres/session.js +19 -6
  234. package/node-postgres/session.js.map +1 -1
  235. package/op-sqlite/driver.cjs +5 -1
  236. package/op-sqlite/driver.cjs.map +1 -1
  237. package/op-sqlite/driver.js +5 -1
  238. package/op-sqlite/driver.js.map +1 -1
  239. package/op-sqlite/session.cjs +23 -9
  240. package/op-sqlite/session.cjs.map +1 -1
  241. package/op-sqlite/session.d.cts +12 -2
  242. package/op-sqlite/session.d.ts +12 -2
  243. package/op-sqlite/session.js +23 -9
  244. package/op-sqlite/session.js.map +1 -1
  245. package/package.json +69 -4
  246. package/pg-core/db.cjs +1 -0
  247. package/pg-core/db.cjs.map +1 -1
  248. package/pg-core/db.d.cts +4 -0
  249. package/pg-core/db.d.ts +4 -0
  250. package/pg-core/db.js +1 -0
  251. package/pg-core/db.js.map +1 -1
  252. package/pg-core/dialect.cjs +1 -1
  253. package/pg-core/dialect.cjs.map +1 -1
  254. package/pg-core/dialect.js +1 -1
  255. package/pg-core/dialect.js.map +1 -1
  256. package/pg-core/query-builders/delete.cjs +6 -1
  257. package/pg-core/query-builders/delete.cjs.map +1 -1
  258. package/pg-core/query-builders/delete.d.cts +3 -1
  259. package/pg-core/query-builders/delete.d.ts +3 -1
  260. package/pg-core/query-builders/delete.js +6 -1
  261. package/pg-core/query-builders/delete.js.map +1 -1
  262. package/pg-core/query-builders/insert.cjs +6 -1
  263. package/pg-core/query-builders/insert.cjs.map +1 -1
  264. package/pg-core/query-builders/insert.d.cts +2 -0
  265. package/pg-core/query-builders/insert.d.ts +2 -0
  266. package/pg-core/query-builders/insert.js +6 -1
  267. package/pg-core/query-builders/insert.js.map +1 -1
  268. package/pg-core/query-builders/select.cjs +31 -5
  269. package/pg-core/query-builders/select.cjs.map +1 -1
  270. package/pg-core/query-builders/select.d.cts +15 -6
  271. package/pg-core/query-builders/select.d.ts +15 -6
  272. package/pg-core/query-builders/select.js +31 -5
  273. package/pg-core/query-builders/select.js.map +1 -1
  274. package/pg-core/query-builders/update.cjs +6 -1
  275. package/pg-core/query-builders/update.cjs.map +1 -1
  276. package/pg-core/query-builders/update.d.cts +4 -2
  277. package/pg-core/query-builders/update.d.ts +4 -2
  278. package/pg-core/query-builders/update.js +6 -1
  279. package/pg-core/query-builders/update.js.map +1 -1
  280. package/pg-core/schema.cjs +2 -2
  281. package/pg-core/schema.cjs.map +1 -1
  282. package/pg-core/schema.d.cts +4 -1
  283. package/pg-core/schema.d.ts +4 -1
  284. package/pg-core/schema.js +2 -2
  285. package/pg-core/schema.js.map +1 -1
  286. package/pg-core/session.cjs +52 -1
  287. package/pg-core/session.cjs.map +1 -1
  288. package/pg-core/session.d.cts +14 -3
  289. package/pg-core/session.d.ts +14 -3
  290. package/pg-core/session.js +53 -2
  291. package/pg-core/session.js.map +1 -1
  292. package/pg-core/utils.cjs +16 -0
  293. package/pg-core/utils.cjs.map +1 -1
  294. package/pg-core/utils.d.cts +8 -4
  295. package/pg-core/utils.d.ts +8 -4
  296. package/pg-core/utils.js +16 -1
  297. package/pg-core/utils.js.map +1 -1
  298. package/pg-proxy/driver.cjs +7 -2
  299. package/pg-proxy/driver.cjs.map +1 -1
  300. package/pg-proxy/driver.js +7 -2
  301. package/pg-proxy/driver.js.map +1 -1
  302. package/pg-proxy/session.cjs +15 -5
  303. package/pg-proxy/session.cjs.map +1 -1
  304. package/pg-proxy/session.d.cts +12 -2
  305. package/pg-proxy/session.d.ts +12 -2
  306. package/pg-proxy/session.js +15 -5
  307. package/pg-proxy/session.js.map +1 -1
  308. package/pglite/driver.cjs +9 -2
  309. package/pglite/driver.cjs.map +1 -1
  310. package/pglite/driver.d.cts +2 -0
  311. package/pglite/driver.d.ts +2 -0
  312. package/pglite/driver.js +9 -2
  313. package/pglite/driver.js.map +1 -1
  314. package/pglite/session.cjs +19 -7
  315. package/pglite/session.cjs.map +1 -1
  316. package/pglite/session.d.cts +12 -2
  317. package/pglite/session.d.ts +12 -2
  318. package/pglite/session.js +19 -7
  319. package/pglite/session.js.map +1 -1
  320. package/planetscale-serverless/driver.cjs +5 -1
  321. package/planetscale-serverless/driver.cjs.map +1 -1
  322. package/planetscale-serverless/driver.d.cts +1 -0
  323. package/planetscale-serverless/driver.d.ts +1 -0
  324. package/planetscale-serverless/driver.js +5 -1
  325. package/planetscale-serverless/driver.js.map +1 -1
  326. package/planetscale-serverless/session.cjs +15 -5
  327. package/planetscale-serverless/session.cjs.map +1 -1
  328. package/planetscale-serverless/session.d.cts +12 -2
  329. package/planetscale-serverless/session.d.ts +12 -2
  330. package/planetscale-serverless/session.js +15 -5
  331. package/planetscale-serverless/session.js.map +1 -1
  332. package/postgres-js/driver.cjs +5 -1
  333. package/postgres-js/driver.cjs.map +1 -1
  334. package/postgres-js/driver.js +5 -1
  335. package/postgres-js/driver.js.map +1 -1
  336. package/postgres-js/session.cjs +18 -6
  337. package/postgres-js/session.cjs.map +1 -1
  338. package/postgres-js/session.d.cts +12 -2
  339. package/postgres-js/session.d.ts +12 -2
  340. package/postgres-js/session.js +18 -6
  341. package/postgres-js/session.js.map +1 -1
  342. package/prisma/mysql/session.cjs +1 -1
  343. package/prisma/mysql/session.cjs.map +1 -1
  344. package/prisma/mysql/session.js +1 -1
  345. package/prisma/mysql/session.js.map +1 -1
  346. package/prisma/pg/session.cjs +1 -1
  347. package/prisma/pg/session.cjs.map +1 -1
  348. package/prisma/pg/session.js +1 -1
  349. package/prisma/pg/session.js.map +1 -1
  350. package/query-builders/query-builder.cjs.map +1 -1
  351. package/query-builders/query-builder.d.cts +2 -1
  352. package/query-builders/query-builder.d.ts +2 -1
  353. package/query-builders/query-builder.js.map +1 -1
  354. package/singlestore/driver.cjs +12 -2
  355. package/singlestore/driver.cjs.map +1 -1
  356. package/singlestore/driver.d.cts +2 -0
  357. package/singlestore/driver.d.ts +2 -0
  358. package/singlestore/driver.js +12 -2
  359. package/singlestore/driver.js.map +1 -1
  360. package/singlestore/session.cjs +15 -5
  361. package/singlestore/session.cjs.map +1 -1
  362. package/singlestore/session.d.cts +12 -2
  363. package/singlestore/session.d.ts +12 -2
  364. package/singlestore/session.js +15 -5
  365. package/singlestore/session.js.map +1 -1
  366. package/singlestore-core/db.cjs +1 -0
  367. package/singlestore-core/db.cjs.map +1 -1
  368. package/singlestore-core/db.d.cts +4 -0
  369. package/singlestore-core/db.d.ts +4 -0
  370. package/singlestore-core/db.js +1 -0
  371. package/singlestore-core/db.js.map +1 -1
  372. package/singlestore-core/dialect.cjs +1 -1
  373. package/singlestore-core/dialect.cjs.map +1 -1
  374. package/singlestore-core/dialect.js +1 -1
  375. package/singlestore-core/dialect.js.map +1 -1
  376. package/singlestore-core/query-builders/delete.cjs +9 -1
  377. package/singlestore-core/query-builders/delete.cjs.map +1 -1
  378. package/singlestore-core/query-builders/delete.js +9 -1
  379. package/singlestore-core/query-builders/delete.js.map +1 -1
  380. package/singlestore-core/query-builders/insert.cjs +6 -1
  381. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  382. package/singlestore-core/query-builders/insert.js +6 -1
  383. package/singlestore-core/query-builders/insert.js.map +1 -1
  384. package/singlestore-core/query-builders/select.cjs +28 -3
  385. package/singlestore-core/query-builders/select.cjs.map +1 -1
  386. package/singlestore-core/query-builders/select.d.cts +9 -0
  387. package/singlestore-core/query-builders/select.d.ts +9 -0
  388. package/singlestore-core/query-builders/select.js +28 -3
  389. package/singlestore-core/query-builders/select.js.map +1 -1
  390. package/singlestore-core/query-builders/update.cjs +9 -1
  391. package/singlestore-core/query-builders/update.cjs.map +1 -1
  392. package/singlestore-core/query-builders/update.js +9 -1
  393. package/singlestore-core/query-builders/update.js.map +1 -1
  394. package/singlestore-core/session.cjs +53 -0
  395. package/singlestore-core/session.cjs.map +1 -1
  396. package/singlestore-core/session.d.cts +14 -2
  397. package/singlestore-core/session.d.ts +14 -2
  398. package/singlestore-core/session.js +54 -1
  399. package/singlestore-core/session.js.map +1 -1
  400. package/singlestore-core/utils.cjs +16 -0
  401. package/singlestore-core/utils.cjs.map +1 -1
  402. package/singlestore-core/utils.d.cts +3 -0
  403. package/singlestore-core/utils.d.ts +3 -0
  404. package/singlestore-core/utils.js +15 -0
  405. package/singlestore-core/utils.js.map +1 -1
  406. package/sql/sql.cjs +10 -0
  407. package/sql/sql.cjs.map +1 -1
  408. package/sql/sql.js +10 -0
  409. package/sql/sql.js.map +1 -1
  410. package/sqlite-core/db.cjs +1 -0
  411. package/sqlite-core/db.cjs.map +1 -1
  412. package/sqlite-core/db.d.cts +4 -0
  413. package/sqlite-core/db.d.ts +4 -0
  414. package/sqlite-core/db.js +1 -0
  415. package/sqlite-core/db.js.map +1 -1
  416. package/sqlite-core/query-builders/delete.cjs +7 -1
  417. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  418. package/sqlite-core/query-builders/delete.js +7 -1
  419. package/sqlite-core/query-builders/delete.js.map +1 -1
  420. package/sqlite-core/query-builders/insert.cjs +7 -1
  421. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  422. package/sqlite-core/query-builders/insert.js +7 -1
  423. package/sqlite-core/query-builders/insert.js.map +1 -1
  424. package/sqlite-core/query-builders/select.cjs +31 -3
  425. package/sqlite-core/query-builders/select.cjs.map +1 -1
  426. package/sqlite-core/query-builders/select.d.cts +9 -0
  427. package/sqlite-core/query-builders/select.d.ts +9 -0
  428. package/sqlite-core/query-builders/select.js +31 -3
  429. package/sqlite-core/query-builders/select.js.map +1 -1
  430. package/sqlite-core/query-builders/update.cjs +7 -1
  431. package/sqlite-core/query-builders/update.cjs.map +1 -1
  432. package/sqlite-core/query-builders/update.js +7 -1
  433. package/sqlite-core/query-builders/update.js.map +1 -1
  434. package/sqlite-core/session.cjs +62 -3
  435. package/sqlite-core/session.cjs.map +1 -1
  436. package/sqlite-core/session.d.cts +18 -4
  437. package/sqlite-core/session.d.ts +18 -4
  438. package/sqlite-core/session.js +63 -4
  439. package/sqlite-core/session.js.map +1 -1
  440. package/sqlite-core/utils.cjs +16 -0
  441. package/sqlite-core/utils.cjs.map +1 -1
  442. package/sqlite-core/utils.d.cts +6 -2
  443. package/sqlite-core/utils.d.ts +6 -2
  444. package/sqlite-core/utils.js +15 -0
  445. package/sqlite-core/utils.js.map +1 -1
  446. package/sqlite-proxy/driver.cjs +9 -2
  447. package/sqlite-proxy/driver.cjs.map +1 -1
  448. package/sqlite-proxy/driver.js +9 -2
  449. package/sqlite-proxy/driver.js.map +1 -1
  450. package/sqlite-proxy/session.cjs +22 -8
  451. package/sqlite-proxy/session.cjs.map +1 -1
  452. package/sqlite-proxy/session.d.cts +12 -2
  453. package/sqlite-proxy/session.d.ts +12 -2
  454. package/sqlite-proxy/session.js +22 -8
  455. package/sqlite-proxy/session.js.map +1 -1
  456. package/subquery.cjs +4 -3
  457. package/subquery.cjs.map +1 -1
  458. package/subquery.d.cts +2 -1
  459. package/subquery.d.ts +2 -1
  460. package/subquery.js +4 -3
  461. package/subquery.js.map +1 -1
  462. package/tidb-serverless/driver.cjs +5 -1
  463. package/tidb-serverless/driver.cjs.map +1 -1
  464. package/tidb-serverless/driver.d.cts +1 -0
  465. package/tidb-serverless/driver.d.ts +1 -0
  466. package/tidb-serverless/driver.js +5 -1
  467. package/tidb-serverless/driver.js.map +1 -1
  468. package/tidb-serverless/session.cjs +15 -5
  469. package/tidb-serverless/session.cjs.map +1 -1
  470. package/tidb-serverless/session.d.cts +12 -2
  471. package/tidb-serverless/session.d.ts +12 -2
  472. package/tidb-serverless/session.js +15 -5
  473. package/tidb-serverless/session.js.map +1 -1
  474. package/utils.cjs +22 -0
  475. package/utils.cjs.map +1 -1
  476. package/utils.d.cts +3 -0
  477. package/utils.d.ts +3 -0
  478. package/utils.js +11 -0
  479. package/utils.js.map +1 -1
  480. package/vercel-postgres/driver.cjs +9 -2
  481. package/vercel-postgres/driver.cjs.map +1 -1
  482. package/vercel-postgres/driver.d.cts +2 -0
  483. package/vercel-postgres/driver.d.ts +2 -0
  484. package/vercel-postgres/driver.js +9 -2
  485. package/vercel-postgres/driver.js.map +1 -1
  486. package/vercel-postgres/session.cjs +21 -7
  487. package/vercel-postgres/session.cjs.map +1 -1
  488. package/vercel-postgres/session.d.cts +12 -2
  489. package/vercel-postgres/session.d.ts +12 -2
  490. package/vercel-postgres/session.js +21 -7
  491. package/vercel-postgres/session.js.map +1 -1
  492. package/version.cjs +1 -1
  493. package/version.d.cts +1 -1
  494. package/version.d.ts +1 -1
  495. package/version.js +1 -1
  496. package/xata-http/driver.cjs +7 -2
  497. package/xata-http/driver.cjs.map +1 -1
  498. package/xata-http/driver.d.cts +2 -0
  499. package/xata-http/driver.d.ts +2 -0
  500. package/xata-http/driver.js +7 -2
  501. package/xata-http/driver.js.map +1 -1
  502. package/xata-http/session.cjs +21 -7
  503. package/xata-http/session.cjs.map +1 -1
  504. package/xata-http/session.d.cts +12 -2
  505. package/xata-http/session.d.ts +12 -2
  506. package/xata-http/session.js +21 -7
  507. package/xata-http/session.js.map +1 -1
@@ -1,4 +1,6 @@
1
1
  import type { SQLPluginResult, SQLQueryResult } from '@xata.io/client';
2
+ import type { Cache } from "../cache/core/index.cjs";
3
+ import type { WithCacheConfig } from "../cache/core/types.cjs";
2
4
  import { entityKind } from "../entity.cjs";
3
5
  import type { Logger } from "../logger.cjs";
4
6
  import type { PgDialect } from "../pg-core/dialect.cjs";
@@ -23,13 +25,17 @@ export declare class XataHttpPreparedQuery<T extends PreparedQueryConfig> extend
23
25
  private _isResponseInArrayMode;
24
26
  private customResultMapper?;
25
27
  static readonly [entityKind]: string;
26
- constructor(client: XataHttpClient, query: Query, logger: Logger, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
28
+ constructor(client: XataHttpClient, query: Query, logger: Logger, cache: Cache, queryMetadata: {
29
+ type: 'select' | 'update' | 'delete' | 'insert';
30
+ tables: string[];
31
+ } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
27
32
  execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
28
33
  all(placeholderValues?: Record<string, unknown> | undefined): Promise<T['all']>;
29
34
  values(placeholderValues?: Record<string, unknown> | undefined): Promise<T['values']>;
30
35
  }
31
36
  export interface XataHttpSessionOptions {
32
37
  logger?: Logger;
38
+ cache?: Cache;
33
39
  }
34
40
  export declare class XataHttpSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgSession<XataHttpQueryResultHKT, TFullSchema, TSchema> {
35
41
  private client;
@@ -37,8 +43,12 @@ export declare class XataHttpSession<TFullSchema extends Record<string, unknown>
37
43
  private options;
38
44
  static readonly [entityKind]: string;
39
45
  private logger;
46
+ private cache;
40
47
  constructor(client: XataHttpClient, dialect: PgDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: XataHttpSessionOptions);
41
- prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute']): PgPreparedQuery<T>;
48
+ prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute'], queryMetadata?: {
49
+ type: 'select' | 'update' | 'delete' | 'insert';
50
+ tables: string[];
51
+ }, cacheConfig?: WithCacheConfig): PgPreparedQuery<T>;
42
52
  query(query: string, params: unknown[]): Promise<QueryResults<'array'>>;
43
53
  queryObjects(query: string, params: unknown[]): Promise<QueryResults<'json'>>;
44
54
  transaction<T>(_transaction: (tx: XataTransaction<TFullSchema, TSchema>) => Promise<T>, _config?: PgTransactionConfig): Promise<T>;
@@ -1,4 +1,6 @@
1
1
  import type { SQLPluginResult, SQLQueryResult } from '@xata.io/client';
2
+ import type { Cache } from "../cache/core/index.js";
3
+ import type { WithCacheConfig } from "../cache/core/types.js";
2
4
  import { entityKind } from "../entity.js";
3
5
  import type { Logger } from "../logger.js";
4
6
  import type { PgDialect } from "../pg-core/dialect.js";
@@ -23,13 +25,17 @@ export declare class XataHttpPreparedQuery<T extends PreparedQueryConfig> extend
23
25
  private _isResponseInArrayMode;
24
26
  private customResultMapper?;
25
27
  static readonly [entityKind]: string;
26
- constructor(client: XataHttpClient, query: Query, logger: Logger, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
28
+ constructor(client: XataHttpClient, query: Query, logger: Logger, cache: Cache, queryMetadata: {
29
+ type: 'select' | 'update' | 'delete' | 'insert';
30
+ tables: string[];
31
+ } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
27
32
  execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
28
33
  all(placeholderValues?: Record<string, unknown> | undefined): Promise<T['all']>;
29
34
  values(placeholderValues?: Record<string, unknown> | undefined): Promise<T['values']>;
30
35
  }
31
36
  export interface XataHttpSessionOptions {
32
37
  logger?: Logger;
38
+ cache?: Cache;
33
39
  }
34
40
  export declare class XataHttpSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgSession<XataHttpQueryResultHKT, TFullSchema, TSchema> {
35
41
  private client;
@@ -37,8 +43,12 @@ export declare class XataHttpSession<TFullSchema extends Record<string, unknown>
37
43
  private options;
38
44
  static readonly [entityKind]: string;
39
45
  private logger;
46
+ private cache;
40
47
  constructor(client: XataHttpClient, dialect: PgDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: XataHttpSessionOptions);
41
- prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute']): PgPreparedQuery<T>;
48
+ prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute'], queryMetadata?: {
49
+ type: 'select' | 'update' | 'delete' | 'insert';
50
+ tables: string[];
51
+ }, cacheConfig?: WithCacheConfig): PgPreparedQuery<T>;
42
52
  query(query: string, params: unknown[]): Promise<QueryResults<'array'>>;
43
53
  queryObjects(query: string, params: unknown[]): Promise<QueryResults<'json'>>;
44
54
  transaction<T>(_transaction: (tx: XataTransaction<TFullSchema, TSchema>) => Promise<T>, _config?: PgTransactionConfig): Promise<T>;
@@ -1,3 +1,4 @@
1
+ import { NoopCache } from "../cache/core/index.js";
1
2
  import { entityKind } from "../entity.js";
2
3
  import { NoopLogger } from "../logger.js";
3
4
  import { PgTransaction } from "../pg-core/index.js";
@@ -5,8 +6,8 @@ import { PgPreparedQuery, PgSession } from "../pg-core/session.js";
5
6
  import { fillPlaceholders } from "../sql/sql.js";
6
7
  import { mapResultRow } from "../utils.js";
7
8
  class XataHttpPreparedQuery extends PgPreparedQuery {
8
- constructor(client, query, logger, fields, _isResponseInArrayMode, customResultMapper) {
9
- super(query);
9
+ constructor(client, query, logger, cache, queryMetadata, cacheConfig, fields, _isResponseInArrayMode, customResultMapper) {
10
+ super(query, cache, queryMetadata, cacheConfig);
10
11
  this.client = client;
11
12
  this.logger = logger;
12
13
  this.fields = fields;
@@ -19,9 +20,13 @@ class XataHttpPreparedQuery extends PgPreparedQuery {
19
20
  this.logger.logQuery(this.query.sql, params);
20
21
  const { fields, client, query, customResultMapper, joinsNotNullableMap } = this;
21
22
  if (!fields && !customResultMapper) {
22
- return await client.sql({ statement: query.sql, params });
23
+ return this.queryWithCache(query.sql, params, async () => {
24
+ return await client.sql({ statement: query.sql, params });
25
+ });
23
26
  }
24
- const { rows, warning } = await client.sql({ statement: query.sql, params, responseType: "array" });
27
+ const { rows, warning } = await this.queryWithCache(query.sql, params, async () => {
28
+ return await client.sql({ statement: query.sql, params, responseType: "array" });
29
+ });
25
30
  if (warning)
26
31
  console.warn(warning);
27
32
  return customResultMapper ? customResultMapper(rows) : rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
@@ -29,12 +34,16 @@ class XataHttpPreparedQuery extends PgPreparedQuery {
29
34
  all(placeholderValues = {}) {
30
35
  const params = fillPlaceholders(this.query.params, placeholderValues);
31
36
  this.logger.logQuery(this.query.sql, params);
32
- return this.client.sql({ statement: this.query.sql, params, responseType: "array" }).then((result) => result.rows);
37
+ return this.queryWithCache(this.query.sql, params, async () => {
38
+ return this.client.sql({ statement: this.query.sql, params, responseType: "array" });
39
+ }).then((result) => result.rows);
33
40
  }
34
41
  values(placeholderValues = {}) {
35
42
  const params = fillPlaceholders(this.query.params, placeholderValues);
36
43
  this.logger.logQuery(this.query.sql, params);
37
- return this.client.sql({ statement: this.query.sql, params }).then((result) => result.records);
44
+ return this.queryWithCache(this.query.sql, params, async () => {
45
+ return this.client.sql({ statement: this.query.sql, params });
46
+ }).then((result) => result.records);
38
47
  }
39
48
  /** @internal */
40
49
  isResponseInArrayMode() {
@@ -48,14 +57,19 @@ class XataHttpSession extends PgSession {
48
57
  this.schema = schema;
49
58
  this.options = options;
50
59
  this.logger = options.logger ?? new NoopLogger();
60
+ this.cache = options.cache ?? new NoopCache();
51
61
  }
52
62
  static [entityKind] = "XataHttpSession";
53
63
  logger;
54
- prepareQuery(query, fields, name, isResponseInArrayMode, customResultMapper) {
64
+ cache;
65
+ prepareQuery(query, fields, name, isResponseInArrayMode, customResultMapper, queryMetadata, cacheConfig) {
55
66
  return new XataHttpPreparedQuery(
56
67
  this.client,
57
68
  query,
58
69
  this.logger,
70
+ this.cache,
71
+ queryMetadata,
72
+ cacheConfig,
59
73
  fields,
60
74
  isResponseInArrayMode,
61
75
  customResultMapper
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/xata-http/session.ts"],"sourcesContent":["import type { SQLPluginResult, SQLQueryResult } from '@xata.io/client';\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 { mapResultRow } from '~/utils.ts';\n\nexport type XataHttpClient = {\n\tsql: SQLPluginResult;\n};\n\nexport interface QueryResults<ArrayMode extends 'json' | 'array'> {\n\trowCount: number;\n\trows: ArrayMode extends 'array' ? any[][] : Record<string, any>[];\n\trowAsArray: ArrayMode extends 'array' ? true : false;\n}\n\nexport class XataHttpPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'XataHttpPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: XataHttpClient,\n\t\tquery: Query,\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(query);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, query, customResultMapper, joinsNotNullableMap } = this;\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn await client.sql<Record<string, any>>({ statement: query.sql, params });\n\t\t\t// return { rowCount: result.records.length, rows: result.records, rowAsArray: false };\n\t\t}\n\n\t\tconst { rows, warning } = await client.sql({ statement: query.sql, params, responseType: 'array' });\n\t\tif (warning) console.warn(warning);\n\n\t\treturn customResultMapper\n\t\t\t? customResultMapper(rows as unknown[][])\n\t\t\t: rows.map((row) => mapResultRow<T['execute']>(fields!, row as unknown[], joinsNotNullableMap));\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.client.sql({ statement: this.query.sql, params, responseType: 'array' }).then((result) => result.rows);\n\t}\n\n\tvalues(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['values']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.client.sql({ statement: this.query.sql, params }).then((result) => result.records);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode() {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface XataHttpSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class XataHttpSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig>\n\textends PgSession<\n\t\tXataHttpQueryResultHKT,\n\t\tTFullSchema,\n\t\tTSchema\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'XataHttpSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: XataHttpClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: XataHttpSessionOptions = {},\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 XataHttpPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tasync query(query: string, params: unknown[]): Promise<QueryResults<'array'>> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.sql({ statement: query, params, responseType: 'array' });\n\n\t\treturn {\n\t\t\trowCount: result.rows.length,\n\t\t\trows: result.rows,\n\t\t\trowAsArray: true,\n\t\t};\n\t}\n\n\tasync queryObjects(query: string, params: unknown[]): Promise<QueryResults<'json'>> {\n\t\tconst result = await this.client.sql<Record<string, any>>({ statement: query, params });\n\n\t\treturn {\n\t\t\trowCount: result.records.length,\n\t\t\trows: result.records,\n\t\t\trowAsArray: false,\n\t\t};\n\t}\n\n\toverride async transaction<T>(\n\t\t_transaction: (tx: XataTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\t\t_config: PgTransactionConfig = {},\n\t): Promise<T> {\n\t\tthrow new Error('No transactions support in Xata Http driver');\n\t}\n}\n\nexport class XataTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig>\n\textends PgTransaction<\n\t\tXataHttpQueryResultHKT,\n\t\tTFullSchema,\n\t\tTSchema\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'XataHttpTransaction';\n\n\toverride async transaction<T>(_transaction: (tx: XataTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tthrow new Error('No transactions support in Xata Http driver');\n\t}\n}\n\nexport interface XataHttpQueryResultHKT extends PgQueryResultHKT {\n\ttype: SQLQueryResult<this['row']>;\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/xata-http/session.ts"],"sourcesContent":["import type { SQLPluginResult, SQLQueryResult } from '@xata.io/client';\nimport type { Cache } from '~/cache/core/index.ts';\nimport { 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 { mapResultRow } from '~/utils.ts';\n\nexport type XataHttpClient = {\n\tsql: SQLPluginResult;\n};\n\nexport interface QueryResults<ArrayMode extends 'json' | 'array'> {\n\trowCount: number;\n\trows: ArrayMode extends 'array' ? any[][] : Record<string, any>[];\n\trowAsArray: ArrayMode extends 'array' ? true : false;\n}\n\nexport class XataHttpPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'XataHttpPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: XataHttpClient,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper(query, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, query, customResultMapper, joinsNotNullableMap } = this;\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await client.sql<Record<string, any>>({ statement: query.sql, params });\n\t\t\t});\n\t\t}\n\n\t\tconst { rows, warning } = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await client.sql({ statement: query.sql, params, responseType: 'array' });\n\t\t});\n\n\t\tif (warning) console.warn(warning);\n\n\t\treturn customResultMapper\n\t\t\t? customResultMapper(rows as unknown[][])\n\t\t\t: rows.map((row) => mapResultRow<T['execute']>(fields!, row as unknown[], joinsNotNullableMap));\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn this.client.sql({ statement: this.query.sql, params, responseType: 'array' });\n\t\t}).then((result) => result.rows);\n\t}\n\n\tvalues(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['values']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn this.client.sql({ statement: this.query.sql, params });\n\t\t}).then((result) => result.records);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode() {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface XataHttpSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class XataHttpSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig>\n\textends PgSession<\n\t\tXataHttpQueryResultHKT,\n\t\tTFullSchema,\n\t\tTSchema\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'XataHttpSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: XataHttpClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: XataHttpSessionOptions = {},\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 XataHttpPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tasync query(query: string, params: unknown[]): Promise<QueryResults<'array'>> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.sql({ statement: query, params, responseType: 'array' });\n\n\t\treturn {\n\t\t\trowCount: result.rows.length,\n\t\t\trows: result.rows,\n\t\t\trowAsArray: true,\n\t\t};\n\t}\n\n\tasync queryObjects(query: string, params: unknown[]): Promise<QueryResults<'json'>> {\n\t\tconst result = await this.client.sql<Record<string, any>>({ statement: query, params });\n\n\t\treturn {\n\t\t\trowCount: result.records.length,\n\t\t\trows: result.records,\n\t\t\trowAsArray: false,\n\t\t};\n\t}\n\n\toverride async transaction<T>(\n\t\t_transaction: (tx: XataTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\t\t_config: PgTransactionConfig = {},\n\t): Promise<T> {\n\t\tthrow new Error('No transactions support in Xata Http driver');\n\t}\n}\n\nexport class XataTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig>\n\textends PgTransaction<\n\t\tXataHttpQueryResultHKT,\n\t\tTFullSchema,\n\t\tTSchema\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'XataHttpTransaction';\n\n\toverride async transaction<T>(_transaction: (tx: XataTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tthrow new Error('No transactions support in Xata Http driver');\n\t}\n}\n\nexport interface XataHttpQueryResultHKT extends PgQueryResultHKT {\n\ttype: SQLQueryResult<this['row']>;\n}\n"],"mappings":"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","names":[]}