drizzle-orm 1.0.0-beta.1-84d9a79 → 1.0.0-beta.1-9fb1d0d

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 (1221) hide show
  1. package/aws-data-api/common/index.d.cts +1 -1
  2. package/aws-data-api/common/index.d.ts +1 -1
  3. package/aws-data-api/pg/driver.cjs +1 -1
  4. package/aws-data-api/pg/driver.cjs.map +1 -1
  5. package/aws-data-api/pg/driver.js +1 -1
  6. package/aws-data-api/pg/driver.js.map +1 -1
  7. package/aws-data-api/pg/session.cjs.map +1 -1
  8. package/aws-data-api/pg/session.d.cts +6 -6
  9. package/aws-data-api/pg/session.d.ts +6 -6
  10. package/aws-data-api/pg/session.js.map +1 -1
  11. package/better-sqlite3/driver.cjs +1 -1
  12. package/better-sqlite3/driver.cjs.map +1 -1
  13. package/better-sqlite3/driver.js +1 -1
  14. package/better-sqlite3/driver.js.map +1 -1
  15. package/better-sqlite3/session.cjs.map +1 -1
  16. package/better-sqlite3/session.d.cts +6 -6
  17. package/better-sqlite3/session.d.ts +6 -6
  18. package/better-sqlite3/session.js.map +1 -1
  19. package/bun-sql/driver.cjs +1 -1
  20. package/bun-sql/driver.cjs.map +1 -1
  21. package/bun-sql/driver.js +1 -1
  22. package/bun-sql/driver.js.map +1 -1
  23. package/bun-sql/migrator.cjs.map +1 -1
  24. package/bun-sql/migrator.d.cts +2 -2
  25. package/bun-sql/migrator.d.ts +2 -2
  26. package/bun-sql/migrator.js.map +1 -1
  27. package/bun-sql/session.cjs.map +1 -1
  28. package/bun-sql/session.d.cts +7 -7
  29. package/bun-sql/session.d.ts +7 -7
  30. package/bun-sql/session.js.map +1 -1
  31. package/bun-sqlite/driver.cjs +1 -1
  32. package/bun-sqlite/driver.cjs.map +1 -1
  33. package/bun-sqlite/driver.js +1 -1
  34. package/bun-sqlite/driver.js.map +1 -1
  35. package/bun-sqlite/session.cjs.map +1 -1
  36. package/bun-sqlite/session.d.cts +6 -6
  37. package/bun-sqlite/session.d.ts +6 -6
  38. package/bun-sqlite/session.js.map +1 -1
  39. package/column-builder.cjs +9 -2
  40. package/column-builder.cjs.map +1 -1
  41. package/column-builder.d.cts +50 -65
  42. package/column-builder.d.ts +50 -65
  43. package/column-builder.js +7 -1
  44. package/column-builder.js.map +1 -1
  45. package/column.cjs +37 -21
  46. package/column.cjs.map +1 -1
  47. package/column.d.cts +20 -32
  48. package/column.d.ts +20 -32
  49. package/column.js +35 -20
  50. package/column.js.map +1 -1
  51. package/d1/driver.cjs +1 -1
  52. package/d1/driver.cjs.map +1 -1
  53. package/d1/driver.js +1 -1
  54. package/d1/driver.js.map +1 -1
  55. package/d1/session.cjs.map +1 -1
  56. package/d1/session.d.cts +6 -6
  57. package/d1/session.d.ts +6 -6
  58. package/d1/session.js.map +1 -1
  59. package/durable-sqlite/driver.cjs +1 -1
  60. package/durable-sqlite/driver.cjs.map +1 -1
  61. package/durable-sqlite/driver.js +1 -1
  62. package/durable-sqlite/driver.js.map +1 -1
  63. package/durable-sqlite/session.cjs.map +1 -1
  64. package/durable-sqlite/session.d.cts +6 -6
  65. package/durable-sqlite/session.d.ts +6 -6
  66. package/durable-sqlite/session.js.map +1 -1
  67. package/expo-sqlite/driver.cjs +1 -1
  68. package/expo-sqlite/driver.cjs.map +1 -1
  69. package/expo-sqlite/driver.js +1 -1
  70. package/expo-sqlite/driver.js.map +1 -1
  71. package/expo-sqlite/session.cjs.map +1 -1
  72. package/expo-sqlite/session.d.cts +6 -6
  73. package/expo-sqlite/session.d.ts +6 -6
  74. package/expo-sqlite/session.js.map +1 -1
  75. package/gel/driver.cjs +1 -1
  76. package/gel/driver.cjs.map +1 -1
  77. package/gel/driver.d.cts +2 -2
  78. package/gel/driver.d.ts +2 -2
  79. package/gel/driver.js +1 -1
  80. package/gel/driver.js.map +1 -1
  81. package/gel/session.cjs.map +1 -1
  82. package/gel/session.d.cts +6 -6
  83. package/gel/session.d.ts +6 -6
  84. package/gel/session.js.map +1 -1
  85. package/gel-core/columns/bigint.cjs +1 -1
  86. package/gel-core/columns/bigint.cjs.map +1 -1
  87. package/gel-core/columns/bigint.d.cts +7 -12
  88. package/gel-core/columns/bigint.d.ts +7 -12
  89. package/gel-core/columns/bigint.js +1 -1
  90. package/gel-core/columns/bigint.js.map +1 -1
  91. package/gel-core/columns/bigintT.cjs +1 -1
  92. package/gel-core/columns/bigintT.cjs.map +1 -1
  93. package/gel-core/columns/bigintT.d.cts +7 -12
  94. package/gel-core/columns/bigintT.d.ts +7 -12
  95. package/gel-core/columns/bigintT.js +1 -1
  96. package/gel-core/columns/bigintT.js.map +1 -1
  97. package/gel-core/columns/boolean.cjs.map +1 -1
  98. package/gel-core/columns/boolean.d.cts +6 -11
  99. package/gel-core/columns/boolean.d.ts +6 -11
  100. package/gel-core/columns/boolean.js.map +1 -1
  101. package/gel-core/columns/bytes.cjs +1 -1
  102. package/gel-core/columns/bytes.cjs.map +1 -1
  103. package/gel-core/columns/bytes.d.cts +7 -12
  104. package/gel-core/columns/bytes.d.ts +7 -12
  105. package/gel-core/columns/bytes.js +1 -1
  106. package/gel-core/columns/bytes.js.map +1 -1
  107. package/gel-core/columns/common.cjs +9 -9
  108. package/gel-core/columns/common.cjs.map +1 -1
  109. package/gel-core/columns/common.d.cts +24 -41
  110. package/gel-core/columns/common.d.ts +24 -41
  111. package/gel-core/columns/common.js +9 -9
  112. package/gel-core/columns/common.js.map +1 -1
  113. package/gel-core/columns/custom.cjs.map +1 -1
  114. package/gel-core/columns/custom.d.cts +10 -14
  115. package/gel-core/columns/custom.d.ts +10 -14
  116. package/gel-core/columns/custom.js.map +1 -1
  117. package/gel-core/columns/date-duration.cjs +1 -1
  118. package/gel-core/columns/date-duration.cjs.map +1 -1
  119. package/gel-core/columns/date-duration.d.cts +7 -12
  120. package/gel-core/columns/date-duration.d.ts +7 -12
  121. package/gel-core/columns/date-duration.js +1 -1
  122. package/gel-core/columns/date-duration.js.map +1 -1
  123. package/gel-core/columns/date.common.cjs.map +1 -1
  124. package/gel-core/columns/date.common.d.cts +2 -2
  125. package/gel-core/columns/date.common.d.ts +2 -2
  126. package/gel-core/columns/date.common.js.map +1 -1
  127. package/gel-core/columns/decimal.cjs +1 -1
  128. package/gel-core/columns/decimal.cjs.map +1 -1
  129. package/gel-core/columns/decimal.d.cts +8 -13
  130. package/gel-core/columns/decimal.d.ts +8 -13
  131. package/gel-core/columns/decimal.js +1 -1
  132. package/gel-core/columns/decimal.js.map +1 -1
  133. package/gel-core/columns/double-precision.cjs +1 -1
  134. package/gel-core/columns/double-precision.cjs.map +1 -1
  135. package/gel-core/columns/double-precision.d.cts +7 -12
  136. package/gel-core/columns/double-precision.d.ts +7 -12
  137. package/gel-core/columns/double-precision.js +1 -1
  138. package/gel-core/columns/double-precision.js.map +1 -1
  139. package/gel-core/columns/duration.cjs +1 -1
  140. package/gel-core/columns/duration.cjs.map +1 -1
  141. package/gel-core/columns/duration.d.cts +7 -12
  142. package/gel-core/columns/duration.d.ts +7 -12
  143. package/gel-core/columns/duration.js +1 -1
  144. package/gel-core/columns/duration.js.map +1 -1
  145. package/gel-core/columns/int.common.cjs.map +1 -1
  146. package/gel-core/columns/int.common.d.cts +2 -2
  147. package/gel-core/columns/int.common.d.ts +2 -2
  148. package/gel-core/columns/int.common.js.map +1 -1
  149. package/gel-core/columns/integer.cjs +1 -1
  150. package/gel-core/columns/integer.cjs.map +1 -1
  151. package/gel-core/columns/integer.d.cts +7 -12
  152. package/gel-core/columns/integer.d.ts +7 -12
  153. package/gel-core/columns/integer.js +1 -1
  154. package/gel-core/columns/integer.js.map +1 -1
  155. package/gel-core/columns/json.cjs +1 -1
  156. package/gel-core/columns/json.cjs.map +1 -1
  157. package/gel-core/columns/json.d.cts +8 -13
  158. package/gel-core/columns/json.d.ts +8 -13
  159. package/gel-core/columns/json.js +1 -1
  160. package/gel-core/columns/json.js.map +1 -1
  161. package/gel-core/columns/localdate.cjs +1 -1
  162. package/gel-core/columns/localdate.cjs.map +1 -1
  163. package/gel-core/columns/localdate.d.cts +7 -12
  164. package/gel-core/columns/localdate.d.ts +7 -12
  165. package/gel-core/columns/localdate.js +1 -1
  166. package/gel-core/columns/localdate.js.map +1 -1
  167. package/gel-core/columns/localtime.cjs +1 -1
  168. package/gel-core/columns/localtime.cjs.map +1 -1
  169. package/gel-core/columns/localtime.d.cts +7 -12
  170. package/gel-core/columns/localtime.d.ts +7 -12
  171. package/gel-core/columns/localtime.js +1 -1
  172. package/gel-core/columns/localtime.js.map +1 -1
  173. package/gel-core/columns/real.cjs +1 -1
  174. package/gel-core/columns/real.cjs.map +1 -1
  175. package/gel-core/columns/real.d.cts +8 -13
  176. package/gel-core/columns/real.d.ts +8 -13
  177. package/gel-core/columns/real.js +1 -1
  178. package/gel-core/columns/real.js.map +1 -1
  179. package/gel-core/columns/relative-duration.cjs +1 -1
  180. package/gel-core/columns/relative-duration.cjs.map +1 -1
  181. package/gel-core/columns/relative-duration.d.cts +7 -12
  182. package/gel-core/columns/relative-duration.d.ts +7 -12
  183. package/gel-core/columns/relative-duration.js +1 -1
  184. package/gel-core/columns/relative-duration.js.map +1 -1
  185. package/gel-core/columns/smallint.cjs +1 -1
  186. package/gel-core/columns/smallint.cjs.map +1 -1
  187. package/gel-core/columns/smallint.d.cts +7 -12
  188. package/gel-core/columns/smallint.d.ts +7 -12
  189. package/gel-core/columns/smallint.js +1 -1
  190. package/gel-core/columns/smallint.js.map +1 -1
  191. package/gel-core/columns/text.cjs.map +1 -1
  192. package/gel-core/columns/text.d.cts +6 -12
  193. package/gel-core/columns/text.d.ts +6 -12
  194. package/gel-core/columns/text.js.map +1 -1
  195. package/gel-core/columns/timestamp.cjs +1 -1
  196. package/gel-core/columns/timestamp.cjs.map +1 -1
  197. package/gel-core/columns/timestamp.d.cts +8 -13
  198. package/gel-core/columns/timestamp.d.ts +8 -13
  199. package/gel-core/columns/timestamp.js +1 -1
  200. package/gel-core/columns/timestamp.js.map +1 -1
  201. package/gel-core/columns/timestamptz.cjs +1 -1
  202. package/gel-core/columns/timestamptz.cjs.map +1 -1
  203. package/gel-core/columns/timestamptz.d.cts +8 -13
  204. package/gel-core/columns/timestamptz.d.ts +8 -13
  205. package/gel-core/columns/timestamptz.js +1 -1
  206. package/gel-core/columns/timestamptz.js.map +1 -1
  207. package/gel-core/columns/uuid.cjs +1 -1
  208. package/gel-core/columns/uuid.cjs.map +1 -1
  209. package/gel-core/columns/uuid.d.cts +7 -12
  210. package/gel-core/columns/uuid.d.ts +7 -12
  211. package/gel-core/columns/uuid.js +1 -1
  212. package/gel-core/columns/uuid.js.map +1 -1
  213. package/gel-core/db.cjs +10 -15
  214. package/gel-core/db.cjs.map +1 -1
  215. package/gel-core/db.d.cts +8 -8
  216. package/gel-core/db.d.ts +8 -8
  217. package/gel-core/db.js +10 -15
  218. package/gel-core/db.js.map +1 -1
  219. package/gel-core/dialect.cjs +13 -13
  220. package/gel-core/dialect.cjs.map +1 -1
  221. package/gel-core/dialect.d.cts +1 -3
  222. package/gel-core/dialect.d.ts +1 -3
  223. package/gel-core/dialect.js +14 -14
  224. package/gel-core/dialect.js.map +1 -1
  225. package/gel-core/query-builders/delete.cjs.map +1 -1
  226. package/gel-core/query-builders/delete.js.map +1 -1
  227. package/gel-core/query-builders/insert.cjs +1 -1
  228. package/gel-core/query-builders/insert.cjs.map +1 -1
  229. package/gel-core/query-builders/insert.d.cts +2 -2
  230. package/gel-core/query-builders/insert.d.ts +2 -2
  231. package/gel-core/query-builders/insert.js +2 -2
  232. package/gel-core/query-builders/insert.js.map +1 -1
  233. package/gel-core/query-builders/query.cjs +2 -12
  234. package/gel-core/query-builders/query.cjs.map +1 -1
  235. package/gel-core/query-builders/query.d.cts +2 -6
  236. package/gel-core/query-builders/query.d.ts +2 -6
  237. package/gel-core/query-builders/query.js +2 -12
  238. package/gel-core/query-builders/query.js.map +1 -1
  239. package/gel-core/query-builders/select.types.cjs.map +1 -1
  240. package/gel-core/query-builders/select.types.d.cts +1 -1
  241. package/gel-core/query-builders/select.types.d.ts +1 -1
  242. package/gel-core/query-builders/update.cjs.map +1 -1
  243. package/gel-core/query-builders/update.d.cts +3 -3
  244. package/gel-core/query-builders/update.d.ts +3 -3
  245. package/gel-core/query-builders/update.js.map +1 -1
  246. package/gel-core/session.cjs.map +1 -1
  247. package/gel-core/session.d.cts +7 -7
  248. package/gel-core/session.d.ts +7 -7
  249. package/gel-core/session.js.map +1 -1
  250. package/gel-core/table.cjs.map +1 -1
  251. package/gel-core/table.d.cts +9 -11
  252. package/gel-core/table.d.ts +9 -11
  253. package/gel-core/table.js +3 -1
  254. package/gel-core/table.js.map +1 -1
  255. package/gel-core/utils.d.cts +1 -1
  256. package/gel-core/utils.d.ts +1 -1
  257. package/gel-core/view.cjs.map +1 -1
  258. package/gel-core/view.d.cts +3 -4
  259. package/gel-core/view.d.ts +3 -4
  260. package/gel-core/view.js.map +1 -1
  261. package/libsql/driver-core.cjs +1 -1
  262. package/libsql/driver-core.cjs.map +1 -1
  263. package/libsql/driver-core.js +1 -1
  264. package/libsql/driver-core.js.map +1 -1
  265. package/libsql/session.cjs.map +1 -1
  266. package/libsql/session.d.cts +6 -6
  267. package/libsql/session.d.ts +6 -6
  268. package/libsql/session.js.map +1 -1
  269. package/mysql-core/columns/bigint.cjs +2 -2
  270. package/mysql-core/columns/bigint.cjs.map +1 -1
  271. package/mysql-core/columns/bigint.d.cts +19 -25
  272. package/mysql-core/columns/bigint.d.ts +19 -25
  273. package/mysql-core/columns/bigint.js +2 -2
  274. package/mysql-core/columns/bigint.js.map +1 -1
  275. package/mysql-core/columns/binary.cjs +5 -4
  276. package/mysql-core/columns/binary.cjs.map +1 -1
  277. package/mysql-core/columns/binary.d.cts +13 -14
  278. package/mysql-core/columns/binary.d.ts +13 -14
  279. package/mysql-core/columns/binary.js +5 -4
  280. package/mysql-core/columns/binary.js.map +1 -1
  281. package/mysql-core/columns/boolean.cjs.map +1 -1
  282. package/mysql-core/columns/boolean.d.cts +6 -11
  283. package/mysql-core/columns/boolean.d.ts +6 -11
  284. package/mysql-core/columns/boolean.js.map +1 -1
  285. package/mysql-core/columns/char.cjs +5 -4
  286. package/mysql-core/columns/char.cjs.map +1 -1
  287. package/mysql-core/columns/char.d.cts +18 -23
  288. package/mysql-core/columns/char.d.ts +18 -23
  289. package/mysql-core/columns/char.js +5 -4
  290. package/mysql-core/columns/char.js.map +1 -1
  291. package/mysql-core/columns/common.cjs +3 -1
  292. package/mysql-core/columns/common.cjs.map +1 -1
  293. package/mysql-core/columns/common.d.cts +10 -18
  294. package/mysql-core/columns/common.d.ts +10 -18
  295. package/mysql-core/columns/common.js +3 -1
  296. package/mysql-core/columns/common.js.map +1 -1
  297. package/mysql-core/columns/custom.cjs.map +1 -1
  298. package/mysql-core/columns/custom.d.cts +9 -14
  299. package/mysql-core/columns/custom.d.ts +9 -14
  300. package/mysql-core/columns/custom.js.map +1 -1
  301. package/mysql-core/columns/date.cjs +2 -2
  302. package/mysql-core/columns/date.cjs.map +1 -1
  303. package/mysql-core/columns/date.common.cjs +1 -1
  304. package/mysql-core/columns/date.common.cjs.map +1 -1
  305. package/mysql-core/columns/date.common.d.cts +3 -3
  306. package/mysql-core/columns/date.common.d.ts +3 -3
  307. package/mysql-core/columns/date.common.js +1 -1
  308. package/mysql-core/columns/date.common.js.map +1 -1
  309. package/mysql-core/columns/date.d.cts +16 -24
  310. package/mysql-core/columns/date.d.ts +16 -24
  311. package/mysql-core/columns/date.js +2 -2
  312. package/mysql-core/columns/date.js.map +1 -1
  313. package/mysql-core/columns/datetime.cjs +2 -2
  314. package/mysql-core/columns/datetime.cjs.map +1 -1
  315. package/mysql-core/columns/datetime.d.cts +16 -24
  316. package/mysql-core/columns/datetime.d.ts +16 -24
  317. package/mysql-core/columns/datetime.js +2 -2
  318. package/mysql-core/columns/datetime.js.map +1 -1
  319. package/mysql-core/columns/decimal.cjs +3 -3
  320. package/mysql-core/columns/decimal.cjs.map +1 -1
  321. package/mysql-core/columns/decimal.d.cts +22 -33
  322. package/mysql-core/columns/decimal.d.ts +22 -33
  323. package/mysql-core/columns/decimal.js +3 -3
  324. package/mysql-core/columns/decimal.js.map +1 -1
  325. package/mysql-core/columns/double.cjs +1 -1
  326. package/mysql-core/columns/double.cjs.map +1 -1
  327. package/mysql-core/columns/double.d.cts +11 -15
  328. package/mysql-core/columns/double.d.ts +11 -15
  329. package/mysql-core/columns/double.js +1 -1
  330. package/mysql-core/columns/double.js.map +1 -1
  331. package/mysql-core/columns/enum.cjs +2 -2
  332. package/mysql-core/columns/enum.cjs.map +1 -1
  333. package/mysql-core/columns/enum.d.cts +18 -23
  334. package/mysql-core/columns/enum.d.ts +18 -23
  335. package/mysql-core/columns/enum.js +2 -2
  336. package/mysql-core/columns/enum.js.map +1 -1
  337. package/mysql-core/columns/float.cjs +1 -1
  338. package/mysql-core/columns/float.cjs.map +1 -1
  339. package/mysql-core/columns/float.d.cts +11 -15
  340. package/mysql-core/columns/float.d.ts +11 -15
  341. package/mysql-core/columns/float.js +1 -1
  342. package/mysql-core/columns/float.js.map +1 -1
  343. package/mysql-core/columns/int.cjs +1 -1
  344. package/mysql-core/columns/int.cjs.map +1 -1
  345. package/mysql-core/columns/int.d.cts +11 -15
  346. package/mysql-core/columns/int.d.ts +11 -15
  347. package/mysql-core/columns/int.js +1 -1
  348. package/mysql-core/columns/int.js.map +1 -1
  349. package/mysql-core/columns/json.cjs +1 -1
  350. package/mysql-core/columns/json.cjs.map +1 -1
  351. package/mysql-core/columns/json.d.cts +7 -12
  352. package/mysql-core/columns/json.d.ts +7 -12
  353. package/mysql-core/columns/json.js +1 -1
  354. package/mysql-core/columns/json.js.map +1 -1
  355. package/mysql-core/columns/mediumint.cjs +1 -1
  356. package/mysql-core/columns/mediumint.cjs.map +1 -1
  357. package/mysql-core/columns/mediumint.d.cts +9 -13
  358. package/mysql-core/columns/mediumint.d.ts +9 -13
  359. package/mysql-core/columns/mediumint.js +1 -1
  360. package/mysql-core/columns/mediumint.js.map +1 -1
  361. package/mysql-core/columns/real.cjs +1 -1
  362. package/mysql-core/columns/real.cjs.map +1 -1
  363. package/mysql-core/columns/real.d.cts +8 -13
  364. package/mysql-core/columns/real.d.ts +8 -13
  365. package/mysql-core/columns/real.js +1 -1
  366. package/mysql-core/columns/real.js.map +1 -1
  367. package/mysql-core/columns/serial.cjs +1 -1
  368. package/mysql-core/columns/serial.cjs.map +1 -1
  369. package/mysql-core/columns/serial.d.cts +11 -12
  370. package/mysql-core/columns/serial.d.ts +11 -12
  371. package/mysql-core/columns/serial.js +1 -1
  372. package/mysql-core/columns/serial.js.map +1 -1
  373. package/mysql-core/columns/smallint.cjs +1 -1
  374. package/mysql-core/columns/smallint.cjs.map +1 -1
  375. package/mysql-core/columns/smallint.d.cts +9 -13
  376. package/mysql-core/columns/smallint.d.ts +9 -13
  377. package/mysql-core/columns/smallint.js +1 -1
  378. package/mysql-core/columns/smallint.js.map +1 -1
  379. package/mysql-core/columns/text.cjs +19 -1
  380. package/mysql-core/columns/text.cjs.map +1 -1
  381. package/mysql-core/columns/text.d.cts +17 -23
  382. package/mysql-core/columns/text.d.ts +17 -23
  383. package/mysql-core/columns/text.js +19 -1
  384. package/mysql-core/columns/text.js.map +1 -1
  385. package/mysql-core/columns/time.cjs +1 -1
  386. package/mysql-core/columns/time.cjs.map +1 -1
  387. package/mysql-core/columns/time.d.cts +8 -13
  388. package/mysql-core/columns/time.d.ts +8 -13
  389. package/mysql-core/columns/time.js +1 -1
  390. package/mysql-core/columns/time.js.map +1 -1
  391. package/mysql-core/columns/timestamp.cjs +2 -2
  392. package/mysql-core/columns/timestamp.cjs.map +1 -1
  393. package/mysql-core/columns/timestamp.d.cts +14 -22
  394. package/mysql-core/columns/timestamp.d.ts +14 -22
  395. package/mysql-core/columns/timestamp.js +2 -2
  396. package/mysql-core/columns/timestamp.js.map +1 -1
  397. package/mysql-core/columns/tinyint.cjs +1 -1
  398. package/mysql-core/columns/tinyint.cjs.map +1 -1
  399. package/mysql-core/columns/tinyint.d.cts +9 -13
  400. package/mysql-core/columns/tinyint.d.ts +9 -13
  401. package/mysql-core/columns/tinyint.js +1 -1
  402. package/mysql-core/columns/tinyint.js.map +1 -1
  403. package/mysql-core/columns/varbinary.cjs +2 -3
  404. package/mysql-core/columns/varbinary.cjs.map +1 -1
  405. package/mysql-core/columns/varbinary.d.cts +7 -12
  406. package/mysql-core/columns/varbinary.d.ts +7 -12
  407. package/mysql-core/columns/varbinary.js +2 -3
  408. package/mysql-core/columns/varbinary.js.map +1 -1
  409. package/mysql-core/columns/varchar.cjs +2 -3
  410. package/mysql-core/columns/varchar.cjs.map +1 -1
  411. package/mysql-core/columns/varchar.d.cts +12 -21
  412. package/mysql-core/columns/varchar.d.ts +12 -21
  413. package/mysql-core/columns/varchar.js +2 -3
  414. package/mysql-core/columns/varchar.js.map +1 -1
  415. package/mysql-core/columns/year.cjs +1 -1
  416. package/mysql-core/columns/year.cjs.map +1 -1
  417. package/mysql-core/columns/year.d.cts +7 -12
  418. package/mysql-core/columns/year.d.ts +7 -12
  419. package/mysql-core/columns/year.js +1 -1
  420. package/mysql-core/columns/year.js.map +1 -1
  421. package/mysql-core/db.cjs +10 -29
  422. package/mysql-core/db.cjs.map +1 -1
  423. package/mysql-core/db.d.cts +7 -7
  424. package/mysql-core/db.d.ts +7 -7
  425. package/mysql-core/db.js +10 -29
  426. package/mysql-core/db.js.map +1 -1
  427. package/mysql-core/dialect.cjs +8 -12
  428. package/mysql-core/dialect.cjs.map +1 -1
  429. package/mysql-core/dialect.d.cts +1 -3
  430. package/mysql-core/dialect.d.ts +1 -3
  431. package/mysql-core/dialect.js +9 -13
  432. package/mysql-core/dialect.js.map +1 -1
  433. package/mysql-core/query-builders/insert.cjs +1 -1
  434. package/mysql-core/query-builders/insert.cjs.map +1 -1
  435. package/mysql-core/query-builders/insert.d.cts +5 -5
  436. package/mysql-core/query-builders/insert.d.ts +5 -5
  437. package/mysql-core/query-builders/insert.js +2 -2
  438. package/mysql-core/query-builders/insert.js.map +1 -1
  439. package/mysql-core/query-builders/query.cjs +2 -12
  440. package/mysql-core/query-builders/query.cjs.map +1 -1
  441. package/mysql-core/query-builders/query.d.cts +2 -6
  442. package/mysql-core/query-builders/query.d.ts +2 -6
  443. package/mysql-core/query-builders/query.js +2 -12
  444. package/mysql-core/query-builders/query.js.map +1 -1
  445. package/mysql-core/query-builders/select.types.cjs.map +1 -1
  446. package/mysql-core/query-builders/select.types.d.cts +1 -1
  447. package/mysql-core/query-builders/select.types.d.ts +1 -1
  448. package/mysql-core/query-builders/update.cjs.map +1 -1
  449. package/mysql-core/query-builders/update.d.cts +3 -2
  450. package/mysql-core/query-builders/update.d.ts +3 -2
  451. package/mysql-core/query-builders/update.js.map +1 -1
  452. package/mysql-core/session.cjs.map +1 -1
  453. package/mysql-core/session.d.cts +7 -7
  454. package/mysql-core/session.d.ts +7 -7
  455. package/mysql-core/session.js.map +1 -1
  456. package/mysql-core/table.cjs.map +1 -1
  457. package/mysql-core/table.d.cts +10 -13
  458. package/mysql-core/table.d.ts +10 -13
  459. package/mysql-core/table.js +3 -1
  460. package/mysql-core/table.js.map +1 -1
  461. package/mysql-core/utils.d.cts +1 -1
  462. package/mysql-core/utils.d.ts +1 -1
  463. package/mysql-core/view.cjs.map +1 -1
  464. package/mysql-core/view.d.cts +3 -4
  465. package/mysql-core/view.d.ts +3 -4
  466. package/mysql-core/view.js.map +1 -1
  467. package/mysql-proxy/driver.cjs +1 -1
  468. package/mysql-proxy/driver.cjs.map +1 -1
  469. package/mysql-proxy/driver.js +1 -1
  470. package/mysql-proxy/driver.js.map +1 -1
  471. package/mysql-proxy/session.cjs.map +1 -1
  472. package/mysql-proxy/session.d.cts +6 -6
  473. package/mysql-proxy/session.d.ts +6 -6
  474. package/mysql-proxy/session.js.map +1 -1
  475. package/mysql2/driver.cjs +1 -1
  476. package/mysql2/driver.cjs.map +1 -1
  477. package/mysql2/driver.d.cts +2 -2
  478. package/mysql2/driver.d.ts +2 -2
  479. package/mysql2/driver.js +1 -1
  480. package/mysql2/driver.js.map +1 -1
  481. package/mysql2/session.cjs.map +1 -1
  482. package/mysql2/session.d.cts +6 -6
  483. package/mysql2/session.d.ts +6 -6
  484. package/mysql2/session.js.map +1 -1
  485. package/neon/neon-auth.d.cts +18 -25
  486. package/neon/neon-auth.d.ts +18 -25
  487. package/neon-http/driver.cjs +1 -1
  488. package/neon-http/driver.cjs.map +1 -1
  489. package/neon-http/driver.d.cts +2 -2
  490. package/neon-http/driver.d.ts +2 -2
  491. package/neon-http/driver.js +1 -1
  492. package/neon-http/driver.js.map +1 -1
  493. package/neon-http/session.cjs.map +1 -1
  494. package/neon-http/session.d.cts +5 -5
  495. package/neon-http/session.d.ts +5 -5
  496. package/neon-http/session.js.map +1 -1
  497. package/neon-serverless/driver.cjs +1 -1
  498. package/neon-serverless/driver.cjs.map +1 -1
  499. package/neon-serverless/driver.d.cts +2 -2
  500. package/neon-serverless/driver.d.ts +2 -2
  501. package/neon-serverless/driver.js +1 -1
  502. package/neon-serverless/driver.js.map +1 -1
  503. package/neon-serverless/session.cjs.map +1 -1
  504. package/neon-serverless/session.d.cts +6 -6
  505. package/neon-serverless/session.d.ts +6 -6
  506. package/neon-serverless/session.js.map +1 -1
  507. package/node-postgres/driver.cjs +1 -1
  508. package/node-postgres/driver.cjs.map +1 -1
  509. package/node-postgres/driver.d.cts +2 -2
  510. package/node-postgres/driver.d.ts +2 -2
  511. package/node-postgres/driver.js +1 -1
  512. package/node-postgres/driver.js.map +1 -1
  513. package/node-postgres/session.cjs.map +1 -1
  514. package/node-postgres/session.d.cts +6 -6
  515. package/node-postgres/session.d.ts +6 -6
  516. package/node-postgres/session.js.map +1 -1
  517. package/op-sqlite/driver.cjs +1 -1
  518. package/op-sqlite/driver.cjs.map +1 -1
  519. package/op-sqlite/driver.js +1 -1
  520. package/op-sqlite/driver.js.map +1 -1
  521. package/op-sqlite/session.cjs.map +1 -1
  522. package/op-sqlite/session.d.cts +6 -6
  523. package/op-sqlite/session.d.ts +6 -6
  524. package/op-sqlite/session.js.map +1 -1
  525. package/operations.cjs.map +1 -1
  526. package/operations.d.cts +3 -3
  527. package/operations.d.ts +3 -3
  528. package/package.json +122 -155
  529. package/pg-core/columns/bigint.cjs +3 -6
  530. package/pg-core/columns/bigint.cjs.map +1 -1
  531. package/pg-core/columns/bigint.d.cts +14 -21
  532. package/pg-core/columns/bigint.d.ts +14 -21
  533. package/pg-core/columns/bigint.js +3 -6
  534. package/pg-core/columns/bigint.js.map +1 -1
  535. package/pg-core/columns/bigserial.cjs +2 -2
  536. package/pg-core/columns/bigserial.cjs.map +1 -1
  537. package/pg-core/columns/bigserial.d.cts +16 -19
  538. package/pg-core/columns/bigserial.d.ts +16 -19
  539. package/pg-core/columns/bigserial.js +2 -2
  540. package/pg-core/columns/bigserial.js.map +1 -1
  541. package/pg-core/columns/boolean.cjs.map +1 -1
  542. package/pg-core/columns/boolean.d.cts +6 -11
  543. package/pg-core/columns/boolean.d.ts +6 -11
  544. package/pg-core/columns/boolean.js.map +1 -1
  545. package/pg-core/columns/bytea.cjs +1 -1
  546. package/pg-core/columns/bytea.cjs.map +1 -1
  547. package/pg-core/columns/bytea.d.cts +7 -12
  548. package/pg-core/columns/bytea.d.ts +7 -12
  549. package/pg-core/columns/bytea.js +1 -1
  550. package/pg-core/columns/bytea.js.map +1 -1
  551. package/pg-core/columns/char.cjs +5 -4
  552. package/pg-core/columns/char.cjs.map +1 -1
  553. package/pg-core/columns/char.d.cts +18 -29
  554. package/pg-core/columns/char.d.ts +18 -29
  555. package/pg-core/columns/char.js +5 -4
  556. package/pg-core/columns/char.js.map +1 -1
  557. package/pg-core/columns/cidr.cjs +1 -1
  558. package/pg-core/columns/cidr.cjs.map +1 -1
  559. package/pg-core/columns/cidr.d.cts +7 -12
  560. package/pg-core/columns/cidr.d.ts +7 -12
  561. package/pg-core/columns/cidr.js +1 -1
  562. package/pg-core/columns/cidr.js.map +1 -1
  563. package/pg-core/columns/common.cjs +9 -9
  564. package/pg-core/columns/common.cjs.map +1 -1
  565. package/pg-core/columns/common.d.cts +24 -41
  566. package/pg-core/columns/common.d.ts +24 -41
  567. package/pg-core/columns/common.js +9 -9
  568. package/pg-core/columns/common.js.map +1 -1
  569. package/pg-core/columns/custom.cjs.map +1 -1
  570. package/pg-core/columns/custom.d.cts +11 -18
  571. package/pg-core/columns/custom.d.ts +11 -18
  572. package/pg-core/columns/custom.js.map +1 -1
  573. package/pg-core/columns/date.cjs +2 -2
  574. package/pg-core/columns/date.cjs.map +1 -1
  575. package/pg-core/columns/date.common.cjs.map +1 -1
  576. package/pg-core/columns/date.common.d.cts +2 -2
  577. package/pg-core/columns/date.common.d.ts +2 -2
  578. package/pg-core/columns/date.common.js.map +1 -1
  579. package/pg-core/columns/date.d.cts +14 -22
  580. package/pg-core/columns/date.d.ts +14 -22
  581. package/pg-core/columns/date.js +2 -2
  582. package/pg-core/columns/date.js.map +1 -1
  583. package/pg-core/columns/double-precision.cjs +1 -1
  584. package/pg-core/columns/double-precision.cjs.map +1 -1
  585. package/pg-core/columns/double-precision.d.cts +7 -12
  586. package/pg-core/columns/double-precision.d.ts +7 -12
  587. package/pg-core/columns/double-precision.js +1 -1
  588. package/pg-core/columns/double-precision.js.map +1 -1
  589. package/pg-core/columns/enum.cjs +2 -2
  590. package/pg-core/columns/enum.cjs.map +1 -1
  591. package/pg-core/columns/enum.d.cts +23 -40
  592. package/pg-core/columns/enum.d.ts +23 -40
  593. package/pg-core/columns/enum.js +2 -2
  594. package/pg-core/columns/enum.js.map +1 -1
  595. package/pg-core/columns/inet.cjs +1 -1
  596. package/pg-core/columns/inet.cjs.map +1 -1
  597. package/pg-core/columns/inet.d.cts +7 -12
  598. package/pg-core/columns/inet.d.ts +7 -12
  599. package/pg-core/columns/inet.js +1 -1
  600. package/pg-core/columns/inet.js.map +1 -1
  601. package/pg-core/columns/int.common.cjs.map +1 -1
  602. package/pg-core/columns/int.common.d.cts +2 -2
  603. package/pg-core/columns/int.common.d.ts +2 -2
  604. package/pg-core/columns/int.common.js.map +1 -1
  605. package/pg-core/columns/integer.cjs +1 -1
  606. package/pg-core/columns/integer.cjs.map +1 -1
  607. package/pg-core/columns/integer.d.cts +7 -12
  608. package/pg-core/columns/integer.d.ts +7 -12
  609. package/pg-core/columns/integer.js +1 -1
  610. package/pg-core/columns/integer.js.map +1 -1
  611. package/pg-core/columns/interval.cjs +1 -1
  612. package/pg-core/columns/interval.cjs.map +1 -1
  613. package/pg-core/columns/interval.d.cts +8 -13
  614. package/pg-core/columns/interval.d.ts +8 -13
  615. package/pg-core/columns/interval.js +1 -1
  616. package/pg-core/columns/interval.js.map +1 -1
  617. package/pg-core/columns/json.cjs +1 -1
  618. package/pg-core/columns/json.cjs.map +1 -1
  619. package/pg-core/columns/json.d.cts +9 -16
  620. package/pg-core/columns/json.d.ts +9 -16
  621. package/pg-core/columns/json.js +1 -1
  622. package/pg-core/columns/json.js.map +1 -1
  623. package/pg-core/columns/jsonb.cjs +1 -1
  624. package/pg-core/columns/jsonb.cjs.map +1 -1
  625. package/pg-core/columns/jsonb.d.cts +9 -16
  626. package/pg-core/columns/jsonb.d.ts +9 -16
  627. package/pg-core/columns/jsonb.js +1 -1
  628. package/pg-core/columns/jsonb.js.map +1 -1
  629. package/pg-core/columns/line.cjs +2 -2
  630. package/pg-core/columns/line.cjs.map +1 -1
  631. package/pg-core/columns/line.d.cts +14 -22
  632. package/pg-core/columns/line.d.ts +14 -22
  633. package/pg-core/columns/line.js +2 -2
  634. package/pg-core/columns/line.js.map +1 -1
  635. package/pg-core/columns/macaddr.cjs +1 -1
  636. package/pg-core/columns/macaddr.cjs.map +1 -1
  637. package/pg-core/columns/macaddr.d.cts +7 -12
  638. package/pg-core/columns/macaddr.d.ts +7 -12
  639. package/pg-core/columns/macaddr.js +1 -1
  640. package/pg-core/columns/macaddr.js.map +1 -1
  641. package/pg-core/columns/macaddr8.cjs +1 -1
  642. package/pg-core/columns/macaddr8.cjs.map +1 -1
  643. package/pg-core/columns/macaddr8.d.cts +7 -12
  644. package/pg-core/columns/macaddr8.d.ts +7 -12
  645. package/pg-core/columns/macaddr8.js +1 -1
  646. package/pg-core/columns/macaddr8.js.map +1 -1
  647. package/pg-core/columns/numeric.cjs +2 -2
  648. package/pg-core/columns/numeric.cjs.map +1 -1
  649. package/pg-core/columns/numeric.d.cts +23 -39
  650. package/pg-core/columns/numeric.d.ts +23 -39
  651. package/pg-core/columns/numeric.js +2 -2
  652. package/pg-core/columns/numeric.js.map +1 -1
  653. package/pg-core/columns/point.cjs +2 -2
  654. package/pg-core/columns/point.cjs.map +1 -1
  655. package/pg-core/columns/point.d.cts +12 -20
  656. package/pg-core/columns/point.d.ts +12 -20
  657. package/pg-core/columns/point.js +2 -2
  658. package/pg-core/columns/point.js.map +1 -1
  659. package/pg-core/columns/postgis_extension/geometry.cjs +2 -2
  660. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  661. package/pg-core/columns/postgis_extension/geometry.d.cts +14 -22
  662. package/pg-core/columns/postgis_extension/geometry.d.ts +14 -22
  663. package/pg-core/columns/postgis_extension/geometry.js +2 -2
  664. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  665. package/pg-core/columns/real.cjs +1 -1
  666. package/pg-core/columns/real.cjs.map +1 -1
  667. package/pg-core/columns/real.d.cts +9 -16
  668. package/pg-core/columns/real.d.ts +9 -16
  669. package/pg-core/columns/real.js +1 -1
  670. package/pg-core/columns/real.js.map +1 -1
  671. package/pg-core/columns/serial.cjs +1 -1
  672. package/pg-core/columns/serial.cjs.map +1 -1
  673. package/pg-core/columns/serial.d.cts +9 -12
  674. package/pg-core/columns/serial.d.ts +9 -12
  675. package/pg-core/columns/serial.js +1 -1
  676. package/pg-core/columns/serial.js.map +1 -1
  677. package/pg-core/columns/smallint.cjs +1 -1
  678. package/pg-core/columns/smallint.cjs.map +1 -1
  679. package/pg-core/columns/smallint.d.cts +7 -12
  680. package/pg-core/columns/smallint.d.ts +7 -12
  681. package/pg-core/columns/smallint.js +1 -1
  682. package/pg-core/columns/smallint.js.map +1 -1
  683. package/pg-core/columns/smallserial.cjs +1 -1
  684. package/pg-core/columns/smallserial.cjs.map +1 -1
  685. package/pg-core/columns/smallserial.d.cts +9 -12
  686. package/pg-core/columns/smallserial.d.ts +9 -12
  687. package/pg-core/columns/smallserial.js +1 -1
  688. package/pg-core/columns/smallserial.js.map +1 -1
  689. package/pg-core/columns/text.cjs +7 -3
  690. package/pg-core/columns/text.cjs.map +1 -1
  691. package/pg-core/columns/text.d.cts +14 -18
  692. package/pg-core/columns/text.d.ts +14 -18
  693. package/pg-core/columns/text.js +7 -3
  694. package/pg-core/columns/text.js.map +1 -1
  695. package/pg-core/columns/time.cjs +1 -1
  696. package/pg-core/columns/time.cjs.map +1 -1
  697. package/pg-core/columns/time.d.cts +10 -17
  698. package/pg-core/columns/time.d.ts +10 -17
  699. package/pg-core/columns/time.js +1 -1
  700. package/pg-core/columns/time.js.map +1 -1
  701. package/pg-core/columns/timestamp.cjs +2 -2
  702. package/pg-core/columns/timestamp.cjs.map +1 -1
  703. package/pg-core/columns/timestamp.d.cts +17 -29
  704. package/pg-core/columns/timestamp.d.ts +17 -29
  705. package/pg-core/columns/timestamp.js +2 -2
  706. package/pg-core/columns/timestamp.js.map +1 -1
  707. package/pg-core/columns/uuid.cjs +1 -1
  708. package/pg-core/columns/uuid.cjs.map +1 -1
  709. package/pg-core/columns/uuid.d.cts +7 -12
  710. package/pg-core/columns/uuid.d.ts +7 -12
  711. package/pg-core/columns/uuid.js +1 -1
  712. package/pg-core/columns/uuid.js.map +1 -1
  713. package/pg-core/columns/varchar.cjs +1 -2
  714. package/pg-core/columns/varchar.cjs.map +1 -1
  715. package/pg-core/columns/varchar.d.cts +14 -27
  716. package/pg-core/columns/varchar.d.ts +14 -27
  717. package/pg-core/columns/varchar.js +1 -2
  718. package/pg-core/columns/varchar.js.map +1 -1
  719. package/pg-core/columns/vector_extension/bit.cjs +4 -4
  720. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  721. package/pg-core/columns/vector_extension/bit.d.cts +12 -25
  722. package/pg-core/columns/vector_extension/bit.d.ts +12 -25
  723. package/pg-core/columns/vector_extension/bit.js +4 -4
  724. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  725. package/pg-core/columns/vector_extension/halfvec.cjs +4 -4
  726. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  727. package/pg-core/columns/vector_extension/halfvec.d.cts +11 -26
  728. package/pg-core/columns/vector_extension/halfvec.d.ts +11 -26
  729. package/pg-core/columns/vector_extension/halfvec.js +4 -4
  730. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  731. package/pg-core/columns/vector_extension/sparsevec.cjs +1 -1
  732. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  733. package/pg-core/columns/vector_extension/sparsevec.d.cts +7 -11
  734. package/pg-core/columns/vector_extension/sparsevec.d.ts +7 -11
  735. package/pg-core/columns/vector_extension/sparsevec.js +1 -1
  736. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  737. package/pg-core/columns/vector_extension/vector.cjs +4 -4
  738. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  739. package/pg-core/columns/vector_extension/vector.d.cts +11 -26
  740. package/pg-core/columns/vector_extension/vector.d.ts +11 -26
  741. package/pg-core/columns/vector_extension/vector.js +4 -4
  742. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  743. package/pg-core/db.cjs +10 -15
  744. package/pg-core/db.cjs.map +1 -1
  745. package/pg-core/db.d.cts +8 -8
  746. package/pg-core/db.d.ts +8 -8
  747. package/pg-core/db.js +10 -15
  748. package/pg-core/db.js.map +1 -1
  749. package/pg-core/dialect.cjs +13 -13
  750. package/pg-core/dialect.cjs.map +1 -1
  751. package/pg-core/dialect.d.cts +1 -3
  752. package/pg-core/dialect.d.ts +1 -3
  753. package/pg-core/dialect.js +14 -14
  754. package/pg-core/dialect.js.map +1 -1
  755. package/pg-core/query-builders/delete.cjs.map +1 -1
  756. package/pg-core/query-builders/delete.js.map +1 -1
  757. package/pg-core/query-builders/insert.cjs +1 -1
  758. package/pg-core/query-builders/insert.cjs.map +1 -1
  759. package/pg-core/query-builders/insert.d.cts +2 -2
  760. package/pg-core/query-builders/insert.d.ts +2 -2
  761. package/pg-core/query-builders/insert.js +2 -2
  762. package/pg-core/query-builders/insert.js.map +1 -1
  763. package/pg-core/query-builders/query.cjs +2 -12
  764. package/pg-core/query-builders/query.cjs.map +1 -1
  765. package/pg-core/query-builders/query.d.cts +2 -6
  766. package/pg-core/query-builders/query.d.ts +2 -6
  767. package/pg-core/query-builders/query.js +2 -12
  768. package/pg-core/query-builders/query.js.map +1 -1
  769. package/pg-core/query-builders/select.types.cjs.map +1 -1
  770. package/pg-core/query-builders/select.types.d.cts +1 -1
  771. package/pg-core/query-builders/select.types.d.ts +1 -1
  772. package/pg-core/query-builders/update.cjs.map +1 -1
  773. package/pg-core/query-builders/update.d.cts +3 -3
  774. package/pg-core/query-builders/update.d.ts +3 -3
  775. package/pg-core/query-builders/update.js.map +1 -1
  776. package/pg-core/session.cjs.map +1 -1
  777. package/pg-core/session.d.cts +7 -7
  778. package/pg-core/session.d.ts +7 -7
  779. package/pg-core/session.js.map +1 -1
  780. package/pg-core/table.cjs.map +1 -1
  781. package/pg-core/table.d.cts +9 -11
  782. package/pg-core/table.d.ts +9 -11
  783. package/pg-core/table.js +3 -1
  784. package/pg-core/table.js.map +1 -1
  785. package/pg-core/utils.cjs +3 -1
  786. package/pg-core/utils.cjs.map +1 -1
  787. package/pg-core/utils.d.cts +1 -1
  788. package/pg-core/utils.d.ts +1 -1
  789. package/pg-core/utils.js +4 -2
  790. package/pg-core/utils.js.map +1 -1
  791. package/pg-core/view.cjs.map +1 -1
  792. package/pg-core/view.d.cts +5 -6
  793. package/pg-core/view.d.ts +5 -6
  794. package/pg-core/view.js.map +1 -1
  795. package/pg-proxy/driver.cjs +1 -1
  796. package/pg-proxy/driver.cjs.map +1 -1
  797. package/pg-proxy/driver.js +1 -1
  798. package/pg-proxy/driver.js.map +1 -1
  799. package/pg-proxy/session.cjs.map +1 -1
  800. package/pg-proxy/session.d.cts +6 -6
  801. package/pg-proxy/session.d.ts +6 -6
  802. package/pg-proxy/session.js.map +1 -1
  803. package/pglite/driver.cjs +1 -1
  804. package/pglite/driver.cjs.map +1 -1
  805. package/pglite/driver.d.cts +2 -2
  806. package/pglite/driver.d.ts +2 -2
  807. package/pglite/driver.js +1 -1
  808. package/pglite/driver.js.map +1 -1
  809. package/pglite/session.cjs.map +1 -1
  810. package/pglite/session.d.cts +6 -6
  811. package/pglite/session.d.ts +6 -6
  812. package/pglite/session.js.map +1 -1
  813. package/planetscale-serverless/driver.cjs +1 -1
  814. package/planetscale-serverless/driver.cjs.map +1 -1
  815. package/planetscale-serverless/driver.js +1 -1
  816. package/planetscale-serverless/driver.js.map +1 -1
  817. package/planetscale-serverless/session.cjs.map +1 -1
  818. package/planetscale-serverless/session.d.cts +7 -7
  819. package/planetscale-serverless/session.d.ts +7 -7
  820. package/planetscale-serverless/session.js.map +1 -1
  821. package/postgres-js/driver.cjs +1 -1
  822. package/postgres-js/driver.cjs.map +1 -1
  823. package/postgres-js/driver.d.cts +1 -1
  824. package/postgres-js/driver.d.ts +1 -1
  825. package/postgres-js/driver.js +1 -1
  826. package/postgres-js/driver.js.map +1 -1
  827. package/postgres-js/session.cjs.map +1 -1
  828. package/postgres-js/session.d.cts +7 -7
  829. package/postgres-js/session.d.ts +7 -7
  830. package/postgres-js/session.js.map +1 -1
  831. package/prisma/mysql/driver.cjs +7 -1
  832. package/prisma/mysql/driver.cjs.map +1 -1
  833. package/prisma/mysql/driver.js +7 -1
  834. package/prisma/mysql/driver.js.map +1 -1
  835. package/prisma/mysql/session.cjs.map +1 -1
  836. package/prisma/mysql/session.d.cts +2 -2
  837. package/prisma/mysql/session.d.ts +2 -2
  838. package/prisma/mysql/session.js.map +1 -1
  839. package/prisma/pg/driver.cjs +1 -1
  840. package/prisma/pg/driver.cjs.map +1 -1
  841. package/prisma/pg/driver.js +1 -1
  842. package/prisma/pg/driver.js.map +1 -1
  843. package/prisma/pg/session.cjs.map +1 -1
  844. package/prisma/pg/session.d.cts +2 -2
  845. package/prisma/pg/session.d.ts +2 -2
  846. package/prisma/pg/session.js.map +1 -1
  847. package/prisma/sqlite/driver.cjs +7 -1
  848. package/prisma/sqlite/driver.cjs.map +1 -1
  849. package/prisma/sqlite/driver.js +7 -1
  850. package/prisma/sqlite/driver.js.map +1 -1
  851. package/prisma/sqlite/session.cjs.map +1 -1
  852. package/prisma/sqlite/session.d.cts +3 -3
  853. package/prisma/sqlite/session.d.ts +3 -3
  854. package/prisma/sqlite/session.js.map +1 -1
  855. package/query-builders/select.types.cjs.map +1 -1
  856. package/query-builders/select.types.d.cts +2 -2
  857. package/query-builders/select.types.d.ts +2 -2
  858. package/relations.cjs +174 -163
  859. package/relations.cjs.map +1 -1
  860. package/relations.d.cts +170 -190
  861. package/relations.d.ts +170 -190
  862. package/relations.js +170 -163
  863. package/relations.js.map +1 -1
  864. package/singlestore-core/columns/bigint.cjs +2 -2
  865. package/singlestore-core/columns/bigint.cjs.map +1 -1
  866. package/singlestore-core/columns/bigint.d.cts +17 -24
  867. package/singlestore-core/columns/bigint.d.ts +17 -24
  868. package/singlestore-core/columns/bigint.js +2 -2
  869. package/singlestore-core/columns/bigint.js.map +1 -1
  870. package/singlestore-core/columns/binary.cjs +5 -4
  871. package/singlestore-core/columns/binary.cjs.map +1 -1
  872. package/singlestore-core/columns/binary.d.cts +13 -15
  873. package/singlestore-core/columns/binary.d.ts +13 -15
  874. package/singlestore-core/columns/binary.js +5 -4
  875. package/singlestore-core/columns/binary.js.map +1 -1
  876. package/singlestore-core/columns/boolean.cjs.map +1 -1
  877. package/singlestore-core/columns/boolean.d.cts +6 -12
  878. package/singlestore-core/columns/boolean.d.ts +6 -12
  879. package/singlestore-core/columns/boolean.js.map +1 -1
  880. package/singlestore-core/columns/char.cjs +5 -4
  881. package/singlestore-core/columns/char.cjs.map +1 -1
  882. package/singlestore-core/columns/char.d.cts +18 -24
  883. package/singlestore-core/columns/char.d.ts +18 -24
  884. package/singlestore-core/columns/char.js +5 -4
  885. package/singlestore-core/columns/char.js.map +1 -1
  886. package/singlestore-core/columns/common.cjs +3 -2
  887. package/singlestore-core/columns/common.cjs.map +1 -1
  888. package/singlestore-core/columns/common.d.cts +14 -18
  889. package/singlestore-core/columns/common.d.ts +14 -18
  890. package/singlestore-core/columns/common.js +3 -2
  891. package/singlestore-core/columns/common.js.map +1 -1
  892. package/singlestore-core/columns/custom.cjs.map +1 -1
  893. package/singlestore-core/columns/custom.d.cts +10 -15
  894. package/singlestore-core/columns/custom.d.ts +10 -15
  895. package/singlestore-core/columns/custom.js.map +1 -1
  896. package/singlestore-core/columns/date.cjs +2 -2
  897. package/singlestore-core/columns/date.cjs.map +1 -1
  898. package/singlestore-core/columns/date.common.cjs.map +1 -1
  899. package/singlestore-core/columns/date.common.d.cts +3 -3
  900. package/singlestore-core/columns/date.common.d.ts +3 -3
  901. package/singlestore-core/columns/date.common.js.map +1 -1
  902. package/singlestore-core/columns/date.d.cts +16 -26
  903. package/singlestore-core/columns/date.d.ts +16 -26
  904. package/singlestore-core/columns/date.js +2 -2
  905. package/singlestore-core/columns/date.js.map +1 -1
  906. package/singlestore-core/columns/datetime.cjs +3 -5
  907. package/singlestore-core/columns/datetime.cjs.map +1 -1
  908. package/singlestore-core/columns/datetime.d.cts +25 -27
  909. package/singlestore-core/columns/datetime.d.ts +25 -27
  910. package/singlestore-core/columns/datetime.js +3 -5
  911. package/singlestore-core/columns/datetime.js.map +1 -1
  912. package/singlestore-core/columns/decimal.cjs +3 -3
  913. package/singlestore-core/columns/decimal.cjs.map +1 -1
  914. package/singlestore-core/columns/decimal.d.cts +22 -36
  915. package/singlestore-core/columns/decimal.d.ts +22 -36
  916. package/singlestore-core/columns/decimal.js +3 -3
  917. package/singlestore-core/columns/decimal.js.map +1 -1
  918. package/singlestore-core/columns/double.cjs +1 -1
  919. package/singlestore-core/columns/double.cjs.map +1 -1
  920. package/singlestore-core/columns/double.d.cts +11 -16
  921. package/singlestore-core/columns/double.d.ts +11 -16
  922. package/singlestore-core/columns/double.js +1 -1
  923. package/singlestore-core/columns/double.js.map +1 -1
  924. package/singlestore-core/columns/enum.cjs +1 -1
  925. package/singlestore-core/columns/enum.cjs.map +1 -1
  926. package/singlestore-core/columns/enum.d.cts +14 -15
  927. package/singlestore-core/columns/enum.d.ts +14 -15
  928. package/singlestore-core/columns/enum.js +1 -1
  929. package/singlestore-core/columns/enum.js.map +1 -1
  930. package/singlestore-core/columns/float.cjs +1 -1
  931. package/singlestore-core/columns/float.cjs.map +1 -1
  932. package/singlestore-core/columns/float.d.cts +11 -16
  933. package/singlestore-core/columns/float.d.ts +11 -16
  934. package/singlestore-core/columns/float.js +1 -1
  935. package/singlestore-core/columns/float.js.map +1 -1
  936. package/singlestore-core/columns/int.cjs +1 -1
  937. package/singlestore-core/columns/int.cjs.map +1 -1
  938. package/singlestore-core/columns/int.d.cts +11 -16
  939. package/singlestore-core/columns/int.d.ts +11 -16
  940. package/singlestore-core/columns/int.js +1 -1
  941. package/singlestore-core/columns/int.js.map +1 -1
  942. package/singlestore-core/columns/json.cjs +1 -1
  943. package/singlestore-core/columns/json.cjs.map +1 -1
  944. package/singlestore-core/columns/json.d.cts +7 -13
  945. package/singlestore-core/columns/json.d.ts +7 -13
  946. package/singlestore-core/columns/json.js +1 -1
  947. package/singlestore-core/columns/json.js.map +1 -1
  948. package/singlestore-core/columns/mediumint.cjs +1 -1
  949. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  950. package/singlestore-core/columns/mediumint.d.cts +9 -14
  951. package/singlestore-core/columns/mediumint.d.ts +9 -14
  952. package/singlestore-core/columns/mediumint.js +1 -1
  953. package/singlestore-core/columns/mediumint.js.map +1 -1
  954. package/singlestore-core/columns/real.cjs +1 -1
  955. package/singlestore-core/columns/real.cjs.map +1 -1
  956. package/singlestore-core/columns/real.d.cts +8 -14
  957. package/singlestore-core/columns/real.d.ts +8 -14
  958. package/singlestore-core/columns/real.js +1 -1
  959. package/singlestore-core/columns/real.js.map +1 -1
  960. package/singlestore-core/columns/serial.cjs +1 -1
  961. package/singlestore-core/columns/serial.cjs.map +1 -1
  962. package/singlestore-core/columns/serial.d.cts +11 -13
  963. package/singlestore-core/columns/serial.d.ts +11 -13
  964. package/singlestore-core/columns/serial.js +1 -1
  965. package/singlestore-core/columns/serial.js.map +1 -1
  966. package/singlestore-core/columns/smallint.cjs +1 -1
  967. package/singlestore-core/columns/smallint.cjs.map +1 -1
  968. package/singlestore-core/columns/smallint.d.cts +9 -14
  969. package/singlestore-core/columns/smallint.d.ts +9 -14
  970. package/singlestore-core/columns/smallint.js +1 -1
  971. package/singlestore-core/columns/smallint.js.map +1 -1
  972. package/singlestore-core/columns/text.cjs +19 -1
  973. package/singlestore-core/columns/text.cjs.map +1 -1
  974. package/singlestore-core/columns/text.d.cts +17 -24
  975. package/singlestore-core/columns/text.d.ts +17 -24
  976. package/singlestore-core/columns/text.js +19 -1
  977. package/singlestore-core/columns/text.js.map +1 -1
  978. package/singlestore-core/columns/time.cjs +1 -1
  979. package/singlestore-core/columns/time.cjs.map +1 -1
  980. package/singlestore-core/columns/time.d.cts +7 -13
  981. package/singlestore-core/columns/time.d.ts +7 -13
  982. package/singlestore-core/columns/time.js +1 -1
  983. package/singlestore-core/columns/time.js.map +1 -1
  984. package/singlestore-core/columns/timestamp.cjs +2 -2
  985. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  986. package/singlestore-core/columns/timestamp.d.cts +14 -24
  987. package/singlestore-core/columns/timestamp.d.ts +14 -24
  988. package/singlestore-core/columns/timestamp.js +2 -2
  989. package/singlestore-core/columns/timestamp.js.map +1 -1
  990. package/singlestore-core/columns/tinyint.cjs +1 -1
  991. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  992. package/singlestore-core/columns/tinyint.d.cts +9 -14
  993. package/singlestore-core/columns/tinyint.d.ts +9 -14
  994. package/singlestore-core/columns/tinyint.js +1 -1
  995. package/singlestore-core/columns/tinyint.js.map +1 -1
  996. package/singlestore-core/columns/varbinary.cjs +2 -3
  997. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  998. package/singlestore-core/columns/varbinary.d.cts +7 -13
  999. package/singlestore-core/columns/varbinary.d.ts +7 -13
  1000. package/singlestore-core/columns/varbinary.js +2 -3
  1001. package/singlestore-core/columns/varbinary.js.map +1 -1
  1002. package/singlestore-core/columns/varchar.cjs +1 -2
  1003. package/singlestore-core/columns/varchar.cjs.map +1 -1
  1004. package/singlestore-core/columns/varchar.d.cts +12 -24
  1005. package/singlestore-core/columns/varchar.d.ts +12 -24
  1006. package/singlestore-core/columns/varchar.js +1 -2
  1007. package/singlestore-core/columns/varchar.js.map +1 -1
  1008. package/singlestore-core/columns/vector.cjs +5 -5
  1009. package/singlestore-core/columns/vector.cjs.map +1 -1
  1010. package/singlestore-core/columns/vector.d.cts +17 -14
  1011. package/singlestore-core/columns/vector.d.ts +17 -14
  1012. package/singlestore-core/columns/vector.js +5 -5
  1013. package/singlestore-core/columns/vector.js.map +1 -1
  1014. package/singlestore-core/columns/year.cjs +1 -1
  1015. package/singlestore-core/columns/year.cjs.map +1 -1
  1016. package/singlestore-core/columns/year.d.cts +7 -13
  1017. package/singlestore-core/columns/year.d.ts +7 -13
  1018. package/singlestore-core/columns/year.js +1 -1
  1019. package/singlestore-core/columns/year.js.map +1 -1
  1020. package/singlestore-core/dialect.cjs +2 -2
  1021. package/singlestore-core/dialect.cjs.map +1 -1
  1022. package/singlestore-core/dialect.js +2 -2
  1023. package/singlestore-core/dialect.js.map +1 -1
  1024. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  1025. package/singlestore-core/query-builders/insert.d.cts +3 -3
  1026. package/singlestore-core/query-builders/insert.d.ts +3 -3
  1027. package/singlestore-core/query-builders/insert.js.map +1 -1
  1028. package/singlestore-core/query-builders/select.types.cjs.map +1 -1
  1029. package/singlestore-core/query-builders/select.types.d.cts +1 -1
  1030. package/singlestore-core/query-builders/select.types.d.ts +1 -1
  1031. package/singlestore-core/query-builders/update.cjs.map +1 -1
  1032. package/singlestore-core/query-builders/update.d.cts +3 -2
  1033. package/singlestore-core/query-builders/update.d.ts +3 -2
  1034. package/singlestore-core/query-builders/update.js.map +1 -1
  1035. package/singlestore-core/table.cjs.map +1 -1
  1036. package/singlestore-core/table.d.cts +10 -13
  1037. package/singlestore-core/table.d.ts +10 -13
  1038. package/singlestore-core/table.js +3 -1
  1039. package/singlestore-core/table.js.map +1 -1
  1040. package/singlestore-core/utils.d.cts +1 -1
  1041. package/singlestore-core/utils.d.ts +1 -1
  1042. package/singlestore-core/view.cjs.map +1 -1
  1043. package/singlestore-core/view.d.cts +2 -3
  1044. package/singlestore-core/view.d.ts +2 -3
  1045. package/singlestore-core/view.js.map +1 -1
  1046. package/sql/sql.cjs +2 -2
  1047. package/sql/sql.cjs.map +1 -1
  1048. package/sql/sql.js +3 -3
  1049. package/sql/sql.js.map +1 -1
  1050. package/sql-js/driver.cjs +1 -1
  1051. package/sql-js/driver.cjs.map +1 -1
  1052. package/sql-js/driver.js +1 -1
  1053. package/sql-js/driver.js.map +1 -1
  1054. package/sql-js/session.cjs.map +1 -1
  1055. package/sql-js/session.d.cts +6 -6
  1056. package/sql-js/session.d.ts +6 -6
  1057. package/sql-js/session.js.map +1 -1
  1058. package/sqlite-core/columns/blob.cjs +3 -3
  1059. package/sqlite-core/columns/blob.cjs.map +1 -1
  1060. package/sqlite-core/columns/blob.d.cts +20 -31
  1061. package/sqlite-core/columns/blob.d.ts +20 -31
  1062. package/sqlite-core/columns/blob.js +3 -3
  1063. package/sqlite-core/columns/blob.js.map +1 -1
  1064. package/sqlite-core/columns/common.cjs +3 -1
  1065. package/sqlite-core/columns/common.cjs.map +1 -1
  1066. package/sqlite-core/columns/common.d.cts +6 -14
  1067. package/sqlite-core/columns/common.d.ts +6 -14
  1068. package/sqlite-core/columns/common.js +3 -1
  1069. package/sqlite-core/columns/common.js.map +1 -1
  1070. package/sqlite-core/columns/custom.cjs.map +1 -1
  1071. package/sqlite-core/columns/custom.d.cts +10 -14
  1072. package/sqlite-core/columns/custom.d.ts +10 -14
  1073. package/sqlite-core/columns/custom.js.map +1 -1
  1074. package/sqlite-core/columns/integer.cjs +2 -2
  1075. package/sqlite-core/columns/integer.cjs.map +1 -1
  1076. package/sqlite-core/columns/integer.d.cts +28 -44
  1077. package/sqlite-core/columns/integer.d.ts +28 -44
  1078. package/sqlite-core/columns/integer.js +2 -2
  1079. package/sqlite-core/columns/integer.js.map +1 -1
  1080. package/sqlite-core/columns/numeric.cjs +2 -2
  1081. package/sqlite-core/columns/numeric.cjs.map +1 -1
  1082. package/sqlite-core/columns/numeric.d.cts +19 -29
  1083. package/sqlite-core/columns/numeric.d.ts +19 -29
  1084. package/sqlite-core/columns/numeric.js +2 -2
  1085. package/sqlite-core/columns/numeric.js.map +1 -1
  1086. package/sqlite-core/columns/real.cjs +1 -1
  1087. package/sqlite-core/columns/real.cjs.map +1 -1
  1088. package/sqlite-core/columns/real.d.cts +7 -12
  1089. package/sqlite-core/columns/real.d.ts +7 -12
  1090. package/sqlite-core/columns/real.js +1 -1
  1091. package/sqlite-core/columns/real.js.map +1 -1
  1092. package/sqlite-core/columns/text.cjs +2 -3
  1093. package/sqlite-core/columns/text.cjs.map +1 -1
  1094. package/sqlite-core/columns/text.d.cts +20 -35
  1095. package/sqlite-core/columns/text.d.ts +20 -35
  1096. package/sqlite-core/columns/text.js +2 -3
  1097. package/sqlite-core/columns/text.js.map +1 -1
  1098. package/sqlite-core/db.cjs +13 -18
  1099. package/sqlite-core/db.cjs.map +1 -1
  1100. package/sqlite-core/db.d.cts +7 -7
  1101. package/sqlite-core/db.d.ts +7 -7
  1102. package/sqlite-core/db.js +13 -18
  1103. package/sqlite-core/db.js.map +1 -1
  1104. package/sqlite-core/dialect.cjs +8 -12
  1105. package/sqlite-core/dialect.cjs.map +1 -1
  1106. package/sqlite-core/dialect.d.cts +3 -5
  1107. package/sqlite-core/dialect.d.ts +3 -5
  1108. package/sqlite-core/dialect.js +9 -13
  1109. package/sqlite-core/dialect.js.map +1 -1
  1110. package/sqlite-core/query-builders/_query.cjs.map +1 -1
  1111. package/sqlite-core/query-builders/_query.d.cts +3 -3
  1112. package/sqlite-core/query-builders/_query.d.ts +3 -3
  1113. package/sqlite-core/query-builders/_query.js.map +1 -1
  1114. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  1115. package/sqlite-core/query-builders/delete.d.cts +1 -1
  1116. package/sqlite-core/query-builders/delete.d.ts +1 -1
  1117. package/sqlite-core/query-builders/delete.js.map +1 -1
  1118. package/sqlite-core/query-builders/insert.cjs +1 -1
  1119. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  1120. package/sqlite-core/query-builders/insert.d.cts +8 -7
  1121. package/sqlite-core/query-builders/insert.d.ts +8 -7
  1122. package/sqlite-core/query-builders/insert.js +2 -2
  1123. package/sqlite-core/query-builders/insert.js.map +1 -1
  1124. package/sqlite-core/query-builders/query.cjs +2 -18
  1125. package/sqlite-core/query-builders/query.cjs.map +1 -1
  1126. package/sqlite-core/query-builders/query.d.cts +2 -6
  1127. package/sqlite-core/query-builders/query.d.ts +2 -6
  1128. package/sqlite-core/query-builders/query.js +2 -18
  1129. package/sqlite-core/query-builders/query.js.map +1 -1
  1130. package/sqlite-core/query-builders/select.cjs.map +1 -1
  1131. package/sqlite-core/query-builders/select.d.cts +3 -3
  1132. package/sqlite-core/query-builders/select.d.ts +3 -3
  1133. package/sqlite-core/query-builders/select.js.map +1 -1
  1134. package/sqlite-core/query-builders/select.types.cjs.map +1 -1
  1135. package/sqlite-core/query-builders/select.types.d.cts +1 -1
  1136. package/sqlite-core/query-builders/select.types.d.ts +1 -1
  1137. package/sqlite-core/query-builders/update.cjs.map +1 -1
  1138. package/sqlite-core/query-builders/update.d.cts +6 -5
  1139. package/sqlite-core/query-builders/update.d.ts +6 -5
  1140. package/sqlite-core/query-builders/update.js.map +1 -1
  1141. package/sqlite-core/session.cjs.map +1 -1
  1142. package/sqlite-core/session.d.cts +6 -6
  1143. package/sqlite-core/session.d.ts +6 -6
  1144. package/sqlite-core/session.js.map +1 -1
  1145. package/sqlite-core/table.cjs.map +1 -1
  1146. package/sqlite-core/table.d.cts +9 -11
  1147. package/sqlite-core/table.d.ts +9 -11
  1148. package/sqlite-core/table.js +3 -1
  1149. package/sqlite-core/table.js.map +1 -1
  1150. package/sqlite-core/utils.d.cts +1 -1
  1151. package/sqlite-core/utils.d.ts +1 -1
  1152. package/sqlite-core/view.cjs.map +1 -1
  1153. package/sqlite-core/view.d.cts +3 -4
  1154. package/sqlite-core/view.d.ts +3 -4
  1155. package/sqlite-core/view.js.map +1 -1
  1156. package/sqlite-proxy/driver.cjs +1 -1
  1157. package/sqlite-proxy/driver.cjs.map +1 -1
  1158. package/sqlite-proxy/driver.js +1 -1
  1159. package/sqlite-proxy/driver.js.map +1 -1
  1160. package/sqlite-proxy/session.cjs.map +1 -1
  1161. package/sqlite-proxy/session.d.cts +6 -6
  1162. package/sqlite-proxy/session.d.ts +6 -6
  1163. package/sqlite-proxy/session.js.map +1 -1
  1164. package/supabase/rls.d.cts +30 -43
  1165. package/supabase/rls.d.ts +30 -43
  1166. package/table.cjs +13 -12
  1167. package/table.cjs.map +1 -1
  1168. package/table.d.cts +26 -35
  1169. package/table.d.ts +26 -35
  1170. package/table.js +11 -10
  1171. package/table.js.map +1 -1
  1172. package/tidb-serverless/driver.cjs +1 -1
  1173. package/tidb-serverless/driver.cjs.map +1 -1
  1174. package/tidb-serverless/driver.js +1 -1
  1175. package/tidb-serverless/driver.js.map +1 -1
  1176. package/tidb-serverless/session.cjs.map +1 -1
  1177. package/tidb-serverless/session.d.cts +7 -7
  1178. package/tidb-serverless/session.d.ts +7 -7
  1179. package/tidb-serverless/session.js.map +1 -1
  1180. package/utils.cjs +5 -0
  1181. package/utils.cjs.map +1 -1
  1182. package/utils.d.cts +2 -2
  1183. package/utils.d.ts +2 -2
  1184. package/utils.js +5 -0
  1185. package/utils.js.map +1 -1
  1186. package/vercel-postgres/driver.cjs +1 -1
  1187. package/vercel-postgres/driver.cjs.map +1 -1
  1188. package/vercel-postgres/driver.d.cts +2 -2
  1189. package/vercel-postgres/driver.d.ts +2 -2
  1190. package/vercel-postgres/driver.js +1 -1
  1191. package/vercel-postgres/driver.js.map +1 -1
  1192. package/vercel-postgres/session.cjs.map +1 -1
  1193. package/vercel-postgres/session.d.cts +6 -6
  1194. package/vercel-postgres/session.d.ts +6 -6
  1195. package/vercel-postgres/session.js.map +1 -1
  1196. package/version.cjs +1 -1
  1197. package/version.d.cts +1 -1
  1198. package/version.d.ts +1 -1
  1199. package/version.js +1 -1
  1200. package/xata-http/driver.cjs +1 -1
  1201. package/xata-http/driver.cjs.map +1 -1
  1202. package/xata-http/driver.d.cts +2 -2
  1203. package/xata-http/driver.d.ts +2 -2
  1204. package/xata-http/driver.js +1 -1
  1205. package/xata-http/driver.js.map +1 -1
  1206. package/xata-http/session.cjs.map +1 -1
  1207. package/xata-http/session.d.cts +6 -6
  1208. package/xata-http/session.d.ts +6 -6
  1209. package/xata-http/session.js.map +1 -1
  1210. package/knex/index.cjs +0 -2
  1211. package/knex/index.cjs.map +0 -1
  1212. package/knex/index.d.cts +0 -9
  1213. package/knex/index.d.ts +0 -9
  1214. package/knex/index.js +0 -1
  1215. package/knex/index.js.map +0 -1
  1216. package/kysely/index.cjs +0 -17
  1217. package/kysely/index.cjs.map +0 -1
  1218. package/kysely/index.d.cts +0 -16
  1219. package/kysely/index.d.ts +0 -16
  1220. package/kysely/index.js +0 -1
  1221. package/kysely/index.js.map +0 -1
