drizzle-orm 0.39.0-19ccabb → 0.39.0-6b6aca7

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 (726) hide show
  1. package/alias.cjs.map +1 -1
  2. package/alias.d.cts +9 -4
  3. package/alias.d.ts +9 -4
  4. package/alias.js.map +1 -1
  5. package/aws-data-api/pg/driver.cjs +5 -19
  6. package/aws-data-api/pg/driver.cjs.map +1 -1
  7. package/aws-data-api/pg/driver.d.cts +8 -9
  8. package/aws-data-api/pg/driver.d.ts +8 -9
  9. package/aws-data-api/pg/driver.js +8 -9
  10. package/aws-data-api/pg/driver.js.map +1 -1
  11. package/aws-data-api/pg/migrator.cjs.map +1 -1
  12. package/aws-data-api/pg/migrator.d.cts +1 -2
  13. package/aws-data-api/pg/migrator.d.ts +1 -2
  14. package/aws-data-api/pg/migrator.js.map +1 -1
  15. package/aws-data-api/pg/session.cjs +4 -67
  16. package/aws-data-api/pg/session.cjs.map +1 -1
  17. package/aws-data-api/pg/session.d.cts +8 -13
  18. package/aws-data-api/pg/session.d.ts +8 -13
  19. package/aws-data-api/pg/session.js +4 -67
  20. package/aws-data-api/pg/session.js.map +1 -1
  21. package/better-sqlite3/driver.cjs +5 -12
  22. package/better-sqlite3/driver.cjs.map +1 -1
  23. package/better-sqlite3/driver.d.cts +6 -7
  24. package/better-sqlite3/driver.d.ts +6 -7
  25. package/better-sqlite3/driver.js +8 -12
  26. package/better-sqlite3/driver.js.map +1 -1
  27. package/better-sqlite3/migrator.cjs.map +1 -1
  28. package/better-sqlite3/migrator.d.cts +1 -2
  29. package/better-sqlite3/migrator.d.ts +1 -2
  30. package/better-sqlite3/migrator.js.map +1 -1
  31. package/better-sqlite3/session.cjs +4 -49
  32. package/better-sqlite3/session.cjs.map +1 -1
  33. package/better-sqlite3/session.d.cts +8 -14
  34. package/better-sqlite3/session.d.ts +8 -14
  35. package/better-sqlite3/session.js +4 -49
  36. package/better-sqlite3/session.js.map +1 -1
  37. package/bun-sql/driver.cjs +96 -0
  38. package/bun-sql/driver.cjs.map +1 -0
  39. package/bun-sql/driver.d.cts +30 -0
  40. package/bun-sql/driver.d.ts +30 -0
  41. package/bun-sql/driver.js +74 -0
  42. package/bun-sql/driver.js.map +1 -0
  43. package/bun-sql/index.cjs +25 -0
  44. package/bun-sql/index.cjs.map +1 -0
  45. package/bun-sql/index.d.cts +2 -0
  46. package/bun-sql/index.d.ts +2 -0
  47. package/bun-sql/index.js +3 -0
  48. package/bun-sql/index.js.map +1 -0
  49. package/bun-sql/migrator.cjs +33 -0
  50. package/bun-sql/migrator.cjs.map +1 -0
  51. package/bun-sql/migrator.d.cts +3 -0
  52. package/bun-sql/migrator.d.ts +3 -0
  53. package/bun-sql/migrator.js +9 -0
  54. package/bun-sql/migrator.js.map +1 -0
  55. package/bun-sql/session.cjs +162 -0
  56. package/bun-sql/session.cjs.map +1 -0
  57. package/bun-sql/session.d.cts +50 -0
  58. package/bun-sql/session.d.ts +50 -0
  59. package/bun-sql/session.js +136 -0
  60. package/bun-sql/session.js.map +1 -0
  61. package/bun-sqlite/driver.cjs +5 -22
  62. package/bun-sqlite/driver.cjs.map +1 -1
  63. package/bun-sqlite/driver.d.cts +6 -7
  64. package/bun-sqlite/driver.d.ts +6 -7
  65. package/bun-sqlite/driver.js +8 -12
  66. package/bun-sqlite/driver.js.map +1 -1
  67. package/bun-sqlite/migrator.cjs.map +1 -1
  68. package/bun-sqlite/migrator.d.cts +1 -2
  69. package/bun-sqlite/migrator.d.ts +1 -2
  70. package/bun-sqlite/migrator.js.map +1 -1
  71. package/bun-sqlite/session.cjs +4 -49
  72. package/bun-sqlite/session.cjs.map +1 -1
  73. package/bun-sqlite/session.d.cts +9 -15
  74. package/bun-sqlite/session.d.ts +9 -15
  75. package/bun-sqlite/session.js +4 -49
  76. package/bun-sqlite/session.js.map +1 -1
  77. package/d1/driver.cjs +5 -22
  78. package/d1/driver.cjs.map +1 -1
  79. package/d1/driver.d.cts +2 -3
  80. package/d1/driver.d.ts +2 -3
  81. package/d1/driver.js +8 -12
  82. package/d1/driver.js.map +1 -1
  83. package/d1/migrator.cjs.map +1 -1
  84. package/d1/migrator.d.cts +1 -2
  85. package/d1/migrator.d.ts +1 -2
  86. package/d1/migrator.js.map +1 -1
  87. package/d1/session.cjs +6 -48
  88. package/d1/session.cjs.map +1 -1
  89. package/d1/session.d.cts +8 -15
  90. package/d1/session.d.ts +8 -15
  91. package/d1/session.js +6 -48
  92. package/d1/session.js.map +1 -1
  93. package/durable-sqlite/driver.cjs +5 -16
  94. package/durable-sqlite/driver.cjs.map +1 -1
  95. package/durable-sqlite/driver.d.cts +2 -3
  96. package/durable-sqlite/driver.d.ts +2 -3
  97. package/durable-sqlite/driver.js +8 -6
  98. package/durable-sqlite/driver.js.map +1 -1
  99. package/durable-sqlite/migrator.cjs.map +1 -1
  100. package/durable-sqlite/migrator.d.cts +1 -2
  101. package/durable-sqlite/migrator.d.ts +1 -2
  102. package/durable-sqlite/migrator.js.map +1 -1
  103. package/durable-sqlite/session.cjs +4 -46
  104. package/durable-sqlite/session.cjs.map +1 -1
  105. package/durable-sqlite/session.d.cts +8 -14
  106. package/durable-sqlite/session.d.ts +8 -14
  107. package/durable-sqlite/session.js +4 -46
  108. package/durable-sqlite/session.js.map +1 -1
  109. package/expo-sqlite/driver.cjs +5 -22
  110. package/expo-sqlite/driver.cjs.map +1 -1
  111. package/expo-sqlite/driver.d.cts +2 -3
  112. package/expo-sqlite/driver.d.ts +2 -3
  113. package/expo-sqlite/driver.js +8 -12
  114. package/expo-sqlite/driver.js.map +1 -1
  115. package/expo-sqlite/migrator.cjs.map +1 -1
  116. package/expo-sqlite/migrator.d.cts +2 -3
  117. package/expo-sqlite/migrator.d.ts +2 -3
  118. package/expo-sqlite/migrator.js.map +1 -1
  119. package/expo-sqlite/query.cjs +2 -13
  120. package/expo-sqlite/query.cjs.map +1 -1
  121. package/expo-sqlite/query.d.cts +1 -2
  122. package/expo-sqlite/query.d.ts +1 -2
  123. package/expo-sqlite/query.js +2 -3
  124. package/expo-sqlite/query.js.map +1 -1
  125. package/expo-sqlite/session.cjs +4 -47
  126. package/expo-sqlite/session.cjs.map +1 -1
  127. package/expo-sqlite/session.d.cts +8 -14
  128. package/expo-sqlite/session.d.ts +8 -14
  129. package/expo-sqlite/session.js +4 -47
  130. package/expo-sqlite/session.js.map +1 -1
  131. package/libsql/driver-core.cjs +5 -22
  132. package/libsql/driver-core.cjs.map +1 -1
  133. package/libsql/driver-core.d.cts +1 -2
  134. package/libsql/driver-core.d.ts +1 -2
  135. package/libsql/driver-core.js +8 -12
  136. package/libsql/driver-core.js.map +1 -1
  137. package/libsql/driver.cjs.map +1 -1
  138. package/libsql/driver.d.cts +5 -6
  139. package/libsql/driver.d.ts +5 -6
  140. package/libsql/driver.js.map +1 -1
  141. package/libsql/http/index.cjs.map +1 -1
  142. package/libsql/http/index.d.cts +5 -6
  143. package/libsql/http/index.d.ts +5 -6
  144. package/libsql/http/index.js.map +1 -1
  145. package/libsql/migrator.cjs.map +1 -1
  146. package/libsql/migrator.d.cts +1 -2
  147. package/libsql/migrator.d.ts +1 -2
  148. package/libsql/migrator.js.map +1 -1
  149. package/libsql/node/index.cjs.map +1 -1
  150. package/libsql/node/index.d.cts +5 -6
  151. package/libsql/node/index.d.ts +5 -6
  152. package/libsql/node/index.js.map +1 -1
  153. package/libsql/session.cjs +4 -56
  154. package/libsql/session.cjs.map +1 -1
  155. package/libsql/session.d.cts +9 -15
  156. package/libsql/session.d.ts +9 -15
  157. package/libsql/session.js +4 -56
  158. package/libsql/session.js.map +1 -1
  159. package/libsql/sqlite3/index.cjs.map +1 -1
  160. package/libsql/sqlite3/index.d.cts +5 -6
  161. package/libsql/sqlite3/index.d.ts +5 -6
  162. package/libsql/sqlite3/index.js.map +1 -1
  163. package/libsql/wasm/index.cjs.map +1 -1
  164. package/libsql/wasm/index.d.cts +5 -6
  165. package/libsql/wasm/index.d.ts +5 -6
  166. package/libsql/wasm/index.js.map +1 -1
  167. package/libsql/web/index.cjs.map +1 -1
  168. package/libsql/web/index.d.cts +5 -6
  169. package/libsql/web/index.d.ts +5 -6
  170. package/libsql/web/index.js.map +1 -1
  171. package/libsql/ws/index.cjs.map +1 -1
  172. package/libsql/ws/index.d.cts +5 -6
  173. package/libsql/ws/index.d.ts +5 -6
  174. package/libsql/ws/index.js.map +1 -1
  175. package/mysql-core/db.cjs +25 -40
  176. package/mysql-core/db.cjs.map +1 -1
  177. package/mysql-core/db.d.cts +12 -22
  178. package/mysql-core/db.d.ts +12 -22
  179. package/mysql-core/db.js +24 -39
  180. package/mysql-core/db.js.map +1 -1
  181. package/mysql-core/dialect.cjs +15 -194
  182. package/mysql-core/dialect.cjs.map +1 -1
  183. package/mysql-core/dialect.d.cts +13 -33
  184. package/mysql-core/dialect.d.ts +13 -33
  185. package/mysql-core/dialect.js +21 -191
  186. package/mysql-core/dialect.js.map +1 -1
  187. package/mysql-core/query-builders/count.cjs.map +1 -1
  188. package/mysql-core/query-builders/count.d.cts +1 -1
  189. package/mysql-core/query-builders/count.d.ts +1 -1
  190. package/mysql-core/query-builders/count.js.map +1 -1
  191. package/mysql-core/query-builders/query-builder.cjs +15 -11
  192. package/mysql-core/query-builders/query-builder.cjs.map +1 -1
  193. package/mysql-core/query-builders/query-builder.d.cts +2 -6
  194. package/mysql-core/query-builders/query-builder.d.ts +2 -6
  195. package/mysql-core/query-builders/query-builder.js +15 -11
  196. package/mysql-core/query-builders/query-builder.js.map +1 -1
  197. package/mysql-core/query-builders/query.cjs +31 -18
  198. package/mysql-core/query-builders/query.cjs.map +1 -1
  199. package/mysql-core/query-builders/query.d.cts +10 -8
  200. package/mysql-core/query-builders/query.d.ts +10 -8
  201. package/mysql-core/query-builders/query.js +31 -18
  202. package/mysql-core/query-builders/query.js.map +1 -1
  203. package/mysql-core/query-builders/select.types.cjs.map +1 -1
  204. package/mysql-core/query-builders/select.types.d.cts +1 -1
  205. package/mysql-core/query-builders/select.types.d.ts +1 -1
  206. package/mysql-core/session.cjs +2 -3
  207. package/mysql-core/session.cjs.map +1 -1
  208. package/mysql-core/session.d.cts +7 -10
  209. package/mysql-core/session.d.ts +7 -10
  210. package/mysql-core/session.js +2 -3
  211. package/mysql-core/session.js.map +1 -1
  212. package/mysql-core/subquery.cjs.map +1 -1
  213. package/mysql-core/subquery.d.cts +15 -2
  214. package/mysql-core/subquery.d.ts +15 -2
  215. package/mysql-proxy/driver.cjs +5 -22
  216. package/mysql-proxy/driver.cjs.map +1 -1
  217. package/mysql-proxy/driver.d.cts +2 -3
  218. package/mysql-proxy/driver.d.ts +2 -3
  219. package/mysql-proxy/driver.js +8 -12
  220. package/mysql-proxy/driver.js.map +1 -1
  221. package/mysql-proxy/migrator.cjs.map +1 -1
  222. package/mysql-proxy/migrator.d.cts +1 -2
  223. package/mysql-proxy/migrator.d.ts +1 -2
  224. package/mysql-proxy/migrator.js.map +1 -1
  225. package/mysql-proxy/session.cjs +2 -27
  226. package/mysql-proxy/session.cjs.map +1 -1
  227. package/mysql-proxy/session.d.cts +8 -13
  228. package/mysql-proxy/session.d.ts +8 -13
  229. package/mysql-proxy/session.js +2 -27
  230. package/mysql-proxy/session.js.map +1 -1
  231. package/mysql2/driver.cjs +7 -24
  232. package/mysql2/driver.cjs.map +1 -1
  233. package/mysql2/driver.d.cts +9 -10
  234. package/mysql2/driver.d.ts +9 -10
  235. package/mysql2/driver.js +10 -14
  236. package/mysql2/driver.js.map +1 -1
  237. package/mysql2/migrator.cjs.map +1 -1
  238. package/mysql2/migrator.d.cts +1 -2
  239. package/mysql2/migrator.d.ts +1 -2
  240. package/mysql2/migrator.js.map +1 -1
  241. package/mysql2/session.cjs +2 -30
  242. package/mysql2/session.cjs.map +1 -1
  243. package/mysql2/session.d.cts +8 -13
  244. package/mysql2/session.d.ts +8 -13
  245. package/mysql2/session.js +2 -30
  246. package/mysql2/session.js.map +1 -1
  247. package/neon/index.cjs +2 -0
  248. package/neon/index.cjs.map +1 -1
  249. package/neon/index.d.cts +1 -0
  250. package/neon/index.d.ts +1 -0
  251. package/neon/index.js +1 -0
  252. package/neon/index.js.map +1 -1
  253. package/neon/neon-identity.cjs +38 -0
  254. package/neon/neon-identity.cjs.map +1 -0
  255. package/neon/neon-identity.d.cts +116 -0
  256. package/neon/neon-identity.d.ts +116 -0
  257. package/neon/neon-identity.js +14 -0
  258. package/neon/neon-identity.js.map +1 -0
  259. package/neon-http/driver.cjs +7 -21
  260. package/neon-http/driver.cjs.map +1 -1
  261. package/neon-http/driver.d.cts +9 -10
  262. package/neon-http/driver.d.ts +9 -10
  263. package/neon-http/driver.js +7 -11
  264. package/neon-http/driver.js.map +1 -1
  265. package/neon-http/migrator.cjs.map +1 -1
  266. package/neon-http/migrator.d.cts +1 -2
  267. package/neon-http/migrator.d.ts +1 -2
  268. package/neon-http/migrator.js.map +1 -1
  269. package/neon-http/session.cjs +2 -32
  270. package/neon-http/session.cjs.map +1 -1
  271. package/neon-http/session.d.cts +8 -13
  272. package/neon-http/session.d.ts +8 -13
  273. package/neon-http/session.js +2 -32
  274. package/neon-http/session.js.map +1 -1
  275. package/neon-serverless/driver.cjs +7 -18
  276. package/neon-serverless/driver.cjs.map +1 -1
  277. package/neon-serverless/driver.d.cts +8 -9
  278. package/neon-serverless/driver.d.ts +8 -9
  279. package/neon-serverless/driver.js +10 -8
  280. package/neon-serverless/driver.js.map +1 -1
  281. package/neon-serverless/migrator.cjs.map +1 -1
  282. package/neon-serverless/migrator.d.cts +1 -2
  283. package/neon-serverless/migrator.d.ts +1 -2
  284. package/neon-serverless/migrator.js.map +1 -1
  285. package/neon-serverless/session.cjs +5 -40
  286. package/neon-serverless/session.cjs.map +1 -1
  287. package/neon-serverless/session.d.cts +8 -13
  288. package/neon-serverless/session.d.ts +8 -13
  289. package/neon-serverless/session.js +5 -40
  290. package/neon-serverless/session.js.map +1 -1
  291. package/node-postgres/driver.cjs +7 -13
  292. package/node-postgres/driver.cjs.map +1 -1
  293. package/node-postgres/driver.d.cts +8 -9
  294. package/node-postgres/driver.d.ts +8 -9
  295. package/node-postgres/driver.js +10 -13
  296. package/node-postgres/driver.js.map +1 -1
  297. package/node-postgres/migrator.cjs.map +1 -1
  298. package/node-postgres/migrator.d.cts +1 -2
  299. package/node-postgres/migrator.d.ts +1 -2
  300. package/node-postgres/migrator.js.map +1 -1
  301. package/node-postgres/session.cjs +4 -45
  302. package/node-postgres/session.cjs.map +1 -1
  303. package/node-postgres/session.d.cts +8 -13
  304. package/node-postgres/session.d.ts +8 -13
  305. package/node-postgres/session.js +4 -45
  306. package/node-postgres/session.js.map +1 -1
  307. package/op-sqlite/driver.cjs +5 -22
  308. package/op-sqlite/driver.cjs.map +1 -1
  309. package/op-sqlite/driver.d.cts +2 -3
  310. package/op-sqlite/driver.d.ts +2 -3
  311. package/op-sqlite/driver.js +8 -12
  312. package/op-sqlite/driver.js.map +1 -1
  313. package/op-sqlite/migrator.cjs.map +1 -1
  314. package/op-sqlite/migrator.d.cts +2 -3
  315. package/op-sqlite/migrator.d.ts +2 -3
  316. package/op-sqlite/migrator.js.map +1 -1
  317. package/op-sqlite/session.cjs +4 -47
  318. package/op-sqlite/session.cjs.map +1 -1
  319. package/op-sqlite/session.d.cts +8 -14
  320. package/op-sqlite/session.d.ts +8 -14
  321. package/op-sqlite/session.js +4 -47
  322. package/op-sqlite/session.js.map +1 -1
  323. package/package.json +64 -52
  324. package/pg-core/db.cjs +24 -42
  325. package/pg-core/db.cjs.map +1 -1
  326. package/pg-core/db.d.cts +13 -23
  327. package/pg-core/db.d.ts +13 -23
  328. package/pg-core/db.js +23 -41
  329. package/pg-core/db.js.map +1 -1
  330. package/pg-core/dialect.cjs +488 -161
  331. package/pg-core/dialect.cjs.map +1 -1
  332. package/pg-core/dialect.d.cts +7 -24
  333. package/pg-core/dialect.d.ts +7 -24
  334. package/pg-core/dialect.js +494 -158
  335. package/pg-core/dialect.js.map +1 -1
  336. package/pg-core/query-builders/count.cjs.map +1 -1
  337. package/pg-core/query-builders/count.d.cts +1 -1
  338. package/pg-core/query-builders/count.d.ts +1 -1
  339. package/pg-core/query-builders/count.js.map +1 -1
  340. package/pg-core/query-builders/delete.cjs +13 -0
  341. package/pg-core/query-builders/delete.cjs.map +1 -1
  342. package/pg-core/query-builders/delete.d.cts +13 -10
  343. package/pg-core/query-builders/delete.d.ts +13 -10
  344. package/pg-core/query-builders/delete.js +14 -1
  345. package/pg-core/query-builders/delete.js.map +1 -1
  346. package/pg-core/query-builders/insert.cjs +13 -0
  347. package/pg-core/query-builders/insert.cjs.map +1 -1
  348. package/pg-core/query-builders/insert.d.cts +10 -8
  349. package/pg-core/query-builders/insert.d.ts +10 -8
  350. package/pg-core/query-builders/insert.js +14 -1
  351. package/pg-core/query-builders/insert.js.map +1 -1
  352. package/pg-core/query-builders/query-builder.cjs +15 -11
  353. package/pg-core/query-builders/query-builder.cjs.map +1 -1
  354. package/pg-core/query-builders/query-builder.d.cts +3 -6
  355. package/pg-core/query-builders/query-builder.d.ts +3 -6
  356. package/pg-core/query-builders/query-builder.js +15 -11
  357. package/pg-core/query-builders/query-builder.js.map +1 -1
  358. package/pg-core/query-builders/query.cjs +18 -15
  359. package/pg-core/query-builders/query.cjs.map +1 -1
  360. package/pg-core/query-builders/query.d.cts +6 -6
  361. package/pg-core/query-builders/query.d.ts +6 -6
  362. package/pg-core/query-builders/query.js +18 -15
  363. package/pg-core/query-builders/query.js.map +1 -1
  364. package/pg-core/query-builders/select.cjs +8 -7
  365. package/pg-core/query-builders/select.cjs.map +1 -1
  366. package/pg-core/query-builders/select.d.cts +3 -3
  367. package/pg-core/query-builders/select.d.ts +3 -3
  368. package/pg-core/query-builders/select.js +8 -7
  369. package/pg-core/query-builders/select.js.map +1 -1
  370. package/pg-core/query-builders/select.types.cjs.map +1 -1
  371. package/pg-core/query-builders/select.types.d.cts +4 -3
  372. package/pg-core/query-builders/select.types.d.ts +4 -3
  373. package/pg-core/query-builders/update.cjs +15 -2
  374. package/pg-core/query-builders/update.cjs.map +1 -1
  375. package/pg-core/query-builders/update.d.cts +18 -13
  376. package/pg-core/query-builders/update.d.ts +18 -13
  377. package/pg-core/query-builders/update.js +16 -3
  378. package/pg-core/query-builders/update.js.map +1 -1
  379. package/pg-core/session.cjs +2 -3
  380. package/pg-core/session.cjs.map +1 -1
  381. package/pg-core/session.d.cts +6 -9
  382. package/pg-core/session.d.ts +6 -9
  383. package/pg-core/session.js +2 -3
  384. package/pg-core/session.js.map +1 -1
  385. package/pg-core/subquery.cjs.map +1 -1
  386. package/pg-core/subquery.d.cts +15 -2
  387. package/pg-core/subquery.d.ts +15 -2
  388. package/pg-proxy/driver.cjs +5 -21
  389. package/pg-proxy/driver.cjs.map +1 -1
  390. package/pg-proxy/driver.d.cts +2 -3
  391. package/pg-proxy/driver.d.ts +2 -3
  392. package/pg-proxy/driver.js +8 -11
  393. package/pg-proxy/driver.js.map +1 -1
  394. package/pg-proxy/migrator.cjs.map +1 -1
  395. package/pg-proxy/migrator.d.cts +1 -2
  396. package/pg-proxy/migrator.d.ts +1 -2
  397. package/pg-proxy/migrator.js.map +1 -1
  398. package/pg-proxy/session.cjs +2 -37
  399. package/pg-proxy/session.cjs.map +1 -1
  400. package/pg-proxy/session.d.cts +8 -13
  401. package/pg-proxy/session.d.ts +8 -13
  402. package/pg-proxy/session.js +2 -37
  403. package/pg-proxy/session.js.map +1 -1
  404. package/pglite/driver.cjs +7 -23
  405. package/pglite/driver.cjs.map +1 -1
  406. package/pglite/driver.d.cts +8 -9
  407. package/pglite/driver.d.ts +8 -9
  408. package/pglite/driver.js +10 -13
  409. package/pglite/driver.js.map +1 -1
  410. package/pglite/migrator.cjs.map +1 -1
  411. package/pglite/migrator.d.cts +1 -2
  412. package/pglite/migrator.d.ts +1 -2
  413. package/pglite/migrator.js.map +1 -1
  414. package/pglite/session.cjs +3 -34
  415. package/pglite/session.cjs.map +1 -1
  416. package/pglite/session.d.cts +8 -13
  417. package/pglite/session.d.ts +8 -13
  418. package/pglite/session.js +3 -34
  419. package/pglite/session.js.map +1 -1
  420. package/planetscale-serverless/driver.cjs +5 -22
  421. package/planetscale-serverless/driver.cjs.map +1 -1
  422. package/planetscale-serverless/driver.d.cts +6 -7
  423. package/planetscale-serverless/driver.d.ts +6 -7
  424. package/planetscale-serverless/driver.js +8 -12
  425. package/planetscale-serverless/driver.js.map +1 -1
  426. package/planetscale-serverless/migrator.cjs.map +1 -1
  427. package/planetscale-serverless/migrator.d.cts +1 -2
  428. package/planetscale-serverless/migrator.d.ts +1 -2
  429. package/planetscale-serverless/migrator.js.map +1 -1
  430. package/planetscale-serverless/session.cjs +5 -45
  431. package/planetscale-serverless/session.cjs.map +1 -1
  432. package/planetscale-serverless/session.d.cts +9 -14
  433. package/planetscale-serverless/session.d.ts +9 -14
  434. package/planetscale-serverless/session.js +5 -45
  435. package/planetscale-serverless/session.js.map +1 -1
  436. package/postgres-js/driver.cjs +5 -6
  437. package/postgres-js/driver.cjs.map +1 -1
  438. package/postgres-js/driver.d.cts +6 -7
  439. package/postgres-js/driver.d.ts +6 -7
  440. package/postgres-js/driver.js +8 -6
  441. package/postgres-js/driver.js.map +1 -1
  442. package/postgres-js/migrator.cjs.map +1 -1
  443. package/postgres-js/migrator.d.cts +1 -2
  444. package/postgres-js/migrator.d.ts +1 -2
  445. package/postgres-js/migrator.js.map +1 -1
  446. package/postgres-js/session.cjs +6 -51
  447. package/postgres-js/session.cjs.map +1 -1
  448. package/postgres-js/session.d.cts +9 -15
  449. package/postgres-js/session.d.ts +9 -15
  450. package/postgres-js/session.js +6 -51
  451. package/postgres-js/session.js.map +1 -1
  452. package/prisma/mysql/driver.cjs +1 -1
  453. package/prisma/mysql/driver.cjs.map +1 -1
  454. package/prisma/mysql/driver.js +1 -1
  455. package/prisma/mysql/driver.js.map +1 -1
  456. package/prisma/mysql/session.cjs +0 -3
  457. package/prisma/mysql/session.cjs.map +1 -1
  458. package/prisma/mysql/session.d.cts +1 -3
  459. package/prisma/mysql/session.d.ts +1 -3
  460. package/prisma/mysql/session.js +0 -3
  461. package/prisma/mysql/session.js.map +1 -1
  462. package/prisma/pg/driver.cjs +1 -1
  463. package/prisma/pg/driver.cjs.map +1 -1
  464. package/prisma/pg/driver.js +1 -1
  465. package/prisma/pg/driver.js.map +1 -1
  466. package/prisma/pg/session.cjs +0 -3
  467. package/prisma/pg/session.cjs.map +1 -1
  468. package/prisma/pg/session.d.cts +1 -3
  469. package/prisma/pg/session.d.ts +1 -3
  470. package/prisma/pg/session.js +0 -3
  471. package/prisma/pg/session.js.map +1 -1
  472. package/prisma/sqlite/driver.cjs +1 -1
  473. package/prisma/sqlite/driver.cjs.map +1 -1
  474. package/prisma/sqlite/driver.js +1 -1
  475. package/prisma/sqlite/driver.js.map +1 -1
  476. package/prisma/sqlite/session.cjs +0 -3
  477. package/prisma/sqlite/session.cjs.map +1 -1
  478. package/prisma/sqlite/session.d.cts +2 -4
  479. package/prisma/sqlite/session.d.ts +2 -4
  480. package/prisma/sqlite/session.js +0 -3
  481. package/prisma/sqlite/session.js.map +1 -1
  482. package/query-builders/select.types.cjs.map +1 -1
  483. package/query-builders/select.types.d.cts +1 -1
  484. package/query-builders/select.types.d.ts +1 -1
  485. package/relations.cjs +245 -595
  486. package/relations.cjs.map +1 -1
  487. package/relations.d.cts +131 -276
  488. package/relations.d.ts +131 -276
  489. package/relations.js +239 -589
  490. package/relations.js.map +1 -1
  491. package/singlestore/driver.cjs +1 -1
  492. package/singlestore/driver.cjs.map +1 -1
  493. package/singlestore/driver.d.cts +1 -1
  494. package/singlestore/driver.d.ts +1 -1
  495. package/singlestore/driver.js +3 -3
  496. package/singlestore/driver.js.map +1 -1
  497. package/singlestore/session.cjs.map +1 -1
  498. package/singlestore/session.d.cts +4 -4
  499. package/singlestore/session.d.ts +4 -4
  500. package/singlestore/session.js.map +1 -1
  501. package/singlestore-core/db.cjs +17 -11
  502. package/singlestore-core/db.cjs.map +1 -1
  503. package/singlestore-core/db.d.cts +7 -10
  504. package/singlestore-core/db.d.ts +7 -10
  505. package/singlestore-core/db.js +17 -11
  506. package/singlestore-core/db.js.map +1 -1
  507. package/singlestore-core/dialect.cjs +6 -16
  508. package/singlestore-core/dialect.cjs.map +1 -1
  509. package/singlestore-core/dialect.d.cts +6 -6
  510. package/singlestore-core/dialect.d.ts +6 -6
  511. package/singlestore-core/dialect.js +12 -6
  512. package/singlestore-core/dialect.js.map +1 -1
  513. package/singlestore-core/query-builders/query-builder.cjs +15 -11
  514. package/singlestore-core/query-builders/query-builder.cjs.map +1 -1
  515. package/singlestore-core/query-builders/query-builder.d.cts +2 -6
  516. package/singlestore-core/query-builders/query-builder.d.ts +2 -6
  517. package/singlestore-core/query-builders/query-builder.js +15 -11
  518. package/singlestore-core/query-builders/query-builder.js.map +1 -1
  519. package/singlestore-core/query-builders/query.cjs +2 -12
  520. package/singlestore-core/query-builders/query.cjs.map +1 -1
  521. package/singlestore-core/query-builders/query.d.cts +6 -6
  522. package/singlestore-core/query-builders/query.d.ts +6 -6
  523. package/singlestore-core/query-builders/query.js +4 -2
  524. package/singlestore-core/query-builders/query.js.map +1 -1
  525. package/singlestore-core/session.cjs.map +1 -1
  526. package/singlestore-core/session.d.cts +5 -5
  527. package/singlestore-core/session.d.ts +5 -5
  528. package/singlestore-core/session.js.map +1 -1
  529. package/singlestore-core/subquery.cjs.map +1 -1
  530. package/singlestore-core/subquery.d.cts +15 -2
  531. package/singlestore-core/subquery.d.ts +15 -2
  532. package/singlestore-core/table.cjs.map +1 -1
  533. package/singlestore-core/table.d.cts +12 -12
  534. package/singlestore-core/table.d.ts +12 -12
  535. package/singlestore-core/table.js.map +1 -1
  536. package/singlestore-proxy/driver.cjs +1 -1
  537. package/singlestore-proxy/driver.cjs.map +1 -1
  538. package/singlestore-proxy/driver.js +3 -3
  539. package/singlestore-proxy/driver.js.map +1 -1
  540. package/singlestore-proxy/session.cjs.map +1 -1
  541. package/singlestore-proxy/session.d.cts +4 -4
  542. package/singlestore-proxy/session.d.ts +4 -4
  543. package/singlestore-proxy/session.js.map +1 -1
  544. package/sql/sql.cjs +7 -2
  545. package/sql/sql.cjs.map +1 -1
  546. package/sql/sql.d.cts +9 -8
  547. package/sql/sql.d.ts +9 -8
  548. package/sql/sql.js +6 -2
  549. package/sql/sql.js.map +1 -1
  550. package/sql-js/driver.cjs +5 -16
  551. package/sql-js/driver.cjs.map +1 -1
  552. package/sql-js/driver.d.cts +2 -3
  553. package/sql-js/driver.d.ts +2 -3
  554. package/sql-js/driver.js +8 -6
  555. package/sql-js/driver.js.map +1 -1
  556. package/sql-js/migrator.cjs.map +1 -1
  557. package/sql-js/migrator.d.cts +1 -2
  558. package/sql-js/migrator.d.ts +1 -2
  559. package/sql-js/migrator.js.map +1 -1
  560. package/sql-js/session.cjs +36 -71
  561. package/sql-js/session.cjs.map +1 -1
  562. package/sql-js/session.d.cts +13 -16
  563. package/sql-js/session.d.ts +13 -16
  564. package/sql-js/session.js +36 -71
  565. package/sql-js/session.js.map +1 -1
  566. package/sqlite-core/db.cjs +31 -49
  567. package/sqlite-core/db.cjs.map +1 -1
  568. package/sqlite-core/db.d.cts +12 -23
  569. package/sqlite-core/db.d.ts +12 -23
  570. package/sqlite-core/db.js +30 -48
  571. package/sqlite-core/db.js.map +1 -1
  572. package/sqlite-core/dialect.cjs +8 -184
  573. package/sqlite-core/dialect.cjs.map +1 -1
  574. package/sqlite-core/dialect.d.cts +9 -28
  575. package/sqlite-core/dialect.d.ts +9 -28
  576. package/sqlite-core/dialect.js +14 -181
  577. package/sqlite-core/dialect.js.map +1 -1
  578. package/sqlite-core/query-builders/count.cjs.map +1 -1
  579. package/sqlite-core/query-builders/count.d.cts +1 -1
  580. package/sqlite-core/query-builders/count.d.ts +1 -1
  581. package/sqlite-core/query-builders/count.js.map +1 -1
  582. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  583. package/sqlite-core/query-builders/delete.d.cts +1 -1
  584. package/sqlite-core/query-builders/delete.d.ts +1 -1
  585. package/sqlite-core/query-builders/delete.js.map +1 -1
  586. package/sqlite-core/query-builders/insert.cjs +9 -3
  587. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  588. package/sqlite-core/query-builders/insert.d.cts +4 -4
  589. package/sqlite-core/query-builders/insert.d.ts +4 -4
  590. package/sqlite-core/query-builders/insert.js +9 -3
  591. package/sqlite-core/query-builders/insert.js.map +1 -1
  592. package/sqlite-core/query-builders/query-builder.cjs +15 -11
  593. package/sqlite-core/query-builders/query-builder.cjs.map +1 -1
  594. package/sqlite-core/query-builders/query-builder.d.cts +2 -6
  595. package/sqlite-core/query-builders/query-builder.d.ts +2 -6
  596. package/sqlite-core/query-builders/query-builder.js +15 -11
  597. package/sqlite-core/query-builders/query-builder.js.map +1 -1
  598. package/sqlite-core/query-builders/query.cjs +35 -56
  599. package/sqlite-core/query-builders/query.cjs.map +1 -1
  600. package/sqlite-core/query-builders/query.d.cts +17 -18
  601. package/sqlite-core/query-builders/query.d.ts +17 -18
  602. package/sqlite-core/query-builders/query.js +35 -56
  603. package/sqlite-core/query-builders/query.js.map +1 -1
  604. package/sqlite-core/query-builders/select.cjs.map +1 -1
  605. package/sqlite-core/query-builders/select.d.cts +3 -3
  606. package/sqlite-core/query-builders/select.d.ts +3 -3
  607. package/sqlite-core/query-builders/select.js.map +1 -1
  608. package/sqlite-core/query-builders/update.cjs.map +1 -1
  609. package/sqlite-core/query-builders/update.d.cts +3 -3
  610. package/sqlite-core/query-builders/update.d.ts +3 -3
  611. package/sqlite-core/query-builders/update.js.map +1 -1
  612. package/sqlite-core/session.cjs +2 -6
  613. package/sqlite-core/session.cjs.map +1 -1
  614. package/sqlite-core/session.d.cts +7 -15
  615. package/sqlite-core/session.d.ts +7 -15
  616. package/sqlite-core/session.js +2 -6
  617. package/sqlite-core/session.js.map +1 -1
  618. package/sqlite-core/subquery.cjs.map +1 -1
  619. package/sqlite-core/subquery.d.cts +15 -2
  620. package/sqlite-core/subquery.d.ts +15 -2
  621. package/sqlite-proxy/driver.cjs +5 -23
  622. package/sqlite-proxy/driver.cjs.map +1 -1
  623. package/sqlite-proxy/driver.d.cts +3 -4
  624. package/sqlite-proxy/driver.d.ts +3 -4
  625. package/sqlite-proxy/driver.js +5 -13
  626. package/sqlite-proxy/driver.js.map +1 -1
  627. package/sqlite-proxy/migrator.cjs.map +1 -1
  628. package/sqlite-proxy/migrator.d.cts +1 -2
  629. package/sqlite-proxy/migrator.d.ts +1 -2
  630. package/sqlite-proxy/migrator.js.map +1 -1
  631. package/sqlite-proxy/session.cjs +6 -50
  632. package/sqlite-proxy/session.cjs.map +1 -1
  633. package/sqlite-proxy/session.d.cts +8 -14
  634. package/sqlite-proxy/session.d.ts +8 -14
  635. package/sqlite-proxy/session.js +6 -50
  636. package/sqlite-proxy/session.js.map +1 -1
  637. package/subquery.cjs.map +1 -1
  638. package/subquery.d.cts +1 -0
  639. package/subquery.d.ts +1 -0
  640. package/subquery.js.map +1 -1
  641. package/table.cjs.map +1 -1
  642. package/table.d.cts +1 -1
  643. package/table.d.ts +1 -1
  644. package/table.js.map +1 -1
  645. package/tidb-serverless/driver.cjs +5 -22
  646. package/tidb-serverless/driver.cjs.map +1 -1
  647. package/tidb-serverless/driver.d.cts +6 -7
  648. package/tidb-serverless/driver.d.ts +6 -7
  649. package/tidb-serverless/driver.js +8 -12
  650. package/tidb-serverless/driver.js.map +1 -1
  651. package/tidb-serverless/migrator.cjs.map +1 -1
  652. package/tidb-serverless/migrator.d.cts +1 -2
  653. package/tidb-serverless/migrator.d.ts +1 -2
  654. package/tidb-serverless/migrator.js.map +1 -1
  655. package/tidb-serverless/session.cjs +5 -62
  656. package/tidb-serverless/session.cjs.map +1 -1
  657. package/tidb-serverless/session.d.cts +9 -14
  658. package/tidb-serverless/session.d.ts +9 -14
  659. package/tidb-serverless/session.js +5 -62
  660. package/tidb-serverless/session.js.map +1 -1
  661. package/utils.cjs +2 -2
  662. package/utils.cjs.map +1 -1
  663. package/utils.d.cts +1 -3
  664. package/utils.d.ts +1 -3
  665. package/utils.js +2 -2
  666. package/utils.js.map +1 -1
  667. package/vercel-postgres/driver.cjs +7 -23
  668. package/vercel-postgres/driver.cjs.map +1 -1
  669. package/vercel-postgres/driver.d.cts +8 -9
  670. package/vercel-postgres/driver.d.ts +8 -9
  671. package/vercel-postgres/driver.js +10 -13
  672. package/vercel-postgres/driver.js.map +1 -1
  673. package/vercel-postgres/migrator.cjs.map +1 -1
  674. package/vercel-postgres/migrator.d.cts +1 -2
  675. package/vercel-postgres/migrator.d.ts +1 -2
  676. package/vercel-postgres/migrator.js.map +1 -1
  677. package/vercel-postgres/session.cjs +8 -34
  678. package/vercel-postgres/session.cjs.map +1 -1
  679. package/vercel-postgres/session.d.cts +10 -14
  680. package/vercel-postgres/session.d.ts +10 -14
  681. package/vercel-postgres/session.js +8 -34
  682. package/vercel-postgres/session.js.map +1 -1
  683. package/version.cjs +1 -1
  684. package/version.d.cts +1 -1
  685. package/version.d.ts +1 -1
  686. package/version.js +1 -1
  687. package/xata-http/driver.cjs +5 -17
  688. package/xata-http/driver.cjs.map +1 -1
  689. package/xata-http/driver.d.cts +4 -5
  690. package/xata-http/driver.d.ts +4 -5
  691. package/xata-http/driver.js +5 -7
  692. package/xata-http/driver.js.map +1 -1
  693. package/xata-http/migrator.cjs.map +1 -1
  694. package/xata-http/migrator.d.cts +1 -2
  695. package/xata-http/migrator.d.ts +1 -2
  696. package/xata-http/migrator.js.map +1 -1
  697. package/xata-http/session.cjs +2 -30
  698. package/xata-http/session.cjs.map +1 -1
  699. package/xata-http/session.d.cts +8 -13
  700. package/xata-http/session.d.ts +8 -13
  701. package/xata-http/session.js +2 -30
  702. package/xata-http/session.js.map +1 -1
  703. package/_relations.cjs +0 -328
  704. package/_relations.cjs.map +0 -1
  705. package/_relations.d.cts +0 -215
  706. package/_relations.d.ts +0 -215
  707. package/_relations.js +0 -316
  708. package/_relations.js.map +0 -1
  709. package/mysql-core/query-builders/_query.cjs +0 -149
  710. package/mysql-core/query-builders/_query.cjs.map +0 -1
  711. package/mysql-core/query-builders/_query.d.cts +0 -44
  712. package/mysql-core/query-builders/_query.d.ts +0 -44
  713. package/mysql-core/query-builders/_query.js +0 -114
  714. package/mysql-core/query-builders/_query.js.map +0 -1
  715. package/pg-core/query-builders/_query.cjs +0 -155
  716. package/pg-core/query-builders/_query.cjs.map +0 -1
  717. package/pg-core/query-builders/_query.d.cts +0 -47
  718. package/pg-core/query-builders/_query.d.ts +0 -47
  719. package/pg-core/query-builders/_query.js +0 -120
  720. package/pg-core/query-builders/_query.js.map +0 -1
  721. package/sqlite-core/query-builders/_query.cjs +0 -187
  722. package/sqlite-core/query-builders/_query.cjs.map +0 -1
  723. package/sqlite-core/query-builders/_query.d.cts +0 -55
  724. package/sqlite-core/query-builders/_query.d.ts +0 -55
  725. package/sqlite-core/query-builders/_query.js +0 -151
  726. package/sqlite-core/query-builders/_query.js.map +0 -1
