drizzle-orm 0.39.2-aaa57ff → 0.39.2-eba7324

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 (1001) hide show
  1. package/alias.cjs.map +1 -1
  2. package/alias.d.cts +3 -3
  3. package/alias.d.ts +3 -3
  4. package/alias.js.map +1 -1
  5. package/aws-data-api/pg/driver.cjs +5 -19
  6. package/aws-data-api/pg/driver.cjs.map +1 -1
  7. package/aws-data-api/pg/driver.d.cts +8 -9
  8. package/aws-data-api/pg/driver.d.ts +8 -9
  9. package/aws-data-api/pg/driver.js +8 -9
  10. package/aws-data-api/pg/driver.js.map +1 -1
  11. package/aws-data-api/pg/migrator.cjs.map +1 -1
  12. package/aws-data-api/pg/migrator.d.cts +1 -2
  13. package/aws-data-api/pg/migrator.d.ts +1 -2
  14. package/aws-data-api/pg/migrator.js.map +1 -1
  15. package/aws-data-api/pg/session.cjs +4 -67
  16. package/aws-data-api/pg/session.cjs.map +1 -1
  17. package/aws-data-api/pg/session.d.cts +8 -13
  18. package/aws-data-api/pg/session.d.ts +8 -13
  19. package/aws-data-api/pg/session.js +4 -67
  20. package/aws-data-api/pg/session.js.map +1 -1
  21. package/better-sqlite3/driver.cjs +5 -12
  22. package/better-sqlite3/driver.cjs.map +1 -1
  23. package/better-sqlite3/driver.d.cts +6 -7
  24. package/better-sqlite3/driver.d.ts +6 -7
  25. package/better-sqlite3/driver.js +8 -12
  26. package/better-sqlite3/driver.js.map +1 -1
  27. package/better-sqlite3/migrator.cjs.map +1 -1
  28. package/better-sqlite3/migrator.d.cts +1 -2
  29. package/better-sqlite3/migrator.d.ts +1 -2
  30. package/better-sqlite3/migrator.js.map +1 -1
  31. package/better-sqlite3/session.cjs +4 -49
  32. package/better-sqlite3/session.cjs.map +1 -1
  33. package/better-sqlite3/session.d.cts +8 -14
  34. package/better-sqlite3/session.d.ts +8 -14
  35. package/better-sqlite3/session.js +4 -49
  36. package/better-sqlite3/session.js.map +1 -1
  37. package/bun-sql/driver.cjs +5 -16
  38. package/bun-sql/driver.cjs.map +1 -1
  39. package/bun-sql/driver.d.cts +6 -7
  40. package/bun-sql/driver.d.ts +6 -7
  41. package/bun-sql/driver.js +8 -6
  42. package/bun-sql/driver.js.map +1 -1
  43. package/bun-sql/migrator.cjs.map +1 -1
  44. package/bun-sql/migrator.d.cts +1 -2
  45. package/bun-sql/migrator.d.ts +1 -2
  46. package/bun-sql/migrator.js.map +1 -1
  47. package/bun-sql/session.cjs +6 -50
  48. package/bun-sql/session.cjs.map +1 -1
  49. package/bun-sql/session.d.cts +9 -14
  50. package/bun-sql/session.d.ts +9 -14
  51. package/bun-sql/session.js +6 -50
  52. package/bun-sql/session.js.map +1 -1
  53. package/bun-sqlite/driver.cjs +5 -22
  54. package/bun-sqlite/driver.cjs.map +1 -1
  55. package/bun-sqlite/driver.d.cts +6 -7
  56. package/bun-sqlite/driver.d.ts +6 -7
  57. package/bun-sqlite/driver.js +8 -12
  58. package/bun-sqlite/driver.js.map +1 -1
  59. package/bun-sqlite/migrator.cjs.map +1 -1
  60. package/bun-sqlite/migrator.d.cts +1 -2
  61. package/bun-sqlite/migrator.d.ts +1 -2
  62. package/bun-sqlite/migrator.js.map +1 -1
  63. package/bun-sqlite/session.cjs +4 -49
  64. package/bun-sqlite/session.cjs.map +1 -1
  65. package/bun-sqlite/session.d.cts +8 -14
  66. package/bun-sqlite/session.d.ts +8 -14
  67. package/bun-sqlite/session.js +4 -49
  68. package/bun-sqlite/session.js.map +1 -1
  69. package/column-builder.cjs.map +1 -1
  70. package/column-builder.d.cts +6 -5
  71. package/column-builder.d.ts +6 -5
  72. package/column-builder.js.map +1 -1
  73. package/d1/driver.cjs +5 -22
  74. package/d1/driver.cjs.map +1 -1
  75. package/d1/driver.d.cts +2 -3
  76. package/d1/driver.d.ts +2 -3
  77. package/d1/driver.js +8 -12
  78. package/d1/driver.js.map +1 -1
  79. package/d1/migrator.cjs.map +1 -1
  80. package/d1/migrator.d.cts +1 -2
  81. package/d1/migrator.d.ts +1 -2
  82. package/d1/migrator.js.map +1 -1
  83. package/d1/session.cjs +8 -50
  84. package/d1/session.cjs.map +1 -1
  85. package/d1/session.d.cts +8 -15
  86. package/d1/session.d.ts +8 -15
  87. package/d1/session.js +8 -50
  88. package/d1/session.js.map +1 -1
  89. package/durable-sqlite/driver.cjs +5 -16
  90. package/durable-sqlite/driver.cjs.map +1 -1
  91. package/durable-sqlite/driver.d.cts +2 -3
  92. package/durable-sqlite/driver.d.ts +2 -3
  93. package/durable-sqlite/driver.js +8 -6
  94. package/durable-sqlite/driver.js.map +1 -1
  95. package/durable-sqlite/migrator.cjs.map +1 -1
  96. package/durable-sqlite/migrator.d.cts +1 -2
  97. package/durable-sqlite/migrator.d.ts +1 -2
  98. package/durable-sqlite/migrator.js.map +1 -1
  99. package/durable-sqlite/session.cjs +4 -46
  100. package/durable-sqlite/session.cjs.map +1 -1
  101. package/durable-sqlite/session.d.cts +8 -14
  102. package/durable-sqlite/session.d.ts +8 -14
  103. package/durable-sqlite/session.js +4 -46
  104. package/durable-sqlite/session.js.map +1 -1
  105. package/expo-sqlite/driver.cjs +5 -22
  106. package/expo-sqlite/driver.cjs.map +1 -1
  107. package/expo-sqlite/driver.d.cts +2 -3
  108. package/expo-sqlite/driver.d.ts +2 -3
  109. package/expo-sqlite/driver.js +8 -12
  110. package/expo-sqlite/driver.js.map +1 -1
  111. package/expo-sqlite/migrator.cjs.map +1 -1
  112. package/expo-sqlite/migrator.d.cts +2 -3
  113. package/expo-sqlite/migrator.d.ts +2 -3
  114. package/expo-sqlite/migrator.js.map +1 -1
  115. package/expo-sqlite/query.cjs +2 -13
  116. package/expo-sqlite/query.cjs.map +1 -1
  117. package/expo-sqlite/query.d.cts +1 -2
  118. package/expo-sqlite/query.d.ts +1 -2
  119. package/expo-sqlite/query.js +2 -3
  120. package/expo-sqlite/query.js.map +1 -1
  121. package/expo-sqlite/session.cjs +4 -47
  122. package/expo-sqlite/session.cjs.map +1 -1
  123. package/expo-sqlite/session.d.cts +8 -14
  124. package/expo-sqlite/session.d.ts +8 -14
  125. package/expo-sqlite/session.js +4 -47
  126. package/expo-sqlite/session.js.map +1 -1
  127. package/gel/driver.cjs +97 -0
  128. package/gel/driver.cjs.map +1 -0
  129. package/gel/driver.d.cts +38 -0
  130. package/gel/driver.d.ts +38 -0
  131. package/gel/driver.js +74 -0
  132. package/gel/driver.js.map +1 -0
  133. package/gel/index.cjs +25 -0
  134. package/gel/index.cjs.map +1 -0
  135. package/gel/index.d.cts +2 -0
  136. package/gel/index.d.ts +2 -0
  137. package/gel/index.js +3 -0
  138. package/gel/index.js.map +1 -0
  139. package/gel/migrator.cjs +5 -0
  140. package/gel/migrator.cjs.map +1 -0
  141. package/gel/migrator.d.cts +1 -0
  142. package/gel/migrator.d.ts +1 -0
  143. package/gel/migrator.js +4 -0
  144. package/gel/migrator.js.map +1 -0
  145. package/gel/session.cjs +139 -0
  146. package/gel/session.cjs.map +1 -0
  147. package/gel/session.d.cts +47 -0
  148. package/gel/session.d.ts +47 -0
  149. package/gel/session.js +113 -0
  150. package/gel/session.js.map +1 -0
  151. package/gel-core/alias.cjs +32 -0
  152. package/gel-core/alias.cjs.map +1 -0
  153. package/gel-core/alias.d.cts +4 -0
  154. package/gel-core/alias.d.ts +4 -0
  155. package/gel-core/alias.js +8 -0
  156. package/gel-core/alias.js.map +1 -0
  157. package/gel-core/checks.cjs +58 -0
  158. package/gel-core/checks.cjs.map +1 -0
  159. package/gel-core/checks.d.cts +18 -0
  160. package/gel-core/checks.d.ts +18 -0
  161. package/gel-core/checks.js +32 -0
  162. package/gel-core/checks.js.map +1 -0
  163. package/gel-core/columns/all.cjs +72 -0
  164. package/gel-core/columns/all.cjs.map +1 -0
  165. package/gel-core/columns/all.d.cts +43 -0
  166. package/gel-core/columns/all.d.ts +43 -0
  167. package/gel-core/columns/all.js +48 -0
  168. package/gel-core/columns/all.js.map +1 -0
  169. package/gel-core/columns/bigint.cjs +54 -0
  170. package/gel-core/columns/bigint.cjs.map +1 -0
  171. package/gel-core/columns/bigint.d.cts +23 -0
  172. package/gel-core/columns/bigint.d.ts +23 -0
  173. package/gel-core/columns/bigint.js +28 -0
  174. package/gel-core/columns/bigint.js.map +1 -0
  175. package/gel-core/columns/bigintT.cjs +60 -0
  176. package/gel-core/columns/bigintT.cjs.map +1 -0
  177. package/gel-core/columns/bigintT.d.cts +24 -0
  178. package/gel-core/columns/bigintT.d.ts +24 -0
  179. package/gel-core/columns/bigintT.js +34 -0
  180. package/gel-core/columns/bigintT.js.map +1 -0
  181. package/gel-core/columns/boolean.cjs +53 -0
  182. package/gel-core/columns/boolean.cjs.map +1 -0
  183. package/gel-core/columns/boolean.d.cts +22 -0
  184. package/gel-core/columns/boolean.d.ts +22 -0
  185. package/gel-core/columns/boolean.js +27 -0
  186. package/gel-core/columns/boolean.js.map +1 -0
  187. package/gel-core/columns/bytes.cjs +56 -0
  188. package/gel-core/columns/bytes.cjs.map +1 -0
  189. package/gel-core/columns/bytes.d.cts +22 -0
  190. package/gel-core/columns/bytes.d.ts +22 -0
  191. package/gel-core/columns/bytes.js +30 -0
  192. package/gel-core/columns/bytes.js.map +1 -0
  193. package/gel-core/columns/common.cjs +213 -0
  194. package/gel-core/columns/common.cjs.map +1 -0
  195. package/gel-core/columns/common.d.cts +147 -0
  196. package/gel-core/columns/common.d.ts +147 -0
  197. package/gel-core/columns/common.js +184 -0
  198. package/gel-core/columns/common.js.map +1 -0
  199. package/gel-core/columns/custom.cjs +77 -0
  200. package/gel-core/columns/custom.cjs.map +1 -0
  201. package/gel-core/columns/custom.d.cts +155 -0
  202. package/gel-core/columns/custom.d.ts +155 -0
  203. package/gel-core/columns/custom.js +51 -0
  204. package/gel-core/columns/custom.js.map +1 -0
  205. package/gel-core/columns/date-duration.cjs +56 -0
  206. package/gel-core/columns/date-duration.cjs.map +1 -0
  207. package/gel-core/columns/date-duration.d.cts +23 -0
  208. package/gel-core/columns/date-duration.d.ts +23 -0
  209. package/gel-core/columns/date-duration.js +30 -0
  210. package/gel-core/columns/date-duration.js.map +1 -0
  211. package/gel-core/columns/date.common.cjs +37 -0
  212. package/gel-core/columns/date.common.cjs.map +1 -0
  213. package/gel-core/columns/date.common.d.cts +7 -0
  214. package/gel-core/columns/date.common.d.ts +7 -0
  215. package/gel-core/columns/date.common.js +13 -0
  216. package/gel-core/columns/date.common.js.map +1 -0
  217. package/gel-core/columns/decimal.cjs +56 -0
  218. package/gel-core/columns/decimal.cjs.map +1 -0
  219. package/gel-core/columns/decimal.d.cts +26 -0
  220. package/gel-core/columns/decimal.d.ts +26 -0
  221. package/gel-core/columns/decimal.js +30 -0
  222. package/gel-core/columns/decimal.js.map +1 -0
  223. package/gel-core/columns/double-precision.cjs +62 -0
  224. package/gel-core/columns/double-precision.cjs.map +1 -0
  225. package/gel-core/columns/double-precision.d.cts +23 -0
  226. package/gel-core/columns/double-precision.d.ts +23 -0
  227. package/gel-core/columns/double-precision.js +36 -0
  228. package/gel-core/columns/double-precision.js.map +1 -0
  229. package/gel-core/columns/duration.cjs +53 -0
  230. package/gel-core/columns/duration.cjs.map +1 -0
  231. package/gel-core/columns/duration.d.cts +23 -0
  232. package/gel-core/columns/duration.d.ts +23 -0
  233. package/gel-core/columns/duration.js +27 -0
  234. package/gel-core/columns/duration.js.map +1 -0
  235. package/gel-core/columns/index.cjs +65 -0
  236. package/gel-core/columns/index.cjs.map +1 -0
  237. package/gel-core/columns/index.d.cts +22 -0
  238. package/gel-core/columns/index.d.ts +22 -0
  239. package/gel-core/columns/index.js +23 -0
  240. package/gel-core/columns/index.js.map +1 -0
  241. package/gel-core/columns/int.common.cjs +67 -0
  242. package/gel-core/columns/int.common.cjs.map +1 -0
  243. package/gel-core/columns/int.common.d.cts +15 -0
  244. package/gel-core/columns/int.common.d.ts +15 -0
  245. package/gel-core/columns/int.common.js +43 -0
  246. package/gel-core/columns/int.common.js.map +1 -0
  247. package/gel-core/columns/integer.cjs +54 -0
  248. package/gel-core/columns/integer.cjs.map +1 -0
  249. package/gel-core/columns/integer.d.cts +23 -0
  250. package/gel-core/columns/integer.d.ts +23 -0
  251. package/gel-core/columns/integer.js +28 -0
  252. package/gel-core/columns/integer.js.map +1 -0
  253. package/gel-core/columns/json.cjs +56 -0
  254. package/gel-core/columns/json.cjs.map +1 -0
  255. package/gel-core/columns/json.d.cts +26 -0
  256. package/gel-core/columns/json.d.ts +26 -0
  257. package/gel-core/columns/json.js +30 -0
  258. package/gel-core/columns/json.js.map +1 -0
  259. package/gel-core/columns/localdate.cjs +57 -0
  260. package/gel-core/columns/localdate.cjs.map +1 -0
  261. package/gel-core/columns/localdate.d.cts +24 -0
  262. package/gel-core/columns/localdate.d.ts +24 -0
  263. package/gel-core/columns/localdate.js +31 -0
  264. package/gel-core/columns/localdate.js.map +1 -0
  265. package/gel-core/columns/localtime.cjs +57 -0
  266. package/gel-core/columns/localtime.cjs.map +1 -0
  267. package/gel-core/columns/localtime.d.cts +24 -0
  268. package/gel-core/columns/localtime.d.ts +24 -0
  269. package/gel-core/columns/localtime.js +31 -0
  270. package/gel-core/columns/localtime.js.map +1 -0
  271. package/gel-core/columns/real.cjs +57 -0
  272. package/gel-core/columns/real.cjs.map +1 -0
  273. package/gel-core/columns/real.d.cts +28 -0
  274. package/gel-core/columns/real.d.ts +28 -0
  275. package/gel-core/columns/real.js +31 -0
  276. package/gel-core/columns/real.js.map +1 -0
  277. package/gel-core/columns/relative-duration.cjs +56 -0
  278. package/gel-core/columns/relative-duration.cjs.map +1 -0
  279. package/gel-core/columns/relative-duration.d.cts +23 -0
  280. package/gel-core/columns/relative-duration.d.ts +23 -0
  281. package/gel-core/columns/relative-duration.js +30 -0
  282. package/gel-core/columns/relative-duration.js.map +1 -0
  283. package/gel-core/columns/smallint.cjs +54 -0
  284. package/gel-core/columns/smallint.cjs.map +1 -0
  285. package/gel-core/columns/smallint.d.cts +23 -0
  286. package/gel-core/columns/smallint.d.ts +23 -0
  287. package/gel-core/columns/smallint.js +28 -0
  288. package/gel-core/columns/smallint.js.map +1 -0
  289. package/gel-core/columns/text.cjs +54 -0
  290. package/gel-core/columns/text.cjs.map +1 -0
  291. package/gel-core/columns/text.d.cts +26 -0
  292. package/gel-core/columns/text.d.ts +26 -0
  293. package/gel-core/columns/text.js +28 -0
  294. package/gel-core/columns/text.js.map +1 -0
  295. package/gel-core/columns/timestamp.cjs +60 -0
  296. package/gel-core/columns/timestamp.cjs.map +1 -0
  297. package/gel-core/columns/timestamp.d.cts +28 -0
  298. package/gel-core/columns/timestamp.d.ts +28 -0
  299. package/gel-core/columns/timestamp.js +34 -0
  300. package/gel-core/columns/timestamp.js.map +1 -0
  301. package/gel-core/columns/timestamptz.cjs +60 -0
  302. package/gel-core/columns/timestamptz.cjs.map +1 -0
  303. package/gel-core/columns/timestamptz.d.cts +27 -0
  304. package/gel-core/columns/timestamptz.d.ts +27 -0
  305. package/gel-core/columns/timestamptz.js +34 -0
  306. package/gel-core/columns/timestamptz.js.map +1 -0
  307. package/gel-core/columns/uuid.cjs +53 -0
  308. package/gel-core/columns/uuid.cjs.map +1 -0
  309. package/gel-core/columns/uuid.d.cts +22 -0
  310. package/gel-core/columns/uuid.d.ts +22 -0
  311. package/gel-core/columns/uuid.js +27 -0
  312. package/gel-core/columns/uuid.js.map +1 -0
  313. package/gel-core/db.cjs +338 -0
  314. package/gel-core/db.cjs.map +1 -0
  315. package/gel-core/db.d.cts +281 -0
  316. package/gel-core/db.d.ts +281 -0
  317. package/gel-core/db.js +319 -0
  318. package/gel-core/db.js.map +1 -0
  319. package/gel-core/dialect.cjs +1142 -0
  320. package/gel-core/dialect.cjs.map +1 -0
  321. package/gel-core/dialect.d.cts +62 -0
  322. package/gel-core/dialect.d.ts +62 -0
  323. package/gel-core/dialect.js +1128 -0
  324. package/gel-core/dialect.js.map +1 -0
  325. package/gel-core/expressions.cjs +49 -0
  326. package/gel-core/expressions.cjs.map +1 -0
  327. package/gel-core/expressions.d.cts +8 -0
  328. package/gel-core/expressions.d.ts +8 -0
  329. package/gel-core/expressions.js +22 -0
  330. package/gel-core/expressions.js.map +1 -0
  331. package/gel-core/foreign-keys.cjs +100 -0
  332. package/gel-core/foreign-keys.cjs.map +1 -0
  333. package/gel-core/foreign-keys.d.cts +48 -0
  334. package/gel-core/foreign-keys.d.ts +48 -0
  335. package/gel-core/foreign-keys.js +74 -0
  336. package/gel-core/foreign-keys.js.map +1 -0
  337. package/gel-core/index.cjs +61 -0
  338. package/gel-core/index.cjs.map +1 -0
  339. package/gel-core/index.d.cts +20 -0
  340. package/gel-core/index.d.ts +20 -0
  341. package/gel-core/index.js +21 -0
  342. package/gel-core/index.js.map +1 -0
  343. package/gel-core/indexes.cjs +149 -0
  344. package/gel-core/indexes.cjs.map +1 -0
  345. package/gel-core/indexes.d.cts +79 -0
  346. package/gel-core/indexes.d.ts +79 -0
  347. package/gel-core/indexes.js +121 -0
  348. package/gel-core/indexes.js.map +1 -0
  349. package/gel-core/policies.cjs +58 -0
  350. package/gel-core/policies.cjs.map +1 -0
  351. package/gel-core/policies.d.cts +24 -0
  352. package/gel-core/policies.d.ts +24 -0
  353. package/gel-core/policies.js +33 -0
  354. package/gel-core/policies.js.map +1 -0
  355. package/gel-core/primary-keys.cjs +68 -0
  356. package/gel-core/primary-keys.cjs.map +1 -0
  357. package/gel-core/primary-keys.d.cts +30 -0
  358. package/gel-core/primary-keys.d.ts +30 -0
  359. package/gel-core/primary-keys.js +42 -0
  360. package/gel-core/primary-keys.js.map +1 -0
  361. package/gel-core/query-builders/count.cjs +73 -0
  362. package/gel-core/query-builders/count.cjs.map +1 -0
  363. package/gel-core/query-builders/count.d.cts +25 -0
  364. package/gel-core/query-builders/count.d.ts +25 -0
  365. package/gel-core/query-builders/count.js +49 -0
  366. package/gel-core/query-builders/count.js.map +1 -0
  367. package/gel-core/query-builders/delete.cjs +105 -0
  368. package/gel-core/query-builders/delete.cjs.map +1 -0
  369. package/gel-core/query-builders/delete.d.cts +99 -0
  370. package/gel-core/query-builders/delete.d.ts +99 -0
  371. package/gel-core/query-builders/delete.js +81 -0
  372. package/gel-core/query-builders/delete.js.map +1 -0
  373. package/gel-core/query-builders/index.cjs +35 -0
  374. package/gel-core/query-builders/index.cjs.map +1 -0
  375. package/gel-core/query-builders/index.d.cts +7 -0
  376. package/gel-core/query-builders/index.d.ts +7 -0
  377. package/gel-core/query-builders/index.js +8 -0
  378. package/gel-core/query-builders/index.js.map +1 -0
  379. package/gel-core/query-builders/insert.cjs +218 -0
  380. package/gel-core/query-builders/insert.cjs.map +1 -0
  381. package/gel-core/query-builders/insert.d.cts +116 -0
  382. package/gel-core/query-builders/insert.d.ts +116 -0
  383. package/gel-core/query-builders/insert.js +193 -0
  384. package/gel-core/query-builders/insert.js.map +1 -0
  385. package/gel-core/query-builders/query-builder.cjs +114 -0
  386. package/gel-core/query-builders/query-builder.cjs.map +1 -0
  387. package/gel-core/query-builders/query-builder.d.cts +40 -0
  388. package/gel-core/query-builders/query-builder.d.ts +40 -0
  389. package/gel-core/query-builders/query-builder.js +90 -0
  390. package/gel-core/query-builders/query-builder.js.map +1 -0
  391. package/{pg-core/query-builders/_query.cjs → gel-core/query-builders/query.cjs} +15 -31
  392. package/gel-core/query-builders/query.cjs.map +1 -0
  393. package/gel-core/query-builders/query.d.cts +46 -0
  394. package/gel-core/query-builders/query.d.ts +46 -0
  395. package/{pg-core/query-builders/_query.js → gel-core/query-builders/query.js} +15 -19
  396. package/gel-core/query-builders/query.js.map +1 -0
  397. package/gel-core/query-builders/raw.cjs +57 -0
  398. package/gel-core/query-builders/raw.cjs.map +1 -0
  399. package/gel-core/query-builders/raw.d.cts +22 -0
  400. package/gel-core/query-builders/raw.d.ts +22 -0
  401. package/gel-core/query-builders/raw.js +33 -0
  402. package/gel-core/query-builders/raw.js.map +1 -0
  403. package/gel-core/query-builders/refresh-materialized-view.cjs +77 -0
  404. package/gel-core/query-builders/refresh-materialized-view.cjs.map +1 -0
  405. package/gel-core/query-builders/refresh-materialized-view.d.cts +27 -0
  406. package/gel-core/query-builders/refresh-materialized-view.d.ts +27 -0
  407. package/gel-core/query-builders/refresh-materialized-view.js +53 -0
  408. package/gel-core/query-builders/refresh-materialized-view.js.map +1 -0
  409. package/gel-core/query-builders/select.cjs +775 -0
  410. package/gel-core/query-builders/select.cjs.map +1 -0
  411. package/gel-core/query-builders/select.d.cts +721 -0
  412. package/gel-core/query-builders/select.d.ts +721 -0
  413. package/gel-core/query-builders/select.js +748 -0
  414. package/gel-core/query-builders/select.js.map +1 -0
  415. package/gel-core/query-builders/select.types.cjs +17 -0
  416. package/gel-core/query-builders/select.types.cjs.map +1 -0
  417. package/gel-core/query-builders/select.types.d.cts +138 -0
  418. package/gel-core/query-builders/select.types.d.ts +138 -0
  419. package/gel-core/query-builders/select.types.js +1 -0
  420. package/gel-core/query-builders/select.types.js.map +1 -0
  421. package/gel-core/query-builders/update.cjs +226 -0
  422. package/gel-core/query-builders/update.cjs.map +1 -0
  423. package/gel-core/query-builders/update.d.cts +166 -0
  424. package/gel-core/query-builders/update.d.ts +166 -0
  425. package/gel-core/query-builders/update.js +205 -0
  426. package/gel-core/query-builders/update.js.map +1 -0
  427. package/gel-core/roles.cjs +57 -0
  428. package/gel-core/roles.cjs.map +1 -0
  429. package/gel-core/roles.d.cts +13 -0
  430. package/gel-core/roles.d.ts +13 -0
  431. package/gel-core/roles.js +32 -0
  432. package/gel-core/roles.js.map +1 -0
  433. package/gel-core/schema.cjs +74 -0
  434. package/gel-core/schema.cjs.map +1 -0
  435. package/gel-core/schema.d.cts +15 -0
  436. package/gel-core/schema.d.ts +15 -0
  437. package/gel-core/schema.js +48 -0
  438. package/gel-core/schema.js.map +1 -0
  439. package/gel-core/sequence.cjs +52 -0
  440. package/gel-core/sequence.cjs.map +1 -0
  441. package/gel-core/sequence.d.cts +18 -0
  442. package/gel-core/sequence.d.ts +18 -0
  443. package/gel-core/sequence.js +25 -0
  444. package/gel-core/sequence.js.map +1 -0
  445. package/gel-core/session.cjs +94 -0
  446. package/gel-core/session.cjs.map +1 -0
  447. package/gel-core/session.d.cts +56 -0
  448. package/gel-core/session.d.ts +56 -0
  449. package/gel-core/session.js +68 -0
  450. package/gel-core/session.js.map +1 -0
  451. package/gel-core/subquery.cjs +17 -0
  452. package/gel-core/subquery.cjs.map +1 -0
  453. package/gel-core/subquery.d.cts +5 -0
  454. package/gel-core/subquery.d.ts +5 -0
  455. package/gel-core/subquery.js +1 -0
  456. package/gel-core/subquery.js.map +1 -0
  457. package/gel-core/table.cjs +100 -0
  458. package/gel-core/table.cjs.map +1 -0
  459. package/gel-core/table.d.cts +95 -0
  460. package/gel-core/table.d.ts +95 -0
  461. package/gel-core/table.js +71 -0
  462. package/gel-core/table.js.map +1 -0
  463. package/gel-core/unique-constraint.cjs +89 -0
  464. package/gel-core/unique-constraint.cjs.map +1 -0
  465. package/gel-core/unique-constraint.d.cts +25 -0
  466. package/gel-core/unique-constraint.d.ts +25 -0
  467. package/gel-core/unique-constraint.js +61 -0
  468. package/gel-core/unique-constraint.js.map +1 -0
  469. package/gel-core/utils.cjs +100 -0
  470. package/gel-core/utils.cjs.map +1 -0
  471. package/gel-core/utils.d.cts +51 -0
  472. package/gel-core/utils.d.ts +51 -0
  473. package/gel-core/utils.js +74 -0
  474. package/gel-core/utils.js.map +1 -0
  475. package/gel-core/view-base.cjs +33 -0
  476. package/gel-core/view-base.cjs.map +1 -0
  477. package/gel-core/view-base.d.cts +8 -0
  478. package/gel-core/view-base.d.ts +8 -0
  479. package/gel-core/view-base.js +9 -0
  480. package/gel-core/view-base.js.map +1 -0
  481. package/gel-core/view-common.cjs +29 -0
  482. package/gel-core/view-common.cjs.map +1 -0
  483. package/gel-core/view-common.d.cts +1 -0
  484. package/gel-core/view-common.d.ts +1 -0
  485. package/gel-core/view-common.js +5 -0
  486. package/gel-core/view-common.js.map +1 -0
  487. package/gel-core/view.cjs +302 -0
  488. package/gel-core/view.cjs.map +1 -0
  489. package/gel-core/view.d.cts +150 -0
  490. package/gel-core/view.d.ts +150 -0
  491. package/gel-core/view.js +268 -0
  492. package/gel-core/view.js.map +1 -0
  493. package/libsql/driver-core.cjs +5 -22
  494. package/libsql/driver-core.cjs.map +1 -1
  495. package/libsql/driver-core.d.cts +1 -2
  496. package/libsql/driver-core.d.ts +1 -2
  497. package/libsql/driver-core.js +8 -12
  498. package/libsql/driver-core.js.map +1 -1
  499. package/libsql/driver.cjs.map +1 -1
  500. package/libsql/driver.d.cts +5 -6
  501. package/libsql/driver.d.ts +5 -6
  502. package/libsql/driver.js.map +1 -1
  503. package/libsql/http/index.cjs.map +1 -1
  504. package/libsql/http/index.d.cts +5 -6
  505. package/libsql/http/index.d.ts +5 -6
  506. package/libsql/http/index.js.map +1 -1
  507. package/libsql/migrator.cjs.map +1 -1
  508. package/libsql/migrator.d.cts +1 -2
  509. package/libsql/migrator.d.ts +1 -2
  510. package/libsql/migrator.js.map +1 -1
  511. package/libsql/node/index.cjs.map +1 -1
  512. package/libsql/node/index.d.cts +5 -6
  513. package/libsql/node/index.d.ts +5 -6
  514. package/libsql/node/index.js.map +1 -1
  515. package/libsql/session.cjs +4 -56
  516. package/libsql/session.cjs.map +1 -1
  517. package/libsql/session.d.cts +9 -15
  518. package/libsql/session.d.ts +9 -15
  519. package/libsql/session.js +4 -56
  520. package/libsql/session.js.map +1 -1
  521. package/libsql/sqlite3/index.cjs.map +1 -1
  522. package/libsql/sqlite3/index.d.cts +5 -6
  523. package/libsql/sqlite3/index.d.ts +5 -6
  524. package/libsql/sqlite3/index.js.map +1 -1
  525. package/libsql/wasm/index.cjs.map +1 -1
  526. package/libsql/wasm/index.d.cts +5 -6
  527. package/libsql/wasm/index.d.ts +5 -6
  528. package/libsql/wasm/index.js.map +1 -1
  529. package/libsql/web/index.cjs.map +1 -1
  530. package/libsql/web/index.d.cts +5 -6
  531. package/libsql/web/index.d.ts +5 -6
  532. package/libsql/web/index.js.map +1 -1
  533. package/libsql/ws/index.cjs.map +1 -1
  534. package/libsql/ws/index.d.cts +5 -6
  535. package/libsql/ws/index.d.ts +5 -6
  536. package/libsql/ws/index.js.map +1 -1
  537. package/mysql-core/db.cjs +6 -30
  538. package/mysql-core/db.cjs.map +1 -1
  539. package/mysql-core/db.d.cts +8 -15
  540. package/mysql-core/db.d.ts +8 -15
  541. package/mysql-core/db.js +5 -29
  542. package/mysql-core/db.js.map +1 -1
  543. package/mysql-core/dialect.cjs +15 -197
  544. package/mysql-core/dialect.cjs.map +1 -1
  545. package/mysql-core/dialect.d.cts +13 -36
  546. package/mysql-core/dialect.d.ts +13 -36
  547. package/mysql-core/dialect.js +22 -196
  548. package/mysql-core/dialect.js.map +1 -1
  549. package/mysql-core/query-builders/count.cjs.map +1 -1
  550. package/mysql-core/query-builders/count.d.cts +1 -1
  551. package/mysql-core/query-builders/count.d.ts +1 -1
  552. package/mysql-core/query-builders/count.js.map +1 -1
  553. package/mysql-core/query-builders/query.cjs +31 -18
  554. package/mysql-core/query-builders/query.cjs.map +1 -1
  555. package/mysql-core/query-builders/query.d.cts +10 -8
  556. package/mysql-core/query-builders/query.d.ts +10 -8
  557. package/mysql-core/query-builders/query.js +31 -18
  558. package/mysql-core/query-builders/query.js.map +1 -1
  559. package/mysql-core/session.cjs +2 -3
  560. package/mysql-core/session.cjs.map +1 -1
  561. package/mysql-core/session.d.cts +7 -10
  562. package/mysql-core/session.d.ts +7 -10
  563. package/mysql-core/session.js +2 -3
  564. package/mysql-core/session.js.map +1 -1
  565. package/mysql-proxy/driver.cjs +5 -22
  566. package/mysql-proxy/driver.cjs.map +1 -1
  567. package/mysql-proxy/driver.d.cts +2 -3
  568. package/mysql-proxy/driver.d.ts +2 -3
  569. package/mysql-proxy/driver.js +8 -12
  570. package/mysql-proxy/driver.js.map +1 -1
  571. package/mysql-proxy/migrator.cjs.map +1 -1
  572. package/mysql-proxy/migrator.d.cts +1 -2
  573. package/mysql-proxy/migrator.d.ts +1 -2
  574. package/mysql-proxy/migrator.js.map +1 -1
  575. package/mysql-proxy/session.cjs +2 -27
  576. package/mysql-proxy/session.cjs.map +1 -1
  577. package/mysql-proxy/session.d.cts +8 -13
  578. package/mysql-proxy/session.d.ts +8 -13
  579. package/mysql-proxy/session.js +2 -27
  580. package/mysql-proxy/session.js.map +1 -1
  581. package/mysql2/driver.cjs +7 -24
  582. package/mysql2/driver.cjs.map +1 -1
  583. package/mysql2/driver.d.cts +9 -10
  584. package/mysql2/driver.d.ts +9 -10
  585. package/mysql2/driver.js +10 -14
  586. package/mysql2/driver.js.map +1 -1
  587. package/mysql2/migrator.cjs.map +1 -1
  588. package/mysql2/migrator.d.cts +1 -2
  589. package/mysql2/migrator.d.ts +1 -2
  590. package/mysql2/migrator.js.map +1 -1
  591. package/mysql2/session.cjs +2 -30
  592. package/mysql2/session.cjs.map +1 -1
  593. package/mysql2/session.d.cts +8 -13
  594. package/mysql2/session.d.ts +8 -13
  595. package/mysql2/session.js +2 -30
  596. package/mysql2/session.js.map +1 -1
  597. package/neon-http/driver.cjs +7 -21
  598. package/neon-http/driver.cjs.map +1 -1
  599. package/neon-http/driver.d.cts +9 -10
  600. package/neon-http/driver.d.ts +9 -10
  601. package/neon-http/driver.js +7 -11
  602. package/neon-http/driver.js.map +1 -1
  603. package/neon-http/migrator.cjs.map +1 -1
  604. package/neon-http/migrator.d.cts +1 -2
  605. package/neon-http/migrator.d.ts +1 -2
  606. package/neon-http/migrator.js.map +1 -1
  607. package/neon-http/session.cjs +2 -32
  608. package/neon-http/session.cjs.map +1 -1
  609. package/neon-http/session.d.cts +8 -13
  610. package/neon-http/session.d.ts +8 -13
  611. package/neon-http/session.js +2 -32
  612. package/neon-http/session.js.map +1 -1
  613. package/neon-serverless/driver.cjs +7 -18
  614. package/neon-serverless/driver.cjs.map +1 -1
  615. package/neon-serverless/driver.d.cts +8 -9
  616. package/neon-serverless/driver.d.ts +8 -9
  617. package/neon-serverless/driver.js +10 -8
  618. package/neon-serverless/driver.js.map +1 -1
  619. package/neon-serverless/migrator.cjs.map +1 -1
  620. package/neon-serverless/migrator.d.cts +1 -2
  621. package/neon-serverless/migrator.d.ts +1 -2
  622. package/neon-serverless/migrator.js.map +1 -1
  623. package/neon-serverless/session.cjs +5 -40
  624. package/neon-serverless/session.cjs.map +1 -1
  625. package/neon-serverless/session.d.cts +8 -13
  626. package/neon-serverless/session.d.ts +8 -13
  627. package/neon-serverless/session.js +5 -40
  628. package/neon-serverless/session.js.map +1 -1
  629. package/node-postgres/driver.cjs +7 -13
  630. package/node-postgres/driver.cjs.map +1 -1
  631. package/node-postgres/driver.d.cts +8 -9
  632. package/node-postgres/driver.d.ts +8 -9
  633. package/node-postgres/driver.js +10 -13
  634. package/node-postgres/driver.js.map +1 -1
  635. package/node-postgres/migrator.cjs.map +1 -1
  636. package/node-postgres/migrator.d.cts +1 -2
  637. package/node-postgres/migrator.d.ts +1 -2
  638. package/node-postgres/migrator.js.map +1 -1
  639. package/node-postgres/session.cjs +4 -45
  640. package/node-postgres/session.cjs.map +1 -1
  641. package/node-postgres/session.d.cts +8 -13
  642. package/node-postgres/session.d.ts +8 -13
  643. package/node-postgres/session.js +4 -45
  644. package/node-postgres/session.js.map +1 -1
  645. package/op-sqlite/driver.cjs +5 -22
  646. package/op-sqlite/driver.cjs.map +1 -1
  647. package/op-sqlite/driver.d.cts +2 -3
  648. package/op-sqlite/driver.d.ts +2 -3
  649. package/op-sqlite/driver.js +8 -12
  650. package/op-sqlite/driver.js.map +1 -1
  651. package/op-sqlite/migrator.cjs.map +1 -1
  652. package/op-sqlite/migrator.d.cts +2 -3
  653. package/op-sqlite/migrator.d.ts +2 -3
  654. package/op-sqlite/migrator.js.map +1 -1
  655. package/op-sqlite/session.cjs +4 -47
  656. package/op-sqlite/session.cjs.map +1 -1
  657. package/op-sqlite/session.d.cts +8 -14
  658. package/op-sqlite/session.d.ts +8 -14
  659. package/op-sqlite/session.js +4 -47
  660. package/op-sqlite/session.js.map +1 -1
  661. package/package.json +784 -99
  662. package/pg-core/db.cjs +5 -32
  663. package/pg-core/db.cjs.map +1 -1
  664. package/pg-core/db.d.cts +9 -16
  665. package/pg-core/db.d.ts +9 -16
  666. package/pg-core/db.js +4 -31
  667. package/pg-core/db.js.map +1 -1
  668. package/pg-core/dialect.cjs +488 -173
  669. package/pg-core/dialect.cjs.map +1 -1
  670. package/pg-core/dialect.d.cts +8 -27
  671. package/pg-core/dialect.d.ts +8 -27
  672. package/pg-core/dialect.js +495 -172
  673. package/pg-core/dialect.js.map +1 -1
  674. package/pg-core/query-builders/count.cjs.map +1 -1
  675. package/pg-core/query-builders/count.d.cts +1 -1
  676. package/pg-core/query-builders/count.d.ts +1 -1
  677. package/pg-core/query-builders/count.js.map +1 -1
  678. package/pg-core/query-builders/query.cjs +18 -15
  679. package/pg-core/query-builders/query.cjs.map +1 -1
  680. package/pg-core/query-builders/query.d.cts +6 -6
  681. package/pg-core/query-builders/query.d.ts +6 -6
  682. package/pg-core/query-builders/query.js +18 -15
  683. package/pg-core/query-builders/query.js.map +1 -1
  684. package/pg-core/session.cjs +2 -3
  685. package/pg-core/session.cjs.map +1 -1
  686. package/pg-core/session.d.cts +6 -9
  687. package/pg-core/session.d.ts +6 -9
  688. package/pg-core/session.js +2 -3
  689. package/pg-core/session.js.map +1 -1
  690. package/pg-core/table.cjs +2 -0
  691. package/pg-core/table.cjs.map +1 -1
  692. package/pg-core/table.js +2 -0
  693. package/pg-core/table.js.map +1 -1
  694. package/pg-proxy/driver.cjs +5 -21
  695. package/pg-proxy/driver.cjs.map +1 -1
  696. package/pg-proxy/driver.d.cts +2 -3
  697. package/pg-proxy/driver.d.ts +2 -3
  698. package/pg-proxy/driver.js +8 -11
  699. package/pg-proxy/driver.js.map +1 -1
  700. package/pg-proxy/migrator.cjs.map +1 -1
  701. package/pg-proxy/migrator.d.cts +1 -2
  702. package/pg-proxy/migrator.d.ts +1 -2
  703. package/pg-proxy/migrator.js.map +1 -1
  704. package/pg-proxy/session.cjs +2 -37
  705. package/pg-proxy/session.cjs.map +1 -1
  706. package/pg-proxy/session.d.cts +8 -13
  707. package/pg-proxy/session.d.ts +8 -13
  708. package/pg-proxy/session.js +2 -37
  709. package/pg-proxy/session.js.map +1 -1
  710. package/pglite/driver.cjs +7 -23
  711. package/pglite/driver.cjs.map +1 -1
  712. package/pglite/driver.d.cts +8 -9
  713. package/pglite/driver.d.ts +8 -9
  714. package/pglite/driver.js +10 -13
  715. package/pglite/driver.js.map +1 -1
  716. package/pglite/migrator.cjs.map +1 -1
  717. package/pglite/migrator.d.cts +1 -2
  718. package/pglite/migrator.d.ts +1 -2
  719. package/pglite/migrator.js.map +1 -1
  720. package/pglite/session.cjs +3 -34
  721. package/pglite/session.cjs.map +1 -1
  722. package/pglite/session.d.cts +8 -13
  723. package/pglite/session.d.ts +8 -13
  724. package/pglite/session.js +3 -34
  725. package/pglite/session.js.map +1 -1
  726. package/planetscale-serverless/driver.cjs +5 -22
  727. package/planetscale-serverless/driver.cjs.map +1 -1
  728. package/planetscale-serverless/driver.d.cts +6 -7
  729. package/planetscale-serverless/driver.d.ts +6 -7
  730. package/planetscale-serverless/driver.js +8 -12
  731. package/planetscale-serverless/driver.js.map +1 -1
  732. package/planetscale-serverless/migrator.cjs.map +1 -1
  733. package/planetscale-serverless/migrator.d.cts +1 -2
  734. package/planetscale-serverless/migrator.d.ts +1 -2
  735. package/planetscale-serverless/migrator.js.map +1 -1
  736. package/planetscale-serverless/session.cjs +5 -45
  737. package/planetscale-serverless/session.cjs.map +1 -1
  738. package/planetscale-serverless/session.d.cts +9 -14
  739. package/planetscale-serverless/session.d.ts +9 -14
  740. package/planetscale-serverless/session.js +5 -45
  741. package/planetscale-serverless/session.js.map +1 -1
  742. package/postgres-js/driver.cjs +5 -6
  743. package/postgres-js/driver.cjs.map +1 -1
  744. package/postgres-js/driver.d.cts +6 -7
  745. package/postgres-js/driver.d.ts +6 -7
  746. package/postgres-js/driver.js +8 -6
  747. package/postgres-js/driver.js.map +1 -1
  748. package/postgres-js/migrator.cjs.map +1 -1
  749. package/postgres-js/migrator.d.cts +1 -2
  750. package/postgres-js/migrator.d.ts +1 -2
  751. package/postgres-js/migrator.js.map +1 -1
  752. package/postgres-js/session.cjs +6 -51
  753. package/postgres-js/session.cjs.map +1 -1
  754. package/postgres-js/session.d.cts +9 -15
  755. package/postgres-js/session.d.ts +9 -15
  756. package/postgres-js/session.js +6 -51
  757. package/postgres-js/session.js.map +1 -1
  758. package/prisma/mysql/driver.cjs +1 -1
  759. package/prisma/mysql/driver.cjs.map +1 -1
  760. package/prisma/mysql/driver.js +1 -1
  761. package/prisma/mysql/driver.js.map +1 -1
  762. package/prisma/mysql/session.cjs +0 -3
  763. package/prisma/mysql/session.cjs.map +1 -1
  764. package/prisma/mysql/session.d.cts +1 -3
  765. package/prisma/mysql/session.d.ts +1 -3
  766. package/prisma/mysql/session.js +0 -3
  767. package/prisma/mysql/session.js.map +1 -1
  768. package/prisma/pg/driver.cjs +1 -1
  769. package/prisma/pg/driver.cjs.map +1 -1
  770. package/prisma/pg/driver.js +1 -1
  771. package/prisma/pg/driver.js.map +1 -1
  772. package/prisma/pg/session.cjs +0 -3
  773. package/prisma/pg/session.cjs.map +1 -1
  774. package/prisma/pg/session.d.cts +1 -3
  775. package/prisma/pg/session.d.ts +1 -3
  776. package/prisma/pg/session.js +0 -3
  777. package/prisma/pg/session.js.map +1 -1
  778. package/prisma/sqlite/driver.cjs +1 -1
  779. package/prisma/sqlite/driver.cjs.map +1 -1
  780. package/prisma/sqlite/driver.js +1 -1
  781. package/prisma/sqlite/driver.js.map +1 -1
  782. package/prisma/sqlite/session.cjs +0 -3
  783. package/prisma/sqlite/session.cjs.map +1 -1
  784. package/prisma/sqlite/session.d.cts +2 -4
  785. package/prisma/sqlite/session.d.ts +2 -4
  786. package/prisma/sqlite/session.js +0 -3
  787. package/prisma/sqlite/session.js.map +1 -1
  788. package/relations.cjs +245 -596
  789. package/relations.cjs.map +1 -1
  790. package/relations.d.cts +140 -292
  791. package/relations.d.ts +140 -292
  792. package/relations.js +240 -589
  793. package/relations.js.map +1 -1
  794. package/singlestore/driver.cjs +1 -1
  795. package/singlestore/driver.cjs.map +1 -1
  796. package/singlestore/driver.d.cts +1 -1
  797. package/singlestore/driver.d.ts +1 -1
  798. package/singlestore/driver.js +3 -3
  799. package/singlestore/driver.js.map +1 -1
  800. package/singlestore/session.cjs.map +1 -1
  801. package/singlestore/session.d.cts +4 -4
  802. package/singlestore/session.d.ts +4 -4
  803. package/singlestore/session.js.map +1 -1
  804. package/singlestore-core/db.cjs.map +1 -1
  805. package/singlestore-core/db.d.cts +3 -3
  806. package/singlestore-core/db.d.ts +3 -3
  807. package/singlestore-core/db.js.map +1 -1
  808. package/singlestore-core/dialect.cjs +6 -16
  809. package/singlestore-core/dialect.cjs.map +1 -1
  810. package/singlestore-core/dialect.d.cts +6 -6
  811. package/singlestore-core/dialect.d.ts +6 -6
  812. package/singlestore-core/dialect.js +12 -6
  813. package/singlestore-core/dialect.js.map +1 -1
  814. package/singlestore-core/query-builders/query.cjs +2 -12
  815. package/singlestore-core/query-builders/query.cjs.map +1 -1
  816. package/singlestore-core/query-builders/query.d.cts +6 -6
  817. package/singlestore-core/query-builders/query.d.ts +6 -6
  818. package/singlestore-core/query-builders/query.js +4 -2
  819. package/singlestore-core/query-builders/query.js.map +1 -1
  820. package/singlestore-core/session.cjs.map +1 -1
  821. package/singlestore-core/session.d.cts +5 -5
  822. package/singlestore-core/session.d.ts +5 -5
  823. package/singlestore-core/session.js.map +1 -1
  824. package/singlestore-proxy/driver.cjs +1 -1
  825. package/singlestore-proxy/driver.cjs.map +1 -1
  826. package/singlestore-proxy/driver.js +3 -3
  827. package/singlestore-proxy/driver.js.map +1 -1
  828. package/singlestore-proxy/session.cjs.map +1 -1
  829. package/singlestore-proxy/session.d.cts +4 -4
  830. package/singlestore-proxy/session.d.ts +4 -4
  831. package/singlestore-proxy/session.js.map +1 -1
  832. package/sql/expressions/conditions.cjs.map +1 -1
  833. package/sql/expressions/conditions.d.cts +4 -4
  834. package/sql/expressions/conditions.d.ts +4 -4
  835. package/sql/expressions/conditions.js.map +1 -1
  836. package/sql/sql.cjs +0 -21
  837. package/sql/sql.cjs.map +1 -1
  838. package/sql/sql.d.cts +8 -8
  839. package/sql/sql.d.ts +8 -8
  840. package/sql/sql.js +1 -22
  841. package/sql/sql.js.map +1 -1
  842. package/sql-js/driver.cjs +5 -16
  843. package/sql-js/driver.cjs.map +1 -1
  844. package/sql-js/driver.d.cts +2 -3
  845. package/sql-js/driver.d.ts +2 -3
  846. package/sql-js/driver.js +8 -6
  847. package/sql-js/driver.js.map +1 -1
  848. package/sql-js/migrator.cjs.map +1 -1
  849. package/sql-js/migrator.d.cts +1 -2
  850. package/sql-js/migrator.d.ts +1 -2
  851. package/sql-js/migrator.js.map +1 -1
  852. package/sql-js/session.cjs +36 -71
  853. package/sql-js/session.cjs.map +1 -1
  854. package/sql-js/session.d.cts +13 -16
  855. package/sql-js/session.d.ts +13 -16
  856. package/sql-js/session.js +36 -71
  857. package/sql-js/session.js.map +1 -1
  858. package/sqlite-core/db.cjs +12 -39
  859. package/sqlite-core/db.cjs.map +1 -1
  860. package/sqlite-core/db.d.cts +8 -16
  861. package/sqlite-core/db.d.ts +8 -16
  862. package/sqlite-core/db.js +11 -38
  863. package/sqlite-core/db.js.map +1 -1
  864. package/sqlite-core/dialect.cjs +7 -186
  865. package/sqlite-core/dialect.cjs.map +1 -1
  866. package/sqlite-core/dialect.d.cts +9 -31
  867. package/sqlite-core/dialect.d.ts +9 -31
  868. package/sqlite-core/dialect.js +14 -185
  869. package/sqlite-core/dialect.js.map +1 -1
  870. package/sqlite-core/query-builders/count.cjs.map +1 -1
  871. package/sqlite-core/query-builders/count.d.cts +1 -1
  872. package/sqlite-core/query-builders/count.d.ts +1 -1
  873. package/sqlite-core/query-builders/count.js.map +1 -1
  874. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  875. package/sqlite-core/query-builders/delete.d.cts +1 -1
  876. package/sqlite-core/query-builders/delete.d.ts +1 -1
  877. package/sqlite-core/query-builders/delete.js.map +1 -1
  878. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  879. package/sqlite-core/query-builders/insert.d.cts +3 -3
  880. package/sqlite-core/query-builders/insert.d.ts +3 -3
  881. package/sqlite-core/query-builders/insert.js.map +1 -1
  882. package/sqlite-core/query-builders/query.cjs +35 -56
  883. package/sqlite-core/query-builders/query.cjs.map +1 -1
  884. package/sqlite-core/query-builders/query.d.cts +17 -18
  885. package/sqlite-core/query-builders/query.d.ts +17 -18
  886. package/sqlite-core/query-builders/query.js +35 -56
  887. package/sqlite-core/query-builders/query.js.map +1 -1
  888. package/sqlite-core/query-builders/select.cjs.map +1 -1
  889. package/sqlite-core/query-builders/select.d.cts +3 -3
  890. package/sqlite-core/query-builders/select.d.ts +3 -3
  891. package/sqlite-core/query-builders/select.js.map +1 -1
  892. package/sqlite-core/query-builders/update.cjs.map +1 -1
  893. package/sqlite-core/query-builders/update.d.cts +3 -3
  894. package/sqlite-core/query-builders/update.d.ts +3 -3
  895. package/sqlite-core/query-builders/update.js.map +1 -1
  896. package/sqlite-core/session.cjs +2 -6
  897. package/sqlite-core/session.cjs.map +1 -1
  898. package/sqlite-core/session.d.cts +7 -15
  899. package/sqlite-core/session.d.ts +7 -15
  900. package/sqlite-core/session.js +2 -6
  901. package/sqlite-core/session.js.map +1 -1
  902. package/sqlite-proxy/driver.cjs +5 -23
  903. package/sqlite-proxy/driver.cjs.map +1 -1
  904. package/sqlite-proxy/driver.d.cts +3 -4
  905. package/sqlite-proxy/driver.d.ts +3 -4
  906. package/sqlite-proxy/driver.js +5 -13
  907. package/sqlite-proxy/driver.js.map +1 -1
  908. package/sqlite-proxy/migrator.cjs.map +1 -1
  909. package/sqlite-proxy/migrator.d.cts +1 -2
  910. package/sqlite-proxy/migrator.d.ts +1 -2
  911. package/sqlite-proxy/migrator.js.map +1 -1
  912. package/sqlite-proxy/session.cjs +6 -50
  913. package/sqlite-proxy/session.cjs.map +1 -1
  914. package/sqlite-proxy/session.d.cts +8 -14
  915. package/sqlite-proxy/session.d.ts +8 -14
  916. package/sqlite-proxy/session.js +6 -50
  917. package/sqlite-proxy/session.js.map +1 -1
  918. package/table.cjs.map +1 -1
  919. package/table.d.cts +2 -2
  920. package/table.d.ts +2 -2
  921. package/table.js.map +1 -1
  922. package/tidb-serverless/driver.cjs +5 -22
  923. package/tidb-serverless/driver.cjs.map +1 -1
  924. package/tidb-serverless/driver.d.cts +6 -7
  925. package/tidb-serverless/driver.d.ts +6 -7
  926. package/tidb-serverless/driver.js +8 -12
  927. package/tidb-serverless/driver.js.map +1 -1
  928. package/tidb-serverless/migrator.cjs.map +1 -1
  929. package/tidb-serverless/migrator.d.cts +1 -2
  930. package/tidb-serverless/migrator.d.ts +1 -2
  931. package/tidb-serverless/migrator.js.map +1 -1
  932. package/tidb-serverless/session.cjs +5 -62
  933. package/tidb-serverless/session.cjs.map +1 -1
  934. package/tidb-serverless/session.d.cts +9 -14
  935. package/tidb-serverless/session.d.ts +9 -14
  936. package/tidb-serverless/session.js +5 -62
  937. package/tidb-serverless/session.js.map +1 -1
  938. package/utils.cjs +2 -2
  939. package/utils.cjs.map +1 -1
  940. package/utils.d.cts +1 -3
  941. package/utils.d.ts +1 -3
  942. package/utils.js +2 -2
  943. package/utils.js.map +1 -1
  944. package/vercel-postgres/driver.cjs +7 -23
  945. package/vercel-postgres/driver.cjs.map +1 -1
  946. package/vercel-postgres/driver.d.cts +8 -9
  947. package/vercel-postgres/driver.d.ts +8 -9
  948. package/vercel-postgres/driver.js +10 -13
  949. package/vercel-postgres/driver.js.map +1 -1
  950. package/vercel-postgres/migrator.cjs.map +1 -1
  951. package/vercel-postgres/migrator.d.cts +1 -2
  952. package/vercel-postgres/migrator.d.ts +1 -2
  953. package/vercel-postgres/migrator.js.map +1 -1
  954. package/vercel-postgres/session.cjs +4 -34
  955. package/vercel-postgres/session.cjs.map +1 -1
  956. package/vercel-postgres/session.d.cts +8 -13
  957. package/vercel-postgres/session.d.ts +8 -13
  958. package/vercel-postgres/session.js +4 -34
  959. package/vercel-postgres/session.js.map +1 -1
  960. package/version.cjs +1 -1
  961. package/version.d.cts +1 -1
  962. package/version.d.ts +1 -1
  963. package/version.js +1 -1
  964. package/xata-http/driver.cjs +5 -17
  965. package/xata-http/driver.cjs.map +1 -1
  966. package/xata-http/driver.d.cts +4 -5
  967. package/xata-http/driver.d.ts +4 -5
  968. package/xata-http/driver.js +5 -7
  969. package/xata-http/driver.js.map +1 -1
  970. package/xata-http/migrator.cjs.map +1 -1
  971. package/xata-http/migrator.d.cts +1 -2
  972. package/xata-http/migrator.d.ts +1 -2
  973. package/xata-http/migrator.js.map +1 -1
  974. package/xata-http/session.cjs +2 -30
  975. package/xata-http/session.cjs.map +1 -1
  976. package/xata-http/session.d.cts +8 -13
  977. package/xata-http/session.d.ts +8 -13
  978. package/xata-http/session.js +2 -30
  979. package/xata-http/session.js.map +1 -1
  980. package/_relations.cjs +0 -328
  981. package/_relations.cjs.map +0 -1
  982. package/_relations.d.cts +0 -215
  983. package/_relations.d.ts +0 -215
  984. package/_relations.js +0 -316
  985. package/_relations.js.map +0 -1
  986. package/mysql-core/query-builders/_query.cjs +0 -149
  987. package/mysql-core/query-builders/_query.cjs.map +0 -1
  988. package/mysql-core/query-builders/_query.d.cts +0 -44
  989. package/mysql-core/query-builders/_query.d.ts +0 -44
  990. package/mysql-core/query-builders/_query.js +0 -114
  991. package/mysql-core/query-builders/_query.js.map +0 -1
  992. package/pg-core/query-builders/_query.cjs.map +0 -1
  993. package/pg-core/query-builders/_query.d.cts +0 -47
  994. package/pg-core/query-builders/_query.d.ts +0 -47
  995. package/pg-core/query-builders/_query.js.map +0 -1
  996. package/sqlite-core/query-builders/_query.cjs +0 -187
  997. package/sqlite-core/query-builders/_query.cjs.map +0 -1
  998. package/sqlite-core/query-builders/_query.d.cts +0 -55
  999. package/sqlite-core/query-builders/_query.d.ts +0 -55
  1000. package/sqlite-core/query-builders/_query.js +0 -151
  1001. package/sqlite-core/query-builders/_query.js.map +0 -1