@@ -7,7 +7,7 @@ import type { Logger } from "../logger.cjs";
7
7
  import type { MySqlDialect } from "../mysql-core/dialect.cjs";
8
8
  import type { SelectedFieldsOrdered } from "../mysql-core/query-builders/select.types.cjs";
9
9
  import { type Mode, MySqlPreparedQuery, type MySqlPreparedQueryConfig, type MySqlPreparedQueryHKT, type MySqlQueryResultHKT, MySqlSession, MySqlTransaction, type MySqlTransactionConfig, type PreparedQueryKind } from "../mysql-core/session.cjs";
10
- import type { AnyRelations, TablesRelationalConfig } from "../relations.cjs";
10
+ import type { AnyRelations } from "../relations.cjs";
11
11
  import type { Query, SQL } from "../sql/sql.cjs";
12
12
  import { type Assume } from "../utils.cjs";
13
13
  export type MySql2Client = Pool | Connection;
@@ -39,7 +39,7 @@ export interface MySql2SessionOptions {
39
39
  cache?: Cache;
40
40
  mode: Mode;
41
41
  }
42
- export declare class MySql2Session<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TTablesConfig extends TablesRelationalConfig, TSchema extends V1.TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TTablesConfig, TSchema> {
42
+ export declare class MySql2Session<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TSchema> {
43
43
  private client;
44
44
  private relations;
45
45
  private schema;
@@ -48,18 +48,18 @@ export declare class MySql2Session<TFullSchema extends Record<string, unknown>,
48
48
  private logger;
49
49
  private mode;
50
50
  private cache;
51
- constructor(client: MySql2Client, dialect: MySqlDialect, relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<TSchema> | undefined, options: MySql2SessionOptions);
51
+ constructor(client: MySql2Client, dialect: MySqlDialect, relations: TRelations, schema: V1.RelationalSchemaConfig<TSchema> | undefined, options: MySql2SessionOptions);
52
52
  prepareQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper?: (rows: unknown[][]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered, queryMetadata?: {
53
53
  type: 'select' | 'update' | 'delete' | 'insert';
54
54
  tables: string[];
55
55
  }, cacheConfig?: WithCacheConfig): PreparedQueryKind<MySql2PreparedQueryHKT, T>;
56
56
  prepareRelationalQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<MySql2PreparedQueryHKT, T>;
57
57
  all<T = unknown>(query: SQL): Promise<T[]>;
58
- transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>, config?: MySqlTransactionConfig): Promise<T>;
58
+ transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TSchema>) => Promise<T>, config?: MySqlTransactionConfig): Promise<T>;
59
59
  }
