drizzle-orm 0.44.2-512acc4 → 0.44.2-6baabce

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 (775) hide show
  1. package/aws-data-api/pg/driver.cjs +6 -14
  2. package/aws-data-api/pg/driver.cjs.map +1 -1
  3. package/aws-data-api/pg/driver.d.cts +3 -4
  4. package/aws-data-api/pg/driver.d.ts +3 -4
  5. package/aws-data-api/pg/driver.js +6 -14
  6. package/aws-data-api/pg/driver.js.map +1 -1
  7. package/aws-data-api/pg/session.cjs +9 -26
  8. package/aws-data-api/pg/session.cjs.map +1 -1
  9. package/aws-data-api/pg/session.d.cts +4 -5
  10. package/aws-data-api/pg/session.d.ts +4 -5
  11. package/aws-data-api/pg/session.js +9 -26
  12. package/aws-data-api/pg/session.js.map +1 -1
  13. package/better-sqlite3/driver.cjs.map +1 -1
  14. package/better-sqlite3/driver.d.cts +3 -4
  15. package/better-sqlite3/driver.d.ts +3 -4
  16. package/better-sqlite3/driver.js.map +1 -1
  17. package/better-sqlite3/session.cjs +4 -4
  18. package/better-sqlite3/session.cjs.map +1 -1
  19. package/better-sqlite3/session.d.cts +4 -4
  20. package/better-sqlite3/session.d.ts +4 -4
  21. package/better-sqlite3/session.js +4 -4
  22. package/better-sqlite3/session.js.map +1 -1
  23. package/bun-sql/driver.cjs +2 -3
  24. package/bun-sql/driver.cjs.map +1 -1
  25. package/bun-sql/driver.d.cts +3 -4
  26. package/bun-sql/driver.d.ts +3 -4
  27. package/bun-sql/driver.js +2 -3
  28. package/bun-sql/driver.js.map +1 -1
  29. package/bun-sql/session.cjs +11 -20
  30. package/bun-sql/session.cjs.map +1 -1
  31. package/bun-sql/session.d.cts +5 -6
  32. package/bun-sql/session.d.ts +5 -6
  33. package/bun-sql/session.js +11 -20
  34. package/bun-sql/session.js.map +1 -1
  35. package/bun-sqlite/driver.cjs.map +1 -1
  36. package/bun-sqlite/driver.d.cts +3 -4
  37. package/bun-sqlite/driver.d.ts +3 -4
  38. package/bun-sqlite/driver.js.map +1 -1
  39. package/bun-sqlite/session.cjs +4 -4
  40. package/bun-sqlite/session.cjs.map +1 -1
  41. package/bun-sqlite/session.d.cts +4 -4
  42. package/bun-sqlite/session.d.ts +4 -4
  43. package/bun-sqlite/session.js +4 -4
  44. package/bun-sqlite/session.js.map +1 -1
  45. package/column-builder.cjs.map +1 -1
  46. package/column-builder.d.cts +2 -7
  47. package/column-builder.d.ts +2 -7
  48. package/column-builder.js.map +1 -1
  49. package/column.cjs +0 -2
  50. package/column.cjs.map +1 -1
  51. package/column.d.cts +0 -6
  52. package/column.d.ts +0 -6
  53. package/column.js +0 -2
  54. package/column.js.map +1 -1
  55. package/d1/driver.cjs +2 -9
  56. package/d1/driver.cjs.map +1 -1
  57. package/d1/driver.d.cts +1 -2
  58. package/d1/driver.d.ts +1 -2
  59. package/d1/driver.js +2 -9
  60. package/d1/driver.js.map +1 -1
  61. package/d1/session.cjs +11 -20
  62. package/d1/session.cjs.map +1 -1
  63. package/d1/session.d.cts +7 -8
  64. package/d1/session.d.ts +7 -8
  65. package/d1/session.js +11 -20
  66. package/d1/session.js.map +1 -1
  67. package/durable-sqlite/driver.cjs.map +1 -1
  68. package/durable-sqlite/driver.d.cts +1 -2
  69. package/durable-sqlite/driver.d.ts +1 -2
  70. package/durable-sqlite/driver.js.map +1 -1
  71. package/durable-sqlite/session.cjs +4 -4
  72. package/durable-sqlite/session.cjs.map +1 -1
  73. package/durable-sqlite/session.d.cts +4 -4
  74. package/durable-sqlite/session.d.ts +4 -4
  75. package/durable-sqlite/session.js +4 -4
  76. package/durable-sqlite/session.js.map +1 -1
  77. package/expo-sqlite/driver.cjs.map +1 -1
  78. package/expo-sqlite/driver.d.cts +1 -2
  79. package/expo-sqlite/driver.d.ts +1 -2
  80. package/expo-sqlite/driver.js.map +1 -1
  81. package/expo-sqlite/session.cjs +4 -4
  82. package/expo-sqlite/session.cjs.map +1 -1
  83. package/expo-sqlite/session.d.cts +4 -4
  84. package/expo-sqlite/session.d.ts +4 -4
  85. package/expo-sqlite/session.js +4 -4
  86. package/expo-sqlite/session.js.map +1 -1
  87. package/gel/driver.cjs +4 -6
  88. package/gel/driver.cjs.map +1 -1
  89. package/gel/driver.d.cts +4 -6
  90. package/gel/driver.d.ts +4 -6
  91. package/gel/driver.js +4 -6
  92. package/gel/driver.js.map +1 -1
  93. package/gel/session.cjs +9 -12
  94. package/gel/session.cjs.map +1 -1
  95. package/gel/session.d.cts +4 -5
  96. package/gel/session.d.ts +4 -5
  97. package/gel/session.js +9 -12
  98. package/gel/session.js.map +1 -1
  99. package/gel-core/columns/common.cjs +0 -8
  100. package/gel-core/columns/common.cjs.map +1 -1
  101. package/gel-core/columns/common.d.cts +0 -2
  102. package/gel-core/columns/common.d.ts +0 -2
  103. package/gel-core/columns/common.js +0 -8
  104. package/gel-core/columns/common.js.map +1 -1
  105. package/gel-core/db.cjs +3 -5
  106. package/gel-core/db.cjs.map +1 -1
  107. package/gel-core/db.d.cts +1 -3
  108. package/gel-core/db.d.ts +1 -3
  109. package/gel-core/db.js +3 -5
  110. package/gel-core/db.js.map +1 -1
  111. package/gel-core/dialect.cjs +19 -24
  112. package/gel-core/dialect.cjs.map +1 -1
  113. package/gel-core/dialect.d.cts +6 -7
  114. package/gel-core/dialect.d.ts +6 -7
  115. package/gel-core/dialect.js +20 -25
  116. package/gel-core/dialect.js.map +1 -1
  117. package/gel-core/query-builders/delete.cjs +5 -19
  118. package/gel-core/query-builders/delete.cjs.map +1 -1
  119. package/gel-core/query-builders/delete.js +5 -19
  120. package/gel-core/query-builders/delete.js.map +1 -1
  121. package/gel-core/query-builders/insert.cjs +9 -44
  122. package/gel-core/query-builders/insert.cjs.map +1 -1
  123. package/gel-core/query-builders/insert.js +11 -46
  124. package/gel-core/query-builders/insert.js.map +1 -1
  125. package/gel-core/query-builders/query.cjs +2 -15
  126. package/gel-core/query-builders/query.cjs.map +1 -1
  127. package/gel-core/query-builders/query.js +2 -15
  128. package/gel-core/query-builders/query.js.map +1 -1
  129. package/gel-core/query-builders/select.cjs +5 -21
  130. package/gel-core/query-builders/select.cjs.map +1 -1
  131. package/gel-core/query-builders/select.js +5 -21
  132. package/gel-core/query-builders/select.js.map +1 -1
  133. package/gel-core/query-builders/update.cjs +6 -20
  134. package/gel-core/query-builders/update.cjs.map +1 -1
  135. package/gel-core/query-builders/update.js +6 -20
  136. package/gel-core/query-builders/update.js.map +1 -1
  137. package/gel-core/session.cjs +4 -47
  138. package/gel-core/session.cjs.map +1 -1
  139. package/gel-core/session.d.cts +5 -11
  140. package/gel-core/session.d.ts +5 -11
  141. package/gel-core/session.js +4 -47
  142. package/gel-core/session.js.map +1 -1
  143. package/libsql/driver-core.cjs +2 -3
  144. package/libsql/driver-core.cjs.map +1 -1
  145. package/libsql/driver-core.js +2 -3
  146. package/libsql/driver-core.js.map +1 -1
  147. package/libsql/driver.cjs +1 -4
  148. package/libsql/driver.cjs.map +1 -1
  149. package/libsql/driver.d.cts +3 -4
  150. package/libsql/driver.d.ts +3 -4
  151. package/libsql/driver.js +1 -4
  152. package/libsql/driver.js.map +1 -1
  153. package/libsql/http/index.cjs +1 -4
  154. package/libsql/http/index.cjs.map +1 -1
  155. package/libsql/http/index.d.cts +3 -4
  156. package/libsql/http/index.d.ts +3 -4
  157. package/libsql/http/index.js +1 -4
  158. package/libsql/http/index.js.map +1 -1
  159. package/libsql/node/index.cjs +1 -4
  160. package/libsql/node/index.cjs.map +1 -1
  161. package/libsql/node/index.d.cts +3 -4
  162. package/libsql/node/index.d.ts +3 -4
  163. package/libsql/node/index.js +1 -4
  164. package/libsql/node/index.js.map +1 -1
  165. package/libsql/session.cjs +12 -29
  166. package/libsql/session.cjs.map +1 -1
  167. package/libsql/session.d.cts +7 -8
  168. package/libsql/session.d.ts +7 -8
  169. package/libsql/session.js +12 -29
  170. package/libsql/session.js.map +1 -1
  171. package/libsql/sqlite3/index.cjs +1 -4
  172. package/libsql/sqlite3/index.cjs.map +1 -1
  173. package/libsql/sqlite3/index.d.cts +3 -4
  174. package/libsql/sqlite3/index.d.ts +3 -4
  175. package/libsql/sqlite3/index.js +1 -4
  176. package/libsql/sqlite3/index.js.map +1 -1
  177. package/libsql/wasm/index.cjs +1 -4
  178. package/libsql/wasm/index.cjs.map +1 -1
  179. package/libsql/wasm/index.d.cts +3 -4
  180. package/libsql/wasm/index.d.ts +3 -4
  181. package/libsql/wasm/index.js +1 -4
  182. package/libsql/wasm/index.js.map +1 -1
  183. package/libsql/web/index.cjs +1 -4
  184. package/libsql/web/index.cjs.map +1 -1
  185. package/libsql/web/index.d.cts +3 -4
  186. package/libsql/web/index.d.ts +3 -4
  187. package/libsql/web/index.js +1 -4
  188. package/libsql/web/index.js.map +1 -1
  189. package/libsql/ws/index.cjs +1 -4
  190. package/libsql/ws/index.cjs.map +1 -1
  191. package/libsql/ws/index.d.cts +3 -4
  192. package/libsql/ws/index.d.ts +3 -4
  193. package/libsql/ws/index.js +1 -4
  194. package/libsql/ws/index.js.map +1 -1
  195. package/mysql-core/db.cjs +3 -5
  196. package/mysql-core/db.cjs.map +1 -1
  197. package/mysql-core/db.d.cts +1 -3
  198. package/mysql-core/db.d.ts +1 -3
  199. package/mysql-core/db.js +3 -5
  200. package/mysql-core/db.js.map +1 -1
  201. package/mysql-core/dialect.cjs +23 -29
  202. package/mysql-core/dialect.cjs.map +1 -1
  203. package/mysql-core/dialect.d.cts +7 -8
  204. package/mysql-core/dialect.d.ts +7 -8
  205. package/mysql-core/dialect.js +24 -30
  206. package/mysql-core/dialect.js.map +1 -1
  207. package/mysql-core/query-builders/delete.cjs +1 -8
  208. package/mysql-core/query-builders/delete.cjs.map +1 -1
  209. package/mysql-core/query-builders/delete.js +1 -8
  210. package/mysql-core/query-builders/delete.js.map +1 -1
  211. package/mysql-core/query-builders/insert.cjs +6 -30
  212. package/mysql-core/query-builders/insert.cjs.map +1 -1
  213. package/mysql-core/query-builders/insert.js +8 -32
  214. package/mysql-core/query-builders/insert.js.map +1 -1
  215. package/mysql-core/query-builders/query.cjs +3 -19
  216. package/mysql-core/query-builders/query.cjs.map +1 -1
  217. package/mysql-core/query-builders/query.js +3 -19
  218. package/mysql-core/query-builders/query.js.map +1 -1
  219. package/mysql-core/query-builders/select.cjs +6 -23
  220. package/mysql-core/query-builders/select.cjs.map +1 -1
  221. package/mysql-core/query-builders/select.js +6 -23
  222. package/mysql-core/query-builders/select.js.map +1 -1
  223. package/mysql-core/query-builders/update.cjs +3 -15
  224. package/mysql-core/query-builders/update.cjs.map +1 -1
  225. package/mysql-core/query-builders/update.js +3 -15
  226. package/mysql-core/query-builders/update.js.map +1 -1
  227. package/mysql-core/session.cjs +4 -43
  228. package/mysql-core/session.cjs.map +1 -1
  229. package/mysql-core/session.d.cts +7 -14
  230. package/mysql-core/session.d.ts +7 -14
  231. package/mysql-core/session.js +4 -43
  232. package/mysql-core/session.js.map +1 -1
  233. package/mysql-proxy/driver.cjs +2 -3
  234. package/mysql-proxy/driver.cjs.map +1 -1
  235. package/mysql-proxy/driver.d.cts +1 -2
  236. package/mysql-proxy/driver.d.ts +1 -2
  237. package/mysql-proxy/driver.js +2 -3
  238. package/mysql-proxy/driver.js.map +1 -1
  239. package/mysql-proxy/session.cjs +8 -8
  240. package/mysql-proxy/session.cjs.map +1 -1
  241. package/mysql-proxy/session.d.cts +6 -5
  242. package/mysql-proxy/session.d.ts +6 -5
  243. package/mysql-proxy/session.js +8 -8
  244. package/mysql-proxy/session.js.map +1 -1
  245. package/mysql2/driver.cjs +4 -11
  246. package/mysql2/driver.cjs.map +1 -1
  247. package/mysql2/driver.d.cts +2 -4
  248. package/mysql2/driver.d.ts +2 -4
  249. package/mysql2/driver.js +4 -11
  250. package/mysql2/driver.js.map +1 -1
  251. package/mysql2/session.cjs +10 -14
  252. package/mysql2/session.cjs.map +1 -1
  253. package/mysql2/session.d.cts +5 -5
  254. package/mysql2/session.d.ts +5 -5
  255. package/mysql2/session.js +10 -14
  256. package/mysql2/session.js.map +1 -1
  257. package/neon-http/driver.cjs +3 -5
  258. package/neon-http/driver.cjs.map +1 -1
  259. package/neon-http/driver.d.cts +4 -6
  260. package/neon-http/driver.d.ts +4 -6
  261. package/neon-http/driver.js +3 -5
  262. package/neon-http/driver.js.map +1 -1
  263. package/neon-http/session.cjs +6 -8
  264. package/neon-http/session.cjs.map +1 -1
  265. package/neon-http/session.d.cts +4 -5
  266. package/neon-http/session.d.ts +4 -5
  267. package/neon-http/session.js +6 -8
  268. package/neon-http/session.js.map +1 -1
  269. package/neon-serverless/driver.cjs +4 -6
  270. package/neon-serverless/driver.cjs.map +1 -1
  271. package/neon-serverless/driver.d.cts +4 -6
  272. package/neon-serverless/driver.d.ts +4 -6
  273. package/neon-serverless/driver.js +4 -6
  274. package/neon-serverless/driver.js.map +1 -1
  275. package/neon-serverless/session.cjs +9 -23
  276. package/neon-serverless/session.cjs.map +1 -1
  277. package/neon-serverless/session.d.cts +4 -5
  278. package/neon-serverless/session.d.ts +4 -5
  279. package/neon-serverless/session.js +9 -23
  280. package/neon-serverless/session.js.map +1 -1
  281. package/node-postgres/driver.cjs +4 -6
  282. package/node-postgres/driver.cjs.map +1 -1
  283. package/node-postgres/driver.d.cts +4 -6
  284. package/node-postgres/driver.d.ts +4 -6
  285. package/node-postgres/driver.js +4 -6
  286. package/node-postgres/driver.js.map +1 -1
  287. package/node-postgres/session.cjs +9 -18
  288. package/node-postgres/session.cjs.map +1 -1
  289. package/node-postgres/session.d.cts +4 -5
  290. package/node-postgres/session.d.ts +4 -5
  291. package/node-postgres/session.js +9 -18
  292. package/node-postgres/session.js.map +1 -1
  293. package/op-sqlite/driver.cjs +2 -3
  294. package/op-sqlite/driver.cjs.map +1 -1
  295. package/op-sqlite/driver.d.cts +1 -2
  296. package/op-sqlite/driver.d.ts +1 -2
  297. package/op-sqlite/driver.js +2 -3
  298. package/op-sqlite/driver.js.map +1 -1
  299. package/op-sqlite/session.cjs +11 -20
  300. package/op-sqlite/session.cjs.map +1 -1
  301. package/op-sqlite/session.d.cts +7 -8
  302. package/op-sqlite/session.d.ts +7 -8
  303. package/op-sqlite/session.js +11 -20
  304. package/op-sqlite/session.js.map +1 -1
  305. package/package.json +5 -351
  306. package/pg-core/columns/common.cjs +0 -2
  307. package/pg-core/columns/common.cjs.map +1 -1
  308. package/pg-core/columns/common.js +0 -2
  309. package/pg-core/columns/common.js.map +1 -1
  310. package/pg-core/db.cjs +3 -5
  311. package/pg-core/db.cjs.map +1 -1
  312. package/pg-core/db.d.cts +1 -3
  313. package/pg-core/db.d.ts +1 -3
  314. package/pg-core/db.js +3 -5
  315. package/pg-core/db.js.map +1 -1
  316. package/pg-core/dialect.cjs +19 -25
  317. package/pg-core/dialect.cjs.map +1 -1
  318. package/pg-core/dialect.d.cts +6 -7
  319. package/pg-core/dialect.d.ts +6 -7
  320. package/pg-core/dialect.js +20 -26
  321. package/pg-core/dialect.js.map +1 -1
  322. package/pg-core/query-builders/delete.cjs +5 -19
  323. package/pg-core/query-builders/delete.cjs.map +1 -1
  324. package/pg-core/query-builders/delete.js +5 -19
  325. package/pg-core/query-builders/delete.js.map +1 -1
  326. package/pg-core/query-builders/insert.cjs +9 -49
  327. package/pg-core/query-builders/insert.cjs.map +1 -1
  328. package/pg-core/query-builders/insert.js +11 -51
  329. package/pg-core/query-builders/insert.js.map +1 -1
  330. package/pg-core/query-builders/query.cjs +2 -15
  331. package/pg-core/query-builders/query.cjs.map +1 -1
  332. package/pg-core/query-builders/query.js +2 -15
  333. package/pg-core/query-builders/query.js.map +1 -1
  334. package/pg-core/query-builders/select.cjs +7 -23
  335. package/pg-core/query-builders/select.cjs.map +1 -1
  336. package/pg-core/query-builders/select.js +7 -23
  337. package/pg-core/query-builders/select.js.map +1 -1
  338. package/pg-core/query-builders/update.cjs +6 -20
  339. package/pg-core/query-builders/update.cjs.map +1 -1
  340. package/pg-core/query-builders/update.js +6 -20
  341. package/pg-core/query-builders/update.js.map +1 -1
  342. package/pg-core/session.cjs +4 -48
  343. package/pg-core/session.cjs.map +1 -1
  344. package/pg-core/session.d.cts +5 -11
  345. package/pg-core/session.d.ts +5 -11
  346. package/pg-core/session.js +4 -48
  347. package/pg-core/session.js.map +1 -1
  348. package/pg-proxy/driver.cjs +2 -3
  349. package/pg-proxy/driver.cjs.map +1 -1
  350. package/pg-proxy/driver.d.cts +1 -2
  351. package/pg-proxy/driver.d.ts +1 -2
  352. package/pg-proxy/driver.js +2 -3
  353. package/pg-proxy/driver.js.map +1 -1
  354. package/pg-proxy/session.cjs +6 -8
  355. package/pg-proxy/session.cjs.map +1 -1
  356. package/pg-proxy/session.d.cts +4 -5
  357. package/pg-proxy/session.d.ts +4 -5
  358. package/pg-proxy/session.js +6 -8
  359. package/pg-proxy/session.js.map +1 -1
  360. package/pglite/driver.cjs +4 -6
  361. package/pglite/driver.cjs.map +1 -1
  362. package/pglite/driver.d.cts +4 -6
  363. package/pglite/driver.d.ts +4 -6
  364. package/pglite/driver.js +4 -6
  365. package/pglite/driver.js.map +1 -1
  366. package/pglite/session.cjs +9 -19
  367. package/pglite/session.cjs.map +1 -1
  368. package/pglite/session.d.cts +4 -5
  369. package/pglite/session.d.ts +4 -5
  370. package/pglite/session.js +9 -19
  371. package/pglite/session.js.map +1 -1
  372. package/planetscale-serverless/driver.cjs +2 -10
  373. package/planetscale-serverless/driver.cjs.map +1 -1
  374. package/planetscale-serverless/driver.d.cts +3 -4
  375. package/planetscale-serverless/driver.d.ts +3 -4
  376. package/planetscale-serverless/driver.js +2 -10
  377. package/planetscale-serverless/driver.js.map +1 -1
  378. package/planetscale-serverless/session.cjs +13 -23
  379. package/planetscale-serverless/session.cjs.map +1 -1
  380. package/planetscale-serverless/session.d.cts +7 -6
  381. package/planetscale-serverless/session.d.ts +7 -6
  382. package/planetscale-serverless/session.js +13 -23
  383. package/planetscale-serverless/session.js.map +1 -1
  384. package/postgres-js/driver.cjs +2 -3
  385. package/postgres-js/driver.cjs.map +1 -1
  386. package/postgres-js/driver.d.cts +3 -4
  387. package/postgres-js/driver.d.ts +3 -4
  388. package/postgres-js/driver.js +2 -3
  389. package/postgres-js/driver.js.map +1 -1
  390. package/postgres-js/session.cjs +16 -27
  391. package/postgres-js/session.cjs.map +1 -1
  392. package/postgres-js/session.d.cts +5 -6
  393. package/postgres-js/session.d.ts +5 -6
  394. package/postgres-js/session.js +16 -27
  395. package/postgres-js/session.js.map +1 -1
  396. package/prisma/mysql/driver.cjs +3 -3
  397. package/prisma/mysql/driver.cjs.map +1 -1
  398. package/prisma/mysql/driver.d.cts +2 -3
  399. package/prisma/mysql/driver.d.ts +2 -3
  400. package/prisma/mysql/driver.js +3 -3
  401. package/prisma/mysql/driver.js.map +1 -1
  402. package/prisma/mysql/session.cjs +11 -10
  403. package/prisma/mysql/session.cjs.map +1 -1
  404. package/prisma/mysql/session.d.cts +5 -10
  405. package/prisma/mysql/session.d.ts +5 -10
  406. package/prisma/mysql/session.js +11 -10
  407. package/prisma/mysql/session.js.map +1 -1
  408. package/prisma/pg/driver.cjs +3 -3
  409. package/prisma/pg/driver.cjs.map +1 -1
  410. package/prisma/pg/driver.d.cts +1 -2
  411. package/prisma/pg/driver.d.ts +1 -2
  412. package/prisma/pg/driver.js +3 -3
  413. package/prisma/pg/driver.js.map +1 -1
  414. package/prisma/pg/session.cjs +7 -7
  415. package/prisma/pg/session.cjs.map +1 -1
  416. package/prisma/pg/session.d.cts +5 -10
  417. package/prisma/pg/session.d.ts +5 -10
  418. package/prisma/pg/session.js +7 -7
  419. package/prisma/pg/session.js.map +1 -1
  420. package/prisma/sqlite/driver.cjs +1 -7
  421. package/prisma/sqlite/driver.cjs.map +1 -1
  422. package/prisma/sqlite/driver.d.cts +1 -2
  423. package/prisma/sqlite/driver.d.ts +1 -2
  424. package/prisma/sqlite/driver.js +1 -7
  425. package/prisma/sqlite/driver.js.map +1 -1
  426. package/prisma/sqlite/session.cjs +10 -10
  427. package/prisma/sqlite/session.cjs.map +1 -1
  428. package/prisma/sqlite/session.d.cts +7 -12
  429. package/prisma/sqlite/session.d.ts +7 -12
  430. package/prisma/sqlite/session.js +10 -10
  431. package/prisma/sqlite/session.js.map +1 -1
  432. package/singlestore/driver.cjs +25 -34
  433. package/singlestore/driver.cjs.map +1 -1
  434. package/singlestore/driver.d.cts +2 -4
  435. package/singlestore/driver.d.ts +2 -4
  436. package/singlestore/driver.js +25 -34
  437. package/singlestore/driver.js.map +1 -1
  438. package/singlestore/session.cjs +10 -14
  439. package/singlestore/session.cjs.map +1 -1
  440. package/singlestore/session.d.cts +5 -5
  441. package/singlestore/session.d.ts +5 -5
  442. package/singlestore/session.js +10 -14
  443. package/singlestore/session.js.map +1 -1
  444. package/singlestore-core/db.cjs +3 -5
  445. package/singlestore-core/db.cjs.map +1 -1
  446. package/singlestore-core/db.d.cts +1 -3
  447. package/singlestore-core/db.d.ts +1 -3
  448. package/singlestore-core/db.js +3 -5
  449. package/singlestore-core/db.js.map +1 -1
  450. package/singlestore-core/dialect.cjs +18 -24
  451. package/singlestore-core/dialect.cjs.map +1 -1
  452. package/singlestore-core/dialect.d.cts +6 -7
  453. package/singlestore-core/dialect.d.ts +6 -7
  454. package/singlestore-core/dialect.js +19 -25
  455. package/singlestore-core/dialect.js.map +1 -1
  456. package/singlestore-core/query-builders/delete.cjs +1 -8
  457. package/singlestore-core/query-builders/delete.cjs.map +1 -1
  458. package/singlestore-core/query-builders/delete.js +1 -8
  459. package/singlestore-core/query-builders/delete.js.map +1 -1
  460. package/singlestore-core/query-builders/insert.cjs +5 -30
  461. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  462. package/singlestore-core/query-builders/insert.js +7 -32
  463. package/singlestore-core/query-builders/insert.js.map +1 -1
  464. package/singlestore-core/query-builders/query.cjs +2 -17
  465. package/singlestore-core/query-builders/query.cjs.map +1 -1
  466. package/singlestore-core/query-builders/query.js +2 -17
  467. package/singlestore-core/query-builders/query.js.map +1 -1
  468. package/singlestore-core/query-builders/select.cjs +7 -24
  469. package/singlestore-core/query-builders/select.cjs.map +1 -1
  470. package/singlestore-core/query-builders/select.js +7 -24
  471. package/singlestore-core/query-builders/select.js.map +1 -1
  472. package/singlestore-core/query-builders/update.cjs +2 -9
  473. package/singlestore-core/query-builders/update.cjs.map +1 -1
  474. package/singlestore-core/query-builders/update.js +2 -9
  475. package/singlestore-core/query-builders/update.js.map +1 -1
  476. package/singlestore-core/session.cjs +4 -43
  477. package/singlestore-core/session.cjs.map +1 -1
  478. package/singlestore-core/session.d.cts +6 -14
  479. package/singlestore-core/session.d.ts +6 -14
  480. package/singlestore-core/session.js +4 -43
  481. package/singlestore-core/session.js.map +1 -1
  482. package/singlestore-proxy/driver.cjs +2 -3
  483. package/singlestore-proxy/driver.cjs.map +1 -1
  484. package/singlestore-proxy/driver.d.cts +1 -2
  485. package/singlestore-proxy/driver.d.ts +1 -2
  486. package/singlestore-proxy/driver.js +2 -3
  487. package/singlestore-proxy/driver.js.map +1 -1
  488. package/singlestore-proxy/session.cjs +8 -8
  489. package/singlestore-proxy/session.cjs.map +1 -1
  490. package/singlestore-proxy/session.d.cts +6 -9
  491. package/singlestore-proxy/session.d.ts +6 -9
  492. package/singlestore-proxy/session.js +8 -8
  493. package/singlestore-proxy/session.js.map +1 -1
  494. package/sql/sql.cjs +2 -24
  495. package/sql/sql.cjs.map +1 -1
  496. package/sql/sql.d.cts +0 -12
  497. package/sql/sql.d.ts +0 -12
  498. package/sql/sql.js +2 -23
  499. package/sql/sql.js.map +1 -1
  500. package/sql-js/driver.cjs.map +1 -1
  501. package/sql-js/driver.d.cts +1 -2
  502. package/sql-js/driver.d.ts +1 -2
  503. package/sql-js/driver.js.map +1 -1
  504. package/sql-js/session.cjs +4 -4
  505. package/sql-js/session.cjs.map +1 -1
  506. package/sql-js/session.d.cts +4 -4
  507. package/sql-js/session.d.ts +4 -4
  508. package/sql-js/session.js +4 -4
  509. package/sql-js/session.js.map +1 -1
  510. package/sqlite-core/db.cjs +3 -5
  511. package/sqlite-core/db.cjs.map +1 -1
  512. package/sqlite-core/db.d.cts +1 -3
  513. package/sqlite-core/db.d.ts +1 -3
  514. package/sqlite-core/db.js +3 -5
  515. package/sqlite-core/db.js.map +1 -1
  516. package/sqlite-core/dialect.cjs +19 -29
  517. package/sqlite-core/dialect.cjs.map +1 -1
  518. package/sqlite-core/dialect.d.cts +6 -7
  519. package/sqlite-core/dialect.d.ts +6 -7
  520. package/sqlite-core/dialect.js +20 -30
  521. package/sqlite-core/dialect.js.map +1 -1
  522. package/sqlite-core/query-builders/delete.cjs +1 -8
  523. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  524. package/sqlite-core/query-builders/delete.js +1 -8
  525. package/sqlite-core/query-builders/delete.js.map +1 -1
  526. package/sqlite-core/query-builders/insert.cjs +4 -28
  527. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  528. package/sqlite-core/query-builders/insert.js +6 -35
  529. package/sqlite-core/query-builders/insert.js.map +1 -1
  530. package/sqlite-core/query-builders/query.cjs +2 -15
  531. package/sqlite-core/query-builders/query.cjs.map +1 -1
  532. package/sqlite-core/query-builders/query.js +2 -15
  533. package/sqlite-core/query-builders/query.js.map +1 -1
  534. package/sqlite-core/query-builders/select.cjs +6 -15
  535. package/sqlite-core/query-builders/select.cjs.map +1 -1
  536. package/sqlite-core/query-builders/select.js +6 -15
  537. package/sqlite-core/query-builders/select.js.map +1 -1
  538. package/sqlite-core/query-builders/update.cjs +2 -9
  539. package/sqlite-core/query-builders/update.cjs.map +1 -1
  540. package/sqlite-core/query-builders/update.js +2 -9
  541. package/sqlite-core/query-builders/update.js.map +1 -1
  542. package/sqlite-core/session.cjs +6 -81
  543. package/sqlite-core/session.cjs.map +1 -1
  544. package/sqlite-core/session.d.cts +9 -19
  545. package/sqlite-core/session.d.ts +9 -19
  546. package/sqlite-core/session.js +6 -81
  547. package/sqlite-core/session.js.map +1 -1
  548. package/sqlite-proxy/driver.cjs +3 -4
  549. package/sqlite-proxy/driver.cjs.map +1 -1
  550. package/sqlite-proxy/driver.d.cts +2 -3
  551. package/sqlite-proxy/driver.d.ts +2 -3
  552. package/sqlite-proxy/driver.js +3 -4
  553. package/sqlite-proxy/driver.js.map +1 -1
  554. package/sqlite-proxy/session.cjs +11 -20
  555. package/sqlite-proxy/session.cjs.map +1 -1
  556. package/sqlite-proxy/session.d.cts +7 -8
  557. package/sqlite-proxy/session.d.ts +7 -8
  558. package/sqlite-proxy/session.js +11 -20
  559. package/sqlite-proxy/session.js.map +1 -1
  560. package/tidb-serverless/driver.cjs +2 -16
  561. package/tidb-serverless/driver.cjs.map +1 -1
  562. package/tidb-serverless/driver.d.cts +3 -4
  563. package/tidb-serverless/driver.d.ts +3 -4
  564. package/tidb-serverless/driver.js +2 -16
  565. package/tidb-serverless/driver.js.map +1 -1
  566. package/tidb-serverless/session.cjs +13 -23
  567. package/tidb-serverless/session.cjs.map +1 -1
  568. package/tidb-serverless/session.d.cts +7 -6
  569. package/tidb-serverless/session.d.ts +7 -6
  570. package/tidb-serverless/session.js +13 -23
  571. package/tidb-serverless/session.js.map +1 -1
  572. package/tracing.cjs.map +1 -1
  573. package/tracing.js.map +1 -1
  574. package/utils.cjs +2 -38
  575. package/utils.cjs.map +1 -1
  576. package/utils.d.cts +2 -6
  577. package/utils.d.ts +2 -6
  578. package/utils.js +4 -39
  579. package/utils.js.map +1 -1
  580. package/vercel-postgres/driver.cjs +5 -10
  581. package/vercel-postgres/driver.cjs.map +1 -1
  582. package/vercel-postgres/driver.d.cts +4 -6
  583. package/vercel-postgres/driver.d.ts +4 -6
  584. package/vercel-postgres/driver.js +5 -10
  585. package/vercel-postgres/driver.js.map +1 -1
  586. package/vercel-postgres/session.cjs +9 -18
  587. package/vercel-postgres/session.cjs.map +1 -1
  588. package/vercel-postgres/session.d.cts +4 -5
  589. package/vercel-postgres/session.d.ts +4 -5
  590. package/vercel-postgres/session.js +9 -18
  591. package/vercel-postgres/session.js.map +1 -1
  592. package/version.cjs +1 -1
  593. package/version.d.cts +1 -1
  594. package/version.d.ts +1 -1
  595. package/version.js +1 -1
  596. package/xata-http/driver.cjs +4 -7
  597. package/xata-http/driver.cjs.map +1 -1
  598. package/xata-http/driver.d.cts +2 -4
  599. package/xata-http/driver.d.ts +2 -4
  600. package/xata-http/driver.js +4 -7
  601. package/xata-http/driver.js.map +1 -1
  602. package/xata-http/session.cjs +6 -8
  603. package/xata-http/session.cjs.map +1 -1
  604. package/xata-http/session.d.cts +4 -5
  605. package/xata-http/session.d.ts +4 -5
  606. package/xata-http/session.js +6 -8
  607. package/xata-http/session.js.map +1 -1
  608. package/extension-core/gel/index.cjs +0 -33
  609. package/extension-core/gel/index.cjs.map +0 -1
  610. package/extension-core/gel/index.d.cts +0 -67
  611. package/extension-core/gel/index.d.ts +0 -67
  612. package/extension-core/gel/index.js +0 -9
  613. package/extension-core/gel/index.js.map +0 -1
  614. package/extension-core/index.cjs +0 -42
  615. package/extension-core/index.cjs.map +0 -1
  616. package/extension-core/index.d.cts +0 -9
  617. package/extension-core/index.d.ts +0 -9
  618. package/extension-core/index.js +0 -15
  619. package/extension-core/index.js.map +0 -1
  620. package/extension-core/mysql/index.cjs +0 -33
  621. package/extension-core/mysql/index.cjs.map +0 -1
  622. package/extension-core/mysql/index.d.cts +0 -69
  623. package/extension-core/mysql/index.d.ts +0 -69
  624. package/extension-core/mysql/index.js +0 -9
  625. package/extension-core/mysql/index.js.map +0 -1
  626. package/extension-core/pg/index.cjs +0 -33
  627. package/extension-core/pg/index.cjs.map +0 -1
  628. package/extension-core/pg/index.d.cts +0 -67
  629. package/extension-core/pg/index.d.ts +0 -67
  630. package/extension-core/pg/index.js +0 -9
  631. package/extension-core/pg/index.js.map +0 -1
  632. package/extension-core/singlestore/index.cjs +0 -33
  633. package/extension-core/singlestore/index.cjs.map +0 -1
  634. package/extension-core/singlestore/index.d.cts +0 -67
  635. package/extension-core/singlestore/index.d.ts +0 -67
  636. package/extension-core/singlestore/index.js +0 -9
  637. package/extension-core/singlestore/index.js.map +0 -1
  638. package/extension-core/sqlite/index.cjs +0 -33
  639. package/extension-core/sqlite/index.cjs.map +0 -1
  640. package/extension-core/sqlite/index.d.cts +0 -68
  641. package/extension-core/sqlite/index.d.ts +0 -68
  642. package/extension-core/sqlite/index.js +0 -9
  643. package/extension-core/sqlite/index.js.map +0 -1
  644. package/extensions/hook/gel/index.cjs +0 -47
  645. package/extensions/hook/gel/index.cjs.map +0 -1
  646. package/extensions/hook/gel/index.d.cts +0 -11
  647. package/extensions/hook/gel/index.d.ts +0 -11
  648. package/extensions/hook/gel/index.js +0 -22
  649. package/extensions/hook/gel/index.js.map +0 -1
  650. package/extensions/hook/mysql/index.cjs +0 -47
  651. package/extensions/hook/mysql/index.cjs.map +0 -1
  652. package/extensions/hook/mysql/index.d.cts +0 -11
  653. package/extensions/hook/mysql/index.d.ts +0 -11
  654. package/extensions/hook/mysql/index.js +0 -22
  655. package/extensions/hook/mysql/index.js.map +0 -1
  656. package/extensions/hook/pg/index.cjs +0 -47
  657. package/extensions/hook/pg/index.cjs.map +0 -1
  658. package/extensions/hook/pg/index.d.cts +0 -11
  659. package/extensions/hook/pg/index.d.ts +0 -11
  660. package/extensions/hook/pg/index.js +0 -22
  661. package/extensions/hook/pg/index.js.map +0 -1
  662. package/extensions/hook/singlestore/index.cjs +0 -47
  663. package/extensions/hook/singlestore/index.cjs.map +0 -1
  664. package/extensions/hook/singlestore/index.d.cts +0 -11
  665. package/extensions/hook/singlestore/index.d.ts +0 -11
  666. package/extensions/hook/singlestore/index.js +0 -22
  667. package/extensions/hook/singlestore/index.js.map +0 -1
  668. package/extensions/hook/sqlite/index.cjs +0 -47
  669. package/extensions/hook/sqlite/index.cjs.map +0 -1
  670. package/extensions/hook/sqlite/index.d.cts +0 -11
  671. package/extensions/hook/sqlite/index.d.ts +0 -11
  672. package/extensions/hook/sqlite/index.js +0 -22
  673. package/extensions/hook/sqlite/index.js.map +0 -1
  674. package/extensions/s3-file/common.cjs +0 -313
  675. package/extensions/s3-file/common.cjs.map +0 -1
  676. package/extensions/s3-file/common.d.cts +0 -88
  677. package/extensions/s3-file/common.d.ts +0 -88
  678. package/extensions/s3-file/common.js +0 -280
  679. package/extensions/s3-file/common.js.map +0 -1
  680. package/extensions/s3-file/gel/column.cjs +0 -113
  681. package/extensions/s3-file/gel/column.cjs.map +0 -1
  682. package/extensions/s3-file/gel/column.d.cts +0 -105
  683. package/extensions/s3-file/gel/column.d.ts +0 -105
  684. package/extensions/s3-file/gel/column.js +0 -92
  685. package/extensions/s3-file/gel/column.js.map +0 -1
  686. package/extensions/s3-file/gel/extension.cjs +0 -262
  687. package/extensions/s3-file/gel/extension.cjs.map +0 -1
  688. package/extensions/s3-file/gel/extension.d.cts +0 -18
  689. package/extensions/s3-file/gel/extension.d.ts +0 -18
  690. package/extensions/s3-file/gel/extension.js +0 -248
  691. package/extensions/s3-file/gel/extension.js.map +0 -1
  692. package/extensions/s3-file/gel/index.cjs +0 -25
  693. package/extensions/s3-file/gel/index.cjs.map +0 -1
  694. package/extensions/s3-file/gel/index.d.cts +0 -2
  695. package/extensions/s3-file/gel/index.d.ts +0 -2
  696. package/extensions/s3-file/gel/index.js +0 -3
  697. package/extensions/s3-file/gel/index.js.map +0 -1
  698. package/extensions/s3-file/index.cjs +0 -23
  699. package/extensions/s3-file/index.cjs.map +0 -1
  700. package/extensions/s3-file/index.d.cts +0 -1
  701. package/extensions/s3-file/index.d.ts +0 -1
  702. package/extensions/s3-file/index.js +0 -2
  703. package/extensions/s3-file/index.js.map +0 -1
  704. package/extensions/s3-file/mysql/column.cjs +0 -110
  705. package/extensions/s3-file/mysql/column.cjs.map +0 -1
  706. package/extensions/s3-file/mysql/column.d.cts +0 -63
  707. package/extensions/s3-file/mysql/column.d.ts +0 -63
  708. package/extensions/s3-file/mysql/column.js +0 -86
  709. package/extensions/s3-file/mysql/column.js.map +0 -1
  710. package/extensions/s3-file/mysql/extension.cjs +0 -242
  711. package/extensions/s3-file/mysql/extension.cjs.map +0 -1
  712. package/extensions/s3-file/mysql/extension.d.cts +0 -18
  713. package/extensions/s3-file/mysql/extension.d.ts +0 -18
  714. package/extensions/s3-file/mysql/extension.js +0 -228
  715. package/extensions/s3-file/mysql/extension.js.map +0 -1
  716. package/extensions/s3-file/mysql/index.cjs +0 -25
  717. package/extensions/s3-file/mysql/index.cjs.map +0 -1
  718. package/extensions/s3-file/mysql/index.d.cts +0 -2
  719. package/extensions/s3-file/mysql/index.d.ts +0 -2
  720. package/extensions/s3-file/mysql/index.js +0 -3
  721. package/extensions/s3-file/mysql/index.js.map +0 -1
  722. package/extensions/s3-file/pg/column.cjs +0 -113
  723. package/extensions/s3-file/pg/column.cjs.map +0 -1
  724. package/extensions/s3-file/pg/column.d.cts +0 -105
  725. package/extensions/s3-file/pg/column.d.ts +0 -105
  726. package/extensions/s3-file/pg/column.js +0 -92
  727. package/extensions/s3-file/pg/column.js.map +0 -1
  728. package/extensions/s3-file/pg/extension.cjs +0 -264
  729. package/extensions/s3-file/pg/extension.cjs.map +0 -1
  730. package/extensions/s3-file/pg/extension.d.cts +0 -18
  731. package/extensions/s3-file/pg/extension.d.ts +0 -18
  732. package/extensions/s3-file/pg/extension.js +0 -250
  733. package/extensions/s3-file/pg/extension.js.map +0 -1
  734. package/extensions/s3-file/pg/index.cjs +0 -25
  735. package/extensions/s3-file/pg/index.cjs.map +0 -1
  736. package/extensions/s3-file/pg/index.d.cts +0 -2
  737. package/extensions/s3-file/pg/index.d.ts +0 -2
  738. package/extensions/s3-file/pg/index.js +0 -3
  739. package/extensions/s3-file/pg/index.js.map +0 -1
  740. package/extensions/s3-file/singlestore/column.cjs +0 -110
  741. package/extensions/s3-file/singlestore/column.cjs.map +0 -1
  742. package/extensions/s3-file/singlestore/column.d.cts +0 -63
  743. package/extensions/s3-file/singlestore/column.d.ts +0 -63
  744. package/extensions/s3-file/singlestore/column.js +0 -86
  745. package/extensions/s3-file/singlestore/column.js.map +0 -1
  746. package/extensions/s3-file/singlestore/extension.cjs +0 -239
  747. package/extensions/s3-file/singlestore/extension.cjs.map +0 -1
  748. package/extensions/s3-file/singlestore/extension.d.cts +0 -18
  749. package/extensions/s3-file/singlestore/extension.d.ts +0 -18
  750. package/extensions/s3-file/singlestore/extension.js +0 -225
  751. package/extensions/s3-file/singlestore/extension.js.map +0 -1
  752. package/extensions/s3-file/singlestore/index.cjs +0 -25
  753. package/extensions/s3-file/singlestore/index.cjs.map +0 -1
  754. package/extensions/s3-file/singlestore/index.d.cts +0 -2
  755. package/extensions/s3-file/singlestore/index.d.ts +0 -2
  756. package/extensions/s3-file/singlestore/index.js +0 -3
  757. package/extensions/s3-file/singlestore/index.js.map +0 -1
  758. package/extensions/s3-file/sqlite/column.cjs +0 -110
  759. package/extensions/s3-file/sqlite/column.cjs.map +0 -1
  760. package/extensions/s3-file/sqlite/column.d.cts +0 -63
  761. package/extensions/s3-file/sqlite/column.d.ts +0 -63
  762. package/extensions/s3-file/sqlite/column.js +0 -86
  763. package/extensions/s3-file/sqlite/column.js.map +0 -1
  764. package/extensions/s3-file/sqlite/extension.cjs +0 -242
  765. package/extensions/s3-file/sqlite/extension.cjs.map +0 -1
  766. package/extensions/s3-file/sqlite/extension.d.cts +0 -18
  767. package/extensions/s3-file/sqlite/extension.d.ts +0 -18
  768. package/extensions/s3-file/sqlite/extension.js +0 -228
  769. package/extensions/s3-file/sqlite/extension.js.map +0 -1
  770. package/extensions/s3-file/sqlite/index.cjs +0 -25
  771. package/extensions/s3-file/sqlite/index.cjs.map +0 -1
  772. package/extensions/s3-file/sqlite/index.d.cts +0 -2
  773. package/extensions/s3-file/sqlite/index.d.ts +0 -2
  774. package/extensions/s3-file/sqlite/index.js +0 -3
  775. package/extensions/s3-file/sqlite/index.js.map +0 -1