@@ -1,10 +1,9 @@
1
- import type * as V1 from "../_relations.cjs";
2
1
  import { entityKind } from "../entity.cjs";
3
- import { QueryPromise } from "../query-promise.cjs";
4
- import type { AnyRelations, EmptyRelations, ExtractTablesWithRelations, TablesRelationalConfig } from "../relations.cjs";
2
+ import type { TablesRelationalConfig } from "../relations.cjs";
5
3
  import type { PreparedQuery } from "../session.cjs";
6
4
  import type { Query, SQL } from "../sql/sql.cjs";
7
5
  import type { SQLiteAsyncDialect, SQLiteSyncDialect } from "./dialect.cjs";
6
+ import { QueryPromise } from "../query-promise.cjs";
8
7
  import { BaseSQLiteDatabase } from "./db.cjs";
9
8
  import type { SQLiteRaw } from "./query-builders/raw.cjs";
10
9
  import type { SelectedFieldsOrdered } from "./query-builders/select.types.cjs";
@@ -45,7 +44,7 @@ export interface SQLiteTransactionConfig {
45
44
  behavior?: 'deferred' | 'immediate' | 'exclusive';
46
45
  }
47
46
  export type SQLiteExecuteMethod = 'run' | 'all' | 'get';
48
- export declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TTablesConfig extends TablesRelationalConfig = ExtractTablesWithRelations<TRelations>, TSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>> {
47
+ export declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> {
49
48
  static readonly [entityKind]: string;
50
49
  constructor(
51
50
  /** @internal */
@@ -59,13 +58,7 @@ export declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async'
59
58
  prepareOneTimeQuery(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean): SQLitePreparedQuery<PreparedQueryConfig & {
60
59
  type: TResultKind;
61
60
  }>;
62
- abstract prepareRelationalQuery(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, customResultMapper: (rows: Record<string, unknown>[], mapColumnValue?: (value: unknown) => unknown) => unknown): SQLitePreparedQuery<PreparedQueryConfig & {
63
- type: TResultKind;
64
- }>;
65
- prepareOneTimeRelationalQuery(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, customResultMapper: (rows: Record<string, unknown>[], mapColumnValue?: (value: unknown) => unknown) => unknown): SQLitePreparedQuery<PreparedQueryConfig & {
66
- type: TResultKind;
67
- }>;
68
- abstract transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema>) => Result<TResultKind, T>, config?: SQLiteTransactionConfig): Result<TResultKind, T>;
61
+ abstract transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TSchema>) => Result<TResultKind, T>, config?: SQLiteTransactionConfig): Result<TResultKind, T>;
69
62
  run(query: SQL): Result<TResultKind, TRunResult>;