60
- export declare class MySql2Transaction<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TTablesConfig extends TablesRelationalConfig, TSchema extends V1.TablesRelationalConfig> extends MySqlTransaction<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TTablesConfig, TSchema> {
60
+ export declare class MySql2Transaction<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends MySqlTransaction<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TSchema> {
61
61
  static readonly [entityKind]: string;
62
- transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>): Promise<T>;
62
+ transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TSchema>) => Promise<T>): Promise<T>;
63
63
  }
64
64
  export interface MySql2QueryResultHKT extends MySqlQueryResultHKT {
65
65
  type: MySqlRawQueryResult;
@@ -7,7 +7,7 @@ import type { Logger } from "../logger.js";
7
7
  import type { MySqlDialect } from "../mysql-core/dialect.js";
8
8
  import type { SelectedFieldsOrdered } from "../mysql-core/query-builders/select.types.js";
9
9
  import { type Mode, MySqlPreparedQuery, type MySqlPreparedQueryConfig, type MySqlPreparedQueryHKT, type MySqlQueryResultHKT, MySqlSession, MySqlTransaction, type MySqlTransactionConfig, type PreparedQueryKind } from "../mysql-core/session.js";
10
- import type { AnyRelations, TablesRelationalConfig } from "../relations.js";
10
+ import type { AnyRelations } from "../relations.js";
11
11
  import type { Query, SQL } from "../sql/sql.js";
12
12
  import { type Assume } from "../utils.js";
13
13
  export type MySql2Client = Pool | Connection;
@@ -39,7 +39,7 @@ export interface MySql2SessionOptions {
39
39
  cache?: Cache;
40
40
  mode: Mode;
41
41
  }
42
- export declare class MySql2Session<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TTablesConfig extends TablesRelationalConfig, TSchema extends V1.TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TTablesConfig, TSchema> {
42
+ export declare class MySql2Session<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TSchema> {
43
43
  private client;
44
44
  private relations;
45
45
  private schema;
@@ -48,18 +48,18 @@ export declare class MySql2Session<TFullSchema extends Record<string, unknown>,
48
48
  private logger;
49
49
  private mode;
50
50
  private cache;
51
- constructor(client: MySql2Client, dialect: MySqlDialect, relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<TSchema> | undefined, options: MySql2SessionOptions);
51
+ constructor(client: MySql2Client, dialect: MySqlDialect, relations: TRelations, schema: V1.RelationalSchemaConfig<TSchema> | undefined, options: MySql2SessionOptions);
52
52
  prepareQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper?: (rows: unknown[][]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered, queryMetadata?: {
53
53
  type: 'select' | 'update' | 'delete' | 'insert';
54
54
  tables: string[];
55
55
  }, cacheConfig?: WithCacheConfig): PreparedQueryKind<MySql2PreparedQueryHKT, T>;
56
56
  prepareRelationalQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<MySql2PreparedQueryHKT, T>;
57
57
  all<T = unknown>(query: SQL): Promise<T[]>;
58
- transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>, config?: MySqlTransactionConfig): Promise<T>;
58
+ transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TSchema>) => Promise<T>, config?: MySqlTransactionConfig): Promise<T>;
59
59
  }
