drizzle-orm 0.43.1-47c6ad4 → 0.43.1-5fb460b

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 (814) 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/{mssql-core/columns/date.common.cjs → cache/core/cache.cjs} +22 -12
  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/{node-mssql → cache/core}/index.cjs +4 -6
  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/{mssql-core/subquery.cjs → cache/core/types.cjs} +3 -3
  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/upstash/cache.cjs +148 -0
  49. package/cache/upstash/cache.cjs.map +1 -0
  50. package/cache/upstash/cache.d.cts +29 -0
  51. package/cache/upstash/cache.d.ts +29 -0
  52. package/cache/upstash/cache.js +123 -0
  53. package/cache/upstash/cache.js.map +1 -0
  54. package/{mssql-core/view-common.cjs → cache/upstash/index.cjs} +6 -12
  55. package/cache/upstash/index.cjs.map +1 -0
  56. package/cache/upstash/index.d.cts +1 -0
  57. package/cache/upstash/index.d.ts +1 -0
  58. package/cache/upstash/index.js +2 -0
  59. package/cache/upstash/index.js.map +1 -0
  60. package/column-builder.cjs.map +1 -1
  61. package/column-builder.d.cts +3 -4
  62. package/column-builder.d.ts +3 -4
  63. package/column-builder.js.map +1 -1
  64. package/d1/driver.cjs +5 -1
  65. package/d1/driver.cjs.map +1 -1
  66. package/d1/driver.js +5 -1
  67. package/d1/driver.js.map +1 -1
  68. package/d1/session.cjs +23 -9
  69. package/d1/session.cjs.map +1 -1
  70. package/d1/session.d.cts +12 -2
  71. package/d1/session.d.ts +12 -2
  72. package/d1/session.js +23 -9
  73. package/d1/session.js.map +1 -1
  74. package/durable-sqlite/session.cjs +1 -1
  75. package/durable-sqlite/session.cjs.map +1 -1
  76. package/durable-sqlite/session.js +1 -1
  77. package/durable-sqlite/session.js.map +1 -1
  78. package/gel/driver.cjs +9 -2
  79. package/gel/driver.cjs.map +1 -1
  80. package/gel/driver.d.cts +2 -0
  81. package/gel/driver.d.ts +2 -0
  82. package/gel/driver.js +9 -2
  83. package/gel/driver.js.map +1 -1
  84. package/gel/session.cjs +25 -10
  85. package/gel/session.cjs.map +1 -1
  86. package/gel/session.d.cts +12 -2
  87. package/gel/session.d.ts +12 -2
  88. package/gel/session.js +25 -10
  89. package/gel/session.js.map +1 -1
  90. package/gel-core/db.cjs +3 -0
  91. package/gel-core/db.cjs.map +1 -1
  92. package/gel-core/db.d.cts +4 -0
  93. package/gel-core/db.d.ts +4 -0
  94. package/gel-core/db.js +3 -0
  95. package/gel-core/db.js.map +1 -1
  96. package/gel-core/query-builders/delete.cjs +5 -1
  97. package/gel-core/query-builders/delete.cjs.map +1 -1
  98. package/gel-core/query-builders/delete.js +5 -1
  99. package/gel-core/query-builders/delete.js.map +1 -1
  100. package/gel-core/query-builders/insert.cjs +5 -1
  101. package/gel-core/query-builders/insert.cjs.map +1 -1
  102. package/gel-core/query-builders/insert.js +5 -1
  103. package/gel-core/query-builders/insert.js.map +1 -1
  104. package/gel-core/query-builders/select.cjs +29 -4
  105. package/gel-core/query-builders/select.cjs.map +1 -1
  106. package/gel-core/query-builders/select.d.cts +9 -0
  107. package/gel-core/query-builders/select.d.ts +9 -0
  108. package/gel-core/query-builders/select.js +29 -4
  109. package/gel-core/query-builders/select.js.map +1 -1
  110. package/gel-core/query-builders/update.cjs +5 -1
  111. package/gel-core/query-builders/update.cjs.map +1 -1
  112. package/gel-core/query-builders/update.js +5 -1
  113. package/gel-core/query-builders/update.js.map +1 -1
  114. package/gel-core/session.cjs +53 -1
  115. package/gel-core/session.cjs.map +1 -1
  116. package/gel-core/session.d.cts +14 -3
  117. package/gel-core/session.d.ts +14 -3
  118. package/gel-core/session.js +54 -2
  119. package/gel-core/session.js.map +1 -1
  120. package/gel-core/utils.cjs +16 -0
  121. package/gel-core/utils.cjs.map +1 -1
  122. package/gel-core/utils.d.cts +8 -4
  123. package/gel-core/utils.d.ts +8 -4
  124. package/gel-core/utils.js +15 -0
  125. package/gel-core/utils.js.map +1 -1
  126. package/libsql/driver-core.cjs +5 -1
  127. package/libsql/driver-core.cjs.map +1 -1
  128. package/libsql/driver-core.js +5 -1
  129. package/libsql/driver-core.js.map +1 -1
  130. package/libsql/session.cjs +27 -13
  131. package/libsql/session.cjs.map +1 -1
  132. package/libsql/session.d.cts +12 -2
  133. package/libsql/session.d.ts +12 -2
  134. package/libsql/session.js +27 -13
  135. package/libsql/session.js.map +1 -1
  136. package/mysql-core/db.cjs +3 -0
  137. package/mysql-core/db.cjs.map +1 -1
  138. package/mysql-core/db.d.cts +4 -0
  139. package/mysql-core/db.d.ts +4 -0
  140. package/mysql-core/db.js +3 -0
  141. package/mysql-core/db.js.map +1 -1
  142. package/mysql-core/query-builders/delete.cjs +9 -1
  143. package/mysql-core/query-builders/delete.cjs.map +1 -1
  144. package/mysql-core/query-builders/delete.js +9 -1
  145. package/mysql-core/query-builders/delete.js.map +1 -1
  146. package/mysql-core/query-builders/insert.cjs +8 -1
  147. package/mysql-core/query-builders/insert.cjs.map +1 -1
  148. package/mysql-core/query-builders/insert.d.cts +2 -0
  149. package/mysql-core/query-builders/insert.d.ts +2 -0
  150. package/mysql-core/query-builders/insert.js +8 -1
  151. package/mysql-core/query-builders/insert.js.map +1 -1
  152. package/mysql-core/query-builders/select.cjs +27 -3
  153. package/mysql-core/query-builders/select.cjs.map +1 -1
  154. package/mysql-core/query-builders/select.d.cts +9 -0
  155. package/mysql-core/query-builders/select.d.ts +9 -0
  156. package/mysql-core/query-builders/select.js +28 -4
  157. package/mysql-core/query-builders/select.js.map +1 -1
  158. package/mysql-core/query-builders/update.cjs +11 -1
  159. package/mysql-core/query-builders/update.cjs.map +1 -1
  160. package/mysql-core/query-builders/update.d.cts +2 -0
  161. package/mysql-core/query-builders/update.d.ts +2 -0
  162. package/mysql-core/query-builders/update.js +11 -1
  163. package/mysql-core/query-builders/update.js.map +1 -1
  164. package/mysql-core/session.cjs +54 -0
  165. package/mysql-core/session.cjs.map +1 -1
  166. package/mysql-core/session.d.cts +15 -2
  167. package/mysql-core/session.d.ts +15 -2
  168. package/mysql-core/session.js +55 -1
  169. package/mysql-core/session.js.map +1 -1
  170. package/mysql-core/utils.cjs +16 -0
  171. package/mysql-core/utils.cjs.map +1 -1
  172. package/mysql-core/utils.d.cts +6 -2
  173. package/mysql-core/utils.d.ts +6 -2
  174. package/mysql-core/utils.js +15 -0
  175. package/mysql-core/utils.js.map +1 -1
  176. package/mysql-proxy/session.cjs +15 -5
  177. package/mysql-proxy/session.cjs.map +1 -1
  178. package/mysql-proxy/session.d.cts +12 -2
  179. package/mysql-proxy/session.d.ts +12 -2
  180. package/mysql-proxy/session.js +15 -5
  181. package/mysql-proxy/session.js.map +1 -1
  182. package/mysql2/driver.cjs +10 -2
  183. package/mysql2/driver.cjs.map +1 -1
  184. package/mysql2/driver.d.cts +2 -0
  185. package/mysql2/driver.d.ts +2 -0
  186. package/mysql2/driver.js +10 -2
  187. package/mysql2/driver.js.map +1 -1
  188. package/mysql2/session.cjs +15 -5
  189. package/mysql2/session.cjs.map +1 -1
  190. package/mysql2/session.d.cts +12 -2
  191. package/mysql2/session.d.ts +12 -2
  192. package/mysql2/session.js +15 -5
  193. package/mysql2/session.js.map +1 -1
  194. package/neon-http/driver.cjs +9 -2
  195. package/neon-http/driver.cjs.map +1 -1
  196. package/neon-http/driver.d.cts +2 -0
  197. package/neon-http/driver.d.ts +2 -0
  198. package/neon-http/driver.js +9 -2
  199. package/neon-http/driver.js.map +1 -1
  200. package/neon-http/session.cjs +25 -15
  201. package/neon-http/session.cjs.map +1 -1
  202. package/neon-http/session.d.cts +12 -2
  203. package/neon-http/session.d.ts +12 -2
  204. package/neon-http/session.js +25 -15
  205. package/neon-http/session.js.map +1 -1
  206. package/neon-serverless/driver.cjs +9 -2
  207. package/neon-serverless/driver.cjs.map +1 -1
  208. package/neon-serverless/driver.d.cts +2 -0
  209. package/neon-serverless/driver.d.ts +2 -0
  210. package/neon-serverless/driver.js +9 -2
  211. package/neon-serverless/driver.js.map +1 -1
  212. package/neon-serverless/session.cjs +21 -7
  213. package/neon-serverless/session.cjs.map +1 -1
  214. package/neon-serverless/session.d.cts +12 -2
  215. package/neon-serverless/session.d.ts +12 -2
  216. package/neon-serverless/session.js +21 -7
  217. package/neon-serverless/session.js.map +1 -1
  218. package/node-postgres/driver.cjs +9 -2
  219. package/node-postgres/driver.cjs.map +1 -1
  220. package/node-postgres/driver.d.cts +2 -0
  221. package/node-postgres/driver.d.ts +2 -0
  222. package/node-postgres/driver.js +9 -2
  223. package/node-postgres/driver.js.map +1 -1
  224. package/node-postgres/session.cjs +19 -6
  225. package/node-postgres/session.cjs.map +1 -1
  226. package/node-postgres/session.d.cts +13 -2
  227. package/node-postgres/session.d.ts +13 -2
  228. package/node-postgres/session.js +19 -6
  229. package/node-postgres/session.js.map +1 -1
  230. package/op-sqlite/driver.cjs +5 -1
  231. package/op-sqlite/driver.cjs.map +1 -1
  232. package/op-sqlite/driver.js +5 -1
  233. package/op-sqlite/driver.js.map +1 -1
  234. package/op-sqlite/session.cjs +23 -9
  235. package/op-sqlite/session.cjs.map +1 -1
  236. package/op-sqlite/session.d.cts +12 -2
  237. package/op-sqlite/session.d.ts +12 -2
  238. package/op-sqlite/session.js +23 -9
  239. package/op-sqlite/session.js.map +1 -1
  240. package/package.json +69 -656
  241. package/pg-core/db.cjs +3 -0
  242. package/pg-core/db.cjs.map +1 -1
  243. package/pg-core/db.d.cts +4 -0
  244. package/pg-core/db.d.ts +4 -0
  245. package/pg-core/db.js +3 -0
  246. package/pg-core/db.js.map +1 -1
  247. package/pg-core/query-builders/delete.cjs +6 -1
  248. package/pg-core/query-builders/delete.cjs.map +1 -1
  249. package/pg-core/query-builders/delete.d.cts +3 -1
  250. package/pg-core/query-builders/delete.d.ts +3 -1
  251. package/pg-core/query-builders/delete.js +6 -1
  252. package/pg-core/query-builders/delete.js.map +1 -1
  253. package/pg-core/query-builders/insert.cjs +6 -1
  254. package/pg-core/query-builders/insert.cjs.map +1 -1
  255. package/pg-core/query-builders/insert.d.cts +2 -0
  256. package/pg-core/query-builders/insert.d.ts +2 -0
  257. package/pg-core/query-builders/insert.js +6 -1
  258. package/pg-core/query-builders/insert.js.map +1 -1
  259. package/pg-core/query-builders/select.cjs +31 -5
  260. package/pg-core/query-builders/select.cjs.map +1 -1
  261. package/pg-core/query-builders/select.d.cts +15 -6
  262. package/pg-core/query-builders/select.d.ts +15 -6
  263. package/pg-core/query-builders/select.js +31 -5
  264. package/pg-core/query-builders/select.js.map +1 -1
  265. package/pg-core/query-builders/update.cjs +6 -1
  266. package/pg-core/query-builders/update.cjs.map +1 -1
  267. package/pg-core/query-builders/update.d.cts +4 -2
  268. package/pg-core/query-builders/update.d.ts +4 -2
  269. package/pg-core/query-builders/update.js +6 -1
  270. package/pg-core/query-builders/update.js.map +1 -1
  271. package/pg-core/session.cjs +53 -1
  272. package/pg-core/session.cjs.map +1 -1
  273. package/pg-core/session.d.cts +14 -3
  274. package/pg-core/session.d.ts +14 -3
  275. package/pg-core/session.js +54 -2
  276. package/pg-core/session.js.map +1 -1
  277. package/pg-core/utils.cjs +16 -0
  278. package/pg-core/utils.cjs.map +1 -1
  279. package/pg-core/utils.d.cts +8 -4
  280. package/pg-core/utils.d.ts +8 -4
  281. package/pg-core/utils.js +16 -1
  282. package/pg-core/utils.js.map +1 -1
  283. package/pg-proxy/driver.cjs +7 -2
  284. package/pg-proxy/driver.cjs.map +1 -1
  285. package/pg-proxy/driver.js +7 -2
  286. package/pg-proxy/driver.js.map +1 -1
  287. package/pg-proxy/session.cjs +15 -5
  288. package/pg-proxy/session.cjs.map +1 -1
  289. package/pg-proxy/session.d.cts +12 -2
  290. package/pg-proxy/session.d.ts +12 -2
  291. package/pg-proxy/session.js +15 -5
  292. package/pg-proxy/session.js.map +1 -1
  293. package/pglite/driver.cjs +9 -2
  294. package/pglite/driver.cjs.map +1 -1
  295. package/pglite/driver.d.cts +2 -0
  296. package/pglite/driver.d.ts +2 -0
  297. package/pglite/driver.js +9 -2
  298. package/pglite/driver.js.map +1 -1
  299. package/pglite/session.cjs +19 -7
  300. package/pglite/session.cjs.map +1 -1
  301. package/pglite/session.d.cts +12 -2
  302. package/pglite/session.d.ts +12 -2
  303. package/pglite/session.js +19 -7
  304. package/pglite/session.js.map +1 -1
  305. package/planetscale-serverless/driver.cjs +5 -1
  306. package/planetscale-serverless/driver.cjs.map +1 -1
  307. package/planetscale-serverless/driver.d.cts +1 -0
  308. package/planetscale-serverless/driver.d.ts +1 -0
  309. package/planetscale-serverless/driver.js +5 -1
  310. package/planetscale-serverless/driver.js.map +1 -1
  311. package/planetscale-serverless/session.cjs +15 -5
  312. package/planetscale-serverless/session.cjs.map +1 -1
  313. package/planetscale-serverless/session.d.cts +12 -2
  314. package/planetscale-serverless/session.d.ts +12 -2
  315. package/planetscale-serverless/session.js +15 -5
  316. package/planetscale-serverless/session.js.map +1 -1
  317. package/postgres-js/driver.cjs +5 -1
  318. package/postgres-js/driver.cjs.map +1 -1
  319. package/postgres-js/driver.js +5 -1
  320. package/postgres-js/driver.js.map +1 -1
  321. package/postgres-js/session.cjs +18 -6
  322. package/postgres-js/session.cjs.map +1 -1
  323. package/postgres-js/session.d.cts +12 -2
  324. package/postgres-js/session.d.ts +12 -2
  325. package/postgres-js/session.js +18 -6
  326. package/postgres-js/session.js.map +1 -1
  327. package/prisma/mysql/session.cjs +1 -1
  328. package/prisma/mysql/session.cjs.map +1 -1
  329. package/prisma/mysql/session.js +1 -1
  330. package/prisma/mysql/session.js.map +1 -1
  331. package/prisma/pg/session.cjs +1 -1
  332. package/prisma/pg/session.cjs.map +1 -1
  333. package/prisma/pg/session.js +1 -1
  334. package/prisma/pg/session.js.map +1 -1
  335. package/query-builders/query-builder.cjs.map +1 -1
  336. package/query-builders/query-builder.d.cts +2 -1
  337. package/query-builders/query-builder.d.ts +2 -1
  338. package/query-builders/query-builder.js.map +1 -1
  339. package/relations.cjs +0 -48
  340. package/relations.cjs.map +1 -1
  341. package/relations.d.cts +0 -1
  342. package/relations.d.ts +0 -1
  343. package/relations.js +0 -47
  344. package/relations.js.map +1 -1
  345. package/singlestore/driver.cjs +12 -2
  346. package/singlestore/driver.cjs.map +1 -1
  347. package/singlestore/driver.d.cts +2 -0
  348. package/singlestore/driver.d.ts +2 -0
  349. package/singlestore/driver.js +12 -2
  350. package/singlestore/driver.js.map +1 -1
  351. package/singlestore/session.cjs +15 -5
  352. package/singlestore/session.cjs.map +1 -1
  353. package/singlestore/session.d.cts +12 -2
  354. package/singlestore/session.d.ts +12 -2
  355. package/singlestore/session.js +15 -5
  356. package/singlestore/session.js.map +1 -1
  357. package/singlestore-core/db.cjs +3 -0
  358. package/singlestore-core/db.cjs.map +1 -1
  359. package/singlestore-core/db.d.cts +4 -0
  360. package/singlestore-core/db.d.ts +4 -0
  361. package/singlestore-core/db.js +3 -0
  362. package/singlestore-core/db.js.map +1 -1
  363. package/singlestore-core/query-builders/delete.cjs +9 -1
  364. package/singlestore-core/query-builders/delete.cjs.map +1 -1
  365. package/singlestore-core/query-builders/delete.js +9 -1
  366. package/singlestore-core/query-builders/delete.js.map +1 -1
  367. package/singlestore-core/query-builders/insert.cjs +6 -1
  368. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  369. package/singlestore-core/query-builders/insert.js +6 -1
  370. package/singlestore-core/query-builders/insert.js.map +1 -1
  371. package/singlestore-core/query-builders/select.cjs +28 -3
  372. package/singlestore-core/query-builders/select.cjs.map +1 -1
  373. package/singlestore-core/query-builders/select.d.cts +9 -0
  374. package/singlestore-core/query-builders/select.d.ts +9 -0
  375. package/singlestore-core/query-builders/select.js +28 -3
  376. package/singlestore-core/query-builders/select.js.map +1 -1
  377. package/singlestore-core/query-builders/update.cjs +9 -1
  378. package/singlestore-core/query-builders/update.cjs.map +1 -1
  379. package/singlestore-core/query-builders/update.js +9 -1
  380. package/singlestore-core/query-builders/update.js.map +1 -1
  381. package/singlestore-core/session.cjs +54 -0
  382. package/singlestore-core/session.cjs.map +1 -1
  383. package/singlestore-core/session.d.cts +14 -2
  384. package/singlestore-core/session.d.ts +14 -2
  385. package/singlestore-core/session.js +55 -1
  386. package/singlestore-core/session.js.map +1 -1
  387. package/singlestore-core/utils.cjs +16 -0
  388. package/singlestore-core/utils.cjs.map +1 -1
  389. package/singlestore-core/utils.d.cts +3 -0
  390. package/singlestore-core/utils.d.ts +3 -0
  391. package/singlestore-core/utils.js +15 -0
  392. package/singlestore-core/utils.js.map +1 -1
  393. package/sql/sql.cjs +10 -0
  394. package/sql/sql.cjs.map +1 -1
  395. package/sql/sql.js +10 -0
  396. package/sql/sql.js.map +1 -1
  397. package/sqlite-core/db.cjs +3 -0
  398. package/sqlite-core/db.cjs.map +1 -1
  399. package/sqlite-core/db.d.cts +4 -0
  400. package/sqlite-core/db.d.ts +4 -0
  401. package/sqlite-core/db.js +3 -0
  402. package/sqlite-core/db.js.map +1 -1
  403. package/sqlite-core/query-builders/delete.cjs +7 -1
  404. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  405. package/sqlite-core/query-builders/delete.js +7 -1
  406. package/sqlite-core/query-builders/delete.js.map +1 -1
  407. package/sqlite-core/query-builders/insert.cjs +7 -1
  408. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  409. package/sqlite-core/query-builders/insert.js +7 -1
  410. package/sqlite-core/query-builders/insert.js.map +1 -1
  411. package/sqlite-core/query-builders/select.cjs +31 -3
  412. package/sqlite-core/query-builders/select.cjs.map +1 -1
  413. package/sqlite-core/query-builders/select.d.cts +9 -0
  414. package/sqlite-core/query-builders/select.d.ts +9 -0
  415. package/sqlite-core/query-builders/select.js +31 -3
  416. package/sqlite-core/query-builders/select.js.map +1 -1
  417. package/sqlite-core/query-builders/update.cjs +7 -1
  418. package/sqlite-core/query-builders/update.cjs.map +1 -1
  419. package/sqlite-core/query-builders/update.js +7 -1
  420. package/sqlite-core/query-builders/update.js.map +1 -1
  421. package/sqlite-core/session.cjs +63 -3
  422. package/sqlite-core/session.cjs.map +1 -1
  423. package/sqlite-core/session.d.cts +18 -4
  424. package/sqlite-core/session.d.ts +18 -4
  425. package/sqlite-core/session.js +64 -4
  426. package/sqlite-core/session.js.map +1 -1
  427. package/sqlite-core/utils.cjs +16 -0
  428. package/sqlite-core/utils.cjs.map +1 -1
  429. package/sqlite-core/utils.d.cts +6 -2
  430. package/sqlite-core/utils.d.ts +6 -2
  431. package/sqlite-core/utils.js +15 -0
  432. package/sqlite-core/utils.js.map +1 -1
  433. package/sqlite-proxy/driver.cjs +9 -2
  434. package/sqlite-proxy/driver.cjs.map +1 -1
  435. package/sqlite-proxy/driver.js +9 -2
  436. package/sqlite-proxy/driver.js.map +1 -1
  437. package/sqlite-proxy/session.cjs +22 -8
  438. package/sqlite-proxy/session.cjs.map +1 -1
  439. package/sqlite-proxy/session.d.cts +12 -2
  440. package/sqlite-proxy/session.d.ts +12 -2
  441. package/sqlite-proxy/session.js +22 -8
  442. package/sqlite-proxy/session.js.map +1 -1
  443. package/subquery.cjs +4 -3
  444. package/subquery.cjs.map +1 -1
  445. package/subquery.d.cts +2 -1
  446. package/subquery.d.ts +2 -1
  447. package/subquery.js +4 -3
  448. package/subquery.js.map +1 -1
  449. package/tidb-serverless/driver.cjs +5 -1
  450. package/tidb-serverless/driver.cjs.map +1 -1
  451. package/tidb-serverless/driver.d.cts +1 -0
  452. package/tidb-serverless/driver.d.ts +1 -0
  453. package/tidb-serverless/driver.js +5 -1
  454. package/tidb-serverless/driver.js.map +1 -1
  455. package/tidb-serverless/session.cjs +15 -5
  456. package/tidb-serverless/session.cjs.map +1 -1
  457. package/tidb-serverless/session.d.cts +12 -2
  458. package/tidb-serverless/session.d.ts +12 -2
  459. package/tidb-serverless/session.js +15 -5
  460. package/tidb-serverless/session.js.map +1 -1
  461. package/utils.cjs +22 -0
  462. package/utils.cjs.map +1 -1
  463. package/utils.d.cts +3 -0
  464. package/utils.d.ts +3 -0
  465. package/utils.js +11 -0
  466. package/utils.js.map +1 -1
  467. package/vercel-postgres/driver.cjs +9 -2
  468. package/vercel-postgres/driver.cjs.map +1 -1
  469. package/vercel-postgres/driver.d.cts +2 -0
  470. package/vercel-postgres/driver.d.ts +2 -0
  471. package/vercel-postgres/driver.js +9 -2
  472. package/vercel-postgres/driver.js.map +1 -1
  473. package/vercel-postgres/session.cjs +21 -7
  474. package/vercel-postgres/session.cjs.map +1 -1
  475. package/vercel-postgres/session.d.cts +12 -2
  476. package/vercel-postgres/session.d.ts +12 -2
  477. package/vercel-postgres/session.js +21 -7
  478. package/vercel-postgres/session.js.map +1 -1
  479. package/version.cjs +1 -1
  480. package/version.d.cts +1 -1
  481. package/version.d.ts +1 -1
  482. package/version.js +1 -1
  483. package/xata-http/driver.cjs +7 -2
  484. package/xata-http/driver.cjs.map +1 -1
  485. package/xata-http/driver.d.cts +2 -0
  486. package/xata-http/driver.d.ts +2 -0
  487. package/xata-http/driver.js +7 -2
  488. package/xata-http/driver.js.map +1 -1
  489. package/xata-http/session.cjs +21 -7
  490. package/xata-http/session.cjs.map +1 -1
  491. package/xata-http/session.d.cts +12 -2
  492. package/xata-http/session.d.ts +12 -2
  493. package/xata-http/session.js +21 -7
  494. package/xata-http/session.js.map +1 -1
  495. package/mssql-core/alias.cjs +0 -32
  496. package/mssql-core/alias.cjs.map +0 -1
  497. package/mssql-core/alias.d.cts +0 -4
  498. package/mssql-core/alias.d.ts +0 -4
  499. package/mssql-core/alias.js +0 -8
  500. package/mssql-core/alias.js.map +0 -1
  501. package/mssql-core/checks.cjs +0 -58
  502. package/mssql-core/checks.cjs.map +0 -1
  503. package/mssql-core/checks.d.cts +0 -18
  504. package/mssql-core/checks.d.ts +0 -18
  505. package/mssql-core/checks.js +0 -32
  506. package/mssql-core/checks.js.map +0 -1
  507. package/mssql-core/columns/all.cjs +0 -72
  508. package/mssql-core/columns/all.cjs.map +0 -1
  509. package/mssql-core/columns/all.d.cts +0 -43
  510. package/mssql-core/columns/all.d.ts +0 -43
  511. package/mssql-core/columns/all.js +0 -48
  512. package/mssql-core/columns/all.js.map +0 -1
  513. package/mssql-core/columns/bigint.cjs +0 -67
  514. package/mssql-core/columns/bigint.cjs.map +0 -1
  515. package/mssql-core/columns/bigint.d.cts +0 -33
  516. package/mssql-core/columns/bigint.d.ts +0 -33
  517. package/mssql-core/columns/bigint.js +0 -41
  518. package/mssql-core/columns/bigint.js.map +0 -1
  519. package/mssql-core/columns/binary.cjs +0 -57
  520. package/mssql-core/columns/binary.cjs.map +0 -1
  521. package/mssql-core/columns/binary.d.cts +0 -28
  522. package/mssql-core/columns/binary.d.ts +0 -28
  523. package/mssql-core/columns/binary.js +0 -31
  524. package/mssql-core/columns/binary.js.map +0 -1
  525. package/mssql-core/columns/bit.cjs +0 -54
  526. package/mssql-core/columns/bit.cjs.map +0 -1
  527. package/mssql-core/columns/bit.d.cts +0 -24
  528. package/mssql-core/columns/bit.d.ts +0 -24
  529. package/mssql-core/columns/bit.js +0 -28
  530. package/mssql-core/columns/bit.js.map +0 -1
  531. package/mssql-core/columns/char.cjs +0 -74
  532. package/mssql-core/columns/char.cjs.map +0 -1
  533. package/mssql-core/columns/char.d.cts +0 -37
  534. package/mssql-core/columns/char.d.ts +0 -37
  535. package/mssql-core/columns/char.js +0 -47
  536. package/mssql-core/columns/char.js.map +0 -1
  537. package/mssql-core/columns/common.cjs +0 -117
  538. package/mssql-core/columns/common.cjs.map +0 -1
  539. package/mssql-core/columns/common.d.cts +0 -67
  540. package/mssql-core/columns/common.d.ts +0 -67
  541. package/mssql-core/columns/common.js +0 -90
  542. package/mssql-core/columns/common.js.map +0 -1
  543. package/mssql-core/columns/custom.cjs +0 -75
  544. package/mssql-core/columns/custom.cjs.map +0 -1
  545. package/mssql-core/columns/custom.d.cts +0 -149
  546. package/mssql-core/columns/custom.d.ts +0 -149
  547. package/mssql-core/columns/custom.js +0 -49
  548. package/mssql-core/columns/custom.js.map +0 -1
  549. package/mssql-core/columns/date.cjs +0 -94
  550. package/mssql-core/columns/date.cjs.map +0 -1
  551. package/mssql-core/columns/date.common.cjs.map +0 -1
  552. package/mssql-core/columns/date.common.d.cts +0 -12
  553. package/mssql-core/columns/date.common.d.ts +0 -12
  554. package/mssql-core/columns/date.common.js +0 -13
  555. package/mssql-core/columns/date.common.js.map +0 -1
  556. package/mssql-core/columns/date.d.cts +0 -55
  557. package/mssql-core/columns/date.d.ts +0 -55
  558. package/mssql-core/columns/date.js +0 -66
  559. package/mssql-core/columns/date.js.map +0 -1
  560. package/mssql-core/columns/datetime.cjs +0 -94
  561. package/mssql-core/columns/datetime.cjs.map +0 -1
  562. package/mssql-core/columns/datetime.d.cts +0 -54
  563. package/mssql-core/columns/datetime.d.ts +0 -54
  564. package/mssql-core/columns/datetime.js +0 -66
  565. package/mssql-core/columns/datetime.js.map +0 -1
  566. package/mssql-core/columns/datetime2.cjs +0 -102
  567. package/mssql-core/columns/datetime2.cjs.map +0 -1
  568. package/mssql-core/columns/datetime2.d.cts +0 -54
  569. package/mssql-core/columns/datetime2.d.ts +0 -54
  570. package/mssql-core/columns/datetime2.js +0 -74
  571. package/mssql-core/columns/datetime2.js.map +0 -1
  572. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  573. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  574. package/mssql-core/columns/datetimeoffset.d.cts +0 -54
  575. package/mssql-core/columns/datetimeoffset.d.ts +0 -54
  576. package/mssql-core/columns/datetimeoffset.js +0 -74
  577. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  578. package/mssql-core/columns/decimal.cjs +0 -68
  579. package/mssql-core/columns/decimal.cjs.map +0 -1
  580. package/mssql-core/columns/decimal.d.cts +0 -30
  581. package/mssql-core/columns/decimal.d.ts +0 -30
  582. package/mssql-core/columns/decimal.js +0 -42
  583. package/mssql-core/columns/decimal.js.map +0 -1
  584. package/mssql-core/columns/float.cjs +0 -58
  585. package/mssql-core/columns/float.cjs.map +0 -1
  586. package/mssql-core/columns/float.d.cts +0 -28
  587. package/mssql-core/columns/float.d.ts +0 -28
  588. package/mssql-core/columns/float.js +0 -32
  589. package/mssql-core/columns/float.js.map +0 -1
  590. package/mssql-core/columns/index.cjs +0 -63
  591. package/mssql-core/columns/index.cjs.map +0 -1
  592. package/mssql-core/columns/index.d.cts +0 -21
  593. package/mssql-core/columns/index.d.ts +0 -21
  594. package/mssql-core/columns/index.js +0 -22
  595. package/mssql-core/columns/index.js.map +0 -1
  596. package/mssql-core/columns/int.cjs +0 -53
  597. package/mssql-core/columns/int.cjs.map +0 -1
  598. package/mssql-core/columns/int.d.cts +0 -23
  599. package/mssql-core/columns/int.d.ts +0 -23
  600. package/mssql-core/columns/int.js +0 -27
  601. package/mssql-core/columns/int.js.map +0 -1
  602. package/mssql-core/columns/numeric.cjs +0 -68
  603. package/mssql-core/columns/numeric.cjs.map +0 -1
  604. package/mssql-core/columns/numeric.d.cts +0 -27
  605. package/mssql-core/columns/numeric.d.ts +0 -27
  606. package/mssql-core/columns/numeric.js +0 -42
  607. package/mssql-core/columns/numeric.js.map +0 -1
  608. package/mssql-core/columns/real.cjs +0 -53
  609. package/mssql-core/columns/real.cjs.map +0 -1
  610. package/mssql-core/columns/real.d.cts +0 -23
  611. package/mssql-core/columns/real.d.ts +0 -23
  612. package/mssql-core/columns/real.js +0 -27
  613. package/mssql-core/columns/real.js.map +0 -1
  614. package/mssql-core/columns/smallint.cjs +0 -62
  615. package/mssql-core/columns/smallint.cjs.map +0 -1
  616. package/mssql-core/columns/smallint.d.cts +0 -24
  617. package/mssql-core/columns/smallint.d.ts +0 -24
  618. package/mssql-core/columns/smallint.js +0 -36
  619. package/mssql-core/columns/smallint.js.map +0 -1
  620. package/mssql-core/columns/text.cjs +0 -68
  621. package/mssql-core/columns/text.cjs.map +0 -1
  622. package/mssql-core/columns/text.d.cts +0 -45
  623. package/mssql-core/columns/text.d.ts +0 -45
  624. package/mssql-core/columns/text.js +0 -41
  625. package/mssql-core/columns/text.js.map +0 -1
  626. package/mssql-core/columns/time.cjs +0 -90
  627. package/mssql-core/columns/time.cjs.map +0 -1
  628. package/mssql-core/columns/time.d.cts +0 -49
  629. package/mssql-core/columns/time.d.ts +0 -49
  630. package/mssql-core/columns/time.js +0 -62
  631. package/mssql-core/columns/time.js.map +0 -1
  632. package/mssql-core/columns/tinyint.cjs +0 -62
  633. package/mssql-core/columns/tinyint.cjs.map +0 -1
  634. package/mssql-core/columns/tinyint.d.cts +0 -24
  635. package/mssql-core/columns/tinyint.d.ts +0 -24
  636. package/mssql-core/columns/tinyint.js +0 -36
  637. package/mssql-core/columns/tinyint.js.map +0 -1
  638. package/mssql-core/columns/varbinary.cjs +0 -61
  639. package/mssql-core/columns/varbinary.cjs.map +0 -1
  640. package/mssql-core/columns/varbinary.d.cts +0 -27
  641. package/mssql-core/columns/varbinary.d.ts +0 -27
  642. package/mssql-core/columns/varbinary.js +0 -35
  643. package/mssql-core/columns/varbinary.js.map +0 -1
  644. package/mssql-core/columns/varchar.cjs +0 -117
  645. package/mssql-core/columns/varchar.cjs.map +0 -1
  646. package/mssql-core/columns/varchar.d.cts +0 -66
  647. package/mssql-core/columns/varchar.d.ts +0 -66
  648. package/mssql-core/columns/varchar.js +0 -88
  649. package/mssql-core/columns/varchar.js.map +0 -1
  650. package/mssql-core/db.cjs +0 -254
  651. package/mssql-core/db.cjs.map +0 -1
  652. package/mssql-core/db.d.cts +0 -228
  653. package/mssql-core/db.d.ts +0 -228
  654. package/mssql-core/db.js +0 -235
  655. package/mssql-core/db.js.map +0 -1
  656. package/mssql-core/dialect.cjs +0 -568
  657. package/mssql-core/dialect.cjs.map +0 -1
  658. package/mssql-core/dialect.d.cts +0 -57
  659. package/mssql-core/dialect.d.ts +0 -57
  660. package/mssql-core/dialect.js +0 -550
  661. package/mssql-core/dialect.js.map +0 -1
  662. package/mssql-core/expressions.cjs +0 -49
  663. package/mssql-core/expressions.cjs.map +0 -1
  664. package/mssql-core/expressions.d.cts +0 -8
  665. package/mssql-core/expressions.d.ts +0 -8
  666. package/mssql-core/expressions.js +0 -22
  667. package/mssql-core/expressions.js.map +0 -1
  668. package/mssql-core/foreign-keys.cjs +0 -91
  669. package/mssql-core/foreign-keys.cjs.map +0 -1
  670. package/mssql-core/foreign-keys.d.cts +0 -51
  671. package/mssql-core/foreign-keys.d.ts +0 -51
  672. package/mssql-core/foreign-keys.js +0 -65
  673. package/mssql-core/foreign-keys.js.map +0 -1
  674. package/mssql-core/index.cjs +0 -55
  675. package/mssql-core/index.cjs.map +0 -1
  676. package/mssql-core/index.d.cts +0 -17
  677. package/mssql-core/index.d.ts +0 -17
  678. package/mssql-core/index.js +0 -18
  679. package/mssql-core/index.js.map +0 -1
  680. package/mssql-core/indexes.cjs +0 -80
  681. package/mssql-core/indexes.cjs.map +0 -1
  682. package/mssql-core/indexes.d.cts +0 -49
  683. package/mssql-core/indexes.d.ts +0 -49
  684. package/mssql-core/indexes.js +0 -52
  685. package/mssql-core/indexes.js.map +0 -1
  686. package/mssql-core/primary-keys.cjs +0 -64
  687. package/mssql-core/primary-keys.cjs.map +0 -1
  688. package/mssql-core/primary-keys.d.cts +0 -23
  689. package/mssql-core/primary-keys.d.ts +0 -23
  690. package/mssql-core/primary-keys.js +0 -38
  691. package/mssql-core/primary-keys.js.map +0 -1
  692. package/mssql-core/query-builders/delete.cjs +0 -101
  693. package/mssql-core/query-builders/delete.cjs.map +0 -1
  694. package/mssql-core/query-builders/delete.d.cts +0 -74
  695. package/mssql-core/query-builders/delete.d.ts +0 -74
  696. package/mssql-core/query-builders/delete.js +0 -77
  697. package/mssql-core/query-builders/delete.js.map +0 -1
  698. package/mssql-core/query-builders/index.cjs +0 -33
  699. package/mssql-core/query-builders/index.cjs.map +0 -1
  700. package/mssql-core/query-builders/index.d.cts +0 -6
  701. package/mssql-core/query-builders/index.d.ts +0 -6
  702. package/mssql-core/query-builders/index.js +0 -7
  703. package/mssql-core/query-builders/index.js.map +0 -1
  704. package/mssql-core/query-builders/insert.cjs +0 -95
  705. package/mssql-core/query-builders/insert.cjs.map +0 -1
  706. package/mssql-core/query-builders/insert.d.cts +0 -54
  707. package/mssql-core/query-builders/insert.d.ts +0 -54
  708. package/mssql-core/query-builders/insert.js +0 -70
  709. package/mssql-core/query-builders/insert.js.map +0 -1
  710. package/mssql-core/query-builders/query-builder.cjs +0 -95
  711. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  712. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  713. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  714. package/mssql-core/query-builders/query-builder.js +0 -71
  715. package/mssql-core/query-builders/query-builder.js.map +0 -1
  716. package/mssql-core/query-builders/query.cjs +0 -126
  717. package/mssql-core/query-builders/query.cjs.map +0 -1
  718. package/mssql-core/query-builders/query.d.cts +0 -42
  719. package/mssql-core/query-builders/query.d.ts +0 -42
  720. package/mssql-core/query-builders/query.js +0 -103
  721. package/mssql-core/query-builders/query.js.map +0 -1
  722. package/mssql-core/query-builders/select.cjs +0 -679
  723. package/mssql-core/query-builders/select.cjs.map +0 -1
  724. package/mssql-core/query-builders/select.d.cts +0 -549
  725. package/mssql-core/query-builders/select.d.ts +0 -549
  726. package/mssql-core/query-builders/select.js +0 -649
  727. package/mssql-core/query-builders/select.js.map +0 -1
  728. package/mssql-core/query-builders/select.types.cjs +0 -17
  729. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  730. package/mssql-core/query-builders/select.types.d.cts +0 -138
  731. package/mssql-core/query-builders/select.types.d.ts +0 -138
  732. package/mssql-core/query-builders/select.types.js +0 -1
  733. package/mssql-core/query-builders/update.cjs +0 -118
  734. package/mssql-core/query-builders/update.cjs.map +0 -1
  735. package/mssql-core/query-builders/update.d.cts +0 -93
  736. package/mssql-core/query-builders/update.d.ts +0 -93
  737. package/mssql-core/query-builders/update.js +0 -93
  738. package/mssql-core/query-builders/update.js.map +0 -1
  739. package/mssql-core/schema.cjs +0 -51
  740. package/mssql-core/schema.cjs.map +0 -1
  741. package/mssql-core/schema.d.cts +0 -22
  742. package/mssql-core/schema.d.ts +0 -22
  743. package/mssql-core/schema.js +0 -25
  744. package/mssql-core/schema.js.map +0 -1
  745. package/mssql-core/session.cjs +0 -74
  746. package/mssql-core/session.cjs.map +0 -1
  747. package/mssql-core/session.d.cts +0 -63
  748. package/mssql-core/session.d.ts +0 -63
  749. package/mssql-core/session.js +0 -48
  750. package/mssql-core/session.js.map +0 -1
  751. package/mssql-core/subquery.cjs.map +0 -1
  752. package/mssql-core/subquery.d.cts +0 -18
  753. package/mssql-core/subquery.d.ts +0 -18
  754. package/mssql-core/subquery.js +0 -1
  755. package/mssql-core/subquery.js.map +0 -1
  756. package/mssql-core/table.cjs +0 -81
  757. package/mssql-core/table.cjs.map +0 -1
  758. package/mssql-core/table.d.cts +0 -43
  759. package/mssql-core/table.d.ts +0 -43
  760. package/mssql-core/table.js +0 -53
  761. package/mssql-core/table.js.map +0 -1
  762. package/mssql-core/unique-constraint.cjs +0 -76
  763. package/mssql-core/unique-constraint.cjs.map +0 -1
  764. package/mssql-core/unique-constraint.d.cts +0 -23
  765. package/mssql-core/unique-constraint.d.ts +0 -23
  766. package/mssql-core/unique-constraint.js +0 -49
  767. package/mssql-core/unique-constraint.js.map +0 -1
  768. package/mssql-core/utils.cjs +0 -85
  769. package/mssql-core/utils.cjs.map +0 -1
  770. package/mssql-core/utils.d.cts +0 -31
  771. package/mssql-core/utils.d.ts +0 -31
  772. package/mssql-core/utils.js +0 -60
  773. package/mssql-core/utils.js.map +0 -1
  774. package/mssql-core/view-base.cjs +0 -33
  775. package/mssql-core/view-base.cjs.map +0 -1
  776. package/mssql-core/view-base.d.cts +0 -9
  777. package/mssql-core/view-base.d.ts +0 -9
  778. package/mssql-core/view-base.js +0 -9
  779. package/mssql-core/view-base.js.map +0 -1
  780. package/mssql-core/view-common.cjs.map +0 -1
  781. package/mssql-core/view-common.d.cts +0 -1
  782. package/mssql-core/view-common.d.ts +0 -1
  783. package/mssql-core/view-common.js +0 -5
  784. package/mssql-core/view-common.js.map +0 -1
  785. package/mssql-core/view.cjs +0 -154
  786. package/mssql-core/view.cjs.map +0 -1
  787. package/mssql-core/view.d.cts +0 -64
  788. package/mssql-core/view.d.ts +0 -64
  789. package/mssql-core/view.js +0 -125
  790. package/mssql-core/view.js.map +0 -1
  791. package/node-mssql/driver.cjs +0 -86
  792. package/node-mssql/driver.cjs.map +0 -1
  793. package/node-mssql/driver.d.cts +0 -32
  794. package/node-mssql/driver.d.ts +0 -32
  795. package/node-mssql/driver.js +0 -63
  796. package/node-mssql/driver.js.map +0 -1
  797. package/node-mssql/index.cjs.map +0 -1
  798. package/node-mssql/index.d.cts +0 -2
  799. package/node-mssql/index.d.ts +0 -2
  800. package/node-mssql/index.js +0 -3
  801. package/node-mssql/index.js.map +0 -1
  802. package/node-mssql/migrator.cjs +0 -33
  803. package/node-mssql/migrator.cjs.map +0 -1
  804. package/node-mssql/migrator.d.cts +0 -3
  805. package/node-mssql/migrator.d.ts +0 -3
  806. package/node-mssql/migrator.js +0 -9
  807. package/node-mssql/migrator.js.map +0 -1
  808. package/node-mssql/session.cjs +0 -243
  809. package/node-mssql/session.cjs.map +0 -1
  810. package/node-mssql/session.d.cts +0 -47
  811. package/node-mssql/session.d.ts +0 -47
  812. package/node-mssql/session.js +0 -211
  813. package/node-mssql/session.js.map +0 -1
  814. /package/{mssql-core/query-builders/select.types.js.map → cache/core/types.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/op-sqlite/session.ts"],"sourcesContent":["import type { OPSQLiteConnection, QueryResult } from '@op-engineering/op-sqlite';\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 { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface OPSQLiteSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class OPSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\n\t\tdialect: SQLiteAsyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: OPSQLiteSessionOptions = {},\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): OPSQLitePreparedQuery<T> {\n\t\treturn new OPSQLitePreparedQuery(\n\t\t\tthis.client,\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: OPSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new OPSQLiteTransaction('async', this.dialect, this, this.schema);\n\t\tthis.run(sql.raw(`begin${config?.behavior ? ' ' + config.behavior : ''}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.run(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.run(sql`rollback`);\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class OPSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new OPSQLiteTransaction('async', 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 OPSQLitePreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends SQLitePreparedQuery<\n\t{ type: 'async'; run: QueryResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'OPSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\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>): Promise<QueryResult> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\treturn this.client.executeAsync(this.query.sql, params);\n\t}\n\n\tasync all(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tconst { fields, joinsNotNullableMap, query, logger, customResultMapper, client } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn client.execute(query.sql, params).rows?._array || [];\n\t\t}\n\n\t\tconst rows = await 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\tasync get(placeholderValues?: Record<string, unknown>): Promise<T['get']> {\n\t\tconst { fields, joinsNotNullableMap, customResultMapper, query, logger, client } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst rows = client.execute(query.sql, params).rows?._array || [];\n\t\t\treturn rows[0];\n\t\t}\n\n\t\tconst rows = await this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): 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.executeRawAsync(this.query.sql, params);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAA2B;AAE3B,iBAAkD;AAElD,yBAAkC;AAElC,qBAMO;AACP,mBAA6B;AAQtB,MAAM,wBAGH,6BAA0D;AAAA,EAKnE,YACS,QACR,SACQ,QACR,UAAkC,CAAC,GAClC;AACD,UAAM,OAAO;AALL;AAEA;AAIR,SAAK,SAAS,QAAQ,UAAU,IAAI,yBAAW;AAAA,EAChD;AAAA,EAZA,QAA0B,wBAAU,IAAY;AAAA,EAExC;AAAA,EAYR,aACC,OACA,QACA,eACA,uBACA,oBAC2B;AAC3B,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL;AAAA,MACA,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA,EAES,YACR,aACA,SAAkC,CAAC,GAC/B;AACJ,UAAM,KAAK,IAAI,oBAAoB,SAAS,KAAK,SAAS,MAAM,KAAK,MAAM;AAC3E,SAAK,IAAI,eAAI,IAAI,QAAQ,QAAQ,WAAW,MAAM,OAAO,WAAW,EAAE,EAAE,CAAC;AACzE,QAAI;AACH,YAAM,SAAS,YAAY,EAAE;AAC7B,WAAK,IAAI,sBAAW;AACpB,aAAO;AAAA,IACR,SAAS,KAAK;AACb,WAAK,IAAI,wBAAa;AACtB,YAAM;AAAA,IACP;AAAA,EACD;AACD;AAEO,MAAM,4BAGH,qCAA8D;AAAA,EACvE,QAA0B,wBAAU,IAAY;AAAA,EAEvC,YAAe,aAAsE;AAC7F,UAAM,gBAAgB,KAAK,KAAK,WAAW;AAC3C,UAAM,KAAK,IAAI,oBAAoB,SAAS,KAAK,SAAS,KAAK,SAAS,KAAK,QAAQ,KAAK,cAAc,CAAC;AACzG,SAAK,QAAQ,IAAI,eAAI,IAAI,aAAa,aAAa,EAAE,CAAC;AACtD,QAAI;AACH,YAAM,SAAS,YAAY,EAAE;AAC7B,WAAK,QAAQ,IAAI,eAAI,IAAI,qBAAqB,aAAa,EAAE,CAAC;AAC9D,aAAO;AAAA,IACR,SAAS,KAAK;AACb,WAAK,QAAQ,IAAI,eAAI,IAAI,yBAAyB,aAAa,EAAE,CAAC;AAClE,YAAM;AAAA,IACP;AAAA,EACD;AACD;AAEO,MAAM,8BAAmF,mCAE9F;AAAA,EAGD,YACS,QACR,OACQ,QACA,QACR,eACQ,wBACA,oBACP;AACD,UAAM,QAAQ,eAAe,KAAK;AAR1B;AAEA;AACA;AAEA;AACA;AAAA,EAGT;AAAA,EAZA,QAA0B,wBAAU,IAAY;AAAA,EAchD,IAAI,mBAAmE;AACtE,UAAM,aAAS,6BAAiB,KAAK,MAAM,QAAQ,qBAAqB,CAAC,CAAC;AAC1E,SAAK,OAAO,SAAS,KAAK,MAAM,KAAK,MAAM;AAE3C,WAAO,KAAK,OAAO,aAAa,KAAK,MAAM,KAAK,MAAM;AAAA,EACvD;AAAA,EAEA,MAAM,IAAI,mBAAgE;AACzE,UAAM,EAAE,QAAQ,qBAAqB,OAAO,QAAQ,oBAAoB,OAAO,IAAI;AACnF,QAAI,CAAC,UAAU,CAAC,oBAAoB;AACnC,YAAM,aAAS,6BAAiB,MAAM,QAAQ,qBAAqB,CAAC,CAAC;AACrE,aAAO,SAAS,MAAM,KAAK,MAAM;AAEjC,aAAO,OAAO,QAAQ,MAAM,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AAAA,IAC3D;AAEA,UAAM,OAAO,MAAM,KAAK,OAAO,iBAAiB;AAChD,QAAI,oBAAoB;AACvB,aAAO,mBAAmB,IAAI;AAAA,IAC/B;AACA,WAAO,KAAK,IAAI,CAAC,YAAQ,2BAAa,QAAS,KAAK,mBAAmB,CAAC;AAAA,EACzE;AAAA,EAEA,MAAM,IAAI,mBAAgE;AACzE,UAAM,EAAE,QAAQ,qBAAqB,oBAAoB,OAAO,QAAQ,OAAO,IAAI;AACnF,UAAM,aAAS,6BAAiB,MAAM,QAAQ,qBAAqB,CAAC,CAAC;AACrE,WAAO,SAAS,MAAM,KAAK,MAAM;AACjC,QAAI,CAAC,UAAU,CAAC,oBAAoB;AACnC,YAAMA,QAAO,OAAO,QAAQ,MAAM,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AAChE,aAAOA,MAAK,CAAC;AAAA,IACd;AAEA,UAAM,OAAO,MAAM,KAAK,OAAO,iBAAiB;AAChD,UAAM,MAAM,KAAK,CAAC;AAElB,QAAI,CAAC,KAAK;AACT,aAAO;AAAA,IACR;AAEA,QAAI,oBAAoB;AACvB,aAAO,mBAAmB,IAAI;AAAA,IAC/B;AAEA,eAAO,2BAAa,QAAS,KAAK,mBAAmB;AAAA,EACtD;AAAA,EAEA,OAAO,mBAAmE;AACzE,UAAM,aAAS,6BAAiB,KAAK,MAAM,QAAQ,qBAAqB,CAAC,CAAC;AAC1E,SAAK,OAAO,SAAS,KAAK,MAAM,KAAK,MAAM;AAC3C,WAAO,KAAK,OAAO,gBAAgB,KAAK,MAAM,KAAK,MAAM;AAAA,EAC1D;AAAA;AAAA,EAGA,wBAAiC;AAChC,WAAO,KAAK;AAAA,EACb;AACD;","names":["rows"]}
1
+ {"version":3,"sources":["../../src/op-sqlite/session.ts"],"sourcesContent":["import type { OPSQLiteConnection, QueryResult } from '@op-engineering/op-sqlite';\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 { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface OPSQLiteSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class OPSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\n\t\tdialect: SQLiteAsyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: OPSQLiteSessionOptions = {},\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): OPSQLitePreparedQuery<T> {\n\t\treturn new OPSQLitePreparedQuery(\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\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new OPSQLiteTransaction('async', this.dialect, this, this.schema);\n\t\tthis.run(sql.raw(`begin${config?.behavior ? ' ' + config.behavior : ''}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.run(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.run(sql`rollback`);\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class OPSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new OPSQLiteTransaction('async', 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 OPSQLitePreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends SQLitePreparedQuery<\n\t{ type: 'async'; run: QueryResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'OPSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\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\tasync run(placeholderValues?: Record<string, unknown>): Promise<QueryResult> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\treturn await this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn this.client.executeAsync(this.query.sql, params);\n\t\t});\n\t}\n\n\tasync all(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tconst { fields, joinsNotNullableMap, query, logger, customResultMapper, client } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn client.execute(query.sql, params).rows?._array || [];\n\t\t\t});\n\t\t}\n\n\t\tconst rows = await 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\tasync get(placeholderValues?: Record<string, unknown>): Promise<T['get']> {\n\t\tconst { fields, joinsNotNullableMap, customResultMapper, query, logger, client } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst rows = await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn client.execute(query.sql, params).rows?._array || [];\n\t\t\t});\n\t\t\treturn rows[0];\n\t\t}\n\n\t\tconst rows = await this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tasync values(placeholderValues?: Record<string, unknown>): Promise<T['values']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn await this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn await this.client.executeRawAsync(this.query.sql, params);\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":["rows"]}
@@ -1,4 +1,6 @@
1
1
  import type { OPSQLiteConnection, QueryResult } from '@op-engineering/op-sqlite';
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 { RelationalSchemaConfig, TablesRelationalConfig } from "../relations.cjs";
@@ -9,6 +11,7 @@ import type { SelectedFieldsOrdered } from "../sqlite-core/query-builders/select
9
11
  import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLitePreparedQuery, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.cjs";
10
12
  export interface OPSQLiteSessionOptions {
11
13
  logger?: Logger;
14
+ cache?: Cache;
12
15
  }
13
16
  type PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;
14
17
  export declare class OPSQLiteSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteSession<'async', QueryResult, TFullSchema, TSchema> {
@@ -16,8 +19,12 @@ export declare class OPSQLiteSession<TFullSchema extends Record<string, unknown>
16
19
  private schema;
17
20
  static readonly [entityKind]: string;
18
21
  private logger;
22
+ private cache;
19
23
  constructor(client: OPSQLiteConnection, dialect: SQLiteAsyncDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: OPSQLiteSessionOptions);
20
- prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown): OPSQLitePreparedQuery<T>;
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): OPSQLitePreparedQuery<T>;
21
28
  transaction<T>(transaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T, config?: SQLiteTransactionConfig): T;
22
29
  }
23
30
  export declare class OPSQLiteTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteTransaction<'async', QueryResult, TFullSchema, TSchema> {
@@ -38,7 +45,10 @@ export declare class OPSQLitePreparedQuery<T extends PreparedQueryConfig = Prepa
38
45
  private _isResponseInArrayMode;
39
46
  private customResultMapper?;
40
47
  static readonly [entityKind]: string;
41
- constructor(client: OPSQLiteConnection, query: Query, logger: Logger, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => unknown) | undefined);
48
+ constructor(client: OPSQLiteConnection, 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);
42
52
  run(placeholderValues?: Record<string, unknown>): Promise<QueryResult>;
43
53
  all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;
44
54
  get(placeholderValues?: Record<string, unknown>): Promise<T['get']>;
@@ -1,4 +1,6 @@
1
1
  import type { OPSQLiteConnection, QueryResult } from '@op-engineering/op-sqlite';
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 { RelationalSchemaConfig, TablesRelationalConfig } from "../relations.js";
@@ -9,6 +11,7 @@ import type { SelectedFieldsOrdered } from "../sqlite-core/query-builders/select
9
11
  import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLitePreparedQuery, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.js";
10
12
  export interface OPSQLiteSessionOptions {
11
13
  logger?: Logger;
14
+ cache?: Cache;
12
15
  }
13
16
  type PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;
14
17
  export declare class OPSQLiteSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteSession<'async', QueryResult, TFullSchema, TSchema> {
@@ -16,8 +19,12 @@ export declare class OPSQLiteSession<TFullSchema extends Record<string, unknown>
16
19
  private schema;
17
20
  static readonly [entityKind]: string;
18
21
  private logger;
22
+ private cache;
19
23
  constructor(client: OPSQLiteConnection, dialect: SQLiteAsyncDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: OPSQLiteSessionOptions);
20
- prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => unknown): OPSQLitePreparedQuery<T>;
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): OPSQLitePreparedQuery<T>;
21
28
  transaction<T>(transaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T, config?: SQLiteTransactionConfig): T;
22
29
  }
23
30
  export declare class OPSQLiteTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteTransaction<'async', QueryResult, TFullSchema, TSchema> {
@@ -38,7 +45,10 @@ export declare class OPSQLitePreparedQuery<T extends PreparedQueryConfig = Prepa
38
45
  private _isResponseInArrayMode;
39
46
  private customResultMapper?;
40
47
  static readonly [entityKind]: string;
41
- constructor(client: OPSQLiteConnection, query: Query, logger: Logger, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => unknown) | undefined);
48
+ constructor(client: OPSQLiteConnection, 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);
42
52
  run(placeholderValues?: Record<string, unknown>): Promise<QueryResult>;
43
53
  all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;
44
54
  get(placeholderValues?: Record<string, unknown>): Promise<T['get']>;
@@ -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 { fillPlaceholders, sql } from "../sql/sql.js";
@@ -13,14 +14,19 @@ class OPSQLiteSession extends SQLiteSession {
13
14
  this.client = client;
14
15
  this.schema = schema;
15
16
  this.logger = options.logger ?? new NoopLogger();
17
+ this.cache = options.cache ?? new NoopCache();
16
18
  }
17
19
  static [entityKind] = "OPSQLiteSession";
18
20
  logger;
19
- prepareQuery(query, fields, executeMethod, isResponseInArrayMode, customResultMapper) {
21
+ cache;
22
+ prepareQuery(query, fields, executeMethod, isResponseInArrayMode, customResultMapper, queryMetadata, cacheConfig) {
20
23
  return new OPSQLitePreparedQuery(
21
24
  this.client,
22
25
  query,
23
26
  this.logger,
27
+ this.cache,
28
+ queryMetadata,
29
+ cacheConfig,
24
30
  fields,
25
31
  executeMethod,
26
32
  isResponseInArrayMode,
@@ -57,8 +63,8 @@ class OPSQLiteTransaction extends SQLiteTransaction {
57
63
  }
58
64
  }
59
65
  class OPSQLitePreparedQuery extends SQLitePreparedQuery {
60
- constructor(client, query, logger, fields, executeMethod, _isResponseInArrayMode, customResultMapper) {
61
- super("sync", executeMethod, query);
66
+ constructor(client, query, logger, cache, queryMetadata, cacheConfig, fields, executeMethod, _isResponseInArrayMode, customResultMapper) {
67
+ super("sync", executeMethod, query, cache, queryMetadata, cacheConfig);
62
68
  this.client = client;
63
69
  this.logger = logger;
64
70
  this.fields = fields;
@@ -66,17 +72,21 @@ class OPSQLitePreparedQuery extends SQLitePreparedQuery {
66
72
  this.customResultMapper = customResultMapper;
67
73
  }
68
74
  static [entityKind] = "OPSQLitePreparedQuery";
69
- run(placeholderValues) {
75
+ async run(placeholderValues) {
70
76
  const params = fillPlaceholders(this.query.params, placeholderValues ?? {});
71
77
  this.logger.logQuery(this.query.sql, params);
72
- return this.client.executeAsync(this.query.sql, params);
78
+ return await this.queryWithCache(this.query.sql, params, async () => {
79
+ return this.client.executeAsync(this.query.sql, params);
80
+ });
73
81
  }
74
82
  async all(placeholderValues) {
75
83
  const { fields, joinsNotNullableMap, query, logger, customResultMapper, client } = this;
76
84
  if (!fields && !customResultMapper) {
77
85
  const params = fillPlaceholders(query.params, placeholderValues ?? {});
78
86
  logger.logQuery(query.sql, params);
79
- return client.execute(query.sql, params).rows?._array || [];
87
+ return await this.queryWithCache(query.sql, params, async () => {
88
+ return client.execute(query.sql, params).rows?._array || [];
89
+ });
80
90
  }
81
91
  const rows = await this.values(placeholderValues);
82
92
  if (customResultMapper) {
@@ -89,7 +99,9 @@ class OPSQLitePreparedQuery extends SQLitePreparedQuery {
89
99
  const params = fillPlaceholders(query.params, placeholderValues ?? {});
90
100
  logger.logQuery(query.sql, params);
91
101
  if (!fields && !customResultMapper) {
92
- const rows2 = client.execute(query.sql, params).rows?._array || [];
102
+ const rows2 = await this.queryWithCache(query.sql, params, async () => {
103
+ return client.execute(query.sql, params).rows?._array || [];
104
+ });
93
105
  return rows2[0];
94
106
  }
95
107
  const rows = await this.values(placeholderValues);
@@ -102,10 +114,12 @@ class OPSQLitePreparedQuery extends SQLitePreparedQuery {
102
114
  }
103
115
  return mapResultRow(fields, row, joinsNotNullableMap);
104
116
  }
105
- values(placeholderValues) {
117
+ async values(placeholderValues) {
106
118
  const params = fillPlaceholders(this.query.params, placeholderValues ?? {});
107
119
  this.logger.logQuery(this.query.sql, params);
108
- return this.client.executeRawAsync(this.query.sql, params);
120
+ return await this.queryWithCache(this.query.sql, params, async () => {
121
+ return await this.client.executeRawAsync(this.query.sql, params);
122
+ });
109
123
  }
110
124
  /** @internal */
111
125
  isResponseInArrayMode() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/op-sqlite/session.ts"],"sourcesContent":["import type { OPSQLiteConnection, QueryResult } from '@op-engineering/op-sqlite';\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 { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface OPSQLiteSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class OPSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\n\t\tdialect: SQLiteAsyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: OPSQLiteSessionOptions = {},\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): OPSQLitePreparedQuery<T> {\n\t\treturn new OPSQLitePreparedQuery(\n\t\t\tthis.client,\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: OPSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new OPSQLiteTransaction('async', this.dialect, this, this.schema);\n\t\tthis.run(sql.raw(`begin${config?.behavior ? ' ' + config.behavior : ''}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.run(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.run(sql`rollback`);\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class OPSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new OPSQLiteTransaction('async', 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 OPSQLitePreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends SQLitePreparedQuery<\n\t{ type: 'async'; run: QueryResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'OPSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\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>): Promise<QueryResult> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\treturn this.client.executeAsync(this.query.sql, params);\n\t}\n\n\tasync all(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tconst { fields, joinsNotNullableMap, query, logger, customResultMapper, client } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn client.execute(query.sql, params).rows?._array || [];\n\t\t}\n\n\t\tconst rows = await 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\tasync get(placeholderValues?: Record<string, unknown>): Promise<T['get']> {\n\t\tconst { fields, joinsNotNullableMap, customResultMapper, query, logger, client } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst rows = client.execute(query.sql, params).rows?._array || [];\n\t\t\treturn rows[0];\n\t\t}\n\n\t\tconst rows = await this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): 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.executeRawAsync(this.query.sql, params);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":["rows"]}
1
+ {"version":3,"sources":["../../src/op-sqlite/session.ts"],"sourcesContent":["import type { OPSQLiteConnection, QueryResult } from '@op-engineering/op-sqlite';\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 { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface OPSQLiteSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class OPSQLiteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteSession<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\n\t\tdialect: SQLiteAsyncDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: OPSQLiteSessionOptions = {},\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): OPSQLitePreparedQuery<T> {\n\t\treturn new OPSQLitePreparedQuery(\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\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new OPSQLiteTransaction('async', this.dialect, this, this.schema);\n\t\tthis.run(sql.raw(`begin${config?.behavior ? ' ' + config.behavior : ''}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.run(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.run(sql`rollback`);\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class OPSQLiteTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SQLiteTransaction<'async', QueryResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'OPSQLiteTransaction';\n\n\toverride transaction<T>(transaction: (tx: OPSQLiteTransaction<TFullSchema, TSchema>) => T): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new OPSQLiteTransaction('async', 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 OPSQLitePreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends SQLitePreparedQuery<\n\t{ type: 'async'; run: QueryResult; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n> {\n\tstatic override readonly [entityKind]: string = 'OPSQLitePreparedQuery';\n\n\tconstructor(\n\t\tprivate client: OPSQLiteConnection,\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\tasync run(placeholderValues?: Record<string, unknown>): Promise<QueryResult> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\treturn await this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn this.client.executeAsync(this.query.sql, params);\n\t\t});\n\t}\n\n\tasync all(placeholderValues?: Record<string, unknown>): Promise<T['all']> {\n\t\tconst { fields, joinsNotNullableMap, query, logger, customResultMapper, client } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn client.execute(query.sql, params).rows?._array || [];\n\t\t\t});\n\t\t}\n\n\t\tconst rows = await 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\tasync get(placeholderValues?: Record<string, unknown>): Promise<T['get']> {\n\t\tconst { fields, joinsNotNullableMap, customResultMapper, query, logger, client } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst rows = await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn client.execute(query.sql, params).rows?._array || [];\n\t\t\t});\n\t\t\treturn rows[0];\n\t\t}\n\n\t\tconst rows = await this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tasync values(placeholderValues?: Record<string, unknown>): Promise<T['values']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn await this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn await this.client.executeRawAsync(this.query.sql, params);\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":["rows"]}