@@ -1,9 +1,8 @@
1
1
  import { entityKind, is } from "../../entity.js";
2
- import { requiredExtension } from "../../extension-core/index.js";
3
2
  import { QueryPromise } from "../../query-promise.js";
4
- import { ExtensionParam, Param, SQL, sql } from "../../sql/sql.js";
3
+ import { Param, SQL, sql } from "../../sql/sql.js";
5
4
  import { Columns, Table } from "../../table.js";
6
- import { columnExtensionsCheck, haveSameKeys, mapUpdateSet } from "../../utils.js";
5
+ import { haveSameKeys, mapUpdateSet } from "../../utils.js";
7
6
  import { extractUsedTable } from "../utils.js";
8
7
  import { QueryBuilder } from "./query-builder.js";
9
8
  class MySqlInsertBuilder {
@@ -23,28 +22,15 @@ class MySqlInsertBuilder {
23
22
  if (values.length === 0) {
24
23
  throw new Error("values() must be called with at least one value");
25
24
  }
26
- const extColumns = /* @__PURE__ */ new Set();
27
- const cols = this.table[Table.Symbol.Columns];
28
25
  const mappedValues = values.map((entry) => {
29
26
  const result = {};
27
+ const cols = this.table[Table.Symbol.Columns];
30
28
  for (const colKey of Object.keys(entry)) {
31
29
  const colValue = entry[colKey];
32
- if (is(colValue, SQL)) {
33
- result[colKey] = colValue;
34
- continue;
35
- }
36
- if (cols[colKey][requiredExtension]) {
37
- extColumns.add(colKey);
38
- result[colKey] = new ExtensionParam(cols[colKey][requiredExtension], colValue, cols[colKey]);
39
- continue;
40
- }
41
- result[colKey] = new Param(colValue, cols[colKey]);
30
+ result[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);
42
31
  }
43
32
  return result;
44
33
  });
45
- for (const colKey of extColumns.values()) {
46
- columnExtensionsCheck(cols[colKey], this.session.extensions);
47
- }
48
34
  return new MySqlInsertBase(this.table, mappedValues, this.shouldIgnore, this.session, this.dialect);
49
35
  }
50
36
  select(selectQuery) {
@@ -94,11 +80,7 @@ class MySqlInsertBase extends QueryPromise {
94
80
  * ```
95
81
  */
96
82
  onDuplicateKeyUpdate(config) {
97
- const setSql = this.dialect.buildUpdateSet(
98
- this.config.table,
99
- mapUpdateSet(this.config.table, config.set, this.session.extensions),
100
- this.session.extensions
101
- );
83
+ const setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));
102
84
  this.config.onConflict = sql`update ${setSql}`;
103
85
  return this;
104
86
  }
@@ -114,14 +96,14 @@ class MySqlInsertBase extends QueryPromise {
114
96
  }
115
97
  /** @internal */
116
98
  getSQL() {
117
- return this.dialect.buildInsertQuery(this.config, this.session.extensions).sql;
99
+ return this.dialect.buildInsertQuery(this.config).sql;
118
100
  }
119
101
  toSQL() {
120
102
  const { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());
121
103
  return rest;
122
104
  }
123
105
  prepare() {
124
- const { sql: sql2, generatedIds } = this.dialect.buildInsertQuery(this.config, this.session.extensions);
106
+ const { sql: sql2, generatedIds } = this.dialect.buildInsertQuery(this.config);
125
107
  return this.session.prepareQuery(
126
108
  this.dialect.sqlToQuery(sql2),
127
109
  void 0,
@@ -132,13 +114,7 @@ class MySqlInsertBase extends QueryPromise {
132
114
  type: "insert",
133
115
  tables: extractUsedTable(this.config.table)
134
116
  },
135
- this.cacheConfig,
136
- {
137
- query: "insert",
138
- dialect: this.dialect,
139
- session: this.session,
140
- config: this.config
141
- }
117
+ this.cacheConfig
142
118
  );
143
119
  }
144
120
  execute = (placeholderValues) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/query-builders/insert.ts"],"sourcesContent":["import type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { requiredExtension } from '~/extension-core/index.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type {\n\tAnyMySqlQueryResultHKT,\n\tMySqlPreparedQueryConfig,\n\tMySqlQueryResultHKT,\n\tMySqlQueryResultKind,\n\tMySqlSession,\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { ExtensionParam, Param, SQL, sql } from '~/sql/sql.ts';\nimport type { InferModelFromColumns } from '~/table.ts';\nimport { Columns, Table } from '~/table.ts';\nimport { columnExtensionsCheck, haveSameKeys, mapUpdateSet } from '~/utils.ts';\nimport type { AnyMySqlColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsOrdered } from './select.types.ts';\nimport type { MySqlUpdateSetSource } from './update.ts';\n\nexport interface MySqlInsertConfig<TTable extends MySqlTable = MySqlTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | MySqlInsertSelectQueryBuilder<TTable> | SQL;\n\tignore: boolean;\n\tonConflict?: SQL;\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n}\n\nexport type AnyMySqlInsertConfig = MySqlInsertConfig<MySqlTable>;\n\nexport type MySqlInsertValue<TTable extends MySqlTable> =\n\t& {\n\t\t[Key in keyof TTable['$inferInsert']]: TTable['$inferInsert'][Key] | SQL | Placeholder;\n\t}\n\t& {};\n\nexport type MySqlInsertSelectQueryBuilder<TTable extends MySqlTable> = TypedQueryBuilder<\n\t{ [K in keyof TTable['$inferInsert']]: AnyMySqlColumn | SQL | SQL.Aliased | TTable['$inferInsert'][K] }\n>;\n\nexport class MySqlInsertBuilder<\n\tTTable extends MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n> {\n\tstatic readonly [entityKind]: string = 'MySqlInsertBuilder';\n\n\tprivate shouldIgnore = false;\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: MySqlSession,\n\t\tprivate dialect: MySqlDialect,\n\t) {}\n\n\tignore(): this {\n\t\tthis.shouldIgnore = true;\n\t\treturn this;\n\t}\n\n\tvalues(value: MySqlInsertValue<TTable>): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tvalues(values: MySqlInsertValue<TTable>[]): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tvalues(\n\t\tvalues: MySqlInsertValue<TTable> | MySqlInsertValue<TTable>[],\n\t): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\n\t\tconst extColumns = new Set<string>();\n\t\tconst cols = this.table[Table.Symbol.Columns];\n\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\n\t\t\t\tif (is(colValue, SQL)) {\n\t\t\t\t\tresult[colKey] = colValue;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (cols[colKey]![requiredExtension]) {\n\t\t\t\t\textColumns.add(colKey);\n\t\t\t\t\tresult[colKey] = new ExtensionParam(cols[colKey]![requiredExtension], colValue, cols[colKey]);\n\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tresult[colKey] = new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\tfor (const colKey of extColumns.values()) {\n\t\t\tcolumnExtensionsCheck(cols[colKey]!, this.session.extensions);\n\t\t}\n\n\t\treturn new MySqlInsertBase(this.table, mappedValues, this.shouldIgnore, this.session, this.dialect);\n\t}\n\n\tselect(\n\t\tselectQuery: (qb: QueryBuilder) => MySqlInsertSelectQueryBuilder<TTable>,\n\t): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(selectQuery: SQL): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(selectQuery: MySqlInsertSelectQueryBuilder<TTable>): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| MySqlInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => MySqlInsertSelectQueryBuilder<TTable> | SQL),\n\t): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[Columns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new MySqlInsertBase(this.table, select, this.shouldIgnore, this.session, this.dialect, true);\n\t}\n}\n\nexport type MySqlInsertWithout<T extends AnyMySqlInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tMySqlInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['queryResult'],\n\t\t\t\tT['_']['preparedQueryHKT'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | '$returning'\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type MySqlInsertDynamic<T extends AnyMySqlInsert> = MySqlInsert<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['preparedQueryHKT'],\n\tT['_']['returning']\n>;\n\nexport type MySqlInsertPrepare<\n\tT extends AnyMySqlInsert,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n> = PreparedQueryKind<\n\tT['_']['preparedQueryHKT'],\n\tMySqlPreparedQueryConfig & {\n\t\texecute: TReturning extends undefined ? MySqlQueryResultKind<T['_']['queryResult'], never> : TReturning[];\n\t\titerator: never;\n\t},\n\ttrue\n>;\n\nexport type MySqlInsertOnDuplicateKeyUpdateConfig<T extends AnyMySqlInsert> = {\n\tset: MySqlUpdateSetSource<T['_']['table']>;\n};\n\nexport type MySqlInsert<\n\tTTable extends MySqlTable = MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT = AnyMySqlQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase = PreparedQueryHKTBase,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n> = MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT, TReturning, true, never>;\n\nexport type MySqlInsertReturning<\n\tT extends AnyMySqlInsert,\n\tTDynamic extends boolean,\n> = MySqlInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['preparedQueryHKT'],\n\tInferModelFromColumns<GetPrimarySerialOrDefaultKeys<T['_']['table']['_']['columns']>>,\n\tTDynamic,\n\tT['_']['excludedMethods'] | '$returning'\n>;\n\nexport type AnyMySqlInsert = MySqlInsertBase<any, any, any, any, any, any>;\n\nexport interface MySqlInsertBase<\n\tTTable extends MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[], 'mysql'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'mysql';\n\t\treadonly table: TTable;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly preparedQueryHKT: TPreparedQueryHKT;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly returning: TReturning;\n\t\treadonly result: TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport type PrimaryKeyKeys<T extends Record<string, AnyMySqlColumn>> = {\n\t[K in keyof T]: T[K]['_']['isPrimaryKey'] extends true ? T[K]['_']['isAutoincrement'] extends true ? K\n\t\t: T[K]['_']['hasRuntimeDefault'] extends true ? T[K]['_']['isPrimaryKey'] extends true ? K : never\n\t\t: never\n\t\t: T[K]['_']['hasRuntimeDefault'] extends true ? T[K]['_']['isPrimaryKey'] extends true ? K : never\n\t\t: never;\n}[keyof T];\n\nexport type GetPrimarySerialOrDefaultKeys<T extends Record<string, AnyMySqlColumn>> = {\n\t[K in PrimaryKeyKeys<T>]: T[K];\n};\n\nexport class MySqlInsertBase<\n\tTTable extends MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[], 'mysql'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'MySqlInsert';\n\n\tdeclare protected $table: TTable;\n\n\tprivate config: MySqlInsertConfig<TTable>;\n\tprotected cacheConfig?: WithCacheConfig;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: MySqlInsertConfig['values'],\n\t\tignore: boolean,\n\t\tprivate session: MySqlSession,\n\t\tprivate dialect: MySqlDialect,\n\t\tselect?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, select, ignore };\n\t}\n\n\t/**\n\t * Adds an `on duplicate key update` clause to the query.\n\t *\n\t * Calling this method will update the row if any unique index conflicts. MySQL will automatically determine the conflict target based on the primary key and unique indexes.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-duplicate-key-update}\n\t *\n\t * @param config The `set` clause\n\t *\n\t * @example\n\t * ```ts\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW'})\n\t * .onDuplicateKeyUpdate({ set: { brand: 'Porsche' }});\n\t * ```\n\t *\n\t * While MySQL does not directly support doing nothing on conflict, you can perform a no-op by setting any column's value to itself and achieve the same effect:\n\t *\n\t * ```ts\n\t * import { sql } from 'drizzle-orm';\n\t *\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onDuplicateKeyUpdate({ set: { id: sql`id` } });\n\t * ```\n\t */\n\tonDuplicateKeyUpdate(\n\t\tconfig: MySqlInsertOnDuplicateKeyUpdateConfig<this>,\n\t): MySqlInsertWithout<this, TDynamic, 'onDuplicateKeyUpdate'> {\n\t\tconst setSql = this.dialect.buildUpdateSet(\n\t\t\tthis.config.table,\n\t\t\tmapUpdateSet(this.config.table, config.set, this.session.extensions),\n\t\t\tthis.session.extensions,\n\t\t);\n\t\tthis.config.onConflict = sql`update ${setSql}`;\n\t\treturn this as any;\n\t}\n\n\t$returningId(): MySqlInsertWithout<\n\t\tMySqlInsertReturning<this, TDynamic>,\n\t\tTDynamic,\n\t\t'$returningId'\n\t> {\n\t\tconst returning: SelectedFieldsOrdered = [];\n\t\tfor (const [key, value] of Object.entries(this.config.table[Table.Symbol.Columns])) {\n\t\t\tif (value.primary) {\n\t\t\t\treturning.push({ field: value, path: [key] });\n\t\t\t}\n\t\t}\n\t\tthis.config.returning = returning;\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config, this.session.extensions).sql;\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\tprepare(): MySqlInsertPrepare<this, TReturning> {\n\t\tconst { sql, generatedIds } = this.dialect.buildInsertQuery(this.config, this.session.extensions);\n\t\treturn this.session.prepareQuery(\n\t\t\tthis.dialect.sqlToQuery(sql),\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tgeneratedIds,\n\t\t\tthis.config.returning,\n\t\t\t{\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t},\n\t\t\tthis.cacheConfig,\n\t\t\t{\n\t\t\t\tquery: 'insert',\n\t\t\t\tdialect: this.dialect,\n\t\t\t\tsession: this.session,\n\t\t\t\tconfig: this.config,\n\t\t\t},\n\t\t) as MySqlInsertPrepare<this, TReturning>;\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this.prepare().execute(placeholderValues);\n\t};\n\n\tprivate createIterator = (): ReturnType<this['prepare']>['iterator'] => {\n\t\tconst self = this;\n\t\treturn async function*(placeholderValues) {\n\t\t\tyield* self.prepare().iterator(placeholderValues);\n\t\t};\n\t};\n\n\titerator = this.createIterator();\n\n\t$dynamic(): MySqlInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["sql"]}
1
+ {"version":3,"sources":["../../../src/mysql-core/query-builders/insert.ts"],"sourcesContent":["import type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type {\n\tAnyMySqlQueryResultHKT,\n\tMySqlPreparedQueryConfig,\n\tMySqlQueryResultHKT,\n\tMySqlQueryResultKind,\n\tMySqlSession,\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL, sql } from '~/sql/sql.ts';\nimport type { InferModelFromColumns } from '~/table.ts';\nimport { Columns, Table } from '~/table.ts';\nimport { haveSameKeys, mapUpdateSet } from '~/utils.ts';\nimport type { AnyMySqlColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsOrdered } from './select.types.ts';\nimport type { MySqlUpdateSetSource } from './update.ts';\n\nexport interface MySqlInsertConfig<TTable extends MySqlTable = MySqlTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | MySqlInsertSelectQueryBuilder<TTable> | SQL;\n\tignore: boolean;\n\tonConflict?: SQL;\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n}\n\nexport type AnyMySqlInsertConfig = MySqlInsertConfig<MySqlTable>;\n\nexport type MySqlInsertValue<TTable extends MySqlTable> =\n\t& {\n\t\t[Key in keyof TTable['$inferInsert']]: TTable['$inferInsert'][Key] | SQL | Placeholder;\n\t}\n\t& {};\n\nexport type MySqlInsertSelectQueryBuilder<TTable extends MySqlTable> = TypedQueryBuilder<\n\t{ [K in keyof TTable['$inferInsert']]: AnyMySqlColumn | SQL | SQL.Aliased | TTable['$inferInsert'][K] }\n>;\n\nexport class MySqlInsertBuilder<\n\tTTable extends MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n> {\n\tstatic readonly [entityKind]: string = 'MySqlInsertBuilder';\n\n\tprivate shouldIgnore = false;\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: MySqlSession,\n\t\tprivate dialect: MySqlDialect,\n\t) {}\n\n\tignore(): this {\n\t\tthis.shouldIgnore = true;\n\t\treturn this;\n\t}\n\n\tvalues(value: MySqlInsertValue<TTable>): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tvalues(values: MySqlInsertValue<TTable>[]): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tvalues(\n\t\tvalues: MySqlInsertValue<TTable> | MySqlInsertValue<TTable>[],\n\t): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\treturn new MySqlInsertBase(this.table, mappedValues, this.shouldIgnore, this.session, this.dialect);\n\t}\n\n\tselect(\n\t\tselectQuery: (qb: QueryBuilder) => MySqlInsertSelectQueryBuilder<TTable>,\n\t): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(selectQuery: SQL): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(selectQuery: MySqlInsertSelectQueryBuilder<TTable>): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| MySqlInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => MySqlInsertSelectQueryBuilder<TTable> | SQL),\n\t): MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[Columns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new MySqlInsertBase(this.table, select, this.shouldIgnore, this.session, this.dialect, true);\n\t}\n}\n\nexport type MySqlInsertWithout<T extends AnyMySqlInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tMySqlInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['queryResult'],\n\t\t\t\tT['_']['preparedQueryHKT'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | '$returning'\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type MySqlInsertDynamic<T extends AnyMySqlInsert> = MySqlInsert<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['preparedQueryHKT'],\n\tT['_']['returning']\n>;\n\nexport type MySqlInsertPrepare<\n\tT extends AnyMySqlInsert,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n> = PreparedQueryKind<\n\tT['_']['preparedQueryHKT'],\n\tMySqlPreparedQueryConfig & {\n\t\texecute: TReturning extends undefined ? MySqlQueryResultKind<T['_']['queryResult'], never> : TReturning[];\n\t\titerator: never;\n\t},\n\ttrue\n>;\n\nexport type MySqlInsertOnDuplicateKeyUpdateConfig<T extends AnyMySqlInsert> = {\n\tset: MySqlUpdateSetSource<T['_']['table']>;\n};\n\nexport type MySqlInsert<\n\tTTable extends MySqlTable = MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT = AnyMySqlQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase = PreparedQueryHKTBase,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n> = MySqlInsertBase<TTable, TQueryResult, TPreparedQueryHKT, TReturning, true, never>;\n\nexport type MySqlInsertReturning<\n\tT extends AnyMySqlInsert,\n\tTDynamic extends boolean,\n> = MySqlInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['preparedQueryHKT'],\n\tInferModelFromColumns<GetPrimarySerialOrDefaultKeys<T['_']['table']['_']['columns']>>,\n\tTDynamic,\n\tT['_']['excludedMethods'] | '$returning'\n>;\n\nexport type AnyMySqlInsert = MySqlInsertBase<any, any, any, any, any, any>;\n\nexport interface MySqlInsertBase<\n\tTTable extends MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[], 'mysql'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'mysql';\n\t\treadonly table: TTable;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly preparedQueryHKT: TPreparedQueryHKT;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly returning: TReturning;\n\t\treadonly result: TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport type PrimaryKeyKeys<T extends Record<string, AnyMySqlColumn>> = {\n\t[K in keyof T]: T[K]['_']['isPrimaryKey'] extends true ? T[K]['_']['isAutoincrement'] extends true ? K\n\t\t: T[K]['_']['hasRuntimeDefault'] extends true ? T[K]['_']['isPrimaryKey'] extends true ? K : never\n\t\t: never\n\t\t: T[K]['_']['hasRuntimeDefault'] extends true ? T[K]['_']['isPrimaryKey'] extends true ? K : never\n\t\t: never;\n}[keyof T];\n\nexport type GetPrimarySerialOrDefaultKeys<T extends Record<string, AnyMySqlColumn>> = {\n\t[K in PrimaryKeyKeys<T>]: T[K];\n};\n\nexport class MySqlInsertBase<\n\tTTable extends MySqlTable,\n\tTQueryResult extends MySqlQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? MySqlQueryResultKind<TQueryResult, never> : TReturning[], 'mysql'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'MySqlInsert';\n\n\tdeclare protected $table: TTable;\n\n\tprivate config: MySqlInsertConfig<TTable>;\n\tprotected cacheConfig?: WithCacheConfig;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: MySqlInsertConfig['values'],\n\t\tignore: boolean,\n\t\tprivate session: MySqlSession,\n\t\tprivate dialect: MySqlDialect,\n\t\tselect?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, select, ignore };\n\t}\n\n\t/**\n\t * Adds an `on duplicate key update` clause to the query.\n\t *\n\t * Calling this method will update the row if any unique index conflicts. MySQL will automatically determine the conflict target based on the primary key and unique indexes.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-duplicate-key-update}\n\t *\n\t * @param config The `set` clause\n\t *\n\t * @example\n\t * ```ts\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW'})\n\t * .onDuplicateKeyUpdate({ set: { brand: 'Porsche' }});\n\t * ```\n\t *\n\t * While MySQL does not directly support doing nothing on conflict, you can perform a no-op by setting any column's value to itself and achieve the same effect:\n\t *\n\t * ```ts\n\t * import { sql } from 'drizzle-orm';\n\t *\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onDuplicateKeyUpdate({ set: { id: sql`id` } });\n\t * ```\n\t */\n\tonDuplicateKeyUpdate(\n\t\tconfig: MySqlInsertOnDuplicateKeyUpdateConfig<this>,\n\t): MySqlInsertWithout<this, TDynamic, 'onDuplicateKeyUpdate'> {\n\t\tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t\tthis.config.onConflict = sql`update ${setSql}`;\n\t\treturn this as any;\n\t}\n\n\t$returningId(): MySqlInsertWithout<\n\t\tMySqlInsertReturning<this, TDynamic>,\n\t\tTDynamic,\n\t\t'$returningId'\n\t> {\n\t\tconst returning: SelectedFieldsOrdered = [];\n\t\tfor (const [key, value] of Object.entries(this.config.table[Table.Symbol.Columns])) {\n\t\t\tif (value.primary) {\n\t\t\t\treturning.push({ field: value, path: [key] });\n\t\t\t}\n\t\t}\n\t\tthis.config.returning = returning;\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config).sql;\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\tprepare(): MySqlInsertPrepare<this, TReturning> {\n\t\tconst { sql, generatedIds } = this.dialect.buildInsertQuery(this.config);\n\t\treturn this.session.prepareQuery(\n\t\t\tthis.dialect.sqlToQuery(sql),\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tgeneratedIds,\n\t\t\tthis.config.returning,\n\t\t\t{\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t},\n\t\t\tthis.cacheConfig,\n\t\t) as MySqlInsertPrepare<this, TReturning>;\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this.prepare().execute(placeholderValues);\n\t};\n\n\tprivate createIterator = (): ReturnType<this['prepare']>['iterator'] => {\n\t\tconst self = this;\n\t\treturn async function*(placeholderValues) {\n\t\t\tyield* self.prepare().iterator(placeholderValues);\n\t\t};\n\t};\n\n\titerator = this.createIterator();\n\n\t$dynamic(): MySqlInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"AACA,SAAS,YAAY,UAAU;AAa/B,SAAS,oBAAoB;AAG7B,SAAS,OAAO,KAAK,WAAW;AAEhC,SAAS,SAAS,aAAa;AAC/B,SAAS,cAAc,oBAAoB;AAE3C,SAAS,wBAAwB;AACjC,SAAS,oBAAoB;AAyBtB,MAAM,mBAIX;AAAA,EAKD,YACS,OACA,SACA,SACP;AAHO;AACA;AACA;AAAA,EACN;AAAA,EARH,QAAiB,UAAU,IAAY;AAAA,EAE/B,eAAe;AAAA,EAQvB,SAAe;AACd,SAAK,eAAe;AACpB,WAAO;AAAA,EACR;AAAA,EAIA,OACC,QAC2D;AAC3D,aAAS,MAAM,QAAQ,MAAM,IAAI,SAAS,CAAC,MAAM;AACjD,QAAI,OAAO,WAAW,GAAG;AACxB,YAAM,IAAI,MAAM,iDAAiD;AAAA,IAClE;AACA,UAAM,eAAe,OAAO,IAAI,CAAC,UAAU;AAC1C,YAAM,SAAsC,CAAC;AAC7C,YAAM,OAAO,KAAK,MAAM,MAAM,OAAO,OAAO;AAC5C,iBAAW,UAAU,OAAO,KAAK,KAAK,GAAG;AACxC,cAAM,WAAW,MAAM,MAA4B;AACnD,eAAO,MAAM,IAAI,GAAG,UAAU,GAAG,IAAI,WAAW,IAAI,MAAM,UAAU,KAAK,MAAM,CAAC;AAAA,MACjF;AACA,aAAO;AAAA,IACR,CAAC;AAED,WAAO,IAAI,gBAAgB,KAAK,OAAO,cAAc,KAAK,cAAc,KAAK,SAAS,KAAK,OAAO;AAAA,EACnG;AAAA,EAQA,OACC,aAI2D;AAC3D,UAAM,SAAS,OAAO,gBAAgB,aAAa,YAAY,IAAI,aAAa,CAAC,IAAI;AAErF,QACC,CAAC,GAAG,QAAQ,GAAG,KACZ,CAAC,aAAa,KAAK,MAAM,OAAO,GAAG,OAAO,EAAE,cAAc,GAC5D;AACD,YAAM,IAAI;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAEA,WAAO,IAAI,gBAAgB,KAAK,OAAO,QAAQ,KAAK,cAAc,KAAK,SAAS,KAAK,SAAS,IAAI;AAAA,EACnG;AACD;AAgGO,MAAM,wBAWH,aAIV;AAAA,EAQC,YACC,OACA,QACA,QACQ,SACA,SACR,QACC;AACD,UAAM;AAJE;AACA;AAIR,SAAK,SAAS,EAAE,OAAO,QAAuB,QAAQ,OAAO;AAAA,EAC9D;AAAA,EAjBA,QAA0B,UAAU,IAAY;AAAA,EAIxC;AAAA,EACE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAwCV,qBACC,QAC6D;AAC7D,UAAM,SAAS,KAAK,QAAQ,eAAe,KAAK,OAAO,OAAO,aAAa,KAAK,OAAO,OAAO,OAAO,GAAG,CAAC;AACzG,SAAK,OAAO,aAAa,aAAa,MAAM;AAC5C,WAAO;AAAA,EACR;AAAA,EAEA,eAIE;AACD,UAAM,YAAmC,CAAC;AAC1C,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,KAAK,OAAO,MAAM,MAAM,OAAO,OAAO,CAAC,GAAG;AACnF,UAAI,MAAM,SAAS;AAClB,kBAAU,KAAK,EAAE,OAAO,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC;AAAA,MAC7C;AAAA,IACD;AACA,SAAK,OAAO,YAAY;AACxB,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,SAAc;AACb,WAAO,KAAK,QAAQ,iBAAiB,KAAK,MAAM,EAAE;AAAA,EACnD;AAAA,EAEA,QAAe;AACd,UAAM,EAAE,SAAS,UAAU,GAAG,KAAK,IAAI,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC;AAC5E,WAAO;AAAA,EACR;AAAA,EAEA,UAAgD;AAC/C,UAAM,EAAE,KAAAA,MAAK,aAAa,IAAI,KAAK,QAAQ,iBAAiB,KAAK,MAAM;AACvE,WAAO,KAAK,QAAQ;AAAA,MACnB,KAAK,QAAQ,WAAWA,IAAG;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA,KAAK,OAAO;AAAA,MACZ;AAAA,QACC,MAAM;AAAA,QACN,QAAQ,iBAAiB,KAAK,OAAO,KAAK;AAAA,MAC3C;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AAAA,EAES,UAAkD,CAAC,sBAAsB;AACjF,WAAO,KAAK,QAAQ,EAAE,QAAQ,iBAAiB;AAAA,EAChD;AAAA,EAEQ,iBAAiB,MAA+C;AACvE,UAAM,OAAO;AACb,WAAO,iBAAgB,mBAAmB;AACzC,aAAO,KAAK,QAAQ,EAAE,SAAS,iBAAiB;AAAA,IACjD;AAAA,EACD;AAAA,EAEA,WAAW,KAAK,eAAe;AAAA,EAE/B,WAAqC;AACpC,WAAO;AAAA,EACR;AACD;","names":["sql"]}
@@ -83,17 +83,6 @@ class MySqlRelationalQuery extends import_query_promise.QueryPromise {
83
83
  static [import_entity.entityKind] = "MySqlRelationalQuery";
84
84
  prepare() {
85
85
  const { query, builtQuery } = this._toSQL();
86
- const extCfg = this.session.extensions?.length ? {
87
- query: "_query",
88
- session: this.session,
89
- dialect: this.dialect,
90
- tableNamesMap: this.tableNamesMap,
91
- tablesConfig: this.schema,
92
- tableConfig: this.tableConfig,
93
- mode: this.queryMode,
94
- planetscale: this.mode === "planetscale",
95
- config: query
96
- } : void 0;
97
86
  return this.session.prepareQuery(
98
87
  builtQuery,
99
88
  void 0,
@@ -103,12 +92,7 @@ class MySqlRelationalQuery extends import_query_promise.QueryPromise {
103
92
  return rows[0];
104
93
  }
105
94
  return rows;
106
- },
107
- void 0,
108
- void 0,
109
- void 0,
110
- void 0,
111
- extCfg
95
+ }
112
96
  );
113
97
  }
114
98
  _getQuery() {
@@ -120,7 +104,7 @@ class MySqlRelationalQuery extends import_query_promise.QueryPromise {
120
104
  tableConfig: this.tableConfig,
121
105
  queryConfig: this.config,
122
106
  tableAlias: this.tableConfig.tsName
123
- }, this.session.extensions) : this.dialect.buildRelationalQuery({
107
+ }) : this.dialect.buildRelationalQuery({
124
108
  fullSchema: this.fullSchema,
125
109
  schema: this.schema,
126
110
  tableNamesMap: this.tableNamesMap,
@@ -128,7 +112,7 @@ class MySqlRelationalQuery extends import_query_promise.QueryPromise {
128
112
  tableConfig: this.tableConfig,
129
113
  queryConfig: this.config,
130
114
  tableAlias: this.tableConfig.tsName
131
- }, this.session.extensions);
115
+ });
132
116
  return query;
133
117
  }
134
118
  _toSQL() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { BlankMySqlHookContext } from '~/extension-core/mysql/index.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmapRelationalRow,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { MySqlDialect } from '../dialect.ts';\nimport type {\n\tMode,\n\tMySqlPreparedQueryConfig,\n\tMySqlSession,\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n} from '../session.ts';\nimport type { MySqlTable } from '../table.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'MySqlRelationalQueryBuilder';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TSchema,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate mode: Mode,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? (config as DBQueryConfig<'many', true>) : {},\n\t\t\t'many',\n\t\t\tthis.mode,\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>(\n\t\tconfig?: KnownKeysOnly<TSelection, Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? { ...(config as DBQueryConfig<'many', true> | undefined), limit: 1 } : { limit: 1 },\n\t\t\t'first',\n\t\t\tthis.mode,\n\t\t);\n\t}\n}\n\nexport class MySqlRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'MySqlRelationalQuery';\n\n\tdeclare protected $brand: 'MySqlRelationalQuery';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate config: DBQueryConfig<'many', true> | true,\n\t\tprivate queryMode: 'many' | 'first',\n\t\tprivate mode?: Mode,\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\n\t\tconst extCfg: BlankMySqlHookContext | undefined = this.session.extensions?.length\n\t\t\t? {\n\t\t\t\tquery: '_query',\n\t\t\t\tsession: this.session,\n\t\t\t\tdialect: this.dialect,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttablesConfig: this.schema,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tmode: this.queryMode,\n\t\t\t\tplanetscale: this.mode === 'planetscale',\n\t\t\t\tconfig: query,\n\t\t\t}\n\t\t\t: undefined;\n\n\t\treturn this.session.prepareQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\t(rawRows) => {\n\t\t\t\tconst rows = rawRows.map((row) => mapRelationalRow(this.schema, this.tableConfig, row, query.selection));\n\t\t\t\tif (this.queryMode === 'first') {\n\t\t\t\t\treturn rows[0] as TResult;\n\t\t\t\t}\n\t\t\t\treturn rows as TResult;\n\t\t\t},\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\textCfg,\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, MySqlPreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\tconst query = this.mode === 'planetscale'\n\t\t\t? this.dialect.buildRelationalQueryWithoutLateralSubqueries({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t}, this.session.extensions)\n\t\t\t: this.dialect.buildRelationalQuery({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t}, this.session.extensions);\n\t\treturn query;\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql as SQL);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql as SQL;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmapRelationalRow,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { MySqlDialect } from '../dialect.ts';\nimport type {\n\tMode,\n\tMySqlPreparedQueryConfig,\n\tMySqlSession,\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n} from '../session.ts';\nimport type { MySqlTable } from '../table.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'MySqlRelationalQueryBuilder';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TSchema,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate mode: Mode,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? (config as DBQueryConfig<'many', true>) : {},\n\t\t\t'many',\n\t\t\tthis.mode,\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>(\n\t\tconfig?: KnownKeysOnly<TSelection, Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? { ...(config as DBQueryConfig<'many', true> | undefined), limit: 1 } : { limit: 1 },\n\t\t\t'first',\n\t\t\tthis.mode,\n\t\t);\n\t}\n}\n\nexport class MySqlRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'MySqlRelationalQuery';\n\n\tdeclare protected $brand: 'MySqlRelationalQuery';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate config: DBQueryConfig<'many', true> | true,\n\t\tprivate queryMode: 'many' | 'first',\n\t\tprivate mode?: Mode,\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\t\treturn this.session.prepareQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\t(rawRows) => {\n\t\t\t\tconst rows = rawRows.map((row) => mapRelationalRow(this.schema, this.tableConfig, row, query.selection));\n\t\t\t\tif (this.queryMode === 'first') {\n\t\t\t\t\treturn rows[0] as TResult;\n\t\t\t\t}\n\t\t\t\treturn rows as TResult;\n\t\t\t},\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, MySqlPreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\tconst query = this.mode === 'planetscale'\n\t\t\t? this.dialect.buildRelationalQueryWithoutLateralSubqueries({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t})\n\t\t\t: this.dialect.buildRelationalQuery({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t});\n\t\treturn query;\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql as SQL);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql as SQL;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAC3B,2BAA6B;AAC7B,uBAOO;AAaA,MAAM,uBAIX;AAAA,EAGD,YACS,YACA,QACA,eACA,OACA,aACA,SACA,SACA,MACP;AARO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,EACN;AAAA,EAXH,QAAiB,wBAAU,IAAY;AAAA,EAavC,SACC,QACyF;AACzF,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,SAAU,SAAyC,CAAC;AAAA,MACpD;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AAAA,EAEA,UACC,QACsG;AACtG,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,SAAS,EAAE,GAAI,QAAoD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;AAAA,MAC3F;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,6BAGH,kCAAsB;AAAA,EAK/B,YACS,YACA,QACA,eACA,OACA,aACA,SACA,SACA,QACA,WACA,MACP;AACD,UAAM;AAXE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,EAGT;AAAA,EAjBA,QAA0B,wBAAU,IAAY;AAAA,EAmBhD,UAAU;AACT,UAAM,EAAE,OAAO,WAAW,IAAI,KAAK,OAAO;AAC1C,WAAO,KAAK,QAAQ;AAAA,MACnB;AAAA,MACA;AAAA,MACA,CAAC,YAAY;AACZ,cAAM,OAAO,QAAQ,IAAI,CAAC,YAAQ,mCAAiB,KAAK,QAAQ,KAAK,aAAa,KAAK,MAAM,SAAS,CAAC;AACvG,YAAI,KAAK,cAAc,SAAS;AAC/B,iBAAO,KAAK,CAAC;AAAA,QACd;AACA,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AAAA,EAEQ,YAAY;AACnB,UAAM,QAAQ,KAAK,SAAS,gBACzB,KAAK,QAAQ,6CAA6C;AAAA,MAC3D,YAAY,KAAK;AAAA,MACjB,QAAQ,KAAK;AAAA,MACb,eAAe,KAAK;AAAA,MACpB,OAAO,KAAK;AAAA,MACZ,aAAa,KAAK;AAAA,MAClB,aAAa,KAAK;AAAA,MAClB,YAAY,KAAK,YAAY;AAAA,IAC9B,CAAC,IACC,KAAK,QAAQ,qBAAqB;AAAA,MACnC,YAAY,KAAK;AAAA,MACjB,QAAQ,KAAK;AAAA,MACb,eAAe,KAAK;AAAA,MACpB,OAAO,KAAK;AAAA,MACZ,aAAa,KAAK;AAAA,MAClB,aAAa,KAAK;AAAA,MAClB,YAAY,KAAK,YAAY;AAAA,IAC9B,CAAC;AACF,WAAO;AAAA,EACR;AAAA,EAEQ,SAA8E;AACrF,UAAM,QAAQ,KAAK,UAAU;AAE7B,UAAM,aAAa,KAAK,QAAQ,WAAW,MAAM,GAAU;AAE3D,WAAO,EAAE,YAAY,MAAM;AAAA,EAC5B;AAAA;AAAA,EAGA,SAAc;AACb,WAAO,KAAK,UAAU,EAAE;AAAA,EACzB;AAAA,EAEA,QAAe;AACd,WAAO,KAAK,OAAO,EAAE;AAAA,EACtB;AAAA,EAES,UAA4B;AACpC,WAAO,KAAK,QAAQ,EAAE,QAAQ;AAAA,EAC/B;AACD;","names":[]}