60
- export declare class MySql2Transaction<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TTablesConfig extends TablesRelationalConfig, TSchema extends V1.TablesRelationalConfig> extends MySqlTransaction<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TTablesConfig, TSchema> {
60
+ export declare class MySql2Transaction<TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends MySqlTransaction<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TSchema> {
61
61
  static readonly [entityKind]: string;
62
- transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>): Promise<T>;
62
+ transaction<T>(transaction: (tx: MySql2Transaction<TFullSchema, TRelations, TSchema>) => Promise<T>): Promise<T>;
63
63
  }
64
64
  export interface MySql2QueryResultHKT extends MySqlQueryResultHKT {
65
65
  type: MySqlRawQueryResult;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mysql2/session.ts"],"sourcesContent":["import type { Connection as CallbackConnection } from 'mysql2';\nimport type {\n\tConnection,\n\tFieldPacket,\n\tOkPacket,\n\tPool,\n\tPoolConnection,\n\tQueryOptions,\n\tResultSetHeader,\n\tRowDataPacket,\n} from 'mysql2/promise';\nimport { once } from 'node:events';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.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\ttype Mode,\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n\ttype MySqlTransactionConfig,\n\ttype PreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport type { AnyRelations, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, sql } from '~/sql/sql.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport type MySql2Client = Pool | Connection;\n\nexport type MySqlRawQueryResult = [ResultSetHeader, FieldPacket[]];\nexport type MySqlQueryResultType = RowDataPacket[][] | RowDataPacket[] | OkPacket | OkPacket[] | ResultSetHeader;\nexport type MySqlQueryResult<\n\tT = any,\n> = [T extends ResultSetHeader ? T : T[], FieldPacket[]];\n\nexport class MySql2PreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'MySql2PreparedQuery';\n\n\tprivate rawQuery: QueryOptions;\n\tprivate query: QueryOptions;\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tqueryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate 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(cache, queryMetadata, cacheConfig);\n\t\tthis.rawQuery = {\n\t\t\tsql: queryString,\n\t\t\t// rowsAsArray: true,\n\t\t\ttypeCast: function(field: any, next: any) {\n\t\t\t\tif (field.type === 'TIMESTAMP' || field.type === 'DATETIME' || field.type === 'DATE') {\n\t\t\t\t\treturn field.string();\n\t\t\t\t}\n\t\t\t\treturn next();\n\t\t\t},\n\t\t};\n\t\tthis.query = {\n\t\t\tsql: queryString,\n\t\t\trowsAsArray: true,\n\t\t\ttypeCast: function(field: any, next: any) {\n\t\t\t\tif (field.type === 'TIMESTAMP' || field.type === 'DATETIME' || field.type === 'DATE') {\n\t\t\t\t\treturn field.string();\n\t\t\t\t}\n\t\t\t\treturn next();\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> = {}): 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.rawQuery.sql, params);\n\n\t\tconst { fields, client, rawQuery, query, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } =\n\t\t\tthis;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(rawQuery.sql, params, async () => {\n\t\t\t\treturn await client.query<any>(rawQuery, params);\n\t\t\t});\n\n\t\t\tconst insertId = res[0].insertId;\n\t\t\tconst affectedRows = res[0].affectedRows;\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\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\t\t\treturn res;\n\t\t}\n\n\t\tconst result = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await client.query<any[]>(query, params);\n\t\t});\n\n\t\tconst rows = result[0];\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows);\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.rawQuery.sql, params);\n\n\t\tconst { client, rawQuery, customResultMapper } = this;\n\t\tconst res = await client.query<any>(rawQuery, params);\n\n\t\tconst rows = res[0];\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(rows);\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\tconst conn = ((isPool(this.client) ? await this.client.getConnection() : this.client) as {} as {\n\t\t\tconnection: CallbackConnection;\n\t\t}).connection;\n\n\t\tconst { fields, query, rawQuery, joinsNotNullableMap, client, customResultMapper } = this;\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\t\tconst driverQuery = hasRowsMapper ? conn.query(query, params) : conn.query(rawQuery, params);\n\n\t\tconst stream = driverQuery.stream();\n\n\t\tfunction dataListener() {\n\t\t\tstream.pause();\n\t\t}\n\n\t\tstream.on('data', dataListener);\n\n\t\ttry {\n\t\t\tconst onEnd = once(stream, 'end');\n\t\t\tconst onError = once(stream, 'error');\n\n\t\t\twhile (true) {\n\t\t\t\tstream.resume();\n\t\t\t\tconst row = await Promise.race([onEnd, onError, new Promise((resolve) => stream.once('data', resolve))]);\n\t\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else if (row instanceof Error) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t\tthrow row;\n\t\t\t\t} else {\n\t\t\t\t\tif (hasRowsMapper) {\n\t\t\t\t\t\tif (customResultMapper) {\n\t\t\t\t\t\t\tconst mappedRow = (customResultMapper as (rows: unknown[][]) => T['execute'])([row as unknown[]]);\n\t\t\t\t\t\t\tyield (Array.isArray(mappedRow) ? mappedRow[0] : mappedRow);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tyield mapResultRow(fields!, row as unknown[], joinsNotNullableMap);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tyield row as T['execute'];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tstream.off('data', dataListener);\n\t\t\tif (isPool(client)) {\n\t\t\t\tconn.end();\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport interface MySql2SessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tmode: Mode;\n}\n\nexport class MySql2Session<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTTablesConfig extends TablesRelationalConfig,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<MySqlQueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TTablesConfig, TSchema> {\n\tstatic override readonly [entityKind]: string = 'MySql2Session';\n\n\tprivate logger: Logger;\n\tprivate mode: Mode;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tdialect: MySqlDialect,\n\t\tprivate relations: AnyRelations | undefined,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: MySql2SessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t\tthis.mode = options.mode;\n\t}\n\n\tprepareQuery<T extends 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\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<MySql2PreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new MySql2PreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t) as PreparedQueryKind<MySql2PreparedQueryHKT, T>;\n\t}\n\n\tprepareRelationalQuery<T extends 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): PreparedQueryKind<MySql2PreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new MySql2PreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t) as any;\n\t}\n\n\t/**\n\t * @internal\n\t * What is its purpose?\n\t */\n\tasync query(query: string, params: unknown[]): Promise<MySqlQueryResult> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.query({\n\t\t\tsql: query,\n\t\t\tvalues: params,\n\t\t\trowsAsArray: true,\n\t\t\ttypeCast: function(field: any, next: any) {\n\t\t\t\tif (field.type === 'TIMESTAMP' || field.type === 'DATETIME' || field.type === 'DATE') {\n\t\t\t\t\treturn field.string();\n\t\t\t\t}\n\t\t\t\treturn next();\n\t\t\t},\n\t\t});\n\t\treturn result;\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\t\treturn this.client.execute(querySql.sql, querySql.params).then((result) => result[0]) as Promise<T[]>;\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: MySql2Transaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>,\n\t\tconfig?: MySqlTransactionConfig,\n\t): Promise<T> {\n\t\tconst session = isPool(this.client)\n\t\t\t? new MySql2Session(\n\t\t\t\tawait this.client.getConnection(),\n\t\t\t\tthis.dialect,\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\t: this;\n\t\tconst tx = new MySql2Transaction<TFullSchema, TRelations, TTablesConfig, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tsession as MySqlSession<any, any, any, any, any, any>,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\t0,\n\t\t\tthis.mode,\n\t\t);\n\t\tif (config) {\n\t\t\tconst setTransactionConfigSql = this.getSetTransactionSQL(config);\n\t\t\tif (setTransactionConfigSql) {\n\t\t\t\tawait tx.execute(setTransactionConfigSql);\n\t\t\t}\n\t\t\tconst startTransactionSql = this.getStartTransactionSQL(config);\n\t\t\tawait (startTransactionSql ? tx.execute(startTransactionSql) : tx.execute(sql`begin`));\n\t\t} else {\n\t\t\tawait tx.execute(sql`begin`);\n\t\t}\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow err;\n\t\t} finally {\n\t\t\tif (isPool(this.client)) {\n\t\t\t\t(session.client as PoolConnection).release();\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport class MySql2Transaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTTablesConfig extends TablesRelationalConfig,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tMySql2QueryResultHKT,\n\tMySql2PreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTTablesConfig,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'MySql2Transaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: MySql2Transaction<TFullSchema, TRelations, TTablesConfig, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new MySql2Transaction<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\tthis.mode,\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\nfunction isPool(client: MySql2Client): client is Pool {\n\treturn 'getConnection' in client;\n}\n\nexport interface MySql2QueryResultHKT extends MySqlQueryResultHKT {\n\ttype: MySqlRawQueryResult;\n}\n\nexport interface MySql2PreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: MySql2PreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/mysql2/session.ts"],"sourcesContent":["import type { Connection as CallbackConnection } from 'mysql2';\nimport type {\n\tConnection,\n\tFieldPacket,\n\tOkPacket,\n\tPool,\n\tPoolConnection,\n\tQueryOptions,\n\tResultSetHeader,\n\tRowDataPacket,\n} from 'mysql2/promise';\nimport { once } from 'node:events';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.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\ttype Mode,\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n\ttype MySqlTransactionConfig,\n\ttype PreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, sql } from '~/sql/sql.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport type MySql2Client = Pool | Connection;\n\nexport type MySqlRawQueryResult = [ResultSetHeader, FieldPacket[]];\nexport type MySqlQueryResultType = RowDataPacket[][] | RowDataPacket[] | OkPacket | OkPacket[] | ResultSetHeader;\nexport type MySqlQueryResult<\n\tT = any,\n> = [T extends ResultSetHeader ? T : T[], FieldPacket[]];\n\nexport class MySql2PreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'MySql2PreparedQuery';\n\n\tprivate rawQuery: QueryOptions;\n\tprivate query: QueryOptions;\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tqueryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate 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(cache, queryMetadata, cacheConfig);\n\t\tthis.rawQuery = {\n\t\t\tsql: queryString,\n\t\t\t// rowsAsArray: true,\n\t\t\ttypeCast: function(field: any, next: any) {\n\t\t\t\tif (field.type === 'TIMESTAMP' || field.type === 'DATETIME' || field.type === 'DATE') {\n\t\t\t\t\treturn field.string();\n\t\t\t\t}\n\t\t\t\treturn next();\n\t\t\t},\n\t\t};\n\t\tthis.query = {\n\t\t\tsql: queryString,\n\t\t\trowsAsArray: true,\n\t\t\ttypeCast: function(field: any, next: any) {\n\t\t\t\tif (field.type === 'TIMESTAMP' || field.type === 'DATETIME' || field.type === 'DATE') {\n\t\t\t\t\treturn field.string();\n\t\t\t\t}\n\t\t\t\treturn next();\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> = {}): 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.rawQuery.sql, params);\n\n\t\tconst { fields, client, rawQuery, query, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } =\n\t\t\tthis;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(rawQuery.sql, params, async () => {\n\t\t\t\treturn await client.query<any>(rawQuery, params);\n\t\t\t});\n\n\t\t\tconst insertId = res[0].insertId;\n\t\t\tconst affectedRows = res[0].affectedRows;\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\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\t\t\treturn res;\n\t\t}\n\n\t\tconst result = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await client.query<any[]>(query, params);\n\t\t});\n\n\t\tconst rows = result[0];\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows);\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.rawQuery.sql, params);\n\n\t\tconst { client, rawQuery, customResultMapper } = this;\n\t\tconst res = await client.query<any>(rawQuery, params);\n\n\t\tconst rows = res[0];\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(rows);\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\tconst conn = ((isPool(this.client) ? await this.client.getConnection() : this.client) as {} as {\n\t\t\tconnection: CallbackConnection;\n\t\t}).connection;\n\n\t\tconst { fields, query, rawQuery, joinsNotNullableMap, client, customResultMapper } = this;\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\t\tconst driverQuery = hasRowsMapper ? conn.query(query, params) : conn.query(rawQuery, params);\n\n\t\tconst stream = driverQuery.stream();\n\n\t\tfunction dataListener() {\n\t\t\tstream.pause();\n\t\t}\n\n\t\tstream.on('data', dataListener);\n\n\t\ttry {\n\t\t\tconst onEnd = once(stream, 'end');\n\t\t\tconst onError = once(stream, 'error');\n\n\t\t\twhile (true) {\n\t\t\t\tstream.resume();\n\t\t\t\tconst row = await Promise.race([onEnd, onError, new Promise((resolve) => stream.once('data', resolve))]);\n\t\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else if (row instanceof Error) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t\tthrow row;\n\t\t\t\t} else {\n\t\t\t\t\tif (hasRowsMapper) {\n\t\t\t\t\t\tif (customResultMapper) {\n\t\t\t\t\t\t\tconst mappedRow = (customResultMapper as (rows: unknown[][]) => T['execute'])([row as unknown[]]);\n\t\t\t\t\t\t\tyield (Array.isArray(mappedRow) ? mappedRow[0] : mappedRow);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tyield mapResultRow(fields!, row as unknown[], joinsNotNullableMap);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tyield row as T['execute'];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tstream.off('data', dataListener);\n\t\t\tif (isPool(client)) {\n\t\t\t\tconn.end();\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport interface MySql2SessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tmode: Mode;\n}\n\nexport class MySql2Session<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<MySqlQueryResultHKT, MySql2PreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'MySql2Session';\n\n\tprivate logger: Logger;\n\tprivate mode: Mode;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tdialect: MySqlDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: MySql2SessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t\tthis.mode = options.mode;\n\t}\n\n\tprepareQuery<T extends 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\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<MySql2PreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new MySql2PreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t) as PreparedQueryKind<MySql2PreparedQueryHKT, T>;\n\t}\n\n\tprepareRelationalQuery<T extends 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): PreparedQueryKind<MySql2PreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new MySql2PreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t) as any;\n\t}\n\n\t/**\n\t * @internal\n\t * What is its purpose?\n\t */\n\tasync query(query: string, params: unknown[]): Promise<MySqlQueryResult> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.query({\n\t\t\tsql: query,\n\t\t\tvalues: params,\n\t\t\trowsAsArray: true,\n\t\t\ttypeCast: function(field: any, next: any) {\n\t\t\t\tif (field.type === 'TIMESTAMP' || field.type === 'DATETIME' || field.type === 'DATE') {\n\t\t\t\t\treturn field.string();\n\t\t\t\t}\n\t\t\t\treturn next();\n\t\t\t},\n\t\t});\n\t\treturn result;\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\t\treturn this.client.execute(querySql.sql, querySql.params).then((result) => result[0]) as Promise<T[]>;\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: MySql2Transaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: MySqlTransactionConfig,\n\t): Promise<T> {\n\t\tconst session = isPool(this.client)\n\t\t\t? new MySql2Session(\n\t\t\t\tawait this.client.getConnection(),\n\t\t\t\tthis.dialect,\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\t: this;\n\t\tconst tx = new MySql2Transaction<TFullSchema, TRelations, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\t0,\n\t\t\tthis.mode,\n\t\t);\n\t\tif (config) {\n\t\t\tconst setTransactionConfigSql = this.getSetTransactionSQL(config);\n\t\t\tif (setTransactionConfigSql) {\n\t\t\t\tawait tx.execute(setTransactionConfigSql);\n\t\t\t}\n\t\t\tconst startTransactionSql = this.getStartTransactionSQL(config);\n\t\t\tawait (startTransactionSql ? tx.execute(startTransactionSql) : tx.execute(sql`begin`));\n\t\t} else {\n\t\t\tawait tx.execute(sql`begin`);\n\t\t}\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow err;\n\t\t} finally {\n\t\t\tif (isPool(this.client)) {\n\t\t\t\t(session.client as PoolConnection).release();\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport class MySql2Transaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tMySql2QueryResultHKT,\n\tMySql2PreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'MySql2Transaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: MySql2Transaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new MySql2Transaction<TFullSchema, TRelations, 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\tthis.mode,\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\nfunction isPool(client: MySql2Client): client is Pool {\n\treturn 'getConnection' in client;\n}\n\nexport interface MySql2QueryResultHKT extends MySqlQueryResultHKT {\n\ttype: MySqlRawQueryResult;\n}\n\nexport interface MySql2PreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: MySql2PreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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","names":[]}