70
63
  all<T = unknown>(query: SQL): Result<TResultKind, T[]>;
71
64
  get<T = unknown>(query: SQL): Result<TResultKind, T>;
@@ -80,8 +73,7 @@ export type DBResult<TKind extends 'sync' | 'async', TResult> = {
80
73
  sync: TResult;
81
74
  async: SQLiteRaw<TResult>;
82
75
  }[TKind];
83
- export declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TTablesConfig extends TablesRelationalConfig = ExtractTablesWithRelations<TRelations>, TSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>> extends BaseSQLiteDatabase<TResultType, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema> {
84
- protected relations: AnyRelations | undefined;
76
+ export declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends BaseSQLiteDatabase<TResultType, TRunResult, TFullSchema, TSchema> {
85
77
  protected schema: {
86
78
  fullSchema: Record<string, unknown>;
87
79
  schema: TSchema;
@@ -92,10 +84,10 @@ export declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'as
92
84
  constructor(resultType: TResultType, dialect: {
93
85
  sync: SQLiteSyncDialect;
94
86
  async: SQLiteAsyncDialect;
95
- }[TResultType], session: SQLiteSession<TResultType, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema>, relations: AnyRelations | undefined, schema: {
87
+ }[TResultType], session: SQLiteSession<TResultType, TRunResult, TFullSchema, TSchema>, schema: {
96
88
  fullSchema: Record<string, unknown>;
97
89
  schema: TSchema;
98
90
  tableNamesMap: Record<string, string>;
99
- } | undefined, nestedIndex?: number, rowModeRQB?: boolean);
91
+ } | undefined, nestedIndex?: number);
100
92
  rollback(): never;
101
93
  }