@@ -61,17 +61,6 @@ class MySqlRelationalQuery extends QueryPromise {
61
61
  static [entityKind] = "MySqlRelationalQuery";
62
62
  prepare() {
63
63
  const { query, builtQuery } = this._toSQL();
64
- const extCfg = this.session.extensions?.length ? {
65
- query: "_query",
66
- session: this.session,
67
- dialect: this.dialect,
68
- tableNamesMap: this.tableNamesMap,
69
- tablesConfig: this.schema,
70
- tableConfig: this.tableConfig,
71
- mode: this.queryMode,
72
- planetscale: this.mode === "planetscale",
73
- config: query
74
- } : void 0;
75
64
  return this.session.prepareQuery(
76
65
  builtQuery,
77
66
  void 0,
@@ -81,12 +70,7 @@ class MySqlRelationalQuery extends QueryPromise {
81
70
  return rows[0];
82
71
  }
83
72
  return rows;
84
- },
85
- void 0,
86
- void 0,
87
- void 0,
88
- void 0,
89
- extCfg
73
+ }
90
74
  );
91
75
  }
92
76
  _getQuery() {
@@ -98,7 +82,7 @@ class MySqlRelationalQuery extends QueryPromise {
98
82
  tableConfig: this.tableConfig,
99
83
  queryConfig: this.config,
100
84
  tableAlias: this.tableConfig.tsName
101
- }, this.session.extensions) : this.dialect.buildRelationalQuery({
85
+ }) : this.dialect.buildRelationalQuery({
102
86
  fullSchema: this.fullSchema,
103
87
  schema: this.schema,
104
88
  tableNamesMap: this.tableNamesMap,
@@ -106,7 +90,7 @@ class MySqlRelationalQuery extends QueryPromise {
106
90
  tableConfig: this.tableConfig,
107
91
  queryConfig: this.config,
108
92
  tableAlias: this.tableConfig.tsName
109
- }, this.session.extensions);
93
+ });
110
94
  return query;