@@ -10,10 +10,9 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
10
10
  schema: "neon_auth";
11
11
  columns: {
12
12
  rawJson: import("../pg-core/index.ts").PgColumn<{
13
- name: "raw_json";
13
+ name: string;
14
14
  tableName: "users_sync";
15
- dataType: "json";
16
- columnType: "PgJsonb";
15
+ dataType: "object json";
17
16
  data: unknown;
18
17
  driverParam: unknown;
19
18
  notNull: true;
@@ -25,12 +24,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
25
24
  baseColumn: never;
26
25
  identity: undefined;
27
26
  generated: undefined;
28
- }, {}, {}>;
27
+ }, {}>;
29
28
  id: import("../pg-core/index.ts").PgColumn<{
30
- name: "id";
29
+ name: string;
31
30
  tableName: "users_sync";
32
31
  dataType: "string";
33
- columnType: "PgText";
34
32
  data: string;
35
33
  driverParam: string;
36
34
  notNull: true;
@@ -42,12 +40,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
42
40
  baseColumn: never;
43
41
  identity: undefined;
44
42
  generated: undefined;
45
- }, {}, {}>;
43
+ }, {}>;
46
44
  name: import("../pg-core/index.ts").PgColumn<{
47
- name: "name";
45
+ name: string;
48
46
  tableName: "users_sync";
49
47
  dataType: "string";
50
- columnType: "PgText";
51
48
  data: string;
52
49
  driverParam: string;
53
50
  notNull: false;
@@ -59,12 +56,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
59
56
  baseColumn: never;
60
57
  identity: undefined;
61
58
  generated: undefined;
62
- }, {}, {}>;
59
+ }, {}>;
63
60
  email: import("../pg-core/index.ts").PgColumn<{
64
- name: "email";
61
+ name: string;
65
62
  tableName: "users_sync";
66
63
  dataType: "string";
67
- columnType: "PgText";
68
64
  data: string;
69
65
  driverParam: string;
70
66
  notNull: false;
@@ -76,12 +72,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
76
72
  baseColumn: never;
77
73
  identity: undefined;
78
74
  generated: undefined;
79
- }, {}, {}>;
75
+ }, {}>;
80
76
  createdAt: import("../pg-core/index.ts").PgColumn<{
81
- name: "created_at";
77
+ name: string;
82
78
  tableName: "users_sync";
83
- dataType: "string";
84
- columnType: "PgTimestampString";
79
+ dataType: "string timestamp";
85
80
  data: string;
86
81
  driverParam: string;
87
82
  notNull: false;
@@ -93,12 +88,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
93
88
  baseColumn: never;
94
89
  identity: undefined;
95
90
  generated: undefined;
96
- }, {}, {}>;
91
+ }, {}>;
97
92
  deletedAt: import("../pg-core/index.ts").PgColumn<{
98
- name: "deleted_at";
93
+ name: string;
99
94
  tableName: "users_sync";
100
- dataType: "string";
101
- columnType: "PgTimestampString";
95
+ dataType: "string timestamp";
102
96
  data: string;
103
97
  driverParam: string;
104
98
  notNull: false;
@@ -110,12 +104,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
110
104
  baseColumn: never;
111
105
  identity: undefined;
112
106
  generated: undefined;
113
- }, {}, {}>;
107
+ }, {}>;
114
108
  updatedAt: import("../pg-core/index.ts").PgColumn<{
115
- name: "updated_at";
109
+ name: string;
116
110
  tableName: "users_sync";
117
- dataType: "string";
118
- columnType: "PgTimestampString";
111
+ dataType: "string timestamp";
119
112
  data: string;
120
113
  driverParam: string;
121
114
  notNull: false;
@@ -127,7 +120,7 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
127
120
  baseColumn: never;
128
121
  identity: undefined;
129
122
  generated: undefined;
130
- }, {}, {}>;
123
+ }, {}>;
131
124
  };