@@ -1,10 +1,9 @@
1
- import type * as V1 from "../_relations.js";
2
1
  import { entityKind } from "../entity.js";
3
- import { QueryPromise } from "../query-promise.js";
4
- import type { AnyRelations, EmptyRelations, ExtractTablesWithRelations, TablesRelationalConfig } from "../relations.js";
2
+ import type { TablesRelationalConfig } from "../relations.js";
5
3
  import type { PreparedQuery } from "../session.js";
6
4
  import type { Query, SQL } from "../sql/sql.js";
7
5
  import type { SQLiteAsyncDialect, SQLiteSyncDialect } from "./dialect.js";
6
+ import { QueryPromise } from "../query-promise.js";
8
7
  import { BaseSQLiteDatabase } from "./db.js";
9
8
  import type { SQLiteRaw } from "./query-builders/raw.js";
10
9
  import type { SelectedFieldsOrdered } from "./query-builders/select.types.js";
@@ -45,7 +44,7 @@ export interface SQLiteTransactionConfig {
45
44
  behavior?: 'deferred' | 'immediate' | 'exclusive';
46
45
  }
47
46
  export type SQLiteExecuteMethod = 'run' | 'all' | 'get';
48
- export declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TTablesConfig extends TablesRelationalConfig = ExtractTablesWithRelations<TRelations>, TSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>> {
47
+ export declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> {
49
48
  static readonly [entityKind]: string;
50
49
  constructor(
51
50
  /** @internal */
@@ -59,13 +58,7 @@ export declare abstract class SQLiteSession<TResultKind extends 'sync' | 'async'
59
58
  prepareOneTimeQuery(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, isResponseInArrayMode: boolean): SQLitePreparedQuery<PreparedQueryConfig & {
60
59
  type: TResultKind;
61
60
  }>;
62
- abstract prepareRelationalQuery(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, customResultMapper: (rows: Record<string, unknown>[], mapColumnValue?: (value: unknown) => unknown) => unknown): SQLitePreparedQuery<PreparedQueryConfig & {
63
- type: TResultKind;
64
- }>;
65
- prepareOneTimeRelationalQuery(query: Query, fields: SelectedFieldsOrdered | undefined, executeMethod: SQLiteExecuteMethod, customResultMapper: (rows: Record<string, unknown>[], mapColumnValue?: (value: unknown) => unknown) => unknown): SQLitePreparedQuery<PreparedQueryConfig & {
66
- type: TResultKind;
67
- }>;
68
- abstract transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema>) => Result<TResultKind, T>, config?: SQLiteTransactionConfig): Result<TResultKind, T>;
61
+ abstract transaction<T>(transaction: (tx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TSchema>) => Result<TResultKind, T>, config?: SQLiteTransactionConfig): Result<TResultKind, T>;
69
62
  run(query: SQL): Result<TResultKind, TRunResult>;
70
63
  all<T = unknown>(query: SQL): Result<TResultKind, T[]>;
71
64
  get<T = unknown>(query: SQL): Result<TResultKind, T>;
@@ -80,8 +73,7 @@ export type DBResult<TKind extends 'sync' | 'async', TResult> = {
80
73
  sync: TResult;
81
74
  async: SQLiteRaw<TResult>;
82
75
  }[TKind];
83
- export declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TTablesConfig extends TablesRelationalConfig = ExtractTablesWithRelations<TRelations>, TSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>> extends BaseSQLiteDatabase<TResultType, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema> {
84
- protected relations: AnyRelations | undefined;
76
+ export declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'async', TRunResult, TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends BaseSQLiteDatabase<TResultType, TRunResult, TFullSchema, TSchema> {
85
77
  protected schema: {
86
78
  fullSchema: Record<string, unknown>;
87
79
  schema: TSchema;
@@ -92,10 +84,10 @@ export declare abstract class SQLiteTransaction<TResultType extends 'sync' | 'as
92
84
  constructor(resultType: TResultType, dialect: {
93
85
  sync: SQLiteSyncDialect;
94
86
  async: SQLiteAsyncDialect;
95
- }[TResultType], session: SQLiteSession<TResultType, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema>, relations: AnyRelations | undefined, schema: {
87
+ }[TResultType], session: SQLiteSession<TResultType, TRunResult, TFullSchema, TSchema>, schema: {
96
88
  fullSchema: Record<string, unknown>;
97
89
  schema: TSchema;
98
90
  tableNamesMap: Record<string, string>;
99
- } | undefined, nestedIndex?: number, rowModeRQB?: boolean);
91
+ } | undefined, nestedIndex?: number);
100
92
  rollback(): never;
101
93
  }
@@ -64,9 +64,6 @@ class SQLiteSession {
64
64
  prepareOneTimeQuery(query, fields, executeMethod, isResponseInArrayMode) {
65
65
  return this.prepareQuery(query, fields, executeMethod, isResponseInArrayMode);
66
66
  }
67
- prepareOneTimeRelationalQuery(query, fields, executeMethod, customResultMapper) {
68
- return this.prepareRelationalQuery(query, fields, executeMethod, customResultMapper);
69
- }
70
67
  run(query) {
71
68
  const staticQuery = this.dialect.sqlToQuery(query);
72
69
  try {
@@ -106,9 +103,8 @@ class SQLiteSession {
106
103
  }
107
104
  }
108
105
  class SQLiteTransaction extends BaseSQLiteDatabase {
109
- constructor(resultType, dialect, session, relations, schema, nestedIndex = 0, rowModeRQB) {
110
- super(resultType, dialect, session, relations, schema, rowModeRQB);
111
- this.relations = relations;
106
+ constructor(resultType, dialect, session, schema, nestedIndex = 0) {
107
+ super(resultType, dialect, session, schema);
112
108
  this.schema = schema;
113
109
  this.nestedIndex = nestedIndex;
114
110
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sqlite-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DrizzleError, TransactionRollbackError } from '~/errors.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { AnyRelations, EmptyRelations, ExtractTablesWithRelations, TablesRelationalConfig } from '~/relations.ts';\nimport type { PreparedQuery } from '~/session.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport type { SQLiteAsyncDialect, SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { BaseSQLiteDatabase } from './db.ts';\nimport type { SQLiteRaw } from './query-builders/raw.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface PreparedQueryConfig {\n\ttype: 'sync' | 'async';\n\trun: unknown;\n\tall: unknown;\n\tget: unknown;\n\tvalues: unknown;\n\texecute: unknown;\n}\n\nexport class ExecuteResultSync<T> extends QueryPromise<T> {\n\tstatic override readonly [entityKind]: string = 'ExecuteResultSync';\n\n\tconstructor(private resultCb: () => T) {\n\t\tsuper();\n\t}\n\n\toverride async execute(): Promise<T> {\n\t\treturn this.resultCb();\n\t}\n\n\tsync(): T {\n\t\treturn this.resultCb();\n\t}\n}\n\nexport type ExecuteResult<TType extends 'sync' | 'async', TResult> = TType extends 'async' ? Promise<TResult>\n\t: ExecuteResultSync<TResult>;\n\nexport abstract class SQLitePreparedQuery<T extends PreparedQueryConfig> implements PreparedQuery {\n\tstatic readonly [entityKind]: string = 'PreparedQuery';\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\tconstructor(\n\t\tprivate mode: 'sync' | 'async',\n\t\tprivate executeMethod: SQLiteExecuteMethod,\n\t\tprotected query: Query,\n\t) {}\n\n\tgetQuery(): Query {\n\t\treturn this.query;\n\t}\n\n\tabstract run(placeholderValues?: Record<string, unknown>): Result<T['type'], T['run']>;\n\n\tmapRunResult(result: unknown, _isFromBatch?: boolean): unknown {\n\t\treturn result;\n\t}\n\n\tabstract all(placeholderValues?: Record<string, unknown>): Result<T['type'], T['all']>;\n\n\tmapAllResult(_result: unknown, _isFromBatch?: boolean): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tabstract get(placeholderValues?: Record<string, unknown>): Result<T['type'], T['get']>;\n\n\tmapGetResult(_result: unknown, _isFromBatch?: boolean): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tabstract values(placeholderValues?: Record<string, unknown>): Result<T['type'], T['values']>;\n\n\texecute(placeholderValues?: Record<string, unknown>): ExecuteResult<T['type'], T['execute']> {\n\t\tif (this.mode === 'async') {\n\t\t\treturn this[this.executeMethod](placeholderValues) as ExecuteResult<T['type'], T['execute']>;\n\t\t}\n\t\treturn new ExecuteResultSync(() => this[this.executeMethod](placeholderValues));\n\t}\n\n\tmapResult(response: unknown, isFromBatch?: boolean) {\n\t\tswitch (this.executeMethod) {\n\t\t\tcase 'run': {\n\t\t\t\treturn this.mapRunResult(response, isFromBatch);\n\t\t\t}\n\t\t\tcase 'all': {\n\t\t\t\treturn this.mapAllResult(response, isFromBatch);\n\t\t\t}\n\t\t\tcase 'get': {\n\t\t\t\treturn this.mapGetResult(response, isFromBatch);\n\t\t\t}\n\t\t}\n\t}\n\n\t/** @internal */\n\tabstract isResponseInArrayMode(): boolean;\n}\n\nexport interface SQLiteTransactionConfig {\n\tbehavior?: 'deferred' | 'immediate' | 'exclusive';\n}\n\nexport type SQLiteExecuteMethod = 'run' | 'all' | 'get';\n\nexport abstract class SQLiteSession<\n\tTResultKind extends 'sync' | 'async',\n\tTRunResult,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTTablesConfig extends TablesRelationalConfig = ExtractTablesWithRelations<TRelations>,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> {\n\tstatic readonly [entityKind]: string = 'SQLiteSession';\n\n\tconstructor(\n\t\t/** @internal */\n\t\treadonly dialect: { sync: SQLiteSyncDialect; async: SQLiteAsyncDialect }[TResultKind],\n\t) {}\n\n\tabstract prepareQuery(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => unknown,\n\t): SQLitePreparedQuery<PreparedQueryConfig & { type: TResultKind }>;\n\n\tprepareOneTimeQuery(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t): SQLitePreparedQuery<PreparedQueryConfig & { type: TResultKind }> {\n\t\treturn this.prepareQuery(query, fields, executeMethod, isResponseInArrayMode);\n\t}\n\n\tabstract prepareRelationalQuery(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[], mapColumnValue?: (value: unknown) => unknown) => unknown,\n\t): SQLitePreparedQuery<PreparedQueryConfig & { type: TResultKind }>;\n\n\tprepareOneTimeRelationalQuery(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[], mapColumnValue?: (value: unknown) => unknown) => unknown,\n\t): SQLitePreparedQuery<PreparedQueryConfig & { type: TResultKind }> {\n\t\treturn this.prepareRelationalQuery(query, fields, executeMethod, customResultMapper);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema>,\n\t\t) => Result<TResultKind, T>,\n\t\tconfig?: SQLiteTransactionConfig,\n\t): Result<TResultKind, T>;\n\n\trun(query: SQL): Result<TResultKind, TRunResult> {\n\t\tconst staticQuery = this.dialect.sqlToQuery(query);\n\t\ttry {\n\t\t\treturn this.prepareOneTimeQuery(staticQuery, undefined, 'run', false).run() as Result<TResultKind, TRunResult>;\n\t\t} catch (err) {\n\t\t\tthrow new DrizzleError({ cause: err, message: `Failed to run the query '${staticQuery.sql}'` });\n\t\t}\n\t}\n\n\t/** @internal */\n\textractRawRunValueFromBatchResult(result: unknown) {\n\t\treturn result;\n\t}\n\n\tall<T = unknown>(query: SQL): Result<TResultKind, T[]> {\n\t\treturn this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).all() as Result<\n\t\t\tTResultKind,\n\t\t\tT[]\n\t\t>;\n\t}\n\n\t/** @internal */\n\textractRawAllValueFromBatchResult(_result: unknown): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tget<T = unknown>(query: SQL): Result<TResultKind, T> {\n\t\treturn this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).get() as Result<\n\t\t\tTResultKind,\n\t\t\tT\n\t\t>;\n\t}\n\n\t/** @internal */\n\textractRawGetValueFromBatchResult(_result: unknown): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tvalues<T extends any[] = unknown[]>(\n\t\tquery: SQL,\n\t): Result<TResultKind, T[]> {\n\t\treturn this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).values() as Result<\n\t\t\tTResultKind,\n\t\t\tT[]\n\t\t>;\n\t}\n\n\tasync count(sql: SQL) {\n\t\tconst result = await this.values(sql) as [[number]];\n\n\t\treturn result[0][0];\n\t}\n\n\t/** @internal */\n\textractRawValuesValueFromBatchResult(_result: unknown): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n}\n\nexport type Result<TKind extends 'sync' | 'async', TResult> = { sync: TResult; async: Promise<TResult> }[TKind];\n\nexport type DBResult<TKind extends 'sync' | 'async', TResult> = { sync: TResult; async: SQLiteRaw<TResult> }[TKind];\n\nexport abstract class SQLiteTransaction<\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTTablesConfig extends TablesRelationalConfig = ExtractTablesWithRelations<TRelations>,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> extends BaseSQLiteDatabase<TResultType, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTransaction';\n\n\tconstructor(\n\t\tresultType: TResultType,\n\t\tdialect: { sync: SQLiteSyncDialect; async: SQLiteAsyncDialect }[TResultType],\n\t\tsession: SQLiteSession<TResultType, TRunResult, TFullSchema, TRelations, TTablesConfig, TSchema>,\n\t\tprotected relations: AnyRelations | undefined,\n\t\tprotected schema: {\n\t\t\tfullSchema: Record<string, unknown>;\n\t\t\tschema: TSchema;\n\t\t\ttableNamesMap: Record<string, string>;\n\t\t} | undefined,\n\t\tprotected readonly nestedIndex = 0,\n\t\trowModeRQB?: boolean,\n\t) {\n\t\tsuper(resultType, dialect, session, relations, schema, rowModeRQB);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/sqlite-core/session.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { DrizzleError, TransactionRollbackError } from '~/errors.ts';\nimport type { TablesRelationalConfig } from '~/relations.ts';\nimport type { PreparedQuery } from '~/session.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport type { SQLiteAsyncDialect, SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\n// import { QueryPromise } from '../index.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport { BaseSQLiteDatabase } from './db.ts';\nimport type { SQLiteRaw } from './query-builders/raw.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface PreparedQueryConfig {\n\ttype: 'sync' | 'async';\n\trun: unknown;\n\tall: unknown;\n\tget: unknown;\n\tvalues: unknown;\n\texecute: unknown;\n}\n\nexport class ExecuteResultSync<T> extends QueryPromise<T> {\n\tstatic override readonly [entityKind]: string = 'ExecuteResultSync';\n\n\tconstructor(private resultCb: () => T) {\n\t\tsuper();\n\t}\n\n\toverride async execute(): Promise<T> {\n\t\treturn this.resultCb();\n\t}\n\n\tsync(): T {\n\t\treturn this.resultCb();\n\t}\n}\n\nexport type ExecuteResult<TType extends 'sync' | 'async', TResult> = TType extends 'async' ? Promise<TResult>\n\t: ExecuteResultSync<TResult>;\n\nexport abstract class SQLitePreparedQuery<T extends PreparedQueryConfig> implements PreparedQuery {\n\tstatic readonly [entityKind]: string = 'PreparedQuery';\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\tconstructor(\n\t\tprivate mode: 'sync' | 'async',\n\t\tprivate executeMethod: SQLiteExecuteMethod,\n\t\tprotected query: Query,\n\t) {}\n\n\tgetQuery(): Query {\n\t\treturn this.query;\n\t}\n\n\tabstract run(placeholderValues?: Record<string, unknown>): Result<T['type'], T['run']>;\n\n\tmapRunResult(result: unknown, _isFromBatch?: boolean): unknown {\n\t\treturn result;\n\t}\n\n\tabstract all(placeholderValues?: Record<string, unknown>): Result<T['type'], T['all']>;\n\n\tmapAllResult(_result: unknown, _isFromBatch?: boolean): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tabstract get(placeholderValues?: Record<string, unknown>): Result<T['type'], T['get']>;\n\n\tmapGetResult(_result: unknown, _isFromBatch?: boolean): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tabstract values(placeholderValues?: Record<string, unknown>): Result<T['type'], T['values']>;\n\n\texecute(placeholderValues?: Record<string, unknown>): ExecuteResult<T['type'], T['execute']> {\n\t\tif (this.mode === 'async') {\n\t\t\treturn this[this.executeMethod](placeholderValues) as ExecuteResult<T['type'], T['execute']>;\n\t\t}\n\t\treturn new ExecuteResultSync(() => this[this.executeMethod](placeholderValues));\n\t}\n\n\tmapResult(response: unknown, isFromBatch?: boolean) {\n\t\tswitch (this.executeMethod) {\n\t\t\tcase 'run': {\n\t\t\t\treturn this.mapRunResult(response, isFromBatch);\n\t\t\t}\n\t\t\tcase 'all': {\n\t\t\t\treturn this.mapAllResult(response, isFromBatch);\n\t\t\t}\n\t\t\tcase 'get': {\n\t\t\t\treturn this.mapGetResult(response, isFromBatch);\n\t\t\t}\n\t\t}\n\t}\n\n\t/** @internal */\n\tabstract isResponseInArrayMode(): boolean;\n}\n\nexport interface SQLiteTransactionConfig {\n\tbehavior?: 'deferred' | 'immediate' | 'exclusive';\n}\n\nexport type SQLiteExecuteMethod = 'run' | 'all' | 'get';\n\nexport abstract class SQLiteSession<\n\tTResultKind extends 'sync' | 'async',\n\tTRunResult,\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'SQLiteSession';\n\n\tconstructor(\n\t\t/** @internal */\n\t\treadonly dialect: { sync: SQLiteSyncDialect; async: SQLiteAsyncDialect }[TResultKind],\n\t) {}\n\n\tabstract prepareQuery(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => unknown,\n\t): SQLitePreparedQuery<PreparedQueryConfig & { type: TResultKind }>;\n\n\tprepareOneTimeQuery(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t): SQLitePreparedQuery<PreparedQueryConfig & { type: TResultKind }> {\n\t\treturn this.prepareQuery(query, fields, executeMethod, isResponseInArrayMode);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (tx: SQLiteTransaction<TResultKind, TRunResult, TFullSchema, TSchema>) => Result<TResultKind, T>,\n\t\tconfig?: SQLiteTransactionConfig,\n\t): Result<TResultKind, T>;\n\n\trun(query: SQL): Result<TResultKind, TRunResult> {\n\t\tconst staticQuery = this.dialect.sqlToQuery(query);\n\t\ttry {\n\t\t\treturn this.prepareOneTimeQuery(staticQuery, undefined, 'run', false).run() as Result<TResultKind, TRunResult>;\n\t\t} catch (err) {\n\t\t\tthrow new DrizzleError({ cause: err, message: `Failed to run the query '${staticQuery.sql}'` });\n\t\t}\n\t}\n\n\t/** @internal */\n\textractRawRunValueFromBatchResult(result: unknown) {\n\t\treturn result;\n\t}\n\n\tall<T = unknown>(query: SQL): Result<TResultKind, T[]> {\n\t\treturn this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).all() as Result<\n\t\t\tTResultKind,\n\t\t\tT[]\n\t\t>;\n\t}\n\n\t/** @internal */\n\textractRawAllValueFromBatchResult(_result: unknown): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tget<T = unknown>(query: SQL): Result<TResultKind, T> {\n\t\treturn this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).get() as Result<\n\t\t\tTResultKind,\n\t\t\tT\n\t\t>;\n\t}\n\n\t/** @internal */\n\textractRawGetValueFromBatchResult(_result: unknown): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n\n\tvalues<T extends any[] = unknown[]>(\n\t\tquery: SQL,\n\t): Result<TResultKind, T[]> {\n\t\treturn this.prepareOneTimeQuery(this.dialect.sqlToQuery(query), undefined, 'run', false).values() as Result<\n\t\t\tTResultKind,\n\t\t\tT[]\n\t\t>;\n\t}\n\n\tasync count(sql: SQL) {\n\t\tconst result = await this.values(sql) as [[number]];\n\n\t\treturn result[0][0];\n\t}\n\n\t/** @internal */\n\textractRawValuesValueFromBatchResult(_result: unknown): unknown {\n\t\tthrow new Error('Not implemented');\n\t}\n}\n\nexport type Result<TKind extends 'sync' | 'async', TResult> = { sync: TResult; async: Promise<TResult> }[TKind];\n\nexport type DBResult<TKind extends 'sync' | 'async', TResult> = { sync: TResult; async: SQLiteRaw<TResult> }[TKind];\n\nexport abstract class SQLiteTransaction<\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends BaseSQLiteDatabase<TResultType, TRunResult, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTransaction';\n\n\tconstructor(\n\t\tresultType: TResultType,\n\t\tdialect: { sync: SQLiteSyncDialect; async: SQLiteAsyncDialect }[TResultType],\n\t\tsession: SQLiteSession<TResultType, TRunResult, TFullSchema, TSchema>,\n\t\tprotected schema: {\n\t\t\tfullSchema: Record<string, unknown>;\n\t\t\tschema: TSchema;\n\t\t\ttableNamesMap: Record<string, string>;\n\t\t} | undefined,\n\t\tprotected readonly nestedIndex = 0,\n\t) {\n\t\tsuper(resultType, dialect, session, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sqlite-core/subquery.ts"],"sourcesContent":["import type { AddAliasToSelection } from '~/query-builders/select.types.ts';\nimport type { ColumnsSelection } from '~/sql/sql.ts';\nimport type { Subquery, WithSubquery } from '~/subquery.ts';\n\nexport type SubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> =\n\t& Subquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>>\n\t& AddAliasToSelection<TSelection, TAlias, 'sqlite'>;\n\nexport type WithSubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> =\n\t& WithSubquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>>\n\t& AddAliasToSelection<TSelection, TAlias, 'sqlite'>;\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../src/sqlite-core/subquery.ts"],"sourcesContent":["import type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { AddAliasToSelection } from '~/query-builders/select.types.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery, WithSubquery, WithSubqueryWithoutSelection } from '~/subquery.ts';\nimport type { QueryBuilder } from './query-builders/query-builder.ts';\n\nexport type SubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> =\n\t& Subquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>>\n\t& AddAliasToSelection<TSelection, TAlias, 'sqlite'>;\n\nexport type WithSubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> =\n\t& WithSubquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>>\n\t& AddAliasToSelection<TSelection, TAlias, 'sqlite'>;\n\nexport interface WithBuilder {\n\t<TAlias extends string>(alias: TAlias): {\n\t\tas: {\n\t\t\t<TSelection extends ColumnsSelection>(\n\t\t\t\tqb: TypedQueryBuilder<TSelection> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelection>),\n\t\t\t): WithSubqueryWithSelection<TSelection, TAlias>;\n\t\t\t(\n\t\t\t\tqb: TypedQueryBuilder<undefined> | ((qb: QueryBuilder) => TypedQueryBuilder<undefined>),\n\t\t\t): WithSubqueryWithoutSelection<TAlias>;\n\t\t};\n\t};\n\t<TAlias extends string, TSelection extends ColumnsSelection>(alias: TAlias, selection: TSelection): {\n\t\tas: (qb: SQL | ((qb: QueryBuilder) => SQL)) => WithSubqueryWithSelection<TSelection, TAlias>;\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -1,5 +1,18 @@
1
+ import type { TypedQueryBuilder } from "../query-builders/query-builder.cjs";
1
2
  import type { AddAliasToSelection } from "../query-builders/select.types.cjs";
2
- import type { ColumnsSelection } from "../sql/sql.cjs";
3
- import type { Subquery, WithSubquery } from "../subquery.cjs";
3
+ import type { ColumnsSelection, SQL } from "../sql/sql.cjs";
4
+ import type { Subquery, WithSubquery, WithSubqueryWithoutSelection } from "../subquery.cjs";
5
+ import type { QueryBuilder } from "./query-builders/query-builder.cjs";
4
6
  export type SubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = Subquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>> & AddAliasToSelection<TSelection, TAlias, 'sqlite'>;
5
7
  export type WithSubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = WithSubquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>> & AddAliasToSelection<TSelection, TAlias, 'sqlite'>;
8
+ export interface WithBuilder {
9
+ <TAlias extends string>(alias: TAlias): {
10
+ as: {
11
+ <TSelection extends ColumnsSelection>(qb: TypedQueryBuilder<TSelection> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelection>)): WithSubqueryWithSelection<TSelection, TAlias>;
12
+ (qb: TypedQueryBuilder<undefined> | ((qb: QueryBuilder) => TypedQueryBuilder<undefined>)): WithSubqueryWithoutSelection<TAlias>;
13
+ };
14
+ };
15
+ <TAlias extends string, TSelection extends ColumnsSelection>(alias: TAlias, selection: TSelection): {
16
+ as: (qb: SQL | ((qb: QueryBuilder) => SQL)) => WithSubqueryWithSelection<TSelection, TAlias>;
17
+ };
18
+ }
@@ -1,5 +1,18 @@
1
+ import type { TypedQueryBuilder } from "../query-builders/query-builder.js";
1
2
  import type { AddAliasToSelection } from "../query-builders/select.types.js";
2
- import type { ColumnsSelection } from "../sql/sql.js";
3
- import type { Subquery, WithSubquery } from "../subquery.js";
3
+ import type { ColumnsSelection, SQL } from "../sql/sql.js";
4
+ import type { Subquery, WithSubquery, WithSubqueryWithoutSelection } from "../subquery.js";
5
+ import type { QueryBuilder } from "./query-builders/query-builder.js";
4
6
  export type SubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = Subquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>> & AddAliasToSelection<TSelection, TAlias, 'sqlite'>;
5
7
  export type WithSubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = WithSubquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'sqlite'>> & AddAliasToSelection<TSelection, TAlias, 'sqlite'>;
8
+ export interface WithBuilder {
9
+ <TAlias extends string>(alias: TAlias): {
10
+ as: {
11
+ <TSelection extends ColumnsSelection>(qb: TypedQueryBuilder<TSelection> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelection>)): WithSubqueryWithSelection<TSelection, TAlias>;
12
+ (qb: TypedQueryBuilder<undefined> | ((qb: QueryBuilder) => TypedQueryBuilder<undefined>)): WithSubqueryWithoutSelection<TAlias>;
13
+ };
14
+ };
15
+ <TAlias extends string, TSelection extends ColumnsSelection>(alias: TAlias, selection: TSelection): {
16
+ as: (qb: SQL | ((qb: QueryBuilder) => SQL)) => WithSubqueryWithSelection<TSelection, TAlias>;
17
+ };
18
+ }
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,14 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
19
  var driver_exports = {};
30
20
  __export(driver_exports, {
@@ -32,9 +22,9 @@ __export(driver_exports, {
32
22
  drizzle: () => drizzle
33
23
  });
34
24
  module.exports = __toCommonJS(driver_exports);
35
- var V1 = __toESM(require("../_relations.cjs"), 1);
36
25
  var import_entity = require("../entity.cjs");
37
26
  var import_logger = require("../logger.cjs");
27
+ var import_relations = require("../relations.cjs");
38
28
  var import_db = require("../sqlite-core/db.cjs");
39
29
  var import_dialect = require("../sqlite-core/dialect.cjs");
40
30
  var import_session = require("./session.cjs");
@@ -65,9 +55,9 @@ function drizzle(callback, batchCallback, config) {
65
55
  }
66
56
  let schema;
67
57
  if (_config.schema) {
68
- const tablesConfig = V1.extractTablesRelationalConfig(
58
+ const tablesConfig = (0, import_relations.extractTablesRelationalConfig)(
69
59
  _config.schema,
70
- V1.createTableRelationsHelpers
60
+ import_relations.createTableRelationsHelpers
71
61
  );
72
62
  schema = {
73
63
  fullSchema: _config.schema,
@@ -75,16 +65,8 @@ function drizzle(callback, batchCallback, config) {
75
65
  tableNamesMap: tablesConfig.tableNamesMap
76
66
  };
77
67
  }
78
- const relations = _config.relations;
79
- const session = new import_session.SQLiteRemoteSession(callback, dialect, relations, schema, _batchCallback, { logger });
80
- return new SqliteRemoteDatabase(
81
- "async",
82
- dialect,
83
- session,
84
- relations,
85
- schema,
86
- true
87
- );
68
+ const session = new import_session.SQLiteRemoteSession(callback, dialect, schema, _batchCallback, { logger });
69
+ return new SqliteRemoteDatabase("async", dialect, session, schema);
88
70
  }
89
71
  // Annotate the CommonJS export names for ESM import in node:
90
72
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sqlite-proxy/driver.ts"],"sourcesContent":["import * as V1 from '~/_relations.ts';\nimport type { BatchItem, BatchResponse } from '~/batch.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations, ExtractTablesWithRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { SQLiteRemoteSession } from './session.ts';\n\nexport interface SqliteRemoteResult<T = unknown> {\n\trows?: T[];\n}\n\nexport class SqliteRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SqliteRemoteDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: SQLiteRemoteSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tExtractTablesWithRelations<TRelations>,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n\n\tasync batch<U extends BatchItem<'sqlite'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nexport type AsyncRemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'run' | 'all' | 'values' | 'get',\n) => Promise<{ rows: any[] }>;\n\nexport type AsyncBatchRemoteCallback = (batch: {\n\tsql: string;\n\tparams: any[];\n\tmethod: 'run' | 'all' | 'values' | 'get';\n}[]) => Promise<{ rows: any[] }[]>;\n\nexport type RemoteCallback = AsyncRemoteCallback;\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tconfig?: DrizzleConfig<TSchema, TRelations>,\n): SqliteRemoteDatabase<TSchema, TRelations>;\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback,\n\tconfig?: DrizzleConfig<TSchema, TRelations>,\n): SqliteRemoteDatabase<TSchema, TRelations>;\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback | DrizzleConfig<TSchema, TRelations>,\n\tconfig?: DrizzleConfig<TSchema, TRelations>,\n): SqliteRemoteDatabase<TSchema, TRelations> {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config?.casing });\n\tlet logger;\n\tlet _batchCallback: AsyncBatchRemoteCallback | undefined;\n\tlet _config: DrizzleConfig<TSchema, TRelations> = {};\n\n\tif (batchCallback) {\n\t\tif (typeof batchCallback === 'function') {\n\t\t\t_batchCallback = batchCallback as AsyncBatchRemoteCallback;\n\t\t\t_config = config ?? {};\n\t\t} else {\n\t\t\t_batchCallback = undefined;\n\t\t\t_config = batchCallback as DrizzleConfig<TSchema, TRelations>;\n\t\t}\n\n\t\tif (_config.logger === true) {\n\t\t\tlogger = new DefaultLogger();\n\t\t} else if (_config.logger !== false) {\n\t\t\tlogger = _config.logger;\n\t\t}\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (_config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\t_config.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: _config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = _config.relations;\n\tconst session = new SQLiteRemoteSession(callback, dialect, relations, schema, _batchCallback, { logger });\n\treturn new SqliteRemoteDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as SqliteRemoteDatabase<TSchema, TRelations>['session'],\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t\ttrue,\n\t) as SqliteRemoteDatabase<\n\t\tTSchema,\n\t\tTRelations\n\t>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAAoB;AAEpB,oBAA2B;AAC3B,oBAA8B;AAE9B,gBAAmC;AACnC,qBAAmC;AAEnC,qBAAoC;AAM7B,MAAM,6BAGH,6BAAqE;AAAA,EAC9E,QAA0B,wBAAU,IAAY;AAAA,EAUhD,MAAM,MACL,OAC4B;AAC5B,WAAO,KAAK,QAAQ,MAAM,KAAK;AAAA,EAChC;AACD;AA+BO,SAAS,QAIf,UACA,eACA,QAC4C;AAC5C,QAAM,UAAU,IAAI,kCAAmB,EAAE,QAAQ,QAAQ,OAAO,CAAC;AACjE,MAAI;AACJ,MAAI;AACJ,MAAI,UAA8C,CAAC;AAEnD,MAAI,eAAe;AAClB,QAAI,OAAO,kBAAkB,YAAY;AACxC,uBAAiB;AACjB,gBAAU,UAAU,CAAC;AAAA,IACtB,OAAO;AACN,uBAAiB;AACjB,gBAAU;AAAA,IACX;AAEA,QAAI,QAAQ,WAAW,MAAM;AAC5B,eAAS,IAAI,4BAAc;AAAA,IAC5B,WAAW,QAAQ,WAAW,OAAO;AACpC,eAAS,QAAQ;AAAA,IAClB;AAAA,EACD;AAEA,MAAI;AACJ,MAAI,QAAQ,QAAQ;AACnB,UAAM,eAAe,GAAG;AAAA,MACvB,QAAQ;AAAA,MACR,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,QAAQ;AAAA,MACpB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,QAAQ;AAC1B,QAAM,UAAU,IAAI,mCAAoB,UAAU,SAAS,WAAW,QAAQ,gBAAgB,EAAE,OAAO,CAAC;AACxG,SAAO,IAAI;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAID;","names":[]}
1
+ {"version":3,"sources":["../../src/sqlite-proxy/driver.ts"],"sourcesContent":["import type { BatchItem, BatchResponse } from '~/batch.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { createTableRelationsHelpers, extractTablesRelationalConfig } from '~/relations.ts';\nimport type { ExtractTablesWithRelations, RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { SQLiteRemoteSession } from './session.ts';\n\nexport interface SqliteRemoteResult<T = unknown> {\n\trows?: T[];\n}\n\nexport class SqliteRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SqliteRemoteDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: SQLiteRemoteSession<TSchema, ExtractTablesWithRelations<TSchema>>;\n\n\tasync batch<U extends BatchItem<'sqlite'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nexport type AsyncRemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'run' | 'all' | 'values' | 'get',\n) => Promise<{ rows: any[] }>;\n\nexport type AsyncBatchRemoteCallback = (batch: {\n\tsql: string;\n\tparams: any[];\n\tmethod: 'run' | 'all' | 'values' | 'get';\n}[]) => Promise<{ rows: any[] }[]>;\n\nexport type RemoteCallback = AsyncRemoteCallback;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig?: DrizzleConfig<TSchema>,\n): SqliteRemoteDatabase<TSchema>;\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback,\n\tconfig?: DrizzleConfig<TSchema>,\n): SqliteRemoteDatabase<TSchema>;\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback | DrizzleConfig<TSchema>,\n\tconfig?: DrizzleConfig<TSchema>,\n): SqliteRemoteDatabase<TSchema> {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config?.casing });\n\tlet logger;\n\tlet _batchCallback: AsyncBatchRemoteCallback | undefined;\n\tlet _config: DrizzleConfig<TSchema> = {};\n\n\tif (batchCallback) {\n\t\tif (typeof batchCallback === 'function') {\n\t\t\t_batchCallback = batchCallback as AsyncBatchRemoteCallback;\n\t\t\t_config = config ?? {};\n\t\t} else {\n\t\t\t_batchCallback = undefined;\n\t\t\t_config = batchCallback as DrizzleConfig<TSchema>;\n\t\t}\n\n\t\tif (_config.logger === true) {\n\t\t\tlogger = new DefaultLogger();\n\t\t} else if (_config.logger !== false) {\n\t\t\tlogger = _config.logger;\n\t\t}\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (_config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\t_config.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: _config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new SQLiteRemoteSession(callback, dialect, schema, _batchCallback, { logger });\n\treturn new SqliteRemoteDatabase('async', dialect, session, schema) as SqliteRemoteDatabase<TSchema>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAC3B,oBAA8B;AAC9B,uBAA2E;AAE3E,gBAAmC;AACnC,qBAAmC;AAEnC,qBAAoC;AAM7B,MAAM,6BAEH,6BAAyD;AAAA,EAClE,QAA0B,wBAAU,IAAY;AAAA,EAKhD,MAAM,MACL,OAC4B;AAC5B,WAAO,KAAK,QAAQ,MAAM,KAAK;AAAA,EAChC;AACD;AAyBO,SAAS,QACf,UACA,eACA,QACgC;AAChC,QAAM,UAAU,IAAI,kCAAmB,EAAE,QAAQ,QAAQ,OAAO,CAAC;AACjE,MAAI;AACJ,MAAI;AACJ,MAAI,UAAkC,CAAC;AAEvC,MAAI,eAAe;AAClB,QAAI,OAAO,kBAAkB,YAAY;AACxC,uBAAiB;AACjB,gBAAU,UAAU,CAAC;AAAA,IACtB,OAAO;AACN,uBAAiB;AACjB,gBAAU;AAAA,IACX;AAEA,QAAI,QAAQ,WAAW,MAAM;AAC5B,eAAS,IAAI,4BAAc;AAAA,IAC5B,WAAW,QAAQ,WAAW,OAAO;AACpC,eAAS,QAAQ;AAAA,IAClB;AAAA,EACD;AAEA,MAAI;AACJ,MAAI,QAAQ,QAAQ;AACnB,UAAM,mBAAe;AAAA,MACpB,QAAQ;AAAA,MACR;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,QAAQ;AAAA,MACpB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,mCAAoB,UAAU,SAAS,QAAQ,gBAAgB,EAAE,OAAO,CAAC;AAC7F,SAAO,IAAI,qBAAqB,SAAS,SAAS,SAAS,MAAM;AAClE;","names":[]}
@@ -1,12 +1,11 @@
1
1
  import type { BatchItem, BatchResponse } from "../batch.cjs";
2
2
  import { entityKind } from "../entity.cjs";
3
- import type { AnyRelations, EmptyRelations } from "../relations.cjs";
4
3
  import { BaseSQLiteDatabase } from "../sqlite-core/db.cjs";
5
4
  import type { DrizzleConfig } from "../utils.cjs";
6
5
  export interface SqliteRemoteResult<T = unknown> {
7
6
  rows?: T[];
8
7
  }
9
- export declare class SqliteRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema, TRelations> {
8
+ export declare class SqliteRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema> {
10
9
  static readonly [entityKind]: string;
11
10
  batch<U extends BatchItem<'sqlite'>, T extends Readonly<[U, ...U[]]>>(batch: T): Promise<BatchResponse<T>>;
12
11
  }
@@ -21,5 +20,5 @@ export type AsyncBatchRemoteCallback = (batch: {
21
20
  rows: any[];
22
21
  }[]>;
23
22
  export type RemoteCallback = AsyncRemoteCallback;
24
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(callback: RemoteCallback, config?: DrizzleConfig<TSchema, TRelations>): SqliteRemoteDatabase<TSchema, TRelations>;
25
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(callback: RemoteCallback, batchCallback?: AsyncBatchRemoteCallback, config?: DrizzleConfig<TSchema, TRelations>): SqliteRemoteDatabase<TSchema, TRelations>;
23
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, config?: DrizzleConfig<TSchema>): SqliteRemoteDatabase<TSchema>;
24
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, batchCallback?: AsyncBatchRemoteCallback, config?: DrizzleConfig<TSchema>): SqliteRemoteDatabase<TSchema>;
@@ -1,12 +1,11 @@
1
1
  import type { BatchItem, BatchResponse } from "../batch.js";
2
2
  import { entityKind } from "../entity.js";
3
- import type { AnyRelations, EmptyRelations } from "../relations.js";
4
3
  import { BaseSQLiteDatabase } from "../sqlite-core/db.js";
5
4
  import type { DrizzleConfig } from "../utils.js";
6
5
  export interface SqliteRemoteResult<T = unknown> {
7
6
  rows?: T[];
8
7
  }
9
- export declare class SqliteRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema, TRelations> {
8
+ export declare class SqliteRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema> {
10
9
  static readonly [entityKind]: string;
11
10
  batch<U extends BatchItem<'sqlite'>, T extends Readonly<[U, ...U[]]>>(batch: T): Promise<BatchResponse<T>>;
12
11
  }
@@ -21,5 +20,5 @@ export type AsyncBatchRemoteCallback = (batch: {
21
20
  rows: any[];
22
21
  }[]>;
23
22
  export type RemoteCallback = AsyncRemoteCallback;
24
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(callback: RemoteCallback, config?: DrizzleConfig<TSchema, TRelations>): SqliteRemoteDatabase<TSchema, TRelations>;
25
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(callback: RemoteCallback, batchCallback?: AsyncBatchRemoteCallback, config?: DrizzleConfig<TSchema, TRelations>): SqliteRemoteDatabase<TSchema, TRelations>;
23
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, config?: DrizzleConfig<TSchema>): SqliteRemoteDatabase<TSchema>;
24
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, batchCallback?: AsyncBatchRemoteCallback, config?: DrizzleConfig<TSchema>): SqliteRemoteDatabase<TSchema>;
@@ -1,6 +1,6 @@
1
- import * as V1 from "../_relations.js";
2
1
  import { entityKind } from "../entity.js";
3
2
  import { DefaultLogger } from "../logger.js";
3
+ import { createTableRelationsHelpers, extractTablesRelationalConfig } from "../relations.js";
4
4
  import { BaseSQLiteDatabase } from "../sqlite-core/db.js";
5
5
  import { SQLiteAsyncDialect } from "../sqlite-core/dialect.js";
6
6
  import { SQLiteRemoteSession } from "./session.js";
@@ -31,9 +31,9 @@ function drizzle(callback, batchCallback, config) {
31
31
  }
32
32
  let schema;
33
33
  if (_config.schema) {
34
- const tablesConfig = V1.extractTablesRelationalConfig(
34
+ const tablesConfig = extractTablesRelationalConfig(
35
35
  _config.schema,
36
- V1.createTableRelationsHelpers
36
+ createTableRelationsHelpers
37
37
  );
38
38
  schema = {
39
39
  fullSchema: _config.schema,
@@ -41,16 +41,8 @@ function drizzle(callback, batchCallback, config) {
41
41
  tableNamesMap: tablesConfig.tableNamesMap
42
42
  };
43
43
  }
44
- const relations = _config.relations;
45
- const session = new SQLiteRemoteSession(callback, dialect, relations, schema, _batchCallback, { logger });
46
- return new SqliteRemoteDatabase(
47
- "async",
48
- dialect,
49
- session,
50
- relations,
51
- schema,
52
- true
53
- );
44
+ const session = new SQLiteRemoteSession(callback, dialect, schema, _batchCallback, { logger });
45
+ return new SqliteRemoteDatabase("async", dialect, session, schema);
54
46
  }
55
47
  export {
56
48
  SqliteRemoteDatabase,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sqlite-proxy/driver.ts"],"sourcesContent":["import * as V1 from '~/_relations.ts';\nimport type { BatchItem, BatchResponse } from '~/batch.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations, ExtractTablesWithRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { SQLiteRemoteSession } from './session.ts';\n\nexport interface SqliteRemoteResult<T = unknown> {\n\trows?: T[];\n}\n\nexport class SqliteRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SqliteRemoteDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: SQLiteRemoteSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tExtractTablesWithRelations<TRelations>,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n\n\tasync batch<U extends BatchItem<'sqlite'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nexport type AsyncRemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'run' | 'all' | 'values' | 'get',\n) => Promise<{ rows: any[] }>;\n\nexport type AsyncBatchRemoteCallback = (batch: {\n\tsql: string;\n\tparams: any[];\n\tmethod: 'run' | 'all' | 'values' | 'get';\n}[]) => Promise<{ rows: any[] }[]>;\n\nexport type RemoteCallback = AsyncRemoteCallback;\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tconfig?: DrizzleConfig<TSchema, TRelations>,\n): SqliteRemoteDatabase<TSchema, TRelations>;\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback,\n\tconfig?: DrizzleConfig<TSchema, TRelations>,\n): SqliteRemoteDatabase<TSchema, TRelations>;\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback | DrizzleConfig<TSchema, TRelations>,\n\tconfig?: DrizzleConfig<TSchema, TRelations>,\n): SqliteRemoteDatabase<TSchema, TRelations> {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config?.casing });\n\tlet logger;\n\tlet _batchCallback: AsyncBatchRemoteCallback | undefined;\n\tlet _config: DrizzleConfig<TSchema, TRelations> = {};\n\n\tif (batchCallback) {\n\t\tif (typeof batchCallback === 'function') {\n\t\t\t_batchCallback = batchCallback as AsyncBatchRemoteCallback;\n\t\t\t_config = config ?? {};\n\t\t} else {\n\t\t\t_batchCallback = undefined;\n\t\t\t_config = batchCallback as DrizzleConfig<TSchema, TRelations>;\n\t\t}\n\n\t\tif (_config.logger === true) {\n\t\t\tlogger = new DefaultLogger();\n\t\t} else if (_config.logger !== false) {\n\t\t\tlogger = _config.logger;\n\t\t}\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (_config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\t_config.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: _config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = _config.relations;\n\tconst session = new SQLiteRemoteSession(callback, dialect, relations, schema, _batchCallback, { logger });\n\treturn new SqliteRemoteDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as SqliteRemoteDatabase<TSchema, TRelations>['session'],\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t\ttrue,\n\t) as SqliteRemoteDatabase<\n\t\tTSchema,\n\t\tTRelations\n\t>;\n}\n"],"mappings":"AAAA,YAAY,QAAQ;AAEpB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAE9B,SAAS,0BAA0B;AACnC,SAAS,0BAA0B;AAEnC,SAAS,2BAA2B;AAM7B,MAAM,6BAGH,mBAAqE;AAAA,EAC9E,QAA0B,UAAU,IAAY;AAAA,EAUhD,MAAM,MACL,OAC4B;AAC5B,WAAO,KAAK,QAAQ,MAAM,KAAK;AAAA,EAChC;AACD;AA+BO,SAAS,QAIf,UACA,eACA,QAC4C;AAC5C,QAAM,UAAU,IAAI,mBAAmB,EAAE,QAAQ,QAAQ,OAAO,CAAC;AACjE,MAAI;AACJ,MAAI;AACJ,MAAI,UAA8C,CAAC;AAEnD,MAAI,eAAe;AAClB,QAAI,OAAO,kBAAkB,YAAY;AACxC,uBAAiB;AACjB,gBAAU,UAAU,CAAC;AAAA,IACtB,OAAO;AACN,uBAAiB;AACjB,gBAAU;AAAA,IACX;AAEA,QAAI,QAAQ,WAAW,MAAM;AAC5B,eAAS,IAAI,cAAc;AAAA,IAC5B,WAAW,QAAQ,WAAW,OAAO;AACpC,eAAS,QAAQ;AAAA,IAClB;AAAA,EACD;AAEA,MAAI;AACJ,MAAI,QAAQ,QAAQ;AACnB,UAAM,eAAe,GAAG;AAAA,MACvB,QAAQ;AAAA,MACR,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,QAAQ;AAAA,MACpB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,QAAQ;AAC1B,QAAM,UAAU,IAAI,oBAAoB,UAAU,SAAS,WAAW,QAAQ,gBAAgB,EAAE,OAAO,CAAC;AACxG,SAAO,IAAI;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAID;","names":[]}
1
+ {"version":3,"sources":["../../src/sqlite-proxy/driver.ts"],"sourcesContent":["import type { BatchItem, BatchResponse } from '~/batch.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { createTableRelationsHelpers, extractTablesRelationalConfig } from '~/relations.ts';\nimport type { ExtractTablesWithRelations, RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { SQLiteRemoteSession } from './session.ts';\n\nexport interface SqliteRemoteResult<T = unknown> {\n\trows?: T[];\n}\n\nexport class SqliteRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SqliteRemoteDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: SQLiteRemoteSession<TSchema, ExtractTablesWithRelations<TSchema>>;\n\n\tasync batch<U extends BatchItem<'sqlite'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nexport type AsyncRemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'run' | 'all' | 'values' | 'get',\n) => Promise<{ rows: any[] }>;\n\nexport type AsyncBatchRemoteCallback = (batch: {\n\tsql: string;\n\tparams: any[];\n\tmethod: 'run' | 'all' | 'values' | 'get';\n}[]) => Promise<{ rows: any[] }[]>;\n\nexport type RemoteCallback = AsyncRemoteCallback;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig?: DrizzleConfig<TSchema>,\n): SqliteRemoteDatabase<TSchema>;\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback,\n\tconfig?: DrizzleConfig<TSchema>,\n): SqliteRemoteDatabase<TSchema>;\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tbatchCallback?: AsyncBatchRemoteCallback | DrizzleConfig<TSchema>,\n\tconfig?: DrizzleConfig<TSchema>,\n): SqliteRemoteDatabase<TSchema> {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config?.casing });\n\tlet logger;\n\tlet _batchCallback: AsyncBatchRemoteCallback | undefined;\n\tlet _config: DrizzleConfig<TSchema> = {};\n\n\tif (batchCallback) {\n\t\tif (typeof batchCallback === 'function') {\n\t\t\t_batchCallback = batchCallback as AsyncBatchRemoteCallback;\n\t\t\t_config = config ?? {};\n\t\t} else {\n\t\t\t_batchCallback = undefined;\n\t\t\t_config = batchCallback as DrizzleConfig<TSchema>;\n\t\t}\n\n\t\tif (_config.logger === true) {\n\t\t\tlogger = new DefaultLogger();\n\t\t} else if (_config.logger !== false) {\n\t\t\tlogger = _config.logger;\n\t\t}\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (_config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\t_config.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: _config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new SQLiteRemoteSession(callback, dialect, schema, _batchCallback, { logger });\n\treturn new SqliteRemoteDatabase('async', dialect, session, schema) as SqliteRemoteDatabase<TSchema>;\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,6BAA6B,qCAAqC;AAE3E,SAAS,0BAA0B;AACnC,SAAS,0BAA0B;AAEnC,SAAS,2BAA2B;AAM7B,MAAM,6BAEH,mBAAyD;AAAA,EAClE,QAA0B,UAAU,IAAY;AAAA,EAKhD,MAAM,MACL,OAC4B;AAC5B,WAAO,KAAK,QAAQ,MAAM,KAAK;AAAA,EAChC;AACD;AAyBO,SAAS,QACf,UACA,eACA,QACgC;AAChC,QAAM,UAAU,IAAI,mBAAmB,EAAE,QAAQ,QAAQ,OAAO,CAAC;AACjE,MAAI;AACJ,MAAI;AACJ,MAAI,UAAkC,CAAC;AAEvC,MAAI,eAAe;AAClB,QAAI,OAAO,kBAAkB,YAAY;AACxC,uBAAiB;AACjB,gBAAU,UAAU,CAAC;AAAA,IACtB,OAAO;AACN,uBAAiB;AACjB,gBAAU;AAAA,IACX;AAEA,QAAI,QAAQ,WAAW,MAAM;AAC5B,eAAS,IAAI,cAAc;AAAA,IAC5B,WAAW,QAAQ,WAAW,OAAO;AACpC,eAAS,QAAQ;AAAA,IAClB;AAAA,EACD;AAEA,MAAI;AACJ,MAAI,QAAQ,QAAQ;AACnB,UAAM,eAAe;AAAA,MACpB,QAAQ;AAAA,MACR;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,QAAQ;AAAA,MACpB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,oBAAoB,UAAU,SAAS,QAAQ,gBAAgB,EAAE,OAAO,CAAC;AAC7F,SAAO,IAAI,qBAAqB,SAAS,SAAS,SAAS,MAAM;AAClE;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sqlite-proxy/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { SqliteRemoteDatabase } from './driver.ts';\n\nexport type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;\n\nexport async function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(\n\tdb: SqliteRemoteDatabase<TSchema, TRelations>,\n\tcallback: ProxyMigrator,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst migrationsTable = typeof config === 'string'\n\t\t? '__drizzle_migrations'\n\t\t: config.migrationsTable ?? '__drizzle_migrations';\n\n\tconst migrationTableCreate = sql`\n\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\tid SERIAL PRIMARY KEY,\n\t\t\thash text NOT NULL,\n\t\t\tcreated_at numeric\n\t\t)\n\t`;\n\n\tawait db.run(migrationTableCreate);\n\n\tconst dbMigrations = await db.values<[number, string, string]>(\n\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t);\n\n\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\tconst queriesToRun: string[] = [];\n\tfor (const migration of migrations) {\n\t\tif (\n\t\t\t!lastDbMigration\n\t\t\t|| Number(lastDbMigration[2])! < migration.folderMillis\n\t\t) {\n\t\t\tqueriesToRun.push(\n\t\t\t\t...migration.sql,\n\t\t\t\t`INSERT INTO \\`${migrationsTable}\\` (\"hash\", \"created_at\") VALUES('${migration.hash}', '${migration.folderMillis}')`,\n\t\t\t);\n\t\t}\n\t}\n\n\tawait callback(queriesToRun);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAAmC;AAEnC,iBAAoB;AAKpB,eAAsB,QACrB,IACA,UACA,QACC;AACD,QAAM,iBAAa,oCAAmB,MAAM;AAE5C,QAAM,kBAAkB,OAAO,WAAW,WACvC,yBACA,OAAO,mBAAmB;AAE7B,QAAM,uBAAuB;AAAA,+BACC,eAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAO7D,QAAM,GAAG,IAAI,oBAAoB;AAEjC,QAAM,eAAe,MAAM,GAAG;AAAA,IAC7B,kDAAuC,eAAI,WAAW,eAAe,CAAC;AAAA,EACvE;AAEA,QAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,QAAM,eAAyB,CAAC;AAChC,aAAW,aAAa,YAAY;AACnC,QACC,CAAC,mBACE,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAC1C;AACD,mBAAa;AAAA,QACZ,GAAG,UAAU;AAAA,QACb,iBAAiB,eAAe,qCAAqC,UAAU,IAAI,OAAO,UAAU,YAAY;AAAA,MACjH;AAAA,IACD;AAAA,EACD;AAEA,QAAM,SAAS,YAAY;AAC5B;","names":[]}
1
+ {"version":3,"sources":["../../src/sqlite-proxy/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { SqliteRemoteDatabase } from './driver.ts';\n\nexport type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: SqliteRemoteDatabase<TSchema>,\n\tcallback: ProxyMigrator,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst migrationsTable = typeof config === 'string'\n\t\t? '__drizzle_migrations'\n\t\t: config.migrationsTable ?? '__drizzle_migrations';\n\n\tconst migrationTableCreate = sql`\n\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\tid SERIAL PRIMARY KEY,\n\t\t\thash text NOT NULL,\n\t\t\tcreated_at numeric\n\t\t)\n\t`;\n\n\tawait db.run(migrationTableCreate);\n\n\tconst dbMigrations = await db.values<[number, string, string]>(\n\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t);\n\n\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\tconst queriesToRun: string[] = [];\n\tfor (const migration of migrations) {\n\t\tif (\n\t\t\t!lastDbMigration\n\t\t\t|| Number(lastDbMigration[2])! < migration.folderMillis\n\t\t) {\n\t\t\tqueriesToRun.push(\n\t\t\t\t...migration.sql,\n\t\t\t\t`INSERT INTO \\`${migrationsTable}\\` (\"hash\", \"created_at\") VALUES('${migration.hash}', '${migration.folderMillis}')`,\n\t\t\t);\n\t\t}\n\t}\n\n\tawait callback(queriesToRun);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAAmC;AACnC,iBAAoB;AAKpB,eAAsB,QACrB,IACA,UACA,QACC;AACD,QAAM,iBAAa,oCAAmB,MAAM;AAE5C,QAAM,kBAAkB,OAAO,WAAW,WACvC,yBACA,OAAO,mBAAmB;AAE7B,QAAM,uBAAuB;AAAA,+BACC,eAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAO7D,QAAM,GAAG,IAAI,oBAAoB;AAEjC,QAAM,eAAe,MAAM,GAAG;AAAA,IAC7B,kDAAuC,eAAI,WAAW,eAAe,CAAC;AAAA,EACvE;AAEA,QAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,QAAM,eAAyB,CAAC;AAChC,aAAW,aAAa,YAAY;AACnC,QACC,CAAC,mBACE,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAC1C;AACD,mBAAa;AAAA,QACZ,GAAG,UAAU;AAAA,QACb,iBAAiB,eAAe,qCAAqC,UAAU,IAAI,OAAO,UAAU,YAAY;AAAA,MACjH;AAAA,IACD;AAAA,EACD;AAEA,QAAM,SAAS,YAAY;AAC5B;","names":[]}
@@ -1,5 +1,4 @@
1
1
  import type { MigrationConfig } from "../migrator.cjs";
2
- import type { AnyRelations } from "../relations.cjs";
3
2
  import type { SqliteRemoteDatabase } from "./driver.cjs";
4
3
  export type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;
5
- export declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: SqliteRemoteDatabase<TSchema, TRelations>, callback: ProxyMigrator, config: MigrationConfig): Promise<void>;
4
+ export declare function migrate<TSchema extends Record<string, unknown>>(db: SqliteRemoteDatabase<TSchema>, callback: ProxyMigrator, config: MigrationConfig): Promise<void>;
@@ -1,5 +1,4 @@
1
1
  import type { MigrationConfig } from "../migrator.js";
2
- import type { AnyRelations } from "../relations.js";
3
2
  import type { SqliteRemoteDatabase } from "./driver.js";
4
3
  export type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;
5
- export declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: SqliteRemoteDatabase<TSchema, TRelations>, callback: ProxyMigrator, config: MigrationConfig): Promise<void>;
4
+ export declare function migrate<TSchema extends Record<string, unknown>>(db: SqliteRemoteDatabase<TSchema>, callback: ProxyMigrator, config: MigrationConfig): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sqlite-proxy/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { SqliteRemoteDatabase } from './driver.ts';\n\nexport type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;\n\nexport async function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(\n\tdb: SqliteRemoteDatabase<TSchema, TRelations>,\n\tcallback: ProxyMigrator,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst migrationsTable = typeof config === 'string'\n\t\t? '__drizzle_migrations'\n\t\t: config.migrationsTable ?? '__drizzle_migrations';\n\n\tconst migrationTableCreate = sql`\n\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\tid SERIAL PRIMARY KEY,\n\t\t\thash text NOT NULL,\n\t\t\tcreated_at numeric\n\t\t)\n\t`;\n\n\tawait db.run(migrationTableCreate);\n\n\tconst dbMigrations = await db.values<[number, string, string]>(\n\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t);\n\n\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\tconst queriesToRun: string[] = [];\n\tfor (const migration of migrations) {\n\t\tif (\n\t\t\t!lastDbMigration\n\t\t\t|| Number(lastDbMigration[2])! < migration.folderMillis\n\t\t) {\n\t\t\tqueriesToRun.push(\n\t\t\t\t...migration.sql,\n\t\t\t\t`INSERT INTO \\`${migrationsTable}\\` (\"hash\", \"created_at\") VALUES('${migration.hash}', '${migration.folderMillis}')`,\n\t\t\t);\n\t\t}\n\t}\n\n\tawait callback(queriesToRun);\n}\n"],"mappings":"AACA,SAAS,0BAA0B;AAEnC,SAAS,WAAW;AAKpB,eAAsB,QACrB,IACA,UACA,QACC;AACD,QAAM,aAAa,mBAAmB,MAAM;AAE5C,QAAM,kBAAkB,OAAO,WAAW,WACvC,yBACA,OAAO,mBAAmB;AAE7B,QAAM,uBAAuB;AAAA,+BACC,IAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAO7D,QAAM,GAAG,IAAI,oBAAoB;AAEjC,QAAM,eAAe,MAAM,GAAG;AAAA,IAC7B,uCAAuC,IAAI,WAAW,eAAe,CAAC;AAAA,EACvE;AAEA,QAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,QAAM,eAAyB,CAAC;AAChC,aAAW,aAAa,YAAY;AACnC,QACC,CAAC,mBACE,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAC1C;AACD,mBAAa;AAAA,QACZ,GAAG,UAAU;AAAA,QACb,iBAAiB,eAAe,qCAAqC,UAAU,IAAI,OAAO,UAAU,YAAY;AAAA,MACjH;AAAA,IACD;AAAA,EACD;AAEA,QAAM,SAAS,YAAY;AAC5B;","names":[]}
1
+ {"version":3,"sources":["../../src/sqlite-proxy/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { SqliteRemoteDatabase } from './driver.ts';\n\nexport type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: SqliteRemoteDatabase<TSchema>,\n\tcallback: ProxyMigrator,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst migrationsTable = typeof config === 'string'\n\t\t? '__drizzle_migrations'\n\t\t: config.migrationsTable ?? '__drizzle_migrations';\n\n\tconst migrationTableCreate = sql`\n\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\tid SERIAL PRIMARY KEY,\n\t\t\thash text NOT NULL,\n\t\t\tcreated_at numeric\n\t\t)\n\t`;\n\n\tawait db.run(migrationTableCreate);\n\n\tconst dbMigrations = await db.values<[number, string, string]>(\n\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t);\n\n\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\tconst queriesToRun: string[] = [];\n\tfor (const migration of migrations) {\n\t\tif (\n\t\t\t!lastDbMigration\n\t\t\t|| Number(lastDbMigration[2])! < migration.folderMillis\n\t\t) {\n\t\t\tqueriesToRun.push(\n\t\t\t\t...migration.sql,\n\t\t\t\t`INSERT INTO \\`${migrationsTable}\\` (\"hash\", \"created_at\") VALUES('${migration.hash}', '${migration.folderMillis}')`,\n\t\t\t);\n\t\t}\n\t}\n\n\tawait callback(queriesToRun);\n}\n"],"mappings":"AACA,SAAS,0BAA0B;AACnC,SAAS,WAAW;AAKpB,eAAsB,QACrB,IACA,UACA,QACC;AACD,QAAM,aAAa,mBAAmB,MAAM;AAE5C,QAAM,kBAAkB,OAAO,WAAW,WACvC,yBACA,OAAO,mBAAmB;AAE7B,QAAM,uBAAuB;AAAA,+BACC,IAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAO7D,QAAM,GAAG,IAAI,oBAAoB;AAEjC,QAAM,eAAe,MAAM,GAAG;AAAA,IAC7B,uCAAuC,IAAI,WAAW,eAAe,CAAC;AAAA,EACvE;AAEA,QAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,QAAM,eAAyB,CAAC;AAChC,aAAW,aAAa,YAAY;AACnC,QACC,CAAC,mBACE,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAC1C;AACD,mBAAa;AAAA,QACZ,GAAG,UAAU;AAAA,QACb,iBAAiB,eAAe,qCAAqC,UAAU,IAAI,OAAO,UAAU,YAAY;AAAA,MACjH;AAAA,IACD;AAAA,EACD;AAEA,QAAM,SAAS,YAAY;AAC5B;","names":[]}