111
95
  }
112
96
  _toSQL() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { BlankMySqlHookContext } from '~/extension-core/mysql/index.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmapRelationalRow,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { MySqlDialect } from '../dialect.ts';\nimport type {\n\tMode,\n\tMySqlPreparedQueryConfig,\n\tMySqlSession,\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n} from '../session.ts';\nimport type { MySqlTable } from '../table.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'MySqlRelationalQueryBuilder';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TSchema,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate mode: Mode,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? (config as DBQueryConfig<'many', true>) : {},\n\t\t\t'many',\n\t\t\tthis.mode,\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>(\n\t\tconfig?: KnownKeysOnly<TSelection, Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? { ...(config as DBQueryConfig<'many', true> | undefined), limit: 1 } : { limit: 1 },\n\t\t\t'first',\n\t\t\tthis.mode,\n\t\t);\n\t}\n}\n\nexport class MySqlRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'MySqlRelationalQuery';\n\n\tdeclare protected $brand: 'MySqlRelationalQuery';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate config: DBQueryConfig<'many', true> | true,\n\t\tprivate queryMode: 'many' | 'first',\n\t\tprivate mode?: Mode,\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\n\t\tconst extCfg: BlankMySqlHookContext | undefined = this.session.extensions?.length\n\t\t\t? {\n\t\t\t\tquery: '_query',\n\t\t\t\tsession: this.session,\n\t\t\t\tdialect: this.dialect,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttablesConfig: this.schema,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tmode: this.queryMode,\n\t\t\t\tplanetscale: this.mode === 'planetscale',\n\t\t\t\tconfig: query,\n\t\t\t}\n\t\t\t: undefined;\n\n\t\treturn this.session.prepareQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\t(rawRows) => {\n\t\t\t\tconst rows = rawRows.map((row) => mapRelationalRow(this.schema, this.tableConfig, row, query.selection));\n\t\t\t\tif (this.queryMode === 'first') {\n\t\t\t\t\treturn rows[0] as TResult;\n\t\t\t\t}\n\t\t\t\treturn rows as TResult;\n\t\t\t},\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\textCfg,\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, MySqlPreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\tconst query = this.mode === 'planetscale'\n\t\t\t? this.dialect.buildRelationalQueryWithoutLateralSubqueries({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t}, this.session.extensions)\n\t\t\t: this.dialect.buildRelationalQuery({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t}, this.session.extensions);\n\t\treturn query;\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql as SQL);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql as SQL;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmapRelationalRow,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { MySqlDialect } from '../dialect.ts';\nimport type {\n\tMode,\n\tMySqlPreparedQueryConfig,\n\tMySqlSession,\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n} from '../session.ts';\nimport type { MySqlTable } from '../table.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'MySqlRelationalQueryBuilder';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TSchema,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate mode: Mode,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', true, TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', true, TSchema, TFields>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? (config as DBQueryConfig<'many', true>) : {},\n\t\t\t'many',\n\t\t\tthis.mode,\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>(\n\t\tconfig?: KnownKeysOnly<TSelection, Omit<DBQueryConfig<'many', true, TSchema, TFields>, 'limit'>>,\n\t): MySqlRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new MySqlRelationalQuery(\n\t\t\tthis.fullSchema,\n\t\t\tthis.schema,\n\t\t\tthis.tableNamesMap,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig ? { ...(config as DBQueryConfig<'many', true> | undefined), limit: 1 } : { limit: 1 },\n\t\t\t'first',\n\t\t\tthis.mode,\n\t\t);\n\t}\n}\n\nexport class MySqlRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'MySqlRelationalQuery';\n\n\tdeclare protected $brand: 'MySqlRelationalQuery';\n\n\tconstructor(\n\t\tprivate fullSchema: Record<string, unknown>,\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate tableNamesMap: Record<string, string>,\n\t\tprivate table: MySqlTable,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate session: MySqlSession,\n\t\tprivate config: DBQueryConfig<'many', true> | true,\n\t\tprivate queryMode: 'many' | 'first',\n\t\tprivate mode?: Mode,\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\t\treturn this.session.prepareQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\t(rawRows) => {\n\t\t\t\tconst rows = rawRows.map((row) => mapRelationalRow(this.schema, this.tableConfig, row, query.selection));\n\t\t\t\tif (this.queryMode === 'first') {\n\t\t\t\t\treturn rows[0] as TResult;\n\t\t\t\t}\n\t\t\t\treturn rows as TResult;\n\t\t\t},\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, MySqlPreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\tconst query = this.mode === 'planetscale'\n\t\t\t? this.dialect.buildRelationalQueryWithoutLateralSubqueries({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t})\n\t\t\t: this.dialect.buildRelationalQuery({\n\t\t\t\tfullSchema: this.fullSchema,\n\t\t\t\tschema: this.schema,\n\t\t\t\ttableNamesMap: this.tableNamesMap,\n\t\t\t\ttable: this.table,\n\t\t\t\ttableConfig: this.tableConfig,\n\t\t\t\tqueryConfig: this.config,\n\t\t\t\ttableAlias: this.tableConfig.tsName,\n\t\t\t});\n\t\treturn query;\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql as SQL);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql as SQL;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAC3B,SAAS,oBAAoB;AAC7B;AAAA,EAIC;AAAA,OAGM;AAaA,MAAM,uBAIX;AAAA,EAGD,YACS,YACA,QACA,eACA,OACA,aACA,SACA,SACA,MACP;AARO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,EACN;AAAA,EAXH,QAAiB,UAAU,IAAY;AAAA,EAavC,SACC,QACyF;AACzF,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,SAAU,SAAyC,CAAC;AAAA,MACpD;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AAAA,EAEA,UACC,QACsG;AACtG,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,SAAS,EAAE,GAAI,QAAoD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;AAAA,MAC3F;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,6BAGH,aAAsB;AAAA,EAK/B,YACS,YACA,QACA,eACA,OACA,aACA,SACA,SACA,QACA,WACA,MACP;AACD,UAAM;AAXE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,EAGT;AAAA,EAjBA,QAA0B,UAAU,IAAY;AAAA,EAmBhD,UAAU;AACT,UAAM,EAAE,OAAO,WAAW,IAAI,KAAK,OAAO;AAC1C,WAAO,KAAK,QAAQ;AAAA,MACnB;AAAA,MACA;AAAA,MACA,CAAC,YAAY;AACZ,cAAM,OAAO,QAAQ,IAAI,CAAC,QAAQ,iBAAiB,KAAK,QAAQ,KAAK,aAAa,KAAK,MAAM,SAAS,CAAC;AACvG,YAAI,KAAK,cAAc,SAAS;AAC/B,iBAAO,KAAK,CAAC;AAAA,QACd;AACA,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AAAA,EAEQ,YAAY;AACnB,UAAM,QAAQ,KAAK,SAAS,gBACzB,KAAK,QAAQ,6CAA6C;AAAA,MAC3D,YAAY,KAAK;AAAA,MACjB,QAAQ,KAAK;AAAA,MACb,eAAe,KAAK;AAAA,MACpB,OAAO,KAAK;AAAA,MACZ,aAAa,KAAK;AAAA,MAClB,aAAa,KAAK;AAAA,MAClB,YAAY,KAAK,YAAY;AAAA,IAC9B,CAAC,IACC,KAAK,QAAQ,qBAAqB;AAAA,MACnC,YAAY,KAAK;AAAA,MACjB,QAAQ,KAAK;AAAA,MACb,eAAe,KAAK;AAAA,MACpB,OAAO,KAAK;AAAA,MACZ,aAAa,KAAK;AAAA,MAClB,aAAa,KAAK;AAAA,MAClB,YAAY,KAAK,YAAY;AAAA,IAC9B,CAAC;AACF,WAAO;AAAA,EACR;AAAA,EAEQ,SAA8E;AACrF,UAAM,QAAQ,KAAK,UAAU;AAE7B,UAAM,aAAa,KAAK,QAAQ,WAAW,MAAM,GAAU;AAE3D,WAAO,EAAE,YAAY,MAAM;AAAA,EAC5B;AAAA;AAAA,EAGA,SAAc;AACb,WAAO,KAAK,UAAU,EAAE;AAAA,EACzB;AAAA,EAEA,QAAe;AACd,WAAO,KAAK,OAAO,EAAE;AAAA,EACtB;AAAA,EAES,UAA4B;AACpC,WAAO,KAAK,QAAQ,EAAE,QAAQ;AAAA,EAC/B;AACD;","names":[]}