132
125
  dialect: "pg";
133
126
  }>;
@@ -10,10 +10,9 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
10
10
  schema: "neon_auth";
11
11
  columns: {
12
12
  rawJson: import("../pg-core/index.js").PgColumn<{
13
- name: "raw_json";
13
+ name: string;
14
14
  tableName: "users_sync";
15
- dataType: "json";
16
- columnType: "PgJsonb";
15
+ dataType: "object json";
17
16
  data: unknown;
18
17
  driverParam: unknown;
19
18
  notNull: true;
@@ -25,12 +24,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
25
24
  baseColumn: never;
26
25
  identity: undefined;
27
26
  generated: undefined;
28
- }, {}, {}>;
27
+ }, {}>;
29
28
  id: import("../pg-core/index.js").PgColumn<{
30
- name: "id";
29
+ name: string;
31
30
  tableName: "users_sync";
32
31
  dataType: "string";
33
- columnType: "PgText";
34
32
  data: string;
35
33
  driverParam: string;
36
34
  notNull: true;
@@ -42,12 +40,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
42
40
  baseColumn: never;
43
41
  identity: undefined;
44
42
  generated: undefined;
45
- }, {}, {}>;
43
+ }, {}>;
46
44
  name: import("../pg-core/index.js").PgColumn<{
47
- name: "name";
45
+ name: string;
48
46
  tableName: "users_sync";
49
47
  dataType: "string";
50
- columnType: "PgText";
51
48
  data: string;
52
49
  driverParam: string;
53
50
  notNull: false;
@@ -59,12 +56,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
59
56
  baseColumn: never;
60
57
  identity: undefined;
61
58
  generated: undefined;
62
- }, {}, {}>;
59
+ }, {}>;
63
60
  email: import("../pg-core/index.js").PgColumn<{
64
- name: "email";
61
+ name: string;
65
62
  tableName: "users_sync";
66
63
  dataType: "string";
67
- columnType: "PgText";
68
64
  data: string;
69
65
  driverParam: string;
70
66
  notNull: false;
@@ -76,12 +72,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
76
72
  baseColumn: never;
77
73
  identity: undefined;
78
74
  generated: undefined;
79
- }, {}, {}>;
75
+ }, {}>;
80
76
  createdAt: import("../pg-core/index.js").PgColumn<{
81
- name: "created_at";
77
+ name: string;
82
78
  tableName: "users_sync";
83
- dataType: "string";
84
- columnType: "PgTimestampString";
79
+ dataType: "string timestamp";
85
80
  data: string;
86
81
  driverParam: string;
87
82
  notNull: false;
@@ -93,12 +88,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
93
88
  baseColumn: never;
94
89
  identity: undefined;
95
90
  generated: undefined;
96
- }, {}, {}>;
91
+ }, {}>;
97
92
  deletedAt: import("../pg-core/index.js").PgColumn<{
98
- name: "deleted_at";
93
+ name: string;
99
94
  tableName: "users_sync";
100
- dataType: "string";
101
- columnType: "PgTimestampString";
95
+ dataType: "string timestamp";
102
96
  data: string;
103
97
  driverParam: string;
104
98
  notNull: false;
@@ -110,12 +104,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
110
104
  baseColumn: never;
111
105
  identity: undefined;
112
106
  generated: undefined;
113
- }, {}, {}>;
107
+ }, {}>;
114
108
  updatedAt: import("../pg-core/index.js").PgColumn<{
115
- name: "updated_at";
109
+ name: string;
116
110
  tableName: "users_sync";
117
- dataType: "string";
118
- columnType: "PgTimestampString";
111
+ dataType: "string timestamp";
119
112
  data: string;
120
113
  driverParam: string;
121
114
  notNull: false;
@@ -127,7 +120,7 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
127
120
  baseColumn: never;
128
121
  identity: undefined;
129
122
  generated: undefined;
130
- }, {}, {}>;
123
+ }, {}>;
131
124
  };