@@ -1,14 +1,13 @@
1
1
  import type { Client, Connection, ExecutedQuery, Transaction } from '@planetscale/database';
2
- import type * as V1 from "../_relations.js";
3
2
  import { entityKind } from "../entity.js";
4
3
  import type { Logger } from "../logger.js";
5
4
  import type { MySqlDialect } from "../mysql-core/dialect.js";
6
5
  import type { SelectedFieldsOrdered } from "../mysql-core/query-builders/select.types.js";
7
6
  import { MySqlPreparedQuery, type MySqlPreparedQueryConfig, type MySqlPreparedQueryHKT, type MySqlQueryResultHKT, MySqlSession, MySqlTransaction } from "../mysql-core/session.js";
8
- import type { AnyRelations, TablesRelationalConfig } from "../relations.js";
7
+ import type { RelationalSchemaConfig, TablesRelationalConfig } from "../relations.js";
9
8
  import { type Query, type SQL } from "../sql/sql.js";
10
9
  import { type Assume } from "../utils.js";
11
- export declare class PlanetScalePreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false> extends MySqlPreparedQuery<T> {
10
+ export declare class PlanetScalePreparedQuery<T extends MySqlPreparedQueryConfig> extends MySqlPreparedQuery<T> {
12
11
  private client;
13
12
  private queryString;
14
13
  private params;
@@ -17,39 +16,35 @@ export declare class PlanetScalePreparedQuery<T extends MySqlPreparedQueryConfig
17
16
  private customResultMapper?;
18
17
  private generatedIds?;
19
18
  private returningIds?;
20
- private isRqbV2Query?;
21
19
  static readonly [entityKind]: string;
22
20
  private rawQuery;
23
21
  private query;
24
- constructor(client: Client | Transaction | Connection, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, customResultMapper?: ((rows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][]) => T["execute"]) | undefined, generatedIds?: Record<string, unknown>[] | undefined, returningIds?: SelectedFieldsOrdered | undefined, isRqbV2Query?: TIsRqbV2 | undefined);
22
+ constructor(client: Client | Transaction | Connection, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined, generatedIds?: Record<string, unknown>[] | undefined, returningIds?: SelectedFieldsOrdered | undefined);
25
23
  execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
26
- private executeRqbV2;
27
24
  iterator(_placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']>;
28
25
  }
29
26
  export interface PlanetscaleSessionOptions {
30
27
  logger?: Logger;
31
28
  }
32
- export declare class PlanetscaleSession<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TTablesConfig extends TablesRelationalConfig, TSchema extends V1.TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, PlanetScalePreparedQueryHKT, TFullSchema, TRelations, TTablesConfig, TSchema> {
29
+ export declare class PlanetscaleSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, PlanetScalePreparedQueryHKT, TFullSchema, TSchema> {
33
30
  private baseClient;
34
- private relations;
35
31
  private schema;
36
32
  private options;
37
33
  static readonly [entityKind]: string;
38
34
  private logger;
39
35
  private client;
40
- constructor(baseClient: Client | Connection, dialect: MySqlDialect, tx: Transaction | undefined, relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<TSchema> | undefined, options?: PlanetscaleSessionOptions);
36
+ constructor(baseClient: Client | Connection, dialect: MySqlDialect, tx: Transaction | undefined, schema: RelationalSchemaConfig<TSchema> | undefined, options?: PlanetscaleSessionOptions);
41
37
  prepareQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper?: (rows: unknown[][]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): MySqlPreparedQuery<T>;
42
- prepareRelationalQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): MySqlPreparedQuery<T>;
43
38
  query(query: string, params: unknown[]): Promise<ExecutedQuery>;
44
39
  queryObjects(query: string, params: unknown[]): Promise<ExecutedQuery>;
45
40
  all<T = unknown>(query: SQL): Promise<T[]>;
46
41
  count(sql: SQL): Promise<number>;
47
- transaction<T>(transaction: (tx: PlanetScaleTransaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>): Promise<T>;
42
+ transaction<T>(transaction: (tx: PlanetScaleTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T>;
48
43
  }
49
- export declare class PlanetScaleTransaction<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TTablesConfig extends TablesRelationalConfig, TSchema extends V1.TablesRelationalConfig> extends MySqlTransaction<PlanetscaleQueryResultHKT, PlanetScalePreparedQueryHKT, TFullSchema, TRelations, TTablesConfig, TSchema> {
44
+ export declare class PlanetScaleTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends MySqlTransaction<PlanetscaleQueryResultHKT, PlanetScalePreparedQueryHKT, TFullSchema, TSchema> {
50
45
  static readonly [entityKind]: string;
51
- constructor(dialect: MySqlDialect, session: MySqlSession, relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<TSchema> | undefined, nestedIndex?: number);
52
- transaction<T>(transaction: (tx: PlanetScaleTransaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>): Promise<T>;
46
+ constructor(dialect: MySqlDialect, session: MySqlSession, schema: RelationalSchemaConfig<TSchema> | undefined, nestedIndex?: number);
47
+ transaction<T>(transaction: (tx: PlanetScaleTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T>;
53
48
  }
54
49
  export interface PlanetscaleQueryResultHKT extends MySqlQueryResultHKT {
55
50
  type: ExecutedQuery;
@@ -9,7 +9,7 @@ import {
9
9
  import { fillPlaceholders, sql } from "../sql/sql.js";
10
10
  import { mapResultRow } from "../utils.js";
11
11
  class PlanetScalePreparedQuery extends MySqlPreparedQuery {
12
- constructor(client, queryString, params, logger, fields, customResultMapper, generatedIds, returningIds, isRqbV2Query) {
12
+ constructor(client, queryString, params, logger, fields, customResultMapper, generatedIds, returningIds) {
13
13
  super();
14
14
  this.client = client;
15
15
  this.queryString = queryString;
@@ -19,14 +19,11 @@ class PlanetScalePreparedQuery extends MySqlPreparedQuery {
19
19
  this.customResultMapper = customResultMapper;
20
20
  this.generatedIds = generatedIds;
21
21
  this.returningIds = returningIds;
22
- this.isRqbV2Query = isRqbV2Query;
23
22
  }
24
23
  static [entityKind] = "PlanetScalePreparedQuery";
25
24
  rawQuery = { as: "object" };
26
25
  query = { as: "array" };
27
26
  async execute(placeholderValues = {}) {
28
- if (this.isRqbV2Query)
29
- return this.executeRqbV2(placeholderValues);
30
27
  const params = fillPlaceholders(this.params, placeholderValues);
31
28
  this.logger.logQuery(this.queryString, params);
32
29
  const {
@@ -71,29 +68,14 @@ class PlanetScalePreparedQuery extends MySqlPreparedQuery {
71
68
  }
72
69
  return rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
73
70
  }
74
- async executeRqbV2(placeholderValues = {}) {
75
- const params = fillPlaceholders(this.params, placeholderValues);
76
- this.logger.logQuery(this.queryString, params);
77
- const {
78
- client,
79
- queryString,
80
- rawQuery,
81
- customResultMapper
82
- } = this;
83
- const res = await client.execute(queryString, params, rawQuery);
84
- return customResultMapper(
85
- res.rows
86
- );
87
- }
88
71
  iterator(_placeholderValues) {
89
72
  throw new Error("Streaming is not supported by the PlanetScale Serverless driver");
90
73
  }
91
74
  }
92
75
  class PlanetscaleSession extends MySqlSession {
93
- constructor(baseClient, dialect, tx, relations, schema, options = {}) {
76
+ constructor(baseClient, dialect, tx, schema, options = {}) {
94
77
  super(dialect);
95
78
  this.baseClient = baseClient;
96
- this.relations = relations;
97
79
  this.schema = schema;
98
80
  this.options = options;
99
81
  this.client = tx ?? baseClient;
@@ -114,19 +96,6 @@ class PlanetscaleSession extends MySqlSession {
114
96
  returningIds
115
97
  );
116
98
  }
117
- prepareRelationalQuery(query, fields, customResultMapper, generatedIds, returningIds) {
118
- return new PlanetScalePreparedQuery(
119
- this.client,
120
- query.sql,
121
- query.params,
122
- this.logger,
123
- fields,
124
- customResultMapper,
125
- generatedIds,
126
- returningIds,
127
- true
128
- );
129
- }
130
99
  async query(query, params) {
131
100
  this.logger.logQuery(query, params);
132
101
  return await this.client.execute(query, params, { as: "array" });
@@ -147,18 +116,10 @@ class PlanetscaleSession extends MySqlSession {
147
116
  }
148
117
  transaction(transaction) {
149
118
  return this.baseClient.transaction((pstx) => {
150
- const session = new PlanetscaleSession(
151
- this.baseClient,
152
- this.dialect,
153
- pstx,
154
- this.relations,
155
- this.schema,
156
- this.options
157
- );
119
+ const session = new PlanetscaleSession(this.baseClient, this.dialect, pstx, this.schema, this.options);
158
120
  const tx = new PlanetScaleTransaction(
159
121
  this.dialect,
160
122
  session,
161
- this.relations,
162
123
  this.schema
163
124
  );
164
125
  return transaction(tx);
@@ -167,15 +128,14 @@ class PlanetscaleSession extends MySqlSession {
167
128
  }
168
129
  class PlanetScaleTransaction extends MySqlTransaction {
169
130
  static [entityKind] = "PlanetScaleTransaction";
170
- constructor(dialect, session, relations, schema, nestedIndex = 0) {
171
- super(dialect, session, relations, schema, nestedIndex, "planetscale");
131
+ constructor(dialect, session, schema, nestedIndex = 0) {
132
+ super(dialect, session, schema, nestedIndex, "planetscale");
172
133
  }
173
134
  async transaction(transaction) {
174
135
  const savepointName = `sp${this.nestedIndex + 1}`;
175
136
  const tx = new PlanetScaleTransaction(
176
137
  this.dialect,
177
138
  this.session,
178
- this.relations,
179
139
  this.schema,
180
140
  this.nestedIndex + 1
181
141
  );
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/planetscale-serverless/session.ts"],"sourcesContent":["import type { Client, Connection, ExecutedQuery, Transaction } from '@planetscale/database';\nimport type * as V1 from '~/_relations.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n} from '~/mysql-core/session.ts';\nimport type { AnyRelations, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport class PlanetScalePreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'PlanetScalePreparedQuery';\n\n\tprivate rawQuery = { as: 'object' } as const;\n\tprivate query = { as: 'array' } as const;\n\n\tconstructor(\n\t\tprivate client: Client | Transaction | Connection,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper();\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.queryString, params);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\tqueryString,\n\t\t\trawQuery,\n\t\t\tquery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t\treturningIds,\n\t\t\tgeneratedIds,\n\t\t} = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await client.execute(queryString, params, rawQuery);\n\n\t\t\tconst insertId = Number.parseFloat(res.insertId);\n\t\t\tconst affectedRows = res.rowsAffected;\n\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\t\t\treturn res;\n\t\t}\n\t\tconst { rows } = await client.execute(queryString, params, query);\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => T['execute'])(rows as unknown[][]);\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow<T['execute']>(fields!, row as unknown[], joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.queryString, params);\n\n\t\tconst {\n\t\t\tclient,\n\t\t\tqueryString,\n\t\t\trawQuery,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\n\t\tconst res = await client.execute(queryString, params, rawQuery);\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(\n\t\t\tres.rows as any as Record<string, unknown>[],\n\t\t);\n\t}\n\n\toverride iterator(_placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']> {\n\t\tthrow new Error('Streaming is not supported by the PlanetScale Serverless driver');\n\t}\n}\n\nexport interface PlanetscaleSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class PlanetscaleSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTTablesConfig extends TablesRelationalConfig,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<\n\tMySqlQueryResultHKT,\n\tPlanetScalePreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTTablesConfig,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'PlanetscaleSession';\n\n\tprivate logger: Logger;\n\tprivate client: Client | Transaction | Connection;\n\n\tconstructor(\n\t\tprivate baseClient: Client | Connection,\n\t\tdialect: MySqlDialect,\n\t\ttx: Transaction | undefined,\n\t\tprivate relations: AnyRelations | undefined,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: PlanetscaleSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.client = tx ?? baseClient;\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): MySqlPreparedQuery<T> {\n\t\treturn new PlanetScalePreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): MySqlPreparedQuery<T> {\n\t\treturn new PlanetScalePreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\tasync query(query: string, params: unknown[]): Promise<ExecutedQuery> {\n\t\tthis.logger.logQuery(query, params);\n\n\t\treturn await this.client.execute(query, params, { as: 'array' });\n\t}\n\n\tasync queryObjects(\n\t\tquery: string,\n\t\tparams: unknown[],\n\t): Promise<ExecutedQuery> {\n\t\treturn this.client.execute(query, params, { as: 'object' });\n\t}\n\n\toverride all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\n\t\treturn this.client.execute(querySql.sql, querySql.params, { as: 'object' }).then((\n\t\t\teQuery,\n\t\t) => eQuery.rows as T[]);\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: PlanetScaleTransaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn this.baseClient.transaction((pstx) => {\n\t\t\tconst session = new PlanetscaleSession(\n\t\t\t\tthis.baseClient,\n\t\t\t\tthis.dialect,\n\t\t\t\tpstx,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new PlanetScaleTransaction<TFullSchema, TRelations, TTablesConfig, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t);\n\t\t\treturn transaction(tx);\n\t\t});\n\t}\n}\n\nexport class PlanetScaleTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTTablesConfig extends TablesRelationalConfig,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tPlanetscaleQueryResultHKT,\n\tPlanetScalePreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTTablesConfig,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'PlanetScaleTransaction';\n\n\tconstructor(\n\t\tdialect: MySqlDialect,\n\t\tsession: MySqlSession,\n\t\trelations: AnyRelations | undefined,\n\t\tschema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tnestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, relations, schema, nestedIndex, 'planetscale');\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: PlanetScaleTransaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new PlanetScaleTransaction<TFullSchema, TRelations, TTablesConfig, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface PlanetscaleQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: ExecutedQuery;\n}\n\nexport interface PlanetScalePreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: PlanetScalePreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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","names":["sql"]}
1
+ {"version":3,"sources":["../../src/planetscale-serverless/session.ts"],"sourcesContent":["import type { Client, Connection, ExecutedQuery, Transaction } from '@planetscale/database';\nimport { Column } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n} from '~/mysql-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport class PlanetScalePreparedQuery<T extends MySqlPreparedQueryConfig> extends MySqlPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'PlanetScalePreparedQuery';\n\n\tprivate rawQuery = { as: 'object' } as const;\n\tprivate query = { as: 'array' } as const;\n\n\tconstructor(\n\t\tprivate client: Client | Transaction | Connection,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t) {\n\t\tsuper();\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.queryString, params);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\tqueryString,\n\t\t\trawQuery,\n\t\t\tquery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t\treturningIds,\n\t\t\tgeneratedIds,\n\t\t} = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await client.execute(queryString, params, rawQuery);\n\n\t\t\tconst insertId = Number.parseFloat(res.insertId);\n\t\t\tconst affectedRows = res.rowsAffected;\n\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\t\t\treturn res;\n\t\t}\n\t\tconst { rows } = await client.execute(queryString, params, query);\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows as unknown[][]);\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow<T['execute']>(fields!, row as unknown[], joinsNotNullableMap));\n\t}\n\n\toverride iterator(_placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']> {\n\t\tthrow new Error('Streaming is not supported by the PlanetScale Serverless driver');\n\t}\n}\n\nexport interface PlanetscaleSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class PlanetscaleSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends MySqlSession<MySqlQueryResultHKT, PlanetScalePreparedQueryHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PlanetscaleSession';\n\n\tprivate logger: Logger;\n\tprivate client: Client | Transaction | Connection;\n\n\tconstructor(\n\t\tprivate baseClient: Client | Connection,\n\t\tdialect: MySqlDialect,\n\t\ttx: Transaction | undefined,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: PlanetscaleSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.client = tx ?? baseClient;\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): MySqlPreparedQuery<T> {\n\t\treturn new PlanetScalePreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t);\n\t}\n\n\tasync query(query: string, params: unknown[]): Promise<ExecutedQuery> {\n\t\tthis.logger.logQuery(query, params);\n\n\t\treturn await this.client.execute(query, params, { as: 'array' });\n\t}\n\n\tasync queryObjects(\n\t\tquery: string,\n\t\tparams: unknown[],\n\t): Promise<ExecutedQuery> {\n\t\treturn this.client.execute(query, params, { as: 'object' });\n\t}\n\n\toverride all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\n\t\treturn this.client.execute(querySql.sql, querySql.params, { as: 'object' }).then((\n\t\t\teQuery,\n\t\t) => eQuery.rows as T[]);\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: PlanetScaleTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn this.baseClient.transaction((pstx) => {\n\t\t\tconst session = new PlanetscaleSession(this.baseClient, this.dialect, pstx, this.schema, this.options);\n\t\t\tconst tx = new PlanetScaleTransaction<TFullSchema, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any>,\n\t\t\t\tthis.schema,\n\t\t\t);\n\t\t\treturn transaction(tx);\n\t\t});\n\t}\n}\n\nexport class PlanetScaleTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends MySqlTransaction<PlanetscaleQueryResultHKT, PlanetScalePreparedQueryHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PlanetScaleTransaction';\n\n\tconstructor(\n\t\tdialect: MySqlDialect,\n\t\tsession: MySqlSession,\n\t\tschema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tnestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, schema, nestedIndex, 'planetscale');\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: PlanetScaleTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new PlanetScaleTransaction<TFullSchema, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface PlanetscaleQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: ExecutedQuery;\n}\n\nexport interface PlanetScalePreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: PlanetScalePreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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","names":["sql"]}
@@ -33,11 +33,11 @@ __export(driver_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(driver_exports);
35
35
  var import_postgres = __toESM(require("postgres"), 1);
36
- var V1 = __toESM(require("../_relations.cjs"), 1);
37
36
  var import_entity = require("../entity.cjs");
38
37
  var import_logger = require("../logger.cjs");
39
38
  var import_db = require("../pg-core/db.cjs");
40
39
  var import_dialect = require("../pg-core/dialect.cjs");
40
+ var import_relations = require("../relations.cjs");
41
41
  var import_utils = require("../utils.cjs");
42
42
  var import_session = require("./session.cjs");
43
43
  class PostgresJsDatabase extends import_db.PgDatabase {
@@ -60,9 +60,9 @@ function construct(client, config = {}) {
60
60
  }
61
61
  let schema;
62
62
  if (config.schema) {
63
- const tablesConfig = V1.extractTablesRelationalConfig(
63
+ const tablesConfig = (0, import_relations.extractTablesRelationalConfig)(
64
64
  config.schema,
65
- V1.createTableRelationsHelpers
65
+ import_relations.createTableRelationsHelpers
66
66
  );
67
67
  schema = {
68
68
  fullSchema: config.schema,
@@ -70,9 +70,8 @@ function construct(client, config = {}) {
70
70
  tableNamesMap: tablesConfig.tableNamesMap
71
71
  };
72
72
  }
73
- const relations = config.relations;
74
- const session = new import_session.PostgresJsSession(client, dialect, relations, schema, { logger });
75
- const db = new PostgresJsDatabase(dialect, session, relations, schema);
73
+ const session = new import_session.PostgresJsSession(client, dialect, schema, { logger });
74
+ const db = new PostgresJsDatabase(dialect, session, schema);
76
75
  db.$client = client;
77
76
  return db;
78
77
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/postgres-js/driver.ts"],"sourcesContent":["import pgClient, { type Options, type PostgresType, type Sql } from 'postgres';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { PostgresJsQueryResultHKT } from './session.ts';\nimport { PostgresJsSession } from './session.ts';\n\nexport class PostgresJsDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<PostgresJsQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'PostgresJsDatabase';\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: Sql,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): PostgresJsDatabase<TSchema, TRelations> & {\n\t$client: Sql;\n} {\n\tconst transparentParser = (val: any) => val;\n\n\t// Override postgres.js default date parsers: https://github.com/porsager/postgres/discussions/761\n\tfor (const type of ['1184', '1082', '1083', '1114']) {\n\t\tclient.options.parsers[type as any] = transparentParser;\n\t\tclient.options.serializers[type as any] = transparentParser;\n\t}\n\tclient.options.serializers['114'] = transparentParser;\n\tclient.options.serializers['3802'] = transparentParser;\n\n\tconst dialect = new PgDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations;\n\tconst session = new PostgresJsSession(client, dialect, relations, schema, { logger });\n\tconst db = new PostgresJsDatabase(dialect, session, relations, schema as V1.RelationalSchemaConfig<any>);\n\t(<any> db).$client = client;\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends Sql = Sql,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema, TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & Options<Record<string, PostgresType>>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): PostgresJsDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = pgClient(params[0] as string);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & Options<Record<string, PostgresType>>;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = pgClient(url, config);\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = pgClient(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleConfig<TSchema, TRelations>,\n\t): PostgresJsDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAoE;AACpE,SAAoB;AACpB,oBAA2B;AAC3B,oBAA8B;AAC9B,gBAA2B;AAC3B,qBAA0B;AAE1B,mBAA6C;AAE7C,qBAAkC;AAE3B,MAAM,2BAGH,qBAA0D;AAAA,EACnE,QAA0B,wBAAU,IAAY;AACjD;AAEA,SAAS,UAIR,QACA,SAA6C,CAAC,GAG7C;AACD,QAAM,oBAAoB,CAAC,QAAa;AAGxC,aAAW,QAAQ,CAAC,QAAQ,QAAQ,QAAQ,MAAM,GAAG;AACpD,WAAO,QAAQ,QAAQ,IAAW,IAAI;AACtC,WAAO,QAAQ,YAAY,IAAW,IAAI;AAAA,EAC3C;AACA,SAAO,QAAQ,YAAY,KAAK,IAAI;AACpC,SAAO,QAAQ,YAAY,MAAM,IAAI;AAErC,QAAM,UAAU,IAAI,yBAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO;AACzB,QAAM,UAAU,IAAI,iCAAkB,QAAQ,SAAS,WAAW,QAAQ,EAAE,OAAO,CAAC;AACpF,QAAM,KAAK,IAAI,mBAAmB,SAAS,SAAS,WAAW,MAAwC;AACvG,EAAO,GAAI,UAAU;AAErB,SAAO;AACR;AAEO,SAAS,WAKZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,eAAW,gBAAAA,SAAS,OAAO,CAAC,CAAW;AAE7C,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,UAAI,uBAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMC,gBAAW,gBAAAD,SAAS,KAAK,MAAM;AACrC,aAAO,UAAUC,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,eAAW,gBAAAD,SAAS,UAAU;AACpC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUE,aAAV;AACC,WAAS,KAIf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAdO,EAAAA,SAAS;AAAA,GADA;","names":["pgClient","instance","drizzle"]}
1
+ {"version":3,"sources":["../../src/postgres-js/driver.ts"],"sourcesContent":["import pgClient, { type Options, type PostgresType, type Sql } from 'postgres';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { PostgresJsQueryResultHKT } from './session.ts';\nimport { PostgresJsSession } from './session.ts';\n\nexport class PostgresJsDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends PgDatabase<PostgresJsQueryResultHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PostgresJsDatabase';\n}\n\nfunction construct<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: Sql,\n\tconfig: DrizzleConfig<TSchema> = {},\n): PostgresJsDatabase<TSchema> & {\n\t$client: Sql;\n} {\n\tconst transparentParser = (val: any) => val;\n\n\t// Override postgres.js default date parsers: https://github.com/porsager/postgres/discussions/761\n\tfor (const type of ['1184', '1082', '1083', '1114']) {\n\t\tclient.options.parsers[type as any] = transparentParser;\n\t\tclient.options.serializers[type as any] = transparentParser;\n\t}\n\tclient.options.serializers['114'] = transparentParser;\n\tclient.options.serializers['3802'] = transparentParser;\n\n\tconst dialect = new PgDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new PostgresJsSession(client, dialect, schema, { logger });\n\tconst db = new PostgresJsDatabase(dialect, session, schema as any) as PostgresJsDatabase<TSchema>;\n\t(<any> db).$client = client;\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends Sql = Sql,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & Options<Record<string, PostgresType>>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): PostgresJsDatabase<TSchema> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = pgClient(params[0] as string);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & Options<Record<string, PostgresType>>;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = pgClient(url, config);\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = pgClient(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<TSchema extends Record<string, unknown> = Record<string, never>>(\n\t\tconfig?: DrizzleConfig<TSchema>,\n\t): PostgresJsDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAoE;AACpE,oBAA2B;AAC3B,oBAA8B;AAC9B,gBAA2B;AAC3B,qBAA0B;AAC1B,uBAKO;AACP,mBAA6C;AAE7C,qBAAkC;AAE3B,MAAM,2BAEH,qBAA8C;AAAA,EACvD,QAA0B,wBAAU,IAAY;AACjD;AAEA,SAAS,UACR,QACA,SAAiC,CAAC,GAGjC;AACD,QAAM,oBAAoB,CAAC,QAAa;AAGxC,aAAW,QAAQ,CAAC,QAAQ,QAAQ,QAAQ,MAAM,GAAG;AACpD,WAAO,QAAQ,QAAQ,IAAW,IAAI;AACtC,WAAO,QAAQ,YAAY,IAAW,IAAI;AAAA,EAC3C;AACA,SAAO,QAAQ,YAAY,KAAK,IAAI;AACpC,SAAO,QAAQ,YAAY,MAAM,IAAI;AAErC,QAAM,UAAU,IAAI,yBAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,iCAAkB,QAAQ,SAAS,QAAQ,EAAE,OAAO,CAAC;AACzE,QAAM,KAAK,IAAI,mBAAmB,SAAS,SAAS,MAAa;AACjE,EAAO,GAAI,UAAU;AAErB,SAAO;AACR;AAEO,SAAS,WAIZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,eAAW,gBAAAA,SAAS,OAAO,CAAC,CAAW;AAE7C,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,UAAI,uBAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMC,gBAAW,gBAAAD,SAAS,KAAK,MAAM;AACrC,aAAO,UAAUC,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,eAAW,gBAAAD,SAAS,UAAU;AACpC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUE,aAAV;AACC,WAAS,KACf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAXO,EAAAA,SAAS;AAAA,GADA;","names":["pgClient","instance","drizzle"]}
@@ -1,30 +1,29 @@
1
1
  import { type Options, type PostgresType, type Sql } from 'postgres';
2
2
  import { entityKind } from "../entity.cjs";
3
3
  import { PgDatabase } from "../pg-core/db.cjs";
4
- import type { AnyRelations, EmptyRelations } from "../relations.cjs";
5
4
  import { type DrizzleConfig } from "../utils.cjs";
6
5
  import type { PostgresJsQueryResultHKT } from "./session.cjs";
7
- export declare class PostgresJsDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgDatabase<PostgresJsQueryResultHKT, TSchema, TRelations> {
6
+ export declare class PostgresJsDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends PgDatabase<PostgresJsQueryResultHKT, TSchema> {
8
7
  static readonly [entityKind]: string;
9
8
  }
10
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TClient extends Sql = Sql>(...params: [
9
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TClient extends Sql = Sql>(...params: [
11
10
  TClient | string
12
11
  ] | [
13
12
  TClient | string,
14
- DrizzleConfig<TSchema, TRelations>
13
+ DrizzleConfig<TSchema>
15
14
  ] | [
16
- (DrizzleConfig<TSchema, TRelations> & ({
15
+ (DrizzleConfig<TSchema> & ({
17
16
  connection: string | ({
18
17
  url?: string;
19
18
  } & Options<Record<string, PostgresType>>);
20
19
  } | {
21
20
  client: TClient;
22
21
  }))
23
- ]): PostgresJsDatabase<TSchema, TRelations> & {
22
+ ]): PostgresJsDatabase<TSchema> & {
24
23
  $client: TClient;
25
24
  };
26
25
  export declare namespace drizzle {
27
- function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): PostgresJsDatabase<TSchema> & {
26
+ function mock<TSchema extends Record<string, unknown> = Record<string, never>>(config?: DrizzleConfig<TSchema>): PostgresJsDatabase<TSchema> & {
28
27
  $client: '$client is not available on drizzle.mock()';
29
28
  };
30
29
  }
@@ -1,30 +1,29 @@
1
1
  import { type Options, type PostgresType, type Sql } from 'postgres';
2
2
  import { entityKind } from "../entity.js";
3
3
  import { PgDatabase } from "../pg-core/db.js";
4
- import type { AnyRelations, EmptyRelations } from "../relations.js";
5
4
  import { type DrizzleConfig } from "../utils.js";
6
5
  import type { PostgresJsQueryResultHKT } from "./session.js";
7
- export declare class PostgresJsDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgDatabase<PostgresJsQueryResultHKT, TSchema, TRelations> {
6
+ export declare class PostgresJsDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends PgDatabase<PostgresJsQueryResultHKT, TSchema> {
8
7
  static readonly [entityKind]: string;
9
8
  }
10
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TClient extends Sql = Sql>(...params: [
9
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TClient extends Sql = Sql>(...params: [
11
10
  TClient | string
12
11
  ] | [
13
12
  TClient | string,
14
- DrizzleConfig<TSchema, TRelations>
13
+ DrizzleConfig<TSchema>
15
14
  ] | [
16
- (DrizzleConfig<TSchema, TRelations> & ({
15
+ (DrizzleConfig<TSchema> & ({
17
16
  connection: string | ({
18
17
  url?: string;
19
18
  } & Options<Record<string, PostgresType>>);
20
19
  } | {
21
20
  client: TClient;
22
21
  }))
23
- ]): PostgresJsDatabase<TSchema, TRelations> & {
22
+ ]): PostgresJsDatabase<TSchema> & {
24
23
  $client: TClient;
25
24
  };
26
25
  export declare namespace drizzle {
27
- function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): PostgresJsDatabase<TSchema> & {
26
+ function mock<TSchema extends Record<string, unknown> = Record<string, never>>(config?: DrizzleConfig<TSchema>): PostgresJsDatabase<TSchema> & {
28
27
  $client: '$client is not available on drizzle.mock()';
29
28
  };
30
29
  }
@@ -1,9 +1,12 @@
1
1
  import pgClient from "postgres";
2
- import * as V1 from "../_relations.js";
3
2
  import { entityKind } from "../entity.js";
4
3
  import { DefaultLogger } from "../logger.js";
5
4
  import { PgDatabase } from "../pg-core/db.js";
6
5
  import { PgDialect } from "../pg-core/dialect.js";
6
+ import {
7
+ createTableRelationsHelpers,
8
+ extractTablesRelationalConfig
9
+ } from "../relations.js";
7
10
  import { isConfig } from "../utils.js";
8
11
  import { PostgresJsSession } from "./session.js";
9
12
  class PostgresJsDatabase extends PgDatabase {
@@ -26,9 +29,9 @@ function construct(client, config = {}) {
26
29
  }
27
30
  let schema;
28
31
  if (config.schema) {
29
- const tablesConfig = V1.extractTablesRelationalConfig(
32
+ const tablesConfig = extractTablesRelationalConfig(
30
33
  config.schema,
31
- V1.createTableRelationsHelpers
34
+ createTableRelationsHelpers
32
35
  );
33
36
  schema = {
34
37
  fullSchema: config.schema,
@@ -36,9 +39,8 @@ function construct(client, config = {}) {
36
39
  tableNamesMap: tablesConfig.tableNamesMap
37
40
  };
38
41
  }
39
- const relations = config.relations;
40
- const session = new PostgresJsSession(client, dialect, relations, schema, { logger });
41
- const db = new PostgresJsDatabase(dialect, session, relations, schema);
42
+ const session = new PostgresJsSession(client, dialect, schema, { logger });
43
+ const db = new PostgresJsDatabase(dialect, session, schema);
42
44
  db.$client = client;
43
45
  return db;
44
46
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/postgres-js/driver.ts"],"sourcesContent":["import pgClient, { type Options, type PostgresType, type Sql } from 'postgres';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { PostgresJsQueryResultHKT } from './session.ts';\nimport { PostgresJsSession } from './session.ts';\n\nexport class PostgresJsDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<PostgresJsQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'PostgresJsDatabase';\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: Sql,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): PostgresJsDatabase<TSchema, TRelations> & {\n\t$client: Sql;\n} {\n\tconst transparentParser = (val: any) => val;\n\n\t// Override postgres.js default date parsers: https://github.com/porsager/postgres/discussions/761\n\tfor (const type of ['1184', '1082', '1083', '1114']) {\n\t\tclient.options.parsers[type as any] = transparentParser;\n\t\tclient.options.serializers[type as any] = transparentParser;\n\t}\n\tclient.options.serializers['114'] = transparentParser;\n\tclient.options.serializers['3802'] = transparentParser;\n\n\tconst dialect = new PgDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations;\n\tconst session = new PostgresJsSession(client, dialect, relations, schema, { logger });\n\tconst db = new PostgresJsDatabase(dialect, session, relations, schema as V1.RelationalSchemaConfig<any>);\n\t(<any> db).$client = client;\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends Sql = Sql,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema, TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & Options<Record<string, PostgresType>>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): PostgresJsDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = pgClient(params[0] as string);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & Options<Record<string, PostgresType>>;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = pgClient(url, config);\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = pgClient(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleConfig<TSchema, TRelations>,\n\t): PostgresJsDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":"AAAA,OAAO,cAA6D;AACpE,YAAY,QAAQ;AACpB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAE1B,SAA6B,gBAAgB;AAE7C,SAAS,yBAAyB;AAE3B,MAAM,2BAGH,WAA0D;AAAA,EACnE,QAA0B,UAAU,IAAY;AACjD;AAEA,SAAS,UAIR,QACA,SAA6C,CAAC,GAG7C;AACD,QAAM,oBAAoB,CAAC,QAAa;AAGxC,aAAW,QAAQ,CAAC,QAAQ,QAAQ,QAAQ,MAAM,GAAG;AACpD,WAAO,QAAQ,QAAQ,IAAW,IAAI;AACtC,WAAO,QAAQ,YAAY,IAAW,IAAI;AAAA,EAC3C;AACA,SAAO,QAAQ,YAAY,KAAK,IAAI;AACpC,SAAO,QAAQ,YAAY,MAAM,IAAI;AAErC,QAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO;AACzB,QAAM,UAAU,IAAI,kBAAkB,QAAQ,SAAS,WAAW,QAAQ,EAAE,OAAO,CAAC;AACpF,QAAM,KAAK,IAAI,mBAAmB,SAAS,SAAS,WAAW,MAAwC;AACvG,EAAO,GAAI,UAAU;AAErB,SAAO;AACR;AAEO,SAAS,WAKZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,WAAW,SAAS,OAAO,CAAC,CAAW;AAE7C,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,MAAI,SAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMA,YAAW,SAAS,KAAK,MAAM;AACrC,aAAO,UAAUA,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,WAAW,SAAS,UAAU;AACpC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KAIf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAdO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
1
+ {"version":3,"sources":["../../src/postgres-js/driver.ts"],"sourcesContent":["import pgClient, { type Options, type PostgresType, type Sql } from 'postgres';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport type { PostgresJsQueryResultHKT } from './session.ts';\nimport { PostgresJsSession } from './session.ts';\n\nexport class PostgresJsDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends PgDatabase<PostgresJsQueryResultHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PostgresJsDatabase';\n}\n\nfunction construct<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: Sql,\n\tconfig: DrizzleConfig<TSchema> = {},\n): PostgresJsDatabase<TSchema> & {\n\t$client: Sql;\n} {\n\tconst transparentParser = (val: any) => val;\n\n\t// Override postgres.js default date parsers: https://github.com/porsager/postgres/discussions/761\n\tfor (const type of ['1184', '1082', '1083', '1114']) {\n\t\tclient.options.parsers[type as any] = transparentParser;\n\t\tclient.options.serializers[type as any] = transparentParser;\n\t}\n\tclient.options.serializers['114'] = transparentParser;\n\tclient.options.serializers['3802'] = transparentParser;\n\n\tconst dialect = new PgDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new PostgresJsSession(client, dialect, schema, { logger });\n\tconst db = new PostgresJsDatabase(dialect, session, schema as any) as PostgresJsDatabase<TSchema>;\n\t(<any> db).$client = client;\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends Sql = Sql,\n>(\n\t...params: [\n\t\tTClient | string,\n\t] | [\n\t\tTClient | string,\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema>\n\t\t\t& ({\n\t\t\t\tconnection: string | ({ url?: string } & Options<Record<string, PostgresType>>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): PostgresJsDatabase<TSchema> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = pgClient(params[0] as string);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { url?: string } & Options<Record<string, PostgresType>>;\n\t\t\tclient?: TClient;\n\t\t} & DrizzleConfig<TSchema>;\n\n\t\tif (client) return construct(client, drizzleConfig) as any;\n\n\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\tconst { url, ...config } = connection;\n\n\t\t\tconst instance = pgClient(url, config);\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = pgClient(connection);\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<TSchema extends Record<string, unknown> = Record<string, never>>(\n\t\tconfig?: DrizzleConfig<TSchema>,\n\t): PostgresJsDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({\n\t\t\toptions: {\n\t\t\t\tparsers: {},\n\t\t\t\tserializers: {},\n\t\t\t},\n\t\t} as any, config) as any;\n\t}\n}\n"],"mappings":"AAAA,OAAO,cAA6D;AACpE,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAC1B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AACP,SAA6B,gBAAgB;AAE7C,SAAS,yBAAyB;AAE3B,MAAM,2BAEH,WAA8C;AAAA,EACvD,QAA0B,UAAU,IAAY;AACjD;AAEA,SAAS,UACR,QACA,SAAiC,CAAC,GAGjC;AACD,QAAM,oBAAoB,CAAC,QAAa;AAGxC,aAAW,QAAQ,CAAC,QAAQ,QAAQ,QAAQ,MAAM,GAAG;AACpD,WAAO,QAAQ,QAAQ,IAAW,IAAI;AACtC,WAAO,QAAQ,YAAY,IAAW,IAAI;AAAA,EAC3C;AACA,SAAO,QAAQ,YAAY,KAAK,IAAI;AACpC,SAAO,QAAQ,YAAY,MAAM,IAAI;AAErC,QAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AACvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,kBAAkB,QAAQ,SAAS,QAAQ,EAAE,OAAO,CAAC;AACzE,QAAM,KAAK,IAAI,mBAAmB,SAAS,SAAS,MAAa;AACjE,EAAO,GAAI,UAAU;AAErB,SAAO;AACR;AAEO,SAAS,WAIZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,WAAW,SAAS,OAAO,CAAC,CAAW;AAE7C,WAAO,UAAU,UAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,MAAI,SAAS,OAAO,CAAC,CAAC,GAAG;AACxB,UAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAKzD,QAAI;AAAQ,aAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,YAAY,WAAW,QAAQ,QAAW;AACnE,YAAM,EAAE,KAAK,GAAG,OAAO,IAAI;AAE3B,YAAMA,YAAW,SAAS,KAAK,MAAM;AACrC,aAAO,UAAUA,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,WAAW,SAAS,UAAU;AACpC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAuC;AACvF;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KACf,QAGC;AACD,WAAO,UAAU;AAAA,MAChB,SAAS;AAAA,QACR,SAAS,CAAC;AAAA,QACV,aAAa,CAAC;AAAA,MACf;AAAA,IACD,GAAU,MAAM;AAAA,EACjB;AAXO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/postgres-js/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport type { PostgresJsDatabase } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(\n\tdb: PostgresJsDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\tawait db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAAmC;AAInC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,iBAAa,oCAAmB,MAAM;AAC5C,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,MAAM;AACxD;","names":[]}
1
+ {"version":3,"sources":["../../src/postgres-js/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { PostgresJsDatabase } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: PostgresJsDatabase<TSchema>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\tawait db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAAmC;AAGnC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,iBAAa,oCAAmB,MAAM;AAC5C,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,MAAM;AACxD;","names":[]}
@@ -1,4 +1,3 @@
1
1
  import type { MigrationConfig } from "../migrator.cjs";
2
- import type { AnyRelations } from "../relations.cjs";
3
2
  import type { PostgresJsDatabase } from "./driver.cjs";
4
- export declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: PostgresJsDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void>;
3
+ export declare function migrate<TSchema extends Record<string, unknown>>(db: PostgresJsDatabase<TSchema>, config: MigrationConfig): Promise<void>;
@@ -1,4 +1,3 @@
1
1
  import type { MigrationConfig } from "../migrator.js";
2
- import type { AnyRelations } from "../relations.js";
3
2
  import type { PostgresJsDatabase } from "./driver.js";
4
- export declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: PostgresJsDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void>;
3
+ export declare function migrate<TSchema extends Record<string, unknown>>(db: PostgresJsDatabase<TSchema>, config: MigrationConfig): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/postgres-js/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport type { PostgresJsDatabase } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(\n\tdb: PostgresJsDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\tawait db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":"AACA,SAAS,0BAA0B;AAInC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,aAAa,mBAAmB,MAAM;AAC5C,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,MAAM;AACxD;","names":[]}
1
+ {"version":3,"sources":["../../src/postgres-js/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { PostgresJsDatabase } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: PostgresJsDatabase<TSchema>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\tawait db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":"AACA,SAAS,0BAA0B;AAGnC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,aAAa,mBAAmB,MAAM;AAC5C,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,MAAM;AACxD;","names":[]}
@@ -31,7 +31,7 @@ var import_sql = require("../sql/sql.cjs");
31
31
  var import_tracing = require("../tracing.cjs");
32
32
  var import_utils = require("../utils.cjs");
33
33
  class PostgresJsPreparedQuery extends import_session.PgPreparedQuery {
34
- constructor(client, queryString, params, logger, fields, _isResponseInArrayMode, customResultMapper, isRqbV2Query) {
34
+ constructor(client, queryString, params, logger, fields, _isResponseInArrayMode, customResultMapper) {
35
35
  super({ sql: queryString, params });
36
36
  this.client = client;
37
37
  this.queryString = queryString;
@@ -40,12 +40,9 @@ class PostgresJsPreparedQuery extends import_session.PgPreparedQuery {
40
40
  this.fields = fields;
41
41
  this._isResponseInArrayMode = _isResponseInArrayMode;
42
42
  this.customResultMapper = customResultMapper;
43
- this.isRqbV2Query = isRqbV2Query;
44
43
  }
45
44
  static [import_entity.entityKind] = "PostgresJsPreparedQuery";
46
45
  async execute(placeholderValues = {}) {
47
- if (this.isRqbV2Query)
48
- return this.executeRqbV2(placeholderValues);
49
46
  return import_tracing.tracer.startActiveSpan("drizzle.execute", async (span) => {
50
47
  const params = (0, import_sql.fillPlaceholders)(this.params, placeholderValues);
51
48
  span?.setAttributes({
@@ -71,27 +68,6 @@ class PostgresJsPreparedQuery extends import_session.PgPreparedQuery {
71
68
  });
72
69
  });
73
70
  }
74
- async executeRqbV2(placeholderValues = {}) {
75
- return import_tracing.tracer.startActiveSpan("drizzle.execute", async (span) => {
76
- const params = (0, import_sql.fillPlaceholders)(this.params, placeholderValues);
77
- span?.setAttributes({
78
- "drizzle.query.text": this.queryString,
79
- "drizzle.query.params": JSON.stringify(params)
80
- });
81
- this.logger.logQuery(this.queryString, params);
82
- const { queryString: query, client, customResultMapper } = this;
83
- const rows = await import_tracing.tracer.startActiveSpan("drizzle.driver.execute", () => {
84
- span?.setAttributes({
85
- "drizzle.query.text": query,
86
- "drizzle.query.params": JSON.stringify(params)
87
- });
88
- return client.unsafe(query, params);
89
- });
90
- return import_tracing.tracer.startActiveSpan("drizzle.mapResponse", () => {
91
- return customResultMapper(rows);
92
- });
93
- });
94
- }
95
71
  all(placeholderValues = {}) {
96
72
  return import_tracing.tracer.startActiveSpan("drizzle.execute", async (span) => {
97
73
  const params = (0, import_sql.fillPlaceholders)(this.params, placeholderValues);
@@ -115,10 +91,9 @@ class PostgresJsPreparedQuery extends import_session.PgPreparedQuery {
115
91
  }
116
92
  }
117
93
  class PostgresJsSession extends import_session.PgSession {
118
- constructor(client, dialect, relations, schema, options = {}) {
94
+ constructor(client, dialect, schema, options = {}) {
119
95
  super(dialect);
120
96
  this.client = client;
121
- this.relations = relations;
122
97
  this.schema = schema;
123
98
  this.options = options;
124
99
  this.logger = options.logger ?? new import_logger.NoopLogger();
@@ -136,18 +111,6 @@ class PostgresJsSession extends import_session.PgSession {
136
111
  customResultMapper
137
112
  );
138
113
  }
139
- prepareRelationalQuery(query, fields, name, customResultMapper) {
140
- return new PostgresJsPreparedQuery(
141
- this.client,
142
- query.sql,
143
- query.params,
144
- this.logger,
145
- fields,
146
- false,
147
- customResultMapper,
148
- true
149
- );
150
- }
151
114
  query(query, params) {
152
115
  this.logger.logQuery(query, params);
153
116
  return this.client.unsafe(query, params).values();
@@ -160,11 +123,10 @@ class PostgresJsSession extends import_session.PgSession {
160
123
  const session = new PostgresJsSession(
161
124
  client,
162
125
  this.dialect,
163
- this.relations,
164
126
  this.schema,
165
127
  this.options
166
128
  );
167
- const tx = new PostgresJsTransaction(this.dialect, session, this.schema, this.relations);
129
+ const tx = new PostgresJsTransaction(this.dialect, session, this.schema);
168
130
  if (config) {
169
131
  await tx.setTransaction(config);
170
132
  }
@@ -173,10 +135,9 @@ class PostgresJsSession extends import_session.PgSession {
173
135
  }
174
136
  }
175
137
  class PostgresJsTransaction extends import_pg_core.PgTransaction {
176
- constructor(dialect, session, schema, relations, nestedIndex = 0) {
177
- super(dialect, session, relations, schema, nestedIndex);
138
+ constructor(dialect, session, schema, nestedIndex = 0) {
139
+ super(dialect, session, schema, nestedIndex);
178
140
  this.session = session;
179
- this.relations = relations;
180
141
  }
181
142
  static [import_entity.entityKind] = "PostgresJsTransaction";
182
143
  transaction(transaction) {
@@ -184,16 +145,10 @@ class PostgresJsTransaction extends import_pg_core.PgTransaction {
184
145
  const session = new PostgresJsSession(
185
146
  client,
186
147
  this.dialect,
187
- this.relations,
188
148
  this.schema,
189
149
  this.session.options
190
150
  );
191
- const tx = new PostgresJsTransaction(
192
- this.dialect,
193
- session,
194
- this.schema,
195
- this.relations
196
- );
151
+ const tx = new PostgresJsTransaction(this.dialect, session, this.schema);
197
152
  return transaction(tx);
198
153
  });
199
154
  }