@@ -786,7 +786,7 @@ class MySqlSelectQueryBuilderBase extends import_query_builder.TypedQueryBuilder
786
786
  }
787
787
  /** @internal */
788
788
  getSQL() {
789
- return this.dialect.buildSelectQuery(this.config, this.session?.extensions);
789
+ return this.dialect.buildSelectQuery(this.config);
790
790
  }
791
791
  toSQL() {
792
792
  const { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());
@@ -824,28 +824,11 @@ class MySqlSelectBase extends MySqlSelectQueryBuilderBase {
824
824
  if (!this.session) {
825
825
  throw new Error("Cannot execute a query on a query builder. Please use a database instance instead.");
826
826
  }
827
- const { joinsNotNullableMap, dialect, session, config } = this;
828
- const fieldsList = (0, import_utils.orderSelectedFields)(config.fields);
829
- const query = session.prepareQuery(
830
- this.dialect.sqlToQuery(this.getSQL()),
831
- fieldsList,
832
- void 0,
833
- void 0,
834
- void 0,
835
- {
836
- type: "select",
837
- tables: [...this.usedTables]
838
- },
839
- this.cacheConfig,
840
- {
841
- query: "select",
842
- joinsNotNullableMap,
843
- dialect,
844
- session,
845
- config,
846
- fieldsOrdered: fieldsList
847
- }
848
- );
827
+ const fieldsList = (0, import_utils.orderSelectedFields)(this.config.fields);
828
+ const query = this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()), fieldsList, void 0, void 0, void 0, {
829
+ type: "select",
830
+ tables: [...this.usedTables]
831
+ }, this.cacheConfig);
849
832
  query.joinsNotNullableMap = this.joinsNotNullableMap;
850
833
  return query;
851
834
  }