132
125
  dialect: "pg";
133
126
  }>;
@@ -121,7 +121,7 @@ function construct(client, config = {}) {
121
121
  tableNamesMap: tablesConfig.tableNamesMap
122
122
  };
123
123
  }
124
- const relations = config.relations;
124
+ const relations = config.relations ?? {};
125
125
  const driver = new NeonHttpDriver(client, dialect, { logger, cache: config.cache });
126
126
  const session = driver.createSession(relations, schema);
127
127
  const db = new NeonHttpDatabase(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/neon-http/driver.ts"],"sourcesContent":["import type { HTTPQueryOptions, HTTPTransactionOptions, NeonQueryFunction } from '@neondatabase/serverless';\nimport { neon, types } from '@neondatabase/serverless';\nimport * as V1 from '~/_relations.ts';\nimport type { BatchItem, BatchResponse } from '~/batch.ts';\nimport type { Cache } from '~/cache/core/cache.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type {\n\tAnyRelations,\n\tEmptyRelations,\n\tExtractTablesWithRelations,\n\tRelations,\n\tTablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport { type NeonHttpClient, type NeonHttpQueryResultHKT, NeonHttpSession } from './session.ts';\n\nexport interface NeonDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NeonHttpDriver {\n\tstatic readonly [entityKind]: string = 'NeonHttpDriver';\n\n\tconstructor(\n\t\tprivate client: NeonHttpClient,\n\t\tprivate dialect: PgDialect,\n\t\tprivate options: NeonDriverOptions = {},\n\t) {\n\t\tthis.initMappers();\n\t}\n\n\tcreateSession(\n\t\trelations: Relations | undefined,\n\t\tschema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined,\n\t): NeonHttpSession<Record<string, unknown>, EmptyRelations, TablesRelationalConfig, V1.TablesRelationalConfig> {\n\t\treturn new NeonHttpSession(this.client, this.dialect, relations ?? {} as EmptyRelations, schema, {\n\t\t\tlogger: this.options.logger,\n\t\t\tcache: this.options.cache,\n\t\t});\n\t}\n\n\tinitMappers() {\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMP, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.DATE, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.INTERVAL, (val) => val);\n\t\ttypes.setTypeParser(1231, (val) => val);\n\t\ttypes.setTypeParser(1115, (val) => val);\n\t\ttypes.setTypeParser(1185, (val) => val);\n\t\ttypes.setTypeParser(1187, (val) => val);\n\t\ttypes.setTypeParser(1182, (val) => val);\n\t}\n}\n\nfunction wrap<T extends object>(\n\ttarget: T,\n\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\tcb: (target: any, p: string | symbol, res: any) => any,\n\tdeep?: boolean,\n) {\n\treturn new Proxy(target, {\n\t\tget(target, p) {\n\t\t\tconst element = target[p as keyof typeof p];\n\t\t\tif (typeof element !== 'function' && (typeof element !== 'object' || element === null)) return element;\n\n\t\t\tif (deep) return wrap(element, token, cb);\n\t\t\tif (p === 'query' || p === '_query') return wrap(element, token, cb, true);\n\n\t\t\treturn new Proxy(element as any, {\n\t\t\t\tapply(target, thisArg, argArray) {\n\t\t\t\t\tconst res = target.call(thisArg, ...argArray);\n\t\t\t\t\tif (typeof res === 'object' && res !== null && 'setToken' in res && typeof res.setToken === 'function') {\n\t\t\t\t\t\tres.setToken(token);\n\t\t\t\t\t}\n\t\t\t\t\treturn cb(target, p, res);\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t});\n}\n\nexport class NeonHttpDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NeonHttpDatabase';\n\n\t$withAuth(\n\t\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\t): Omit<\n\t\tthis,\n\t\tExclude<\n\t\t\tkeyof this,\n\t\t\t| '$count'\n\t\t\t| 'delete'\n\t\t\t| 'select'\n\t\t\t| 'selectDistinct'\n\t\t\t| 'selectDistinctOn'\n\t\t\t| 'update'\n\t\t\t| 'insert'\n\t\t\t| 'with'\n\t\t\t| '_query'\n\t\t\t| 'query'\n\t\t\t| 'execute'\n\t\t\t| 'refreshMaterializedView'\n\t\t>\n\t> {\n\t\tthis.authToken = token;\n\n\t\treturn wrap(this, token, (target, p, res) => {\n\t\t\tif (p === 'with') {\n\t\t\t\treturn wrap(res, token, (_, __, res) => res);\n\t\t\t}\n\t\t\treturn res;\n\t\t});\n\t}\n\n\t/** @internal */\n\tdeclare readonly session: NeonHttpSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tExtractTablesWithRelations<TRelations>,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n\n\tasync batch<U extends BatchItem<'pg'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends NeonQueryFunction<any, any> = NeonQueryFunction<any, any>,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\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\n\tconst driver = new NeonHttpDriver(client, dialect, { logger, cache: config.cache });\n\tconst session = driver.createSession(relations, schema);\n\n\tconst db = new NeonHttpDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<V1.ExtractTablesWithRelations<TSchema>> | undefined,\n\t);\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\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 NeonQueryFunction<any, any> = NeonQueryFunction<false, false>,\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 | ({ connectionString: string } & HTTPTransactionOptions<boolean, boolean>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = neon(params[0] as string);\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\t& {\n\t\t\t\tconnection?:\n\t\t\t\t\t| ({\n\t\t\t\t\t\tconnectionString: string;\n\t\t\t\t\t} & HTTPTransactionOptions<boolean, boolean>)\n\t\t\t\t\t| string;\n\t\t\t\tclient?: TClient;\n\t\t\t}\n\t\t\t& DrizzleConfig<TSchema, TRelations>;\n\n\t\tif (client) return construct(client, drizzleConfig);\n\n\t\tif (typeof connection === 'object') {\n\t\t\tconst { connectionString, ...options } = connection;\n\n\t\t\tconst instance = neon(connectionString, options);\n\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = neon(connection!);\n\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema, TRelations> | 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): NeonHttpDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAA4B;AAC5B,SAAoB;AAGpB,oBAA2B;AAE3B,oBAA8B;AAC9B,gBAA2B;AAC3B,qBAA0B;AAQ1B,mBAA6C;AAC7C,qBAAkF;AAO3E,MAAM,eAAe;AAAA,EAG3B,YACS,QACA,SACA,UAA6B,CAAC,GACrC;AAHO;AACA;AACA;AAER,SAAK,YAAY;AAAA,EAClB;AAAA,EARA,QAAiB,wBAAU,IAAY;AAAA,EAUvC,cACC,WACA,QAC8G;AAC9G,WAAO,IAAI,+BAAgB,KAAK,QAAQ,KAAK,SAAS,aAAa,CAAC,GAAqB,QAAQ;AAAA,MAChG,QAAQ,KAAK,QAAQ;AAAA,MACrB,OAAO,KAAK,QAAQ;AAAA,IACrB,CAAC;AAAA,EACF;AAAA,EAEA,cAAc;AACb,4BAAM,cAAc,wBAAM,SAAS,aAAa,CAAC,QAAQ,GAAG;AAC5D,4BAAM,cAAc,wBAAM,SAAS,WAAW,CAAC,QAAQ,GAAG;AAC1D,4BAAM,cAAc,wBAAM,SAAS,MAAM,CAAC,QAAQ,GAAG;AACrD,4BAAM,cAAc,wBAAM,SAAS,UAAU,CAAC,QAAQ,GAAG;AACzD,4BAAM,cAAc,MAAM,CAAC,QAAQ,GAAG;AACtC,4BAAM,cAAc,MAAM,CAAC,QAAQ,GAAG;AACtC,4BAAM,cAAc,MAAM,CAAC,QAAQ,GAAG;AACtC,4BAAM,cAAc,MAAM,CAAC,QAAQ,GAAG;AACtC,4BAAM,cAAc,MAAM,CAAC,QAAQ,GAAG;AAAA,EACvC;AACD;AAEA,SAAS,KACR,QACA,OACA,IACA,MACC;AACD,SAAO,IAAI,MAAM,QAAQ;AAAA,IACxB,IAAIA,SAAQ,GAAG;AACd,YAAM,UAAUA,QAAO,CAAmB;AAC1C,UAAI,OAAO,YAAY,eAAe,OAAO,YAAY,YAAY,YAAY,MAAO,QAAO;AAE/F,UAAI,KAAM,QAAO,KAAK,SAAS,OAAO,EAAE;AACxC,UAAI,MAAM,WAAW,MAAM,SAAU,QAAO,KAAK,SAAS,OAAO,IAAI,IAAI;AAEzE,aAAO,IAAI,MAAM,SAAgB;AAAA,QAChC,MAAMA,SAAQ,SAAS,UAAU;AAChC,gBAAM,MAAMA,QAAO,KAAK,SAAS,GAAG,QAAQ;AAC5C,cAAI,OAAO,QAAQ,YAAY,QAAQ,QAAQ,cAAc,OAAO,OAAO,IAAI,aAAa,YAAY;AACvG,gBAAI,SAAS,KAAK;AAAA,UACnB;AACA,iBAAO,GAAGA,SAAQ,GAAG,GAAG;AAAA,QACzB;AAAA,MACD,CAAC;AAAA,IACF;AAAA,EACD,CAAC;AACF;AAEO,MAAM,yBAGH,qBAAwD;AAAA,EACjE,QAA0B,wBAAU,IAAY;AAAA,EAEhD,UACC,OAkBC;AACD,SAAK,YAAY;AAEjB,WAAO,KAAK,MAAM,OAAO,CAAC,QAAQ,GAAG,QAAQ;AAC5C,UAAI,MAAM,QAAQ;AACjB,eAAO,KAAK,KAAK,OAAO,CAAC,GAAG,IAAIC,SAAQA,IAAG;AAAA,MAC5C;AACA,aAAO;AAAA,IACR,CAAC;AAAA,EACF;AAAA,EAUA,MAAM,MACL,OAC4B;AAC5B,WAAO,KAAK,QAAQ,MAAM,KAAK;AAAA,EAChC;AACD;AAEA,SAAS,UAKR,QACA,SAA6C,CAAC,GAG7C;AACD,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;AAEzB,QAAM,SAAS,IAAI,eAAe,QAAQ,SAAS,EAAE,QAAQ,OAAO,OAAO,MAAM,CAAC;AAClF,QAAM,UAAU,OAAO,cAAc,WAAW,MAAM;AAEtD,QAAM,KAAK,IAAI;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AAEA,SAAO;AACR;AAEO,SAAS,WAKZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAM,eAAW,wBAAK,OAAO,CAAC,CAAW;AACzC,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;AAWzD,QAAI,OAAQ,QAAO,UAAU,QAAQ,aAAa;AAElD,QAAI,OAAO,eAAe,UAAU;AACnC,YAAM,EAAE,kBAAkB,GAAG,QAAQ,IAAI;AAEzC,YAAMC,gBAAW,wBAAK,kBAAkB,OAAO;AAE/C,aAAO,UAAUA,WAAU,aAAa;AAAA,IACzC;AAEA,UAAM,eAAW,wBAAK,UAAW;AAEjC,WAAO,UAAU,UAAU,aAAa;AAAA,EACzC;AAEA,SAAO,UAAU,OAAO,CAAC,GAAc,OAAO,CAAC,CAAmD;AACnG;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KAIf,QAGC;AACD,WAAO,UAAU,CAAC,GAAU,MAAM;AAAA,EACnC;AATO,EAAAA,SAAS;AAAA,GADA;","names":["target","res","instance","drizzle"]}
1
+ {"version":3,"sources":["../../src/neon-http/driver.ts"],"sourcesContent":["import type { HTTPQueryOptions, HTTPTransactionOptions, NeonQueryFunction } from '@neondatabase/serverless';\nimport { neon, types } from '@neondatabase/serverless';\nimport * as V1 from '~/_relations.ts';\nimport type { BatchItem, BatchResponse } from '~/batch.ts';\nimport type { Cache } from '~/cache/core/cache.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.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 NeonHttpClient, type NeonHttpQueryResultHKT, NeonHttpSession } from './session.ts';\n\nexport interface NeonDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NeonHttpDriver {\n\tstatic readonly [entityKind]: string = 'NeonHttpDriver';\n\n\tconstructor(\n\t\tprivate client: NeonHttpClient,\n\t\tprivate dialect: PgDialect,\n\t\tprivate options: NeonDriverOptions = {},\n\t) {\n\t\tthis.initMappers();\n\t}\n\n\tcreateSession(\n\t\trelations: AnyRelations | undefined,\n\t\tschema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined,\n\t): NeonHttpSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig> {\n\t\treturn new NeonHttpSession(this.client, this.dialect, relations ?? {} as EmptyRelations, schema, {\n\t\t\tlogger: this.options.logger,\n\t\t\tcache: this.options.cache,\n\t\t});\n\t}\n\n\tinitMappers() {\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMP, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.DATE, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.INTERVAL, (val) => val);\n\t\ttypes.setTypeParser(1231, (val) => val);\n\t\ttypes.setTypeParser(1115, (val) => val);\n\t\ttypes.setTypeParser(1185, (val) => val);\n\t\ttypes.setTypeParser(1187, (val) => val);\n\t\ttypes.setTypeParser(1182, (val) => val);\n\t}\n}\n\nfunction wrap<T extends object>(\n\ttarget: T,\n\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\tcb: (target: any, p: string | symbol, res: any) => any,\n\tdeep?: boolean,\n) {\n\treturn new Proxy(target, {\n\t\tget(target, p) {\n\t\t\tconst element = target[p as keyof typeof p];\n\t\t\tif (typeof element !== 'function' && (typeof element !== 'object' || element === null)) return element;\n\n\t\t\tif (deep) return wrap(element, token, cb);\n\t\t\tif (p === 'query' || p === '_query') return wrap(element, token, cb, true);\n\n\t\t\treturn new Proxy(element as any, {\n\t\t\t\tapply(target, thisArg, argArray) {\n\t\t\t\t\tconst res = target.call(thisArg, ...argArray);\n\t\t\t\t\tif (typeof res === 'object' && res !== null && 'setToken' in res && typeof res.setToken === 'function') {\n\t\t\t\t\t\tres.setToken(token);\n\t\t\t\t\t}\n\t\t\t\t\treturn cb(target, p, res);\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t});\n}\n\nexport class NeonHttpDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NeonHttpDatabase';\n\n\t$withAuth(\n\t\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\t): Omit<\n\t\tthis,\n\t\tExclude<\n\t\t\tkeyof this,\n\t\t\t| '$count'\n\t\t\t| 'delete'\n\t\t\t| 'select'\n\t\t\t| 'selectDistinct'\n\t\t\t| 'selectDistinctOn'\n\t\t\t| 'update'\n\t\t\t| 'insert'\n\t\t\t| 'with'\n\t\t\t| '_query'\n\t\t\t| 'query'\n\t\t\t| 'execute'\n\t\t\t| 'refreshMaterializedView'\n\t\t>\n\t> {\n\t\tthis.authToken = token;\n\n\t\treturn wrap(this, token, (target, p, res) => {\n\t\t\tif (p === 'with') {\n\t\t\t\treturn wrap(res, token, (_, __, res) => res);\n\t\t\t}\n\t\t\treturn res;\n\t\t});\n\t}\n\n\t/** @internal */\n\tdeclare readonly session: NeonHttpSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n\n\tasync batch<U extends BatchItem<'pg'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends NeonQueryFunction<any, any> = NeonQueryFunction<any, any>,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\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 ?? {} as TRelations;\n\n\tconst driver = new NeonHttpDriver(client, dialect, { logger, cache: config.cache });\n\tconst session = driver.createSession(relations, schema);\n\n\tconst db = new NeonHttpDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<V1.ExtractTablesWithRelations<TSchema>> | undefined,\n\t);\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\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 NeonQueryFunction<any, any> = NeonQueryFunction<false, false>,\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 | ({ connectionString: string } & HTTPTransactionOptions<boolean, boolean>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = neon(params[0] as string);\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\t& {\n\t\t\t\tconnection?:\n\t\t\t\t\t| ({\n\t\t\t\t\t\tconnectionString: string;\n\t\t\t\t\t} & HTTPTransactionOptions<boolean, boolean>)\n\t\t\t\t\t| string;\n\t\t\t\tclient?: TClient;\n\t\t\t}\n\t\t\t& DrizzleConfig<TSchema, TRelations>;\n\n\t\tif (client) return construct(client, drizzleConfig);\n\n\t\tif (typeof connection === 'object') {\n\t\t\tconst { connectionString, ...options } = connection;\n\n\t\t\tconst instance = neon(connectionString, options);\n\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = neon(connection!);\n\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema, TRelations> | 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): NeonHttpDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"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","names":["target","res","instance","drizzle"]}
@@ -6,7 +6,7 @@ import { entityKind } from "../entity.cjs";
6
6
  import type { Logger } from "../logger.cjs";
7
7
  import { PgDatabase } from "../pg-core/db.cjs";
8
8
  import { PgDialect } from "../pg-core/dialect.cjs";
9
- import type { AnyRelations, EmptyRelations, Relations, TablesRelationalConfig } from "../relations.cjs";
9
+ import type { AnyRelations, EmptyRelations } from "../relations.cjs";
10
10
  import { type DrizzleConfig } from "../utils.cjs";
11
11
  import { type NeonHttpClient, type NeonHttpQueryResultHKT, NeonHttpSession } from "./session.cjs";
12
12
  export interface NeonDriverOptions {
@@ -19,7 +19,7 @@ export declare class NeonHttpDriver {
19
19
  private options;
20
20
  static readonly [entityKind]: string;
21
21
  constructor(client: NeonHttpClient, dialect: PgDialect, options?: NeonDriverOptions);
22
- createSession(relations: Relations | undefined, schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined): NeonHttpSession<Record<string, unknown>, EmptyRelations, TablesRelationalConfig, V1.TablesRelationalConfig>;
22
+ createSession(relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined): NeonHttpSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig>;
23
23
  initMappers(): void;
24
24
  }
25
25
  export declare class NeonHttpDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {
@@ -6,7 +6,7 @@ import { entityKind } from "../entity.js";
6
6
  import type { Logger } from "../logger.js";
7
7
  import { PgDatabase } from "../pg-core/db.js";
8
8
  import { PgDialect } from "../pg-core/dialect.js";
9
- import type { AnyRelations, EmptyRelations, Relations, TablesRelationalConfig } from "../relations.js";
9
+ import type { AnyRelations, EmptyRelations } from "../relations.js";
10
10
  import { type DrizzleConfig } from "../utils.js";
11
11
  import { type NeonHttpClient, type NeonHttpQueryResultHKT, NeonHttpSession } from "./session.js";
12
12
  export interface NeonDriverOptions {
@@ -19,7 +19,7 @@ export declare class NeonHttpDriver {
19
19
  private options;
20
20
  static readonly [entityKind]: string;
21
21
  constructor(client: NeonHttpClient, dialect: PgDialect, options?: NeonDriverOptions);
22
- createSession(relations: Relations | undefined, schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined): NeonHttpSession<Record<string, unknown>, EmptyRelations, TablesRelationalConfig, V1.TablesRelationalConfig>;
22
+ createSession(relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined): NeonHttpSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig>;
23
23
  initMappers(): void;
24
24
  }
25
25
  export declare class NeonHttpDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {
@@ -86,7 +86,7 @@ function construct(client, config = {}) {
86
86
  tableNamesMap: tablesConfig.tableNamesMap
87
87
  };
88
88
  }
89
- const relations = config.relations;
89
+ const relations = config.relations ?? {};
90
90
  const driver = new NeonHttpDriver(client, dialect, { logger, cache: config.cache });
91
91
  const session = driver.createSession(relations, schema);
92
92
  const db = new NeonHttpDatabase(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/neon-http/driver.ts"],"sourcesContent":["import type { HTTPQueryOptions, HTTPTransactionOptions, NeonQueryFunction } from '@neondatabase/serverless';\nimport { neon, types } from '@neondatabase/serverless';\nimport * as V1 from '~/_relations.ts';\nimport type { BatchItem, BatchResponse } from '~/batch.ts';\nimport type { Cache } from '~/cache/core/cache.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type {\n\tAnyRelations,\n\tEmptyRelations,\n\tExtractTablesWithRelations,\n\tRelations,\n\tTablesRelationalConfig,\n} from '~/relations.ts';\nimport { type DrizzleConfig, isConfig } from '~/utils.ts';\nimport { type NeonHttpClient, type NeonHttpQueryResultHKT, NeonHttpSession } from './session.ts';\n\nexport interface NeonDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NeonHttpDriver {\n\tstatic readonly [entityKind]: string = 'NeonHttpDriver';\n\n\tconstructor(\n\t\tprivate client: NeonHttpClient,\n\t\tprivate dialect: PgDialect,\n\t\tprivate options: NeonDriverOptions = {},\n\t) {\n\t\tthis.initMappers();\n\t}\n\n\tcreateSession(\n\t\trelations: Relations | undefined,\n\t\tschema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined,\n\t): NeonHttpSession<Record<string, unknown>, EmptyRelations, TablesRelationalConfig, V1.TablesRelationalConfig> {\n\t\treturn new NeonHttpSession(this.client, this.dialect, relations ?? {} as EmptyRelations, schema, {\n\t\t\tlogger: this.options.logger,\n\t\t\tcache: this.options.cache,\n\t\t});\n\t}\n\n\tinitMappers() {\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMP, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.DATE, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.INTERVAL, (val) => val);\n\t\ttypes.setTypeParser(1231, (val) => val);\n\t\ttypes.setTypeParser(1115, (val) => val);\n\t\ttypes.setTypeParser(1185, (val) => val);\n\t\ttypes.setTypeParser(1187, (val) => val);\n\t\ttypes.setTypeParser(1182, (val) => val);\n\t}\n}\n\nfunction wrap<T extends object>(\n\ttarget: T,\n\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\tcb: (target: any, p: string | symbol, res: any) => any,\n\tdeep?: boolean,\n) {\n\treturn new Proxy(target, {\n\t\tget(target, p) {\n\t\t\tconst element = target[p as keyof typeof p];\n\t\t\tif (typeof element !== 'function' && (typeof element !== 'object' || element === null)) return element;\n\n\t\t\tif (deep) return wrap(element, token, cb);\n\t\t\tif (p === 'query' || p === '_query') return wrap(element, token, cb, true);\n\n\t\t\treturn new Proxy(element as any, {\n\t\t\t\tapply(target, thisArg, argArray) {\n\t\t\t\t\tconst res = target.call(thisArg, ...argArray);\n\t\t\t\t\tif (typeof res === 'object' && res !== null && 'setToken' in res && typeof res.setToken === 'function') {\n\t\t\t\t\t\tres.setToken(token);\n\t\t\t\t\t}\n\t\t\t\t\treturn cb(target, p, res);\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t});\n}\n\nexport class NeonHttpDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NeonHttpDatabase';\n\n\t$withAuth(\n\t\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\t): Omit<\n\t\tthis,\n\t\tExclude<\n\t\t\tkeyof this,\n\t\t\t| '$count'\n\t\t\t| 'delete'\n\t\t\t| 'select'\n\t\t\t| 'selectDistinct'\n\t\t\t| 'selectDistinctOn'\n\t\t\t| 'update'\n\t\t\t| 'insert'\n\t\t\t| 'with'\n\t\t\t| '_query'\n\t\t\t| 'query'\n\t\t\t| 'execute'\n\t\t\t| 'refreshMaterializedView'\n\t\t>\n\t> {\n\t\tthis.authToken = token;\n\n\t\treturn wrap(this, token, (target, p, res) => {\n\t\t\tif (p === 'with') {\n\t\t\t\treturn wrap(res, token, (_, __, res) => res);\n\t\t\t}\n\t\t\treturn res;\n\t\t});\n\t}\n\n\t/** @internal */\n\tdeclare readonly session: NeonHttpSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tExtractTablesWithRelations<TRelations>,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n\n\tasync batch<U extends BatchItem<'pg'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends NeonQueryFunction<any, any> = NeonQueryFunction<any, any>,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\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\n\tconst driver = new NeonHttpDriver(client, dialect, { logger, cache: config.cache });\n\tconst session = driver.createSession(relations, schema);\n\n\tconst db = new NeonHttpDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<V1.ExtractTablesWithRelations<TSchema>> | undefined,\n\t);\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\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 NeonQueryFunction<any, any> = NeonQueryFunction<false, false>,\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 | ({ connectionString: string } & HTTPTransactionOptions<boolean, boolean>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = neon(params[0] as string);\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\t& {\n\t\t\t\tconnection?:\n\t\t\t\t\t| ({\n\t\t\t\t\t\tconnectionString: string;\n\t\t\t\t\t} & HTTPTransactionOptions<boolean, boolean>)\n\t\t\t\t\t| string;\n\t\t\t\tclient?: TClient;\n\t\t\t}\n\t\t\t& DrizzleConfig<TSchema, TRelations>;\n\n\t\tif (client) return construct(client, drizzleConfig);\n\n\t\tif (typeof connection === 'object') {\n\t\t\tconst { connectionString, ...options } = connection;\n\n\t\t\tconst instance = neon(connectionString, options);\n\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = neon(connection!);\n\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema, TRelations> | 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): NeonHttpDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"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","names":["target","res","instance","drizzle"]}
1
+ {"version":3,"sources":["../../src/neon-http/driver.ts"],"sourcesContent":["import type { HTTPQueryOptions, HTTPTransactionOptions, NeonQueryFunction } from '@neondatabase/serverless';\nimport { neon, types } from '@neondatabase/serverless';\nimport * as V1 from '~/_relations.ts';\nimport type { BatchItem, BatchResponse } from '~/batch.ts';\nimport type { Cache } from '~/cache/core/cache.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.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 NeonHttpClient, type NeonHttpQueryResultHKT, NeonHttpSession } from './session.ts';\n\nexport interface NeonDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NeonHttpDriver {\n\tstatic readonly [entityKind]: string = 'NeonHttpDriver';\n\n\tconstructor(\n\t\tprivate client: NeonHttpClient,\n\t\tprivate dialect: PgDialect,\n\t\tprivate options: NeonDriverOptions = {},\n\t) {\n\t\tthis.initMappers();\n\t}\n\n\tcreateSession(\n\t\trelations: AnyRelations | undefined,\n\t\tschema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined,\n\t): NeonHttpSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig> {\n\t\treturn new NeonHttpSession(this.client, this.dialect, relations ?? {} as EmptyRelations, schema, {\n\t\t\tlogger: this.options.logger,\n\t\t\tcache: this.options.cache,\n\t\t});\n\t}\n\n\tinitMappers() {\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.TIMESTAMP, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.DATE, (val) => val);\n\t\ttypes.setTypeParser(types.builtins.INTERVAL, (val) => val);\n\t\ttypes.setTypeParser(1231, (val) => val);\n\t\ttypes.setTypeParser(1115, (val) => val);\n\t\ttypes.setTypeParser(1185, (val) => val);\n\t\ttypes.setTypeParser(1187, (val) => val);\n\t\ttypes.setTypeParser(1182, (val) => val);\n\t}\n}\n\nfunction wrap<T extends object>(\n\ttarget: T,\n\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\tcb: (target: any, p: string | symbol, res: any) => any,\n\tdeep?: boolean,\n) {\n\treturn new Proxy(target, {\n\t\tget(target, p) {\n\t\t\tconst element = target[p as keyof typeof p];\n\t\t\tif (typeof element !== 'function' && (typeof element !== 'object' || element === null)) return element;\n\n\t\t\tif (deep) return wrap(element, token, cb);\n\t\t\tif (p === 'query' || p === '_query') return wrap(element, token, cb, true);\n\n\t\t\treturn new Proxy(element as any, {\n\t\t\t\tapply(target, thisArg, argArray) {\n\t\t\t\t\tconst res = target.call(thisArg, ...argArray);\n\t\t\t\t\tif (typeof res === 'object' && res !== null && 'setToken' in res && typeof res.setToken === 'function') {\n\t\t\t\t\t\tres.setToken(token);\n\t\t\t\t\t}\n\t\t\t\t\treturn cb(target, p, res);\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t});\n}\n\nexport class NeonHttpDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NeonHttpDatabase';\n\n\t$withAuth(\n\t\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\t): Omit<\n\t\tthis,\n\t\tExclude<\n\t\t\tkeyof this,\n\t\t\t| '$count'\n\t\t\t| 'delete'\n\t\t\t| 'select'\n\t\t\t| 'selectDistinct'\n\t\t\t| 'selectDistinctOn'\n\t\t\t| 'update'\n\t\t\t| 'insert'\n\t\t\t| 'with'\n\t\t\t| '_query'\n\t\t\t| 'query'\n\t\t\t| 'execute'\n\t\t\t| 'refreshMaterializedView'\n\t\t>\n\t> {\n\t\tthis.authToken = token;\n\n\t\treturn wrap(this, token, (target, p, res) => {\n\t\t\tif (p === 'with') {\n\t\t\t\treturn wrap(res, token, (_, __, res) => res);\n\t\t\t}\n\t\t\treturn res;\n\t\t});\n\t}\n\n\t/** @internal */\n\tdeclare readonly session: NeonHttpSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n\n\tasync batch<U extends BatchItem<'pg'>, T extends Readonly<[U, ...U[]]>>(\n\t\tbatch: T,\n\t): Promise<BatchResponse<T>> {\n\t\treturn this.session.batch(batch) as Promise<BatchResponse<T>>;\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends NeonQueryFunction<any, any> = NeonQueryFunction<any, any>,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\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 ?? {} as TRelations;\n\n\tconst driver = new NeonHttpDriver(client, dialect, { logger, cache: config.cache });\n\tconst session = driver.createSession(relations, schema);\n\n\tconst db = new NeonHttpDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<V1.ExtractTablesWithRelations<TSchema>> | undefined,\n\t);\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\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 NeonQueryFunction<any, any> = NeonQueryFunction<false, false>,\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 | ({ connectionString: string } & HTTPTransactionOptions<boolean, boolean>);\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): NeonHttpDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = neon(params[0] as string);\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\t& {\n\t\t\t\tconnection?:\n\t\t\t\t\t| ({\n\t\t\t\t\t\tconnectionString: string;\n\t\t\t\t\t} & HTTPTransactionOptions<boolean, boolean>)\n\t\t\t\t\t| string;\n\t\t\t\tclient?: TClient;\n\t\t\t}\n\t\t\t& DrizzleConfig<TSchema, TRelations>;\n\n\t\tif (client) return construct(client, drizzleConfig);\n\n\t\tif (typeof connection === 'object') {\n\t\t\tconst { connectionString, ...options } = connection;\n\n\t\t\tconst instance = neon(connectionString, options);\n\n\t\t\treturn construct(instance, drizzleConfig) as any;\n\t\t}\n\n\t\tconst instance = neon(connection!);\n\n\t\treturn construct(instance, drizzleConfig) as any;\n\t}\n\n\treturn construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema, TRelations> | 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): NeonHttpDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"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","names":["target","res","instance","drizzle"]}