drizzle-orm 1.0.0-beta.21 → 1.0.0-beta.21-af6b4cb

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 (1631) hide show
  1. package/_relations.cjs.map +1 -1
  2. package/_relations.d.cts +2 -13
  3. package/_relations.d.ts +2 -13
  4. package/_relations.js.map +1 -1
  5. package/alias.cjs +1 -1
  6. package/alias.js +1 -1
  7. package/aws-data-api/common/index.cjs +2 -0
  8. package/aws-data-api/common/index.cjs.map +1 -1
  9. package/aws-data-api/common/index.d.cts +1 -1
  10. package/aws-data-api/common/index.d.ts +1 -1
  11. package/aws-data-api/common/index.js +2 -0
  12. package/aws-data-api/common/index.js.map +1 -1
  13. package/aws-data-api/pg/driver.cjs +93 -20
  14. package/aws-data-api/pg/driver.cjs.map +1 -1
  15. package/aws-data-api/pg/driver.d.cts +17 -13
  16. package/aws-data-api/pg/driver.d.ts +17 -13
  17. package/aws-data-api/pg/driver.js +93 -20
  18. package/aws-data-api/pg/driver.js.map +1 -1
  19. package/aws-data-api/pg/index.cjs +1 -1
  20. package/aws-data-api/pg/index.d.cts +3 -3
  21. package/aws-data-api/pg/index.d.ts +3 -3
  22. package/aws-data-api/pg/index.js +3 -3
  23. package/aws-data-api/pg/migrator.cjs.map +1 -1
  24. package/aws-data-api/pg/migrator.d.cts +1 -1
  25. package/aws-data-api/pg/migrator.d.ts +1 -1
  26. package/aws-data-api/pg/migrator.js.map +1 -1
  27. package/aws-data-api/pg/session.cjs +44 -113
  28. package/aws-data-api/pg/session.cjs.map +1 -1
  29. package/aws-data-api/pg/session.d.cts +12 -42
  30. package/aws-data-api/pg/session.d.ts +13 -43
  31. package/aws-data-api/pg/session.js +46 -114
  32. package/aws-data-api/pg/session.js.map +1 -1
  33. package/better-sqlite3/driver.cjs +5 -2
  34. package/better-sqlite3/driver.cjs.map +1 -1
  35. package/better-sqlite3/driver.d.ts +1 -1
  36. package/better-sqlite3/driver.js +5 -2
  37. package/better-sqlite3/driver.js.map +1 -1
  38. package/better-sqlite3/session.cjs +16 -15
  39. package/better-sqlite3/session.cjs.map +1 -1
  40. package/better-sqlite3/session.d.cts +10 -6
  41. package/better-sqlite3/session.d.ts +11 -7
  42. package/better-sqlite3/session.js +17 -16
  43. package/better-sqlite3/session.js.map +1 -1
  44. package/bun-sql/driver.cjs.map +1 -1
  45. package/bun-sql/driver.d.cts +7 -6
  46. package/bun-sql/driver.d.ts +7 -6
  47. package/bun-sql/driver.js.map +1 -1
  48. package/bun-sql/index.cjs +0 -1
  49. package/bun-sql/index.d.cts +2 -2
  50. package/bun-sql/index.d.ts +2 -2
  51. package/bun-sql/index.js +2 -2
  52. package/bun-sql/migrator.cjs.map +1 -1
  53. package/bun-sql/migrator.d.cts +2 -2
  54. package/bun-sql/migrator.d.ts +2 -2
  55. package/bun-sql/migrator.js.map +1 -1
  56. package/bun-sql/mysql/driver.cjs +4 -3
  57. package/bun-sql/mysql/driver.cjs.map +1 -1
  58. package/bun-sql/mysql/driver.js +3 -2
  59. package/bun-sql/mysql/driver.js.map +1 -1
  60. package/bun-sql/mysql/session.cjs +37 -24
  61. package/bun-sql/mysql/session.cjs.map +1 -1
  62. package/bun-sql/mysql/session.d.cts +10 -4
  63. package/bun-sql/mysql/session.d.ts +12 -6
  64. package/bun-sql/mysql/session.js +38 -25
  65. package/bun-sql/mysql/session.js.map +1 -1
  66. package/bun-sql/postgres/driver.cjs +144 -20
  67. package/bun-sql/postgres/driver.cjs.map +1 -1
  68. package/bun-sql/postgres/driver.d.cts +10 -6
  69. package/bun-sql/postgres/driver.d.ts +11 -7
  70. package/bun-sql/postgres/driver.js +144 -20
  71. package/bun-sql/postgres/driver.js.map +1 -1
  72. package/bun-sql/postgres/index.cjs +1 -1
  73. package/bun-sql/postgres/index.d.cts +3 -3
  74. package/bun-sql/postgres/index.d.ts +3 -3
  75. package/bun-sql/postgres/index.js +3 -3
  76. package/bun-sql/postgres/migrator.cjs.map +1 -1
  77. package/bun-sql/postgres/migrator.d.cts +1 -1
  78. package/bun-sql/postgres/migrator.d.ts +1 -1
  79. package/bun-sql/postgres/migrator.js.map +1 -1
  80. package/bun-sql/postgres/session.cjs +17 -112
  81. package/bun-sql/postgres/session.cjs.map +1 -1
  82. package/bun-sql/postgres/session.d.cts +11 -33
  83. package/bun-sql/postgres/session.d.ts +12 -34
  84. package/bun-sql/postgres/session.js +18 -112
  85. package/bun-sql/postgres/session.js.map +1 -1
  86. package/bun-sql/session.cjs +0 -1
  87. package/bun-sql/session.d.cts +2 -2
  88. package/bun-sql/session.d.ts +2 -2
  89. package/bun-sql/session.js +2 -2
  90. package/bun-sql/sqlite/driver.cjs +4 -3
  91. package/bun-sql/sqlite/driver.cjs.map +1 -1
  92. package/bun-sql/sqlite/driver.d.ts +1 -1
  93. package/bun-sql/sqlite/driver.js +3 -2
  94. package/bun-sql/sqlite/driver.js.map +1 -1
  95. package/bun-sql/sqlite/session.cjs +18 -17
  96. package/bun-sql/sqlite/session.cjs.map +1 -1
  97. package/bun-sql/sqlite/session.d.cts +9 -6
  98. package/bun-sql/sqlite/session.d.ts +10 -7
  99. package/bun-sql/sqlite/session.js +19 -18
  100. package/bun-sql/sqlite/session.js.map +1 -1
  101. package/bun-sqlite/driver.cjs +5 -2
  102. package/bun-sqlite/driver.cjs.map +1 -1
  103. package/bun-sqlite/driver.d.ts +1 -1
  104. package/bun-sqlite/driver.js +5 -2
  105. package/bun-sqlite/driver.js.map +1 -1
  106. package/bun-sqlite/session.cjs +15 -14
  107. package/bun-sqlite/session.cjs.map +1 -1
  108. package/bun-sqlite/session.d.cts +10 -6
  109. package/bun-sqlite/session.d.ts +10 -6
  110. package/bun-sqlite/session.js +16 -15
  111. package/bun-sqlite/session.js.map +1 -1
  112. package/cache/core/cache-effect.cjs +2 -2
  113. package/cache/core/cache-effect.d.ts +1 -1
  114. package/cache/core/cache-effect.js +1 -1
  115. package/cockroach/driver.cjs +10 -4
  116. package/cockroach/driver.cjs.map +1 -1
  117. package/cockroach/driver.d.cts +1 -0
  118. package/cockroach/driver.d.ts +3 -2
  119. package/cockroach/driver.js +10 -4
  120. package/cockroach/driver.js.map +1 -1
  121. package/cockroach/session.cjs +7 -9
  122. package/cockroach/session.cjs.map +1 -1
  123. package/cockroach/session.d.cts +5 -3
  124. package/cockroach/session.d.ts +7 -5
  125. package/cockroach/session.js +8 -10
  126. package/cockroach/session.js.map +1 -1
  127. package/cockroach-core/columns/bigint.cjs +4 -4
  128. package/cockroach-core/columns/bigint.cjs.map +1 -1
  129. package/cockroach-core/columns/bigint.d.cts +2 -2
  130. package/cockroach-core/columns/bigint.d.ts +2 -2
  131. package/cockroach-core/columns/bigint.js +4 -4
  132. package/cockroach-core/columns/bigint.js.map +1 -1
  133. package/cockroach-core/columns/common.cjs +5 -5
  134. package/cockroach-core/columns/common.cjs.map +1 -1
  135. package/cockroach-core/columns/common.d.cts +2 -2
  136. package/cockroach-core/columns/common.d.ts +3 -3
  137. package/cockroach-core/columns/common.js +5 -5
  138. package/cockroach-core/columns/common.js.map +1 -1
  139. package/cockroach-core/columns/custom.cjs +4 -4
  140. package/cockroach-core/columns/custom.cjs.map +1 -1
  141. package/cockroach-core/columns/custom.d.cts +2 -2
  142. package/cockroach-core/columns/custom.d.ts +2 -2
  143. package/cockroach-core/columns/custom.js +4 -4
  144. package/cockroach-core/columns/custom.js.map +1 -1
  145. package/cockroach-core/columns/date.cjs +6 -6
  146. package/cockroach-core/columns/date.cjs.map +1 -1
  147. package/cockroach-core/columns/date.d.cts +3 -3
  148. package/cockroach-core/columns/date.d.ts +3 -3
  149. package/cockroach-core/columns/date.js +6 -6
  150. package/cockroach-core/columns/date.js.map +1 -1
  151. package/cockroach-core/columns/decimal.cjs +4 -4
  152. package/cockroach-core/columns/decimal.cjs.map +1 -1
  153. package/cockroach-core/columns/decimal.d.cts +2 -2
  154. package/cockroach-core/columns/decimal.d.ts +2 -2
  155. package/cockroach-core/columns/decimal.js +4 -4
  156. package/cockroach-core/columns/decimal.js.map +1 -1
  157. package/cockroach-core/columns/float.cjs +2 -2
  158. package/cockroach-core/columns/float.cjs.map +1 -1
  159. package/cockroach-core/columns/float.d.cts +1 -1
  160. package/cockroach-core/columns/float.d.ts +1 -1
  161. package/cockroach-core/columns/float.js +2 -2
  162. package/cockroach-core/columns/float.js.map +1 -1
  163. package/cockroach-core/columns/geometry.cjs +8 -8
  164. package/cockroach-core/columns/geometry.cjs.map +1 -1
  165. package/cockroach-core/columns/geometry.d.cts +5 -5
  166. package/cockroach-core/columns/geometry.d.ts +5 -5
  167. package/cockroach-core/columns/geometry.js +8 -8
  168. package/cockroach-core/columns/geometry.js.map +1 -1
  169. package/cockroach-core/columns/integer.cjs +2 -2
  170. package/cockroach-core/columns/integer.cjs.map +1 -1
  171. package/cockroach-core/columns/integer.d.cts +1 -1
  172. package/cockroach-core/columns/integer.d.ts +1 -1
  173. package/cockroach-core/columns/integer.js +2 -2
  174. package/cockroach-core/columns/integer.js.map +1 -1
  175. package/cockroach-core/columns/jsonb.cjs +4 -4
  176. package/cockroach-core/columns/jsonb.cjs.map +1 -1
  177. package/cockroach-core/columns/jsonb.d.cts +2 -2
  178. package/cockroach-core/columns/jsonb.d.ts +2 -2
  179. package/cockroach-core/columns/jsonb.js +4 -4
  180. package/cockroach-core/columns/jsonb.js.map +1 -1
  181. package/cockroach-core/columns/vector.cjs +4 -4
  182. package/cockroach-core/columns/vector.cjs.map +1 -1
  183. package/cockroach-core/columns/vector.d.cts +2 -2
  184. package/cockroach-core/columns/vector.d.ts +2 -2
  185. package/cockroach-core/columns/vector.js +4 -4
  186. package/cockroach-core/columns/vector.js.map +1 -1
  187. package/cockroach-core/db.cjs +1 -1
  188. package/cockroach-core/db.cjs.map +1 -1
  189. package/cockroach-core/db.d.ts +2 -2
  190. package/cockroach-core/db.js +1 -1
  191. package/cockroach-core/db.js.map +1 -1
  192. package/cockroach-core/dialect.cjs +2 -2
  193. package/cockroach-core/dialect.d.ts +2 -2
  194. package/cockroach-core/dialect.js +2 -2
  195. package/cockroach-core/index.cjs +14 -14
  196. package/cockroach-core/index.js +14 -14
  197. package/cockroach-core/query-builders/delete.cjs +1 -1
  198. package/cockroach-core/query-builders/delete.cjs.map +1 -1
  199. package/cockroach-core/query-builders/delete.d.cts +1 -1
  200. package/cockroach-core/query-builders/delete.d.ts +2 -2
  201. package/cockroach-core/query-builders/delete.js +1 -1
  202. package/cockroach-core/query-builders/delete.js.map +1 -1
  203. package/cockroach-core/query-builders/index.cjs +2 -2
  204. package/cockroach-core/query-builders/index.js +2 -2
  205. package/cockroach-core/query-builders/insert.cjs +1 -1
  206. package/cockroach-core/query-builders/insert.cjs.map +1 -1
  207. package/cockroach-core/query-builders/insert.d.ts +1 -1
  208. package/cockroach-core/query-builders/insert.js +1 -1
  209. package/cockroach-core/query-builders/insert.js.map +1 -1
  210. package/cockroach-core/query-builders/query.cjs +1 -1
  211. package/cockroach-core/query-builders/query.cjs.map +1 -1
  212. package/cockroach-core/query-builders/query.js +1 -1
  213. package/cockroach-core/query-builders/query.js.map +1 -1
  214. package/cockroach-core/query-builders/raw.cjs +0 -4
  215. package/cockroach-core/query-builders/raw.cjs.map +1 -1
  216. package/cockroach-core/query-builders/raw.js +0 -4
  217. package/cockroach-core/query-builders/raw.js.map +1 -1
  218. package/cockroach-core/query-builders/refresh-materialized-view.cjs +1 -1
  219. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +1 -1
  220. package/cockroach-core/query-builders/refresh-materialized-view.js +1 -1
  221. package/cockroach-core/query-builders/refresh-materialized-view.js.map +1 -1
  222. package/cockroach-core/query-builders/select.cjs +2 -2
  223. package/cockroach-core/query-builders/select.cjs.map +1 -1
  224. package/cockroach-core/query-builders/select.d.ts +3 -3
  225. package/cockroach-core/query-builders/select.js +2 -2
  226. package/cockroach-core/query-builders/select.js.map +1 -1
  227. package/cockroach-core/query-builders/select.types.d.ts +1 -1
  228. package/cockroach-core/query-builders/update.cjs +2 -2
  229. package/cockroach-core/query-builders/update.cjs.map +1 -1
  230. package/cockroach-core/query-builders/update.d.ts +1 -1
  231. package/cockroach-core/query-builders/update.js +2 -2
  232. package/cockroach-core/query-builders/update.js.map +1 -1
  233. package/cockroach-core/schema.cjs +1 -1
  234. package/cockroach-core/schema.js +1 -1
  235. package/cockroach-core/session.cjs +2 -2
  236. package/cockroach-core/session.cjs.map +1 -1
  237. package/cockroach-core/session.d.cts +1 -1
  238. package/cockroach-core/session.d.ts +1 -1
  239. package/cockroach-core/session.js +2 -2
  240. package/cockroach-core/session.js.map +1 -1
  241. package/cockroach-core/table.cjs +1 -1
  242. package/cockroach-core/table.cjs.map +1 -1
  243. package/cockroach-core/table.js +1 -1
  244. package/cockroach-core/table.js.map +1 -1
  245. package/cockroach-core/utils.cjs +3 -3
  246. package/cockroach-core/utils.js +3 -3
  247. package/cockroach-core/view.cjs +1 -1
  248. package/cockroach-core/view.js +1 -1
  249. package/codecs.cjs +77 -0
  250. package/codecs.cjs.map +1 -0
  251. package/codecs.d.cts +68 -0
  252. package/codecs.d.ts +68 -0
  253. package/codecs.js +74 -0
  254. package/codecs.js.map +1 -0
  255. package/column.cjs +10 -5
  256. package/column.cjs.map +1 -1
  257. package/column.d.cts +3 -3
  258. package/column.d.ts +3 -3
  259. package/column.js +10 -5
  260. package/column.js.map +1 -1
  261. package/d1/driver.cjs +3 -2
  262. package/d1/driver.cjs.map +1 -1
  263. package/d1/driver.d.ts +1 -1
  264. package/d1/driver.js +3 -2
  265. package/d1/driver.js.map +1 -1
  266. package/d1/session.cjs +17 -15
  267. package/d1/session.cjs.map +1 -1
  268. package/d1/session.d.cts +9 -6
  269. package/d1/session.d.ts +10 -7
  270. package/d1/session.js +18 -16
  271. package/d1/session.js.map +1 -1
  272. package/durable-sqlite/driver.cjs +5 -2
  273. package/durable-sqlite/driver.cjs.map +1 -1
  274. package/durable-sqlite/driver.d.ts +1 -1
  275. package/durable-sqlite/driver.js +5 -2
  276. package/durable-sqlite/driver.js.map +1 -1
  277. package/durable-sqlite/migrator.cjs +1 -1
  278. package/durable-sqlite/migrator.js +1 -1
  279. package/durable-sqlite/session.cjs +15 -14
  280. package/durable-sqlite/session.cjs.map +1 -1
  281. package/durable-sqlite/session.d.cts +10 -6
  282. package/durable-sqlite/session.d.ts +10 -6
  283. package/durable-sqlite/session.js +16 -15
  284. package/durable-sqlite/session.js.map +1 -1
  285. package/effect-core/index.cjs +1 -1
  286. package/effect-core/index.js +1 -1
  287. package/effect-postgres/driver.cjs +100 -14
  288. package/effect-postgres/driver.cjs.map +1 -1
  289. package/effect-postgres/driver.d.cts +12 -8
  290. package/effect-postgres/driver.d.ts +14 -10
  291. package/effect-postgres/driver.js +100 -14
  292. package/effect-postgres/driver.js.map +1 -1
  293. package/effect-postgres/index.cjs +1 -1
  294. package/effect-postgres/index.d.cts +3 -3
  295. package/effect-postgres/index.d.ts +3 -3
  296. package/effect-postgres/index.js +3 -3
  297. package/effect-postgres/migrator.cjs.map +1 -1
  298. package/effect-postgres/migrator.d.cts +1 -1
  299. package/effect-postgres/migrator.d.ts +2 -2
  300. package/effect-postgres/migrator.js.map +1 -1
  301. package/effect-postgres/session.cjs +12 -71
  302. package/effect-postgres/session.cjs.map +1 -1
  303. package/effect-postgres/session.d.cts +14 -31
  304. package/effect-postgres/session.d.ts +17 -34
  305. package/effect-postgres/session.js +13 -71
  306. package/effect-postgres/session.js.map +1 -1
  307. package/effect-schema/column.cjs +1 -1
  308. package/effect-schema/column.d.ts +8 -8
  309. package/effect-schema/column.js +1 -1
  310. package/effect-schema/column.types.d.ts +14 -14
  311. package/effect-schema/schema.types.internal.d.ts +7 -7
  312. package/expo-sqlite/driver.cjs +5 -2
  313. package/expo-sqlite/driver.cjs.map +1 -1
  314. package/expo-sqlite/driver.d.ts +1 -1
  315. package/expo-sqlite/driver.js +5 -2
  316. package/expo-sqlite/driver.js.map +1 -1
  317. package/expo-sqlite/session.cjs +15 -14
  318. package/expo-sqlite/session.cjs.map +1 -1
  319. package/expo-sqlite/session.d.cts +10 -6
  320. package/expo-sqlite/session.d.ts +10 -6
  321. package/expo-sqlite/session.js +16 -15
  322. package/expo-sqlite/session.js.map +1 -1
  323. package/gel/driver.cjs +5 -3
  324. package/gel/driver.cjs.map +1 -1
  325. package/gel/driver.d.cts +1 -0
  326. package/gel/driver.d.ts +5 -4
  327. package/gel/driver.js +5 -3
  328. package/gel/driver.js.map +1 -1
  329. package/gel/session.cjs +13 -13
  330. package/gel/session.cjs.map +1 -1
  331. package/gel/session.d.cts +8 -5
  332. package/gel/session.d.ts +12 -9
  333. package/gel/session.js +14 -14
  334. package/gel/session.js.map +1 -1
  335. package/gel-core/columns/bigintT.cjs +2 -2
  336. package/gel-core/columns/bigintT.cjs.map +1 -1
  337. package/gel-core/columns/bigintT.d.cts +1 -1
  338. package/gel-core/columns/bigintT.d.ts +1 -1
  339. package/gel-core/columns/bigintT.js +2 -2
  340. package/gel-core/columns/bigintT.js.map +1 -1
  341. package/gel-core/columns/common.cjs +3 -3
  342. package/gel-core/columns/common.cjs.map +1 -1
  343. package/gel-core/columns/common.d.cts +1 -1
  344. package/gel-core/columns/common.d.ts +1 -1
  345. package/gel-core/columns/common.js +3 -3
  346. package/gel-core/columns/common.js.map +1 -1
  347. package/gel-core/columns/custom.cjs +4 -4
  348. package/gel-core/columns/custom.cjs.map +1 -1
  349. package/gel-core/columns/custom.d.cts +2 -2
  350. package/gel-core/columns/custom.d.ts +2 -2
  351. package/gel-core/columns/custom.js +4 -4
  352. package/gel-core/columns/custom.js.map +1 -1
  353. package/gel-core/columns/double-precision.cjs +2 -2
  354. package/gel-core/columns/double-precision.cjs.map +1 -1
  355. package/gel-core/columns/double-precision.d.cts +1 -1
  356. package/gel-core/columns/double-precision.d.ts +1 -1
  357. package/gel-core/columns/double-precision.js +2 -2
  358. package/gel-core/columns/double-precision.js.map +1 -1
  359. package/gel-core/columns/timestamp.d.ts +1 -1
  360. package/gel-core/columns/timestamptz.cjs +2 -2
  361. package/gel-core/columns/timestamptz.cjs.map +1 -1
  362. package/gel-core/columns/timestamptz.d.cts +1 -1
  363. package/gel-core/columns/timestamptz.d.ts +1 -1
  364. package/gel-core/columns/timestamptz.js +2 -2
  365. package/gel-core/columns/timestamptz.js.map +1 -1
  366. package/gel-core/db.cjs +1 -1
  367. package/gel-core/db.cjs.map +1 -1
  368. package/gel-core/db.d.ts +3 -3
  369. package/gel-core/db.js +1 -1
  370. package/gel-core/db.js.map +1 -1
  371. package/gel-core/index.cjs +13 -13
  372. package/gel-core/index.js +13 -13
  373. package/gel-core/query-builders/_query.cjs +1 -1
  374. package/gel-core/query-builders/_query.cjs.map +1 -1
  375. package/gel-core/query-builders/_query.js +1 -1
  376. package/gel-core/query-builders/_query.js.map +1 -1
  377. package/gel-core/query-builders/delete.cjs +1 -1
  378. package/gel-core/query-builders/delete.cjs.map +1 -1
  379. package/gel-core/query-builders/delete.d.ts +2 -2
  380. package/gel-core/query-builders/delete.js +1 -1
  381. package/gel-core/query-builders/delete.js.map +1 -1
  382. package/gel-core/query-builders/index.cjs +1 -1
  383. package/gel-core/query-builders/index.js +1 -1
  384. package/gel-core/query-builders/insert.cjs +1 -1
  385. package/gel-core/query-builders/insert.cjs.map +1 -1
  386. package/gel-core/query-builders/insert.d.ts +2 -2
  387. package/gel-core/query-builders/insert.js +1 -1
  388. package/gel-core/query-builders/insert.js.map +1 -1
  389. package/gel-core/query-builders/query.cjs +13 -5
  390. package/gel-core/query-builders/query.cjs.map +1 -1
  391. package/gel-core/query-builders/query.d.ts +1 -1
  392. package/gel-core/query-builders/query.js +13 -5
  393. package/gel-core/query-builders/query.js.map +1 -1
  394. package/gel-core/query-builders/raw.cjs +0 -4
  395. package/gel-core/query-builders/raw.cjs.map +1 -1
  396. package/gel-core/query-builders/raw.js +0 -4
  397. package/gel-core/query-builders/raw.js.map +1 -1
  398. package/gel-core/query-builders/refresh-materialized-view.cjs +1 -1
  399. package/gel-core/query-builders/refresh-materialized-view.cjs.map +1 -1
  400. package/gel-core/query-builders/refresh-materialized-view.d.ts +1 -1
  401. package/gel-core/query-builders/refresh-materialized-view.js +1 -1
  402. package/gel-core/query-builders/refresh-materialized-view.js.map +1 -1
  403. package/gel-core/query-builders/select.cjs +1 -1
  404. package/gel-core/query-builders/select.cjs.map +1 -1
  405. package/gel-core/query-builders/select.d.ts +3 -3
  406. package/gel-core/query-builders/select.js +1 -1
  407. package/gel-core/query-builders/select.js.map +1 -1
  408. package/gel-core/query-builders/select.types.d.ts +1 -1
  409. package/gel-core/query-builders/update.cjs +1 -1
  410. package/gel-core/query-builders/update.cjs.map +1 -1
  411. package/gel-core/query-builders/update.d.ts +2 -2
  412. package/gel-core/query-builders/update.js +1 -1
  413. package/gel-core/query-builders/update.js.map +1 -1
  414. package/gel-core/session.cjs +2 -2
  415. package/gel-core/session.cjs.map +1 -1
  416. package/gel-core/session.d.cts +3 -3
  417. package/gel-core/session.d.ts +3 -3
  418. package/gel-core/session.js +2 -2
  419. package/gel-core/session.js.map +1 -1
  420. package/gel-core/table.cjs +1 -1
  421. package/gel-core/table.cjs.map +1 -1
  422. package/gel-core/table.js +1 -1
  423. package/gel-core/table.js.map +1 -1
  424. package/gel-core/utils.cjs +4 -4
  425. package/gel-core/utils.js +4 -4
  426. package/gel-core/view.cjs +1 -1
  427. package/gel-core/view.js +1 -1
  428. package/index.cjs +12 -6
  429. package/index.d.cts +6 -6
  430. package/index.d.ts +6 -6
  431. package/index.js +9 -9
  432. package/libsql/driver-core.cjs +3 -2
  433. package/libsql/driver-core.cjs.map +1 -1
  434. package/libsql/driver-core.d.ts +1 -1
  435. package/libsql/driver-core.js +3 -2
  436. package/libsql/driver-core.js.map +1 -1
  437. package/libsql/session.cjs +14 -15
  438. package/libsql/session.cjs.map +1 -1
  439. package/libsql/session.d.cts +9 -6
  440. package/libsql/session.d.ts +10 -7
  441. package/libsql/session.js +15 -16
  442. package/libsql/session.js.map +1 -1
  443. package/mssql-core/columns/bigint.cjs +2 -2
  444. package/mssql-core/columns/bigint.cjs.map +1 -1
  445. package/mssql-core/columns/bigint.d.cts +1 -1
  446. package/mssql-core/columns/bigint.d.ts +1 -1
  447. package/mssql-core/columns/bigint.js +2 -2
  448. package/mssql-core/columns/bigint.js.map +1 -1
  449. package/mssql-core/columns/custom.cjs +4 -4
  450. package/mssql-core/columns/custom.cjs.map +1 -1
  451. package/mssql-core/columns/custom.d.cts +2 -2
  452. package/mssql-core/columns/custom.d.ts +2 -2
  453. package/mssql-core/columns/custom.js +4 -4
  454. package/mssql-core/columns/custom.js.map +1 -1
  455. package/mssql-core/columns/date.cjs +4 -4
  456. package/mssql-core/columns/date.cjs.map +1 -1
  457. package/mssql-core/columns/date.d.cts +2 -2
  458. package/mssql-core/columns/date.d.ts +2 -2
  459. package/mssql-core/columns/date.js +4 -4
  460. package/mssql-core/columns/date.js.map +1 -1
  461. package/mssql-core/columns/datetime.cjs +2 -2
  462. package/mssql-core/columns/datetime.cjs.map +1 -1
  463. package/mssql-core/columns/datetime.d.cts +1 -1
  464. package/mssql-core/columns/datetime.d.ts +1 -1
  465. package/mssql-core/columns/datetime.js +2 -2
  466. package/mssql-core/columns/datetime.js.map +1 -1
  467. package/mssql-core/columns/datetime2.cjs +2 -2
  468. package/mssql-core/columns/datetime2.cjs.map +1 -1
  469. package/mssql-core/columns/datetime2.d.cts +1 -1
  470. package/mssql-core/columns/datetime2.d.ts +1 -1
  471. package/mssql-core/columns/datetime2.js +2 -2
  472. package/mssql-core/columns/datetime2.js.map +1 -1
  473. package/mssql-core/columns/datetimeoffset.cjs +2 -2
  474. package/mssql-core/columns/datetimeoffset.cjs.map +1 -1
  475. package/mssql-core/columns/datetimeoffset.d.cts +1 -1
  476. package/mssql-core/columns/datetimeoffset.d.ts +1 -1
  477. package/mssql-core/columns/datetimeoffset.js +2 -2
  478. package/mssql-core/columns/datetimeoffset.js.map +1 -1
  479. package/mssql-core/columns/decimal.cjs +4 -4
  480. package/mssql-core/columns/decimal.cjs.map +1 -1
  481. package/mssql-core/columns/decimal.d.cts +2 -2
  482. package/mssql-core/columns/decimal.d.ts +2 -2
  483. package/mssql-core/columns/decimal.js +4 -4
  484. package/mssql-core/columns/decimal.js.map +1 -1
  485. package/mssql-core/columns/numeric.cjs +4 -4
  486. package/mssql-core/columns/numeric.cjs.map +1 -1
  487. package/mssql-core/columns/numeric.d.cts +2 -2
  488. package/mssql-core/columns/numeric.d.ts +2 -2
  489. package/mssql-core/columns/numeric.js +4 -4
  490. package/mssql-core/columns/numeric.js.map +1 -1
  491. package/mssql-core/columns/smallint.cjs +2 -2
  492. package/mssql-core/columns/smallint.cjs.map +1 -1
  493. package/mssql-core/columns/smallint.d.cts +1 -1
  494. package/mssql-core/columns/smallint.d.ts +1 -1
  495. package/mssql-core/columns/smallint.js +2 -2
  496. package/mssql-core/columns/smallint.js.map +1 -1
  497. package/mssql-core/columns/time.cjs +2 -2
  498. package/mssql-core/columns/time.cjs.map +1 -1
  499. package/mssql-core/columns/time.d.cts +1 -1
  500. package/mssql-core/columns/time.d.ts +1 -1
  501. package/mssql-core/columns/time.js +2 -2
  502. package/mssql-core/columns/time.js.map +1 -1
  503. package/mssql-core/columns/tinyint.cjs +2 -2
  504. package/mssql-core/columns/tinyint.cjs.map +1 -1
  505. package/mssql-core/columns/tinyint.d.cts +1 -1
  506. package/mssql-core/columns/tinyint.d.ts +1 -1
  507. package/mssql-core/columns/tinyint.js +2 -2
  508. package/mssql-core/columns/tinyint.js.map +1 -1
  509. package/mssql-core/columns/varchar.cjs +4 -4
  510. package/mssql-core/columns/varchar.cjs.map +1 -1
  511. package/mssql-core/columns/varchar.d.cts +2 -2
  512. package/mssql-core/columns/varchar.d.ts +2 -2
  513. package/mssql-core/columns/varchar.js +4 -4
  514. package/mssql-core/columns/varchar.js.map +1 -1
  515. package/mssql-core/dialect.cjs +2 -2
  516. package/mssql-core/dialect.d.ts +1 -1
  517. package/mssql-core/dialect.js +2 -2
  518. package/mssql-core/index.cjs +13 -13
  519. package/mssql-core/index.js +13 -13
  520. package/mssql-core/query-builders/delete.d.ts +1 -1
  521. package/mssql-core/query-builders/insert.d.ts +1 -1
  522. package/mssql-core/query-builders/select.d.ts +1 -1
  523. package/mssql-core/query-builders/update.d.ts +2 -2
  524. package/mssql-core/table.cjs +1 -1
  525. package/mssql-core/table.cjs.map +1 -1
  526. package/mssql-core/table.js +1 -1
  527. package/mssql-core/table.js.map +1 -1
  528. package/mssql-core/utils.cjs +3 -3
  529. package/mssql-core/utils.js +3 -3
  530. package/mssql-core/view.cjs +2 -2
  531. package/mssql-core/view.js +2 -2
  532. package/mysql-core/columns/bigint.cjs +8 -8
  533. package/mysql-core/columns/bigint.cjs.map +1 -1
  534. package/mysql-core/columns/bigint.d.cts +4 -4
  535. package/mysql-core/columns/bigint.d.ts +4 -4
  536. package/mysql-core/columns/bigint.js +8 -8
  537. package/mysql-core/columns/bigint.js.map +1 -1
  538. package/mysql-core/columns/binary.cjs +2 -2
  539. package/mysql-core/columns/binary.cjs.map +1 -1
  540. package/mysql-core/columns/binary.d.cts +1 -1
  541. package/mysql-core/columns/binary.d.ts +1 -1
  542. package/mysql-core/columns/binary.js +2 -2
  543. package/mysql-core/columns/binary.js.map +1 -1
  544. package/mysql-core/columns/blob.cjs +4 -4
  545. package/mysql-core/columns/blob.cjs.map +1 -1
  546. package/mysql-core/columns/blob.d.cts +2 -2
  547. package/mysql-core/columns/blob.d.ts +2 -2
  548. package/mysql-core/columns/blob.js +4 -4
  549. package/mysql-core/columns/blob.js.map +1 -1
  550. package/mysql-core/columns/boolean.cjs +2 -2
  551. package/mysql-core/columns/boolean.cjs.map +1 -1
  552. package/mysql-core/columns/boolean.d.cts +1 -1
  553. package/mysql-core/columns/boolean.d.ts +1 -1
  554. package/mysql-core/columns/boolean.js +2 -2
  555. package/mysql-core/columns/boolean.js.map +1 -1
  556. package/mysql-core/columns/custom.cjs +4 -4
  557. package/mysql-core/columns/custom.cjs.map +1 -1
  558. package/mysql-core/columns/custom.d.cts +2 -2
  559. package/mysql-core/columns/custom.d.ts +2 -2
  560. package/mysql-core/columns/custom.js +4 -4
  561. package/mysql-core/columns/custom.js.map +1 -1
  562. package/mysql-core/columns/date.cjs +4 -4
  563. package/mysql-core/columns/date.cjs.map +1 -1
  564. package/mysql-core/columns/date.d.cts +2 -2
  565. package/mysql-core/columns/date.d.ts +2 -2
  566. package/mysql-core/columns/date.js +4 -4
  567. package/mysql-core/columns/date.js.map +1 -1
  568. package/mysql-core/columns/datetime.cjs +8 -8
  569. package/mysql-core/columns/datetime.cjs.map +1 -1
  570. package/mysql-core/columns/datetime.d.cts +4 -4
  571. package/mysql-core/columns/datetime.d.ts +4 -4
  572. package/mysql-core/columns/datetime.js +8 -8
  573. package/mysql-core/columns/datetime.js.map +1 -1
  574. package/mysql-core/columns/decimal.cjs +4 -4
  575. package/mysql-core/columns/decimal.cjs.map +1 -1
  576. package/mysql-core/columns/decimal.d.cts +2 -2
  577. package/mysql-core/columns/decimal.d.ts +2 -2
  578. package/mysql-core/columns/decimal.js +4 -4
  579. package/mysql-core/columns/decimal.js.map +1 -1
  580. package/mysql-core/columns/float.cjs +2 -2
  581. package/mysql-core/columns/float.cjs.map +1 -1
  582. package/mysql-core/columns/float.d.cts +1 -1
  583. package/mysql-core/columns/float.d.ts +1 -1
  584. package/mysql-core/columns/float.js +2 -2
  585. package/mysql-core/columns/float.js.map +1 -1
  586. package/mysql-core/columns/int.cjs +2 -2
  587. package/mysql-core/columns/int.cjs.map +1 -1
  588. package/mysql-core/columns/int.d.cts +1 -1
  589. package/mysql-core/columns/int.d.ts +1 -1
  590. package/mysql-core/columns/int.js +2 -2
  591. package/mysql-core/columns/int.js.map +1 -1
  592. package/mysql-core/columns/json.cjs +2 -2
  593. package/mysql-core/columns/json.cjs.map +1 -1
  594. package/mysql-core/columns/json.d.cts +1 -1
  595. package/mysql-core/columns/json.d.ts +1 -1
  596. package/mysql-core/columns/json.js +2 -2
  597. package/mysql-core/columns/json.js.map +1 -1
  598. package/mysql-core/columns/mediumint.cjs +2 -2
  599. package/mysql-core/columns/mediumint.cjs.map +1 -1
  600. package/mysql-core/columns/mediumint.d.cts +1 -1
  601. package/mysql-core/columns/mediumint.d.ts +1 -1
  602. package/mysql-core/columns/mediumint.js +2 -2
  603. package/mysql-core/columns/mediumint.js.map +1 -1
  604. package/mysql-core/columns/serial.cjs +2 -2
  605. package/mysql-core/columns/serial.cjs.map +1 -1
  606. package/mysql-core/columns/serial.d.cts +1 -1
  607. package/mysql-core/columns/serial.d.ts +1 -1
  608. package/mysql-core/columns/serial.js +2 -2
  609. package/mysql-core/columns/serial.js.map +1 -1
  610. package/mysql-core/columns/smallint.cjs +2 -2
  611. package/mysql-core/columns/smallint.cjs.map +1 -1
  612. package/mysql-core/columns/smallint.d.cts +1 -1
  613. package/mysql-core/columns/smallint.d.ts +1 -1
  614. package/mysql-core/columns/smallint.js +2 -2
  615. package/mysql-core/columns/smallint.js.map +1 -1
  616. package/mysql-core/columns/time.cjs +2 -2
  617. package/mysql-core/columns/time.cjs.map +1 -1
  618. package/mysql-core/columns/time.d.cts +1 -1
  619. package/mysql-core/columns/time.d.ts +1 -1
  620. package/mysql-core/columns/time.js +2 -2
  621. package/mysql-core/columns/time.js.map +1 -1
  622. package/mysql-core/columns/timestamp.cjs +8 -8
  623. package/mysql-core/columns/timestamp.cjs.map +1 -1
  624. package/mysql-core/columns/timestamp.d.cts +4 -4
  625. package/mysql-core/columns/timestamp.d.ts +4 -4
  626. package/mysql-core/columns/timestamp.js +8 -8
  627. package/mysql-core/columns/timestamp.js.map +1 -1
  628. package/mysql-core/columns/tinyint.cjs +2 -2
  629. package/mysql-core/columns/tinyint.cjs.map +1 -1
  630. package/mysql-core/columns/tinyint.d.cts +1 -1
  631. package/mysql-core/columns/tinyint.d.ts +1 -1
  632. package/mysql-core/columns/tinyint.js +2 -2
  633. package/mysql-core/columns/tinyint.js.map +1 -1
  634. package/mysql-core/columns/varbinary.cjs +2 -2
  635. package/mysql-core/columns/varbinary.cjs.map +1 -1
  636. package/mysql-core/columns/varbinary.d.cts +1 -1
  637. package/mysql-core/columns/varbinary.d.ts +1 -1
  638. package/mysql-core/columns/varbinary.js +2 -2
  639. package/mysql-core/columns/varbinary.js.map +1 -1
  640. package/mysql-core/columns/year.cjs +2 -2
  641. package/mysql-core/columns/year.cjs.map +1 -1
  642. package/mysql-core/columns/year.d.cts +1 -1
  643. package/mysql-core/columns/year.d.ts +1 -1
  644. package/mysql-core/columns/year.js +2 -2
  645. package/mysql-core/columns/year.js.map +1 -1
  646. package/mysql-core/db.d.ts +2 -2
  647. package/mysql-core/dialect.cjs +2 -2
  648. package/mysql-core/dialect.d.ts +1 -1
  649. package/mysql-core/dialect.js +2 -2
  650. package/mysql-core/index.cjs +1 -1
  651. package/mysql-core/index.js +1 -1
  652. package/mysql-core/query-builders/query.cjs +13 -5
  653. package/mysql-core/query-builders/query.cjs.map +1 -1
  654. package/mysql-core/query-builders/query.d.ts +1 -1
  655. package/mysql-core/query-builders/query.js +13 -5
  656. package/mysql-core/query-builders/query.js.map +1 -1
  657. package/mysql-core/session.cjs +1 -2
  658. package/mysql-core/session.cjs.map +1 -1
  659. package/mysql-core/session.d.cts +3 -4
  660. package/mysql-core/session.d.ts +3 -4
  661. package/mysql-core/session.js +1 -2
  662. package/mysql-core/session.js.map +1 -1
  663. package/mysql-core/table.cjs +1 -1
  664. package/mysql-core/table.cjs.map +1 -1
  665. package/mysql-core/table.js +1 -1
  666. package/mysql-core/table.js.map +1 -1
  667. package/mysql-proxy/driver.cjs +5 -2
  668. package/mysql-proxy/driver.cjs.map +1 -1
  669. package/mysql-proxy/driver.js +5 -2
  670. package/mysql-proxy/driver.js.map +1 -1
  671. package/mysql-proxy/session.cjs +26 -19
  672. package/mysql-proxy/session.cjs.map +1 -1
  673. package/mysql-proxy/session.d.cts +11 -4
  674. package/mysql-proxy/session.d.ts +13 -6
  675. package/mysql-proxy/session.js +27 -20
  676. package/mysql-proxy/session.js.map +1 -1
  677. package/mysql2/driver.cjs +3 -2
  678. package/mysql2/driver.cjs.map +1 -1
  679. package/mysql2/driver.d.cts +1 -0
  680. package/mysql2/driver.d.ts +4 -3
  681. package/mysql2/driver.js +3 -2
  682. package/mysql2/driver.js.map +1 -1
  683. package/mysql2/session.cjs +49 -39
  684. package/mysql2/session.cjs.map +1 -1
  685. package/mysql2/session.d.cts +11 -4
  686. package/mysql2/session.d.ts +13 -6
  687. package/mysql2/session.js +50 -40
  688. package/mysql2/session.js.map +1 -1
  689. package/neon-http/driver.cjs +34 -65
  690. package/neon-http/driver.cjs.map +1 -1
  691. package/neon-http/driver.d.cts +15 -19
  692. package/neon-http/driver.d.ts +16 -20
  693. package/neon-http/driver.js +34 -64
  694. package/neon-http/driver.js.map +1 -1
  695. package/neon-http/index.cjs +2 -4
  696. package/neon-http/index.d.cts +3 -3
  697. package/neon-http/index.d.ts +3 -3
  698. package/neon-http/index.js +3 -3
  699. package/neon-http/migrator.cjs +1 -1
  700. package/neon-http/migrator.cjs.map +1 -1
  701. package/neon-http/migrator.d.cts +1 -1
  702. package/neon-http/migrator.d.ts +1 -1
  703. package/neon-http/migrator.js +1 -1
  704. package/neon-http/migrator.js.map +1 -1
  705. package/neon-http/session.cjs +28 -117
  706. package/neon-http/session.cjs.map +1 -1
  707. package/neon-http/session.d.cts +10 -38
  708. package/neon-http/session.d.ts +12 -40
  709. package/neon-http/session.js +30 -117
  710. package/neon-http/session.js.map +1 -1
  711. package/neon-serverless/driver.cjs +14 -32
  712. package/neon-serverless/driver.cjs.map +1 -1
  713. package/neon-serverless/driver.d.cts +12 -17
  714. package/neon-serverless/driver.d.ts +13 -18
  715. package/neon-serverless/driver.js +14 -31
  716. package/neon-serverless/driver.js.map +1 -1
  717. package/neon-serverless/index.cjs +2 -3
  718. package/neon-serverless/index.d.cts +3 -3
  719. package/neon-serverless/index.d.ts +3 -3
  720. package/neon-serverless/index.js +3 -3
  721. package/neon-serverless/migrator.cjs.map +1 -1
  722. package/neon-serverless/migrator.d.cts +1 -1
  723. package/neon-serverless/migrator.d.ts +1 -1
  724. package/neon-serverless/migrator.js.map +1 -1
  725. package/neon-serverless/session.cjs +32 -108
  726. package/neon-serverless/session.cjs.map +1 -1
  727. package/neon-serverless/session.d.cts +9 -32
  728. package/neon-serverless/session.d.ts +10 -33
  729. package/neon-serverless/session.js +34 -109
  730. package/neon-serverless/session.js.map +1 -1
  731. package/netlify-db/driver.cjs +36 -43
  732. package/netlify-db/driver.cjs.map +1 -1
  733. package/netlify-db/driver.d.cts +29 -29
  734. package/netlify-db/driver.d.ts +31 -31
  735. package/netlify-db/driver.js +35 -42
  736. package/netlify-db/driver.js.map +1 -1
  737. package/netlify-db/index.cjs +3 -2
  738. package/netlify-db/index.d.cts +3 -3
  739. package/netlify-db/index.d.ts +3 -3
  740. package/netlify-db/index.js +2 -2
  741. package/netlify-db/migrator.cjs.map +1 -1
  742. package/netlify-db/migrator.d.cts +1 -1
  743. package/netlify-db/migrator.d.ts +1 -1
  744. package/netlify-db/migrator.js.map +1 -1
  745. package/netlify-db/session.cjs +61 -39
  746. package/netlify-db/session.cjs.map +1 -1
  747. package/netlify-db/session.d.cts +22 -23
  748. package/netlify-db/session.d.ts +24 -25
  749. package/netlify-db/session.js +63 -41
  750. package/netlify-db/session.js.map +1 -1
  751. package/node-mssql/driver.cjs +9 -3
  752. package/node-mssql/driver.cjs.map +1 -1
  753. package/node-mssql/driver.d.cts +1 -0
  754. package/node-mssql/driver.d.ts +3 -2
  755. package/node-mssql/driver.js +9 -3
  756. package/node-mssql/driver.js.map +1 -1
  757. package/node-mssql/session.cjs +6 -4
  758. package/node-mssql/session.cjs.map +1 -1
  759. package/node-mssql/session.d.cts +4 -1
  760. package/node-mssql/session.d.ts +6 -3
  761. package/node-mssql/session.js +7 -5
  762. package/node-mssql/session.js.map +1 -1
  763. package/node-postgres/driver.cjs +15 -18
  764. package/node-postgres/driver.cjs.map +1 -1
  765. package/node-postgres/driver.d.cts +11 -6
  766. package/node-postgres/driver.d.ts +12 -7
  767. package/node-postgres/driver.js +15 -18
  768. package/node-postgres/driver.js.map +1 -1
  769. package/node-postgres/index.cjs +2 -2
  770. package/node-postgres/index.d.cts +3 -3
  771. package/node-postgres/index.d.ts +3 -3
  772. package/node-postgres/index.js +3 -3
  773. package/node-postgres/migrator.cjs.map +1 -1
  774. package/node-postgres/migrator.d.cts +1 -1
  775. package/node-postgres/migrator.d.ts +1 -1
  776. package/node-postgres/migrator.js.map +1 -1
  777. package/node-postgres/session.cjs +33 -126
  778. package/node-postgres/session.cjs.map +1 -1
  779. package/node-postgres/session.d.cts +10 -30
  780. package/node-postgres/session.d.ts +11 -31
  781. package/node-postgres/session.js +35 -127
  782. package/node-postgres/session.js.map +1 -1
  783. package/node-sqlite/driver.cjs +1 -1
  784. package/node-sqlite/driver.d.ts +1 -1
  785. package/node-sqlite/driver.js +1 -1
  786. package/node-sqlite/session.cjs +4 -9
  787. package/node-sqlite/session.cjs.map +1 -1
  788. package/node-sqlite/session.d.cts +3 -4
  789. package/node-sqlite/session.d.ts +4 -5
  790. package/node-sqlite/session.js +4 -9
  791. package/node-sqlite/session.js.map +1 -1
  792. package/op-sqlite/driver.cjs +3 -2
  793. package/op-sqlite/driver.cjs.map +1 -1
  794. package/op-sqlite/driver.d.ts +1 -1
  795. package/op-sqlite/driver.js +3 -2
  796. package/op-sqlite/driver.js.map +1 -1
  797. package/op-sqlite/session.cjs +18 -16
  798. package/op-sqlite/session.cjs.map +1 -1
  799. package/op-sqlite/session.d.cts +10 -6
  800. package/op-sqlite/session.d.ts +11 -7
  801. package/op-sqlite/session.js +19 -17
  802. package/op-sqlite/session.js.map +1 -1
  803. package/operations.d.cts +3 -0
  804. package/operations.d.ts +3 -0
  805. package/package.json +4727 -4715
  806. package/pg-core/{utils/array.cjs → array.cjs} +1 -1
  807. package/pg-core/array.cjs.map +1 -0
  808. package/pg-core/{utils/array.d.cts → array.d.cts} +1 -1
  809. package/pg-core/{utils/array.d.ts → array.d.ts} +1 -1
  810. package/pg-core/{utils/array.js → array.js} +1 -1
  811. package/pg-core/array.js.map +1 -0
  812. package/pg-core/async/count.cjs +2 -9
  813. package/pg-core/async/count.cjs.map +1 -1
  814. package/pg-core/async/count.js +2 -9
  815. package/pg-core/async/count.js.map +1 -1
  816. package/pg-core/async/db.cjs +10 -27
  817. package/pg-core/async/db.cjs.map +1 -1
  818. package/pg-core/async/db.d.cts +5 -13
  819. package/pg-core/async/db.d.ts +8 -16
  820. package/pg-core/async/db.js +10 -27
  821. package/pg-core/async/db.js.map +1 -1
  822. package/pg-core/async/delete.cjs +8 -13
  823. package/pg-core/async/delete.cjs.map +1 -1
  824. package/pg-core/async/delete.js +8 -13
  825. package/pg-core/async/delete.js.map +1 -1
  826. package/pg-core/async/insert.cjs +7 -12
  827. package/pg-core/async/insert.cjs.map +1 -1
  828. package/pg-core/async/insert.js +7 -12
  829. package/pg-core/async/insert.js.map +1 -1
  830. package/pg-core/async/query.cjs +8 -14
  831. package/pg-core/async/query.cjs.map +1 -1
  832. package/pg-core/async/query.js +8 -14
  833. package/pg-core/async/query.js.map +1 -1
  834. package/pg-core/async/refresh-materialized-view.cjs +1 -9
  835. package/pg-core/async/refresh-materialized-view.cjs.map +1 -1
  836. package/pg-core/async/refresh-materialized-view.js +1 -9
  837. package/pg-core/async/refresh-materialized-view.js.map +1 -1
  838. package/pg-core/async/select.cjs +4 -13
  839. package/pg-core/async/select.cjs.map +1 -1
  840. package/pg-core/async/select.js +4 -13
  841. package/pg-core/async/select.js.map +1 -1
  842. package/pg-core/async/session.cjs +46 -22
  843. package/pg-core/async/session.cjs.map +1 -1
  844. package/pg-core/async/session.d.cts +25 -31
  845. package/pg-core/async/session.d.ts +26 -32
  846. package/pg-core/async/session.js +47 -23
  847. package/pg-core/async/session.js.map +1 -1
  848. package/pg-core/async/update.cjs +11 -15
  849. package/pg-core/async/update.cjs.map +1 -1
  850. package/pg-core/async/update.js +11 -15
  851. package/pg-core/async/update.js.map +1 -1
  852. package/pg-core/codecs.cjs +156 -0
  853. package/pg-core/codecs.cjs.map +1 -0
  854. package/pg-core/codecs.d.cts +27 -0
  855. package/pg-core/codecs.d.ts +27 -0
  856. package/pg-core/codecs.js +148 -0
  857. package/pg-core/codecs.js.map +1 -0
  858. package/pg-core/columns/bigint.cjs +10 -9
  859. package/pg-core/columns/bigint.cjs.map +1 -1
  860. package/pg-core/columns/bigint.d.cts +2 -3
  861. package/pg-core/columns/bigint.d.ts +2 -3
  862. package/pg-core/columns/bigint.js +10 -9
  863. package/pg-core/columns/bigint.js.map +1 -1
  864. package/pg-core/columns/bigserial.cjs +6 -6
  865. package/pg-core/columns/bigserial.cjs.map +1 -1
  866. package/pg-core/columns/bigserial.d.cts +1 -2
  867. package/pg-core/columns/bigserial.d.ts +1 -2
  868. package/pg-core/columns/bigserial.js +6 -6
  869. package/pg-core/columns/bigserial.js.map +1 -1
  870. package/pg-core/columns/boolean.cjs +2 -0
  871. package/pg-core/columns/boolean.cjs.map +1 -1
  872. package/pg-core/columns/boolean.js +2 -0
  873. package/pg-core/columns/boolean.js.map +1 -1
  874. package/pg-core/columns/bytea.cjs +2 -8
  875. package/pg-core/columns/bytea.cjs.map +1 -1
  876. package/pg-core/columns/bytea.d.cts +0 -1
  877. package/pg-core/columns/bytea.d.ts +0 -1
  878. package/pg-core/columns/bytea.js +2 -8
  879. package/pg-core/columns/bytea.js.map +1 -1
  880. package/pg-core/columns/char.cjs +2 -0
  881. package/pg-core/columns/char.cjs.map +1 -1
  882. package/pg-core/columns/char.js +2 -0
  883. package/pg-core/columns/char.js.map +1 -1
  884. package/pg-core/columns/cidr.cjs +2 -0
  885. package/pg-core/columns/cidr.cjs.map +1 -1
  886. package/pg-core/columns/cidr.js +2 -0
  887. package/pg-core/columns/cidr.js.map +1 -1
  888. package/pg-core/columns/common.cjs +11 -9
  889. package/pg-core/columns/common.cjs.map +1 -1
  890. package/pg-core/columns/common.d.cts +34 -39
  891. package/pg-core/columns/common.d.ts +34 -39
  892. package/pg-core/columns/common.js +11 -9
  893. package/pg-core/columns/common.js.map +1 -1
  894. package/pg-core/columns/custom.cjs +16 -46
  895. package/pg-core/columns/custom.cjs.map +1 -1
  896. package/pg-core/columns/custom.d.cts +17 -8
  897. package/pg-core/columns/custom.d.ts +17 -8
  898. package/pg-core/columns/custom.js +16 -46
  899. package/pg-core/columns/custom.js.map +1 -1
  900. package/pg-core/columns/date.cjs +11 -12
  901. package/pg-core/columns/date.cjs.map +1 -1
  902. package/pg-core/columns/date.d.cts +3 -4
  903. package/pg-core/columns/date.d.ts +3 -4
  904. package/pg-core/columns/date.js +11 -12
  905. package/pg-core/columns/date.js.map +1 -1
  906. package/pg-core/columns/double-precision.cjs +2 -4
  907. package/pg-core/columns/double-precision.cjs.map +1 -1
  908. package/pg-core/columns/double-precision.d.cts +0 -1
  909. package/pg-core/columns/double-precision.d.ts +0 -1
  910. package/pg-core/columns/double-precision.js +2 -4
  911. package/pg-core/columns/double-precision.js.map +1 -1
  912. package/pg-core/columns/enum.cjs +4 -0
  913. package/pg-core/columns/enum.cjs.map +1 -1
  914. package/pg-core/columns/enum.js +4 -0
  915. package/pg-core/columns/enum.js.map +1 -1
  916. package/pg-core/columns/index.d.cts +2 -2
  917. package/pg-core/columns/index.d.ts +2 -2
  918. package/pg-core/columns/inet.cjs +2 -0
  919. package/pg-core/columns/inet.cjs.map +1 -1
  920. package/pg-core/columns/inet.js +2 -0
  921. package/pg-core/columns/inet.js.map +1 -1
  922. package/pg-core/columns/integer.cjs +2 -4
  923. package/pg-core/columns/integer.cjs.map +1 -1
  924. package/pg-core/columns/integer.d.cts +0 -1
  925. package/pg-core/columns/integer.d.ts +0 -1
  926. package/pg-core/columns/integer.js +2 -4
  927. package/pg-core/columns/integer.js.map +1 -1
  928. package/pg-core/columns/interval.cjs +2 -0
  929. package/pg-core/columns/interval.cjs.map +1 -1
  930. package/pg-core/columns/interval.js +2 -0
  931. package/pg-core/columns/interval.js.map +1 -1
  932. package/pg-core/columns/json.cjs +2 -11
  933. package/pg-core/columns/json.cjs.map +1 -1
  934. package/pg-core/columns/json.d.cts +0 -2
  935. package/pg-core/columns/json.d.ts +0 -2
  936. package/pg-core/columns/json.js +2 -11
  937. package/pg-core/columns/json.js.map +1 -1
  938. package/pg-core/columns/jsonb.cjs +2 -11
  939. package/pg-core/columns/jsonb.cjs.map +1 -1
  940. package/pg-core/columns/jsonb.d.cts +0 -2
  941. package/pg-core/columns/jsonb.d.ts +0 -2
  942. package/pg-core/columns/jsonb.js +2 -11
  943. package/pg-core/columns/jsonb.js.map +1 -1
  944. package/pg-core/columns/line.cjs +12 -8
  945. package/pg-core/columns/line.cjs.map +1 -1
  946. package/pg-core/columns/line.d.cts +5 -5
  947. package/pg-core/columns/line.d.ts +5 -5
  948. package/pg-core/columns/line.js +12 -8
  949. package/pg-core/columns/line.js.map +1 -1
  950. package/pg-core/columns/macaddr.cjs +2 -0
  951. package/pg-core/columns/macaddr.cjs.map +1 -1
  952. package/pg-core/columns/macaddr.js +2 -0
  953. package/pg-core/columns/macaddr.js.map +1 -1
  954. package/pg-core/columns/macaddr8.cjs +2 -0
  955. package/pg-core/columns/macaddr8.cjs.map +1 -1
  956. package/pg-core/columns/macaddr8.js +2 -0
  957. package/pg-core/columns/macaddr8.js.map +1 -1
  958. package/pg-core/columns/numeric.cjs +12 -15
  959. package/pg-core/columns/numeric.cjs.map +1 -1
  960. package/pg-core/columns/numeric.d.cts +4 -5
  961. package/pg-core/columns/numeric.d.ts +4 -5
  962. package/pg-core/columns/numeric.js +12 -15
  963. package/pg-core/columns/numeric.js.map +1 -1
  964. package/pg-core/columns/point.cjs +19 -21
  965. package/pg-core/columns/point.cjs.map +1 -1
  966. package/pg-core/columns/point.d.cts +5 -11
  967. package/pg-core/columns/point.d.ts +5 -11
  968. package/pg-core/columns/point.js +19 -21
  969. package/pg-core/columns/point.js.map +1 -1
  970. package/pg-core/columns/postgis_extension/geometry.cjs +12 -9
  971. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  972. package/pg-core/columns/postgis_extension/geometry.d.cts +5 -5
  973. package/pg-core/columns/postgis_extension/geometry.d.ts +5 -5
  974. package/pg-core/columns/postgis_extension/geometry.js +12 -9
  975. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  976. package/pg-core/columns/real.cjs +2 -4
  977. package/pg-core/columns/real.cjs.map +1 -1
  978. package/pg-core/columns/real.d.cts +0 -1
  979. package/pg-core/columns/real.d.ts +0 -1
  980. package/pg-core/columns/real.js +2 -4
  981. package/pg-core/columns/real.js.map +1 -1
  982. package/pg-core/columns/serial.cjs +2 -0
  983. package/pg-core/columns/serial.cjs.map +1 -1
  984. package/pg-core/columns/serial.js +2 -0
  985. package/pg-core/columns/serial.js.map +1 -1
  986. package/pg-core/columns/smallint.cjs +2 -4
  987. package/pg-core/columns/smallint.cjs.map +1 -1
  988. package/pg-core/columns/smallint.d.cts +0 -1
  989. package/pg-core/columns/smallint.d.ts +0 -1
  990. package/pg-core/columns/smallint.js +2 -4
  991. package/pg-core/columns/smallint.js.map +1 -1
  992. package/pg-core/columns/smallserial.cjs +2 -0
  993. package/pg-core/columns/smallserial.cjs.map +1 -1
  994. package/pg-core/columns/smallserial.js +2 -0
  995. package/pg-core/columns/smallserial.js.map +1 -1
  996. package/pg-core/columns/text.cjs +2 -0
  997. package/pg-core/columns/text.cjs.map +1 -1
  998. package/pg-core/columns/text.js +2 -0
  999. package/pg-core/columns/text.js.map +1 -1
  1000. package/pg-core/columns/time.cjs +2 -0
  1001. package/pg-core/columns/time.cjs.map +1 -1
  1002. package/pg-core/columns/time.js +2 -0
  1003. package/pg-core/columns/time.js.map +1 -1
  1004. package/pg-core/columns/timestamp.cjs +13 -14
  1005. package/pg-core/columns/timestamp.cjs.map +1 -1
  1006. package/pg-core/columns/timestamp.d.cts +3 -4
  1007. package/pg-core/columns/timestamp.d.ts +3 -4
  1008. package/pg-core/columns/timestamp.js +13 -14
  1009. package/pg-core/columns/timestamp.js.map +1 -1
  1010. package/pg-core/columns/uuid.cjs +2 -0
  1011. package/pg-core/columns/uuid.cjs.map +1 -1
  1012. package/pg-core/columns/uuid.js +2 -0
  1013. package/pg-core/columns/uuid.js.map +1 -1
  1014. package/pg-core/columns/varchar.cjs +2 -0
  1015. package/pg-core/columns/varchar.cjs.map +1 -1
  1016. package/pg-core/columns/varchar.js +2 -0
  1017. package/pg-core/columns/varchar.js.map +1 -1
  1018. package/pg-core/columns/vector_extension/bit.cjs +2 -0
  1019. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  1020. package/pg-core/columns/vector_extension/bit.js +2 -0
  1021. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  1022. package/pg-core/columns/vector_extension/halfvec.cjs +6 -4
  1023. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  1024. package/pg-core/columns/vector_extension/halfvec.d.cts +2 -2
  1025. package/pg-core/columns/vector_extension/halfvec.d.ts +2 -2
  1026. package/pg-core/columns/vector_extension/halfvec.js +6 -4
  1027. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  1028. package/pg-core/columns/vector_extension/sparsevec.cjs +2 -0
  1029. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  1030. package/pg-core/columns/vector_extension/sparsevec.js +2 -0
  1031. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  1032. package/pg-core/columns/vector_extension/vector.cjs +6 -4
  1033. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  1034. package/pg-core/columns/vector_extension/vector.d.cts +2 -2
  1035. package/pg-core/columns/vector_extension/vector.d.ts +2 -2
  1036. package/pg-core/columns/vector_extension/vector.js +6 -4
  1037. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  1038. package/pg-core/dialect.cjs +52 -217
  1039. package/pg-core/dialect.cjs.map +1 -1
  1040. package/pg-core/dialect.d.cts +19 -30
  1041. package/pg-core/dialect.d.ts +20 -31
  1042. package/pg-core/dialect.js +57 -221
  1043. package/pg-core/dialect.js.map +1 -1
  1044. package/pg-core/effect/count.cjs +1 -1
  1045. package/pg-core/effect/count.cjs.map +1 -1
  1046. package/pg-core/effect/count.d.cts +2 -2
  1047. package/pg-core/effect/count.d.ts +2 -2
  1048. package/pg-core/effect/count.js +1 -1
  1049. package/pg-core/effect/count.js.map +1 -1
  1050. package/pg-core/effect/db.cjs +14 -20
  1051. package/pg-core/effect/db.cjs.map +1 -1
  1052. package/pg-core/effect/db.d.cts +7 -11
  1053. package/pg-core/effect/db.d.ts +9 -13
  1054. package/pg-core/effect/db.js +14 -20
  1055. package/pg-core/effect/db.js.map +1 -1
  1056. package/pg-core/effect/delete.cjs +8 -6
  1057. package/pg-core/effect/delete.cjs.map +1 -1
  1058. package/pg-core/effect/delete.d.cts +1 -1
  1059. package/pg-core/effect/delete.d.ts +1 -1
  1060. package/pg-core/effect/delete.js +8 -6
  1061. package/pg-core/effect/delete.js.map +1 -1
  1062. package/pg-core/effect/index.cjs +3 -3
  1063. package/pg-core/effect/index.js +3 -3
  1064. package/pg-core/effect/insert.cjs +7 -5
  1065. package/pg-core/effect/insert.cjs.map +1 -1
  1066. package/pg-core/effect/insert.d.cts +1 -1
  1067. package/pg-core/effect/insert.d.ts +1 -1
  1068. package/pg-core/effect/insert.js +7 -5
  1069. package/pg-core/effect/insert.js.map +1 -1
  1070. package/pg-core/effect/query.cjs +7 -6
  1071. package/pg-core/effect/query.cjs.map +1 -1
  1072. package/pg-core/effect/query.d.cts +1 -1
  1073. package/pg-core/effect/query.d.ts +1 -1
  1074. package/pg-core/effect/query.js +7 -6
  1075. package/pg-core/effect/query.js.map +1 -1
  1076. package/pg-core/effect/refresh-materialized-view.cjs +1 -2
  1077. package/pg-core/effect/refresh-materialized-view.cjs.map +1 -1
  1078. package/pg-core/effect/refresh-materialized-view.d.cts +1 -1
  1079. package/pg-core/effect/refresh-materialized-view.d.ts +1 -1
  1080. package/pg-core/effect/refresh-materialized-view.js +1 -2
  1081. package/pg-core/effect/refresh-materialized-view.js.map +1 -1
  1082. package/pg-core/effect/select.cjs +3 -5
  1083. package/pg-core/effect/select.cjs.map +1 -1
  1084. package/pg-core/effect/select.d.cts +1 -1
  1085. package/pg-core/effect/select.d.ts +1 -1
  1086. package/pg-core/effect/select.js +3 -5
  1087. package/pg-core/effect/select.js.map +1 -1
  1088. package/pg-core/effect/session.cjs +30 -19
  1089. package/pg-core/effect/session.cjs.map +1 -1
  1090. package/pg-core/effect/session.d.cts +24 -28
  1091. package/pg-core/effect/session.d.ts +25 -29
  1092. package/pg-core/effect/session.js +31 -20
  1093. package/pg-core/effect/session.js.map +1 -1
  1094. package/pg-core/effect/update.cjs +8 -8
  1095. package/pg-core/effect/update.cjs.map +1 -1
  1096. package/pg-core/effect/update.d.cts +1 -1
  1097. package/pg-core/effect/update.d.ts +1 -1
  1098. package/pg-core/effect/update.js +8 -8
  1099. package/pg-core/effect/update.js.map +1 -1
  1100. package/pg-core/index.cjs +16 -16
  1101. package/pg-core/index.d.cts +4 -4
  1102. package/pg-core/index.d.ts +4 -4
  1103. package/pg-core/index.js +13 -13
  1104. package/pg-core/query-builders/delete.cjs +1 -1
  1105. package/pg-core/query-builders/delete.cjs.map +1 -1
  1106. package/pg-core/query-builders/delete.js +1 -1
  1107. package/pg-core/query-builders/delete.js.map +1 -1
  1108. package/pg-core/query-builders/index.cjs +1 -1
  1109. package/pg-core/query-builders/index.js +1 -1
  1110. package/pg-core/query-builders/insert.cjs +1 -1
  1111. package/pg-core/query-builders/insert.cjs.map +1 -1
  1112. package/pg-core/query-builders/insert.js +1 -1
  1113. package/pg-core/query-builders/insert.js.map +1 -1
  1114. package/pg-core/query-builders/query.cjs +0 -1
  1115. package/pg-core/query-builders/query.cjs.map +1 -1
  1116. package/pg-core/query-builders/query.d.cts +2 -1
  1117. package/pg-core/query-builders/query.d.ts +2 -1
  1118. package/pg-core/query-builders/query.js +0 -1
  1119. package/pg-core/query-builders/query.js.map +1 -1
  1120. package/pg-core/query-builders/raw.cjs +0 -4
  1121. package/pg-core/query-builders/raw.cjs.map +1 -1
  1122. package/pg-core/query-builders/raw.js +0 -4
  1123. package/pg-core/query-builders/raw.js.map +1 -1
  1124. package/pg-core/query-builders/update.cjs +1 -1
  1125. package/pg-core/query-builders/update.cjs.map +1 -1
  1126. package/pg-core/query-builders/update.js +1 -1
  1127. package/pg-core/query-builders/update.js.map +1 -1
  1128. package/pg-core/schema.cjs +1 -1
  1129. package/pg-core/schema.js +1 -1
  1130. package/pg-core/session.cjs +3 -5
  1131. package/pg-core/session.cjs.map +1 -1
  1132. package/pg-core/session.d.cts +4 -7
  1133. package/pg-core/session.d.ts +4 -7
  1134. package/pg-core/session.js +3 -5
  1135. package/pg-core/session.js.map +1 -1
  1136. package/pg-core/table.cjs +1 -1
  1137. package/pg-core/table.cjs.map +1 -1
  1138. package/pg-core/table.js +1 -1
  1139. package/pg-core/table.js.map +1 -1
  1140. package/pg-core/utils.cjs +2 -2
  1141. package/pg-core/utils.cjs.map +1 -1
  1142. package/pg-core/utils.d.cts +7 -1
  1143. package/pg-core/utils.d.ts +7 -1
  1144. package/pg-core/utils.js +2 -2
  1145. package/pg-core/utils.js.map +1 -1
  1146. package/pg-core/view.cjs +1 -1
  1147. package/pg-core/view.js +1 -1
  1148. package/pg-proxy/driver.cjs +10 -15
  1149. package/pg-proxy/driver.cjs.map +1 -1
  1150. package/pg-proxy/driver.d.cts +6 -3
  1151. package/pg-proxy/driver.d.ts +7 -4
  1152. package/pg-proxy/driver.js +10 -14
  1153. package/pg-proxy/driver.js.map +1 -1
  1154. package/pg-proxy/index.cjs +0 -2
  1155. package/pg-proxy/index.d.cts +2 -2
  1156. package/pg-proxy/index.d.ts +2 -2
  1157. package/pg-proxy/index.js +2 -2
  1158. package/pg-proxy/migrator.cjs.map +1 -1
  1159. package/pg-proxy/migrator.d.cts +1 -1
  1160. package/pg-proxy/migrator.d.ts +1 -1
  1161. package/pg-proxy/migrator.js.map +1 -1
  1162. package/pg-proxy/session.cjs +8 -84
  1163. package/pg-proxy/session.cjs.map +1 -1
  1164. package/pg-proxy/session.d.cts +9 -32
  1165. package/pg-proxy/session.d.ts +10 -33
  1166. package/pg-proxy/session.js +10 -84
  1167. package/pg-proxy/session.js.map +1 -1
  1168. package/pglite/driver.cjs +71 -33
  1169. package/pglite/driver.cjs.map +1 -1
  1170. package/pglite/driver.d.cts +12 -17
  1171. package/pglite/driver.d.ts +14 -19
  1172. package/pglite/driver.js +71 -32
  1173. package/pglite/driver.js.map +1 -1
  1174. package/pglite/index.cjs +2 -3
  1175. package/pglite/index.d.cts +3 -3
  1176. package/pglite/index.d.ts +3 -3
  1177. package/pglite/index.js +3 -3
  1178. package/pglite/migrator.cjs.map +1 -1
  1179. package/pglite/migrator.d.cts +1 -1
  1180. package/pglite/migrator.d.ts +1 -1
  1181. package/pglite/migrator.js.map +1 -1
  1182. package/pglite/session.cjs +25 -86
  1183. package/pglite/session.cjs.map +1 -1
  1184. package/pglite/session.d.cts +9 -30
  1185. package/pglite/session.d.ts +11 -32
  1186. package/pglite/session.js +27 -87
  1187. package/pglite/session.js.map +1 -1
  1188. package/planetscale-serverless/driver.cjs +3 -2
  1189. package/planetscale-serverless/driver.cjs.map +1 -1
  1190. package/planetscale-serverless/driver.d.cts +1 -0
  1191. package/planetscale-serverless/driver.d.ts +1 -0
  1192. package/planetscale-serverless/driver.js +3 -2
  1193. package/planetscale-serverless/driver.js.map +1 -1
  1194. package/planetscale-serverless/session.cjs +27 -20
  1195. package/planetscale-serverless/session.cjs.map +1 -1
  1196. package/planetscale-serverless/session.d.cts +12 -6
  1197. package/planetscale-serverless/session.d.ts +14 -8
  1198. package/planetscale-serverless/session.js +28 -21
  1199. package/planetscale-serverless/session.js.map +1 -1
  1200. package/postgres-js/driver.cjs +124 -19
  1201. package/postgres-js/driver.cjs.map +1 -1
  1202. package/postgres-js/driver.d.cts +10 -6
  1203. package/postgres-js/driver.d.ts +11 -7
  1204. package/postgres-js/driver.js +124 -19
  1205. package/postgres-js/driver.js.map +1 -1
  1206. package/postgres-js/index.cjs +2 -2
  1207. package/postgres-js/index.d.cts +3 -3
  1208. package/postgres-js/index.d.ts +3 -3
  1209. package/postgres-js/index.js +3 -3
  1210. package/postgres-js/migrator.cjs.map +1 -1
  1211. package/postgres-js/migrator.d.cts +1 -1
  1212. package/postgres-js/migrator.d.ts +1 -1
  1213. package/postgres-js/migrator.js.map +1 -1
  1214. package/postgres-js/session.cjs +17 -112
  1215. package/postgres-js/session.cjs.map +1 -1
  1216. package/postgres-js/session.d.cts +10 -31
  1217. package/postgres-js/session.d.ts +11 -32
  1218. package/postgres-js/session.js +18 -112
  1219. package/postgres-js/session.js.map +1 -1
  1220. package/prisma/mysql/driver.cjs +1 -1
  1221. package/prisma/mysql/driver.js +1 -1
  1222. package/prisma/mysql/session.cjs +2 -1
  1223. package/prisma/mysql/session.cjs.map +1 -1
  1224. package/prisma/mysql/session.d.cts +1 -0
  1225. package/prisma/mysql/session.d.ts +2 -1
  1226. package/prisma/mysql/session.js +2 -1
  1227. package/prisma/mysql/session.js.map +1 -1
  1228. package/prisma/pg/driver.cjs +9 -3
  1229. package/prisma/pg/driver.cjs.map +1 -1
  1230. package/prisma/pg/driver.d.cts +7 -3
  1231. package/prisma/pg/driver.d.ts +7 -3
  1232. package/prisma/pg/driver.js +9 -4
  1233. package/prisma/pg/driver.js.map +1 -1
  1234. package/prisma/pg/index.cjs +2 -2
  1235. package/prisma/pg/index.d.cts +3 -3
  1236. package/prisma/pg/index.d.ts +3 -3
  1237. package/prisma/pg/index.js +3 -3
  1238. package/prisma/pg/session.cjs +1 -25
  1239. package/prisma/pg/session.cjs.map +1 -1
  1240. package/prisma/pg/session.d.cts +3 -15
  1241. package/prisma/pg/session.d.ts +3 -15
  1242. package/prisma/pg/session.js +2 -25
  1243. package/prisma/pg/session.js.map +1 -1
  1244. package/prisma/sqlite/session.cjs +0 -3
  1245. package/prisma/sqlite/session.cjs.map +1 -1
  1246. package/prisma/sqlite/session.d.cts +0 -1
  1247. package/prisma/sqlite/session.d.ts +1 -2
  1248. package/prisma/sqlite/session.js +0 -3
  1249. package/prisma/sqlite/session.js.map +1 -1
  1250. package/relations.cjs +85 -24
  1251. package/relations.cjs.map +1 -1
  1252. package/relations.d.cts +41 -16
  1253. package/relations.d.ts +41 -16
  1254. package/relations.js +84 -25
  1255. package/relations.js.map +1 -1
  1256. package/row-mappers/index.cjs +1 -1
  1257. package/row-mappers/index.cjs.map +1 -1
  1258. package/row-mappers/index.js +1 -1
  1259. package/row-mappers/index.js.map +1 -1
  1260. package/selection-proxy.cjs +1 -1
  1261. package/selection-proxy.js +1 -1
  1262. package/singlestore/driver.cjs +4 -2
  1263. package/singlestore/driver.cjs.map +1 -1
  1264. package/singlestore/driver.d.cts +2 -1
  1265. package/singlestore/driver.d.ts +4 -3
  1266. package/singlestore/driver.js +4 -2
  1267. package/singlestore/driver.js.map +1 -1
  1268. package/singlestore/session.cjs +17 -7
  1269. package/singlestore/session.cjs.map +1 -1
  1270. package/singlestore/session.d.cts +8 -4
  1271. package/singlestore/session.d.ts +10 -6
  1272. package/singlestore/session.js +18 -8
  1273. package/singlestore/session.js.map +1 -1
  1274. package/singlestore-core/columns/bigint.cjs +4 -4
  1275. package/singlestore-core/columns/bigint.cjs.map +1 -1
  1276. package/singlestore-core/columns/bigint.d.cts +2 -2
  1277. package/singlestore-core/columns/bigint.d.ts +2 -2
  1278. package/singlestore-core/columns/bigint.js +4 -4
  1279. package/singlestore-core/columns/bigint.js.map +1 -1
  1280. package/singlestore-core/columns/binary.cjs +2 -2
  1281. package/singlestore-core/columns/binary.cjs.map +1 -1
  1282. package/singlestore-core/columns/binary.d.cts +1 -1
  1283. package/singlestore-core/columns/binary.d.ts +1 -1
  1284. package/singlestore-core/columns/binary.js +2 -2
  1285. package/singlestore-core/columns/binary.js.map +1 -1
  1286. package/singlestore-core/columns/boolean.cjs +2 -2
  1287. package/singlestore-core/columns/boolean.cjs.map +1 -1
  1288. package/singlestore-core/columns/boolean.d.cts +1 -1
  1289. package/singlestore-core/columns/boolean.d.ts +1 -1
  1290. package/singlestore-core/columns/boolean.js +2 -2
  1291. package/singlestore-core/columns/boolean.js.map +1 -1
  1292. package/singlestore-core/columns/custom.cjs +4 -4
  1293. package/singlestore-core/columns/custom.cjs.map +1 -1
  1294. package/singlestore-core/columns/custom.d.cts +2 -2
  1295. package/singlestore-core/columns/custom.d.ts +2 -2
  1296. package/singlestore-core/columns/custom.js +4 -4
  1297. package/singlestore-core/columns/custom.js.map +1 -1
  1298. package/singlestore-core/columns/date.cjs +2 -2
  1299. package/singlestore-core/columns/date.cjs.map +1 -1
  1300. package/singlestore-core/columns/date.d.cts +1 -1
  1301. package/singlestore-core/columns/date.d.ts +1 -1
  1302. package/singlestore-core/columns/date.js +2 -2
  1303. package/singlestore-core/columns/date.js.map +1 -1
  1304. package/singlestore-core/columns/datetime.cjs +6 -6
  1305. package/singlestore-core/columns/datetime.cjs.map +1 -1
  1306. package/singlestore-core/columns/datetime.d.cts +3 -3
  1307. package/singlestore-core/columns/datetime.d.ts +3 -3
  1308. package/singlestore-core/columns/datetime.js +6 -6
  1309. package/singlestore-core/columns/datetime.js.map +1 -1
  1310. package/singlestore-core/columns/decimal.cjs +4 -4
  1311. package/singlestore-core/columns/decimal.cjs.map +1 -1
  1312. package/singlestore-core/columns/decimal.d.cts +2 -2
  1313. package/singlestore-core/columns/decimal.d.ts +2 -2
  1314. package/singlestore-core/columns/decimal.js +4 -4
  1315. package/singlestore-core/columns/decimal.js.map +1 -1
  1316. package/singlestore-core/columns/float.cjs +2 -2
  1317. package/singlestore-core/columns/float.cjs.map +1 -1
  1318. package/singlestore-core/columns/float.d.cts +1 -1
  1319. package/singlestore-core/columns/float.d.ts +1 -1
  1320. package/singlestore-core/columns/float.js +2 -2
  1321. package/singlestore-core/columns/float.js.map +1 -1
  1322. package/singlestore-core/columns/int.cjs +2 -2
  1323. package/singlestore-core/columns/int.cjs.map +1 -1
  1324. package/singlestore-core/columns/int.d.cts +1 -1
  1325. package/singlestore-core/columns/int.d.ts +1 -1
  1326. package/singlestore-core/columns/int.js +2 -2
  1327. package/singlestore-core/columns/int.js.map +1 -1
  1328. package/singlestore-core/columns/json.cjs +2 -2
  1329. package/singlestore-core/columns/json.cjs.map +1 -1
  1330. package/singlestore-core/columns/json.d.cts +1 -1
  1331. package/singlestore-core/columns/json.d.ts +1 -1
  1332. package/singlestore-core/columns/json.js +2 -2
  1333. package/singlestore-core/columns/json.js.map +1 -1
  1334. package/singlestore-core/columns/mediumint.cjs +2 -2
  1335. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  1336. package/singlestore-core/columns/mediumint.d.cts +1 -1
  1337. package/singlestore-core/columns/mediumint.d.ts +1 -1
  1338. package/singlestore-core/columns/mediumint.js +2 -2
  1339. package/singlestore-core/columns/mediumint.js.map +1 -1
  1340. package/singlestore-core/columns/serial.cjs +2 -2
  1341. package/singlestore-core/columns/serial.cjs.map +1 -1
  1342. package/singlestore-core/columns/serial.d.cts +1 -1
  1343. package/singlestore-core/columns/serial.d.ts +1 -1
  1344. package/singlestore-core/columns/serial.js +2 -2
  1345. package/singlestore-core/columns/serial.js.map +1 -1
  1346. package/singlestore-core/columns/smallint.cjs +2 -2
  1347. package/singlestore-core/columns/smallint.cjs.map +1 -1
  1348. package/singlestore-core/columns/smallint.d.cts +1 -1
  1349. package/singlestore-core/columns/smallint.d.ts +1 -1
  1350. package/singlestore-core/columns/smallint.js +2 -2
  1351. package/singlestore-core/columns/smallint.js.map +1 -1
  1352. package/singlestore-core/columns/timestamp.cjs +6 -6
  1353. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  1354. package/singlestore-core/columns/timestamp.d.cts +3 -3
  1355. package/singlestore-core/columns/timestamp.d.ts +3 -3
  1356. package/singlestore-core/columns/timestamp.js +6 -6
  1357. package/singlestore-core/columns/timestamp.js.map +1 -1
  1358. package/singlestore-core/columns/tinyint.cjs +2 -2
  1359. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  1360. package/singlestore-core/columns/tinyint.d.cts +1 -1
  1361. package/singlestore-core/columns/tinyint.d.ts +1 -1
  1362. package/singlestore-core/columns/tinyint.js +2 -2
  1363. package/singlestore-core/columns/tinyint.js.map +1 -1
  1364. package/singlestore-core/columns/varbinary.cjs +2 -2
  1365. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  1366. package/singlestore-core/columns/varbinary.d.cts +1 -1
  1367. package/singlestore-core/columns/varbinary.d.ts +1 -1
  1368. package/singlestore-core/columns/varbinary.js +2 -2
  1369. package/singlestore-core/columns/varbinary.js.map +1 -1
  1370. package/singlestore-core/columns/vector.cjs +8 -8
  1371. package/singlestore-core/columns/vector.cjs.map +1 -1
  1372. package/singlestore-core/columns/vector.d.cts +4 -4
  1373. package/singlestore-core/columns/vector.d.ts +4 -4
  1374. package/singlestore-core/columns/vector.js +8 -8
  1375. package/singlestore-core/columns/vector.js.map +1 -1
  1376. package/singlestore-core/columns/year.cjs +2 -2
  1377. package/singlestore-core/columns/year.cjs.map +1 -1
  1378. package/singlestore-core/columns/year.d.cts +1 -1
  1379. package/singlestore-core/columns/year.d.ts +1 -1
  1380. package/singlestore-core/columns/year.js +2 -2
  1381. package/singlestore-core/columns/year.js.map +1 -1
  1382. package/singlestore-core/db.d.ts +2 -2
  1383. package/singlestore-core/dialect.cjs +2 -2
  1384. package/singlestore-core/dialect.d.ts +1 -1
  1385. package/singlestore-core/dialect.js +2 -2
  1386. package/singlestore-core/query-builders/delete.d.ts +1 -1
  1387. package/singlestore-core/query-builders/insert.d.ts +1 -1
  1388. package/singlestore-core/query-builders/query.cjs +13 -5
  1389. package/singlestore-core/query-builders/query.cjs.map +1 -1
  1390. package/singlestore-core/query-builders/query.d.ts +1 -1
  1391. package/singlestore-core/query-builders/query.js +13 -5
  1392. package/singlestore-core/query-builders/query.js.map +1 -1
  1393. package/singlestore-core/query-builders/select.d.ts +1 -1
  1394. package/singlestore-core/query-builders/update.d.ts +1 -1
  1395. package/singlestore-core/session.cjs.map +1 -1
  1396. package/singlestore-core/session.d.cts +2 -2
  1397. package/singlestore-core/session.d.ts +2 -2
  1398. package/singlestore-core/session.js.map +1 -1
  1399. package/singlestore-core/table.cjs +1 -1
  1400. package/singlestore-core/table.cjs.map +1 -1
  1401. package/singlestore-core/table.js +1 -1
  1402. package/singlestore-core/table.js.map +1 -1
  1403. package/singlestore-proxy/driver.cjs +5 -2
  1404. package/singlestore-proxy/driver.cjs.map +1 -1
  1405. package/singlestore-proxy/driver.js +5 -2
  1406. package/singlestore-proxy/driver.js.map +1 -1
  1407. package/singlestore-proxy/session.cjs +11 -6
  1408. package/singlestore-proxy/session.cjs.map +1 -1
  1409. package/singlestore-proxy/session.d.cts +9 -4
  1410. package/singlestore-proxy/session.d.ts +10 -5
  1411. package/singlestore-proxy/session.js +12 -7
  1412. package/singlestore-proxy/session.js.map +1 -1
  1413. package/sql/index.cjs +1 -0
  1414. package/sql/index.d.cts +2 -2
  1415. package/sql/index.d.ts +2 -2
  1416. package/sql/index.js +2 -2
  1417. package/sql/sql.cjs +32 -11
  1418. package/sql/sql.cjs.map +1 -1
  1419. package/sql/sql.d.cts +15 -5
  1420. package/sql/sql.d.ts +15 -5
  1421. package/sql/sql.js +32 -12
  1422. package/sql/sql.js.map +1 -1
  1423. package/sql-js/driver.cjs +5 -2
  1424. package/sql-js/driver.cjs.map +1 -1
  1425. package/sql-js/driver.d.ts +1 -1
  1426. package/sql-js/driver.js +5 -2
  1427. package/sql-js/driver.js.map +1 -1
  1428. package/sql-js/session.cjs +14 -14
  1429. package/sql-js/session.cjs.map +1 -1
  1430. package/sql-js/session.d.cts +10 -6
  1431. package/sql-js/session.d.ts +10 -6
  1432. package/sql-js/session.js +15 -15
  1433. package/sql-js/session.js.map +1 -1
  1434. package/sqlite-cloud/driver.cjs +3 -2
  1435. package/sqlite-cloud/driver.cjs.map +1 -1
  1436. package/sqlite-cloud/driver.d.ts +1 -1
  1437. package/sqlite-cloud/driver.js +3 -2
  1438. package/sqlite-cloud/driver.js.map +1 -1
  1439. package/sqlite-cloud/session.cjs +21 -20
  1440. package/sqlite-cloud/session.cjs.map +1 -1
  1441. package/sqlite-cloud/session.d.cts +9 -6
  1442. package/sqlite-cloud/session.d.ts +10 -7
  1443. package/sqlite-cloud/session.js +22 -21
  1444. package/sqlite-cloud/session.js.map +1 -1
  1445. package/sqlite-core/columns/blob.cjs +10 -10
  1446. package/sqlite-core/columns/blob.cjs.map +1 -1
  1447. package/sqlite-core/columns/blob.d.cts +5 -5
  1448. package/sqlite-core/columns/blob.d.ts +5 -5
  1449. package/sqlite-core/columns/blob.js +10 -10
  1450. package/sqlite-core/columns/blob.js.map +1 -1
  1451. package/sqlite-core/columns/custom.cjs +4 -4
  1452. package/sqlite-core/columns/custom.cjs.map +1 -1
  1453. package/sqlite-core/columns/custom.d.cts +2 -2
  1454. package/sqlite-core/columns/custom.d.ts +2 -2
  1455. package/sqlite-core/columns/custom.js +4 -4
  1456. package/sqlite-core/columns/custom.js.map +1 -1
  1457. package/sqlite-core/columns/integer.cjs +8 -8
  1458. package/sqlite-core/columns/integer.cjs.map +1 -1
  1459. package/sqlite-core/columns/integer.d.cts +4 -4
  1460. package/sqlite-core/columns/integer.d.ts +4 -4
  1461. package/sqlite-core/columns/integer.js +8 -8
  1462. package/sqlite-core/columns/integer.js.map +1 -1
  1463. package/sqlite-core/columns/numeric.cjs +4 -4
  1464. package/sqlite-core/columns/numeric.cjs.map +1 -1
  1465. package/sqlite-core/columns/numeric.d.cts +2 -2
  1466. package/sqlite-core/columns/numeric.d.ts +2 -2
  1467. package/sqlite-core/columns/numeric.js +4 -4
  1468. package/sqlite-core/columns/numeric.js.map +1 -1
  1469. package/sqlite-core/columns/text.cjs +4 -4
  1470. package/sqlite-core/columns/text.cjs.map +1 -1
  1471. package/sqlite-core/columns/text.d.cts +2 -2
  1472. package/sqlite-core/columns/text.d.ts +2 -2
  1473. package/sqlite-core/columns/text.js +4 -4
  1474. package/sqlite-core/columns/text.js.map +1 -1
  1475. package/sqlite-core/db.d.ts +1 -1
  1476. package/sqlite-core/dialect.cjs +2 -2
  1477. package/sqlite-core/dialect.d.ts +1 -1
  1478. package/sqlite-core/dialect.js +2 -2
  1479. package/sqlite-core/index.cjs +9 -9
  1480. package/sqlite-core/index.js +9 -9
  1481. package/sqlite-core/query-builders/_query.cjs +1 -1
  1482. package/sqlite-core/query-builders/_query.cjs.map +1 -1
  1483. package/sqlite-core/query-builders/_query.js +1 -1
  1484. package/sqlite-core/query-builders/_query.js.map +1 -1
  1485. package/sqlite-core/query-builders/delete.cjs +1 -1
  1486. package/sqlite-core/query-builders/delete.cjs.map +1 -1
  1487. package/sqlite-core/query-builders/delete.js +1 -1
  1488. package/sqlite-core/query-builders/delete.js.map +1 -1
  1489. package/sqlite-core/query-builders/index.cjs +1 -1
  1490. package/sqlite-core/query-builders/index.js +1 -1
  1491. package/sqlite-core/query-builders/insert.cjs +1 -1
  1492. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  1493. package/sqlite-core/query-builders/insert.js +1 -1
  1494. package/sqlite-core/query-builders/insert.js.map +1 -1
  1495. package/sqlite-core/query-builders/query.cjs +13 -5
  1496. package/sqlite-core/query-builders/query.cjs.map +1 -1
  1497. package/sqlite-core/query-builders/query.d.ts +1 -1
  1498. package/sqlite-core/query-builders/query.js +13 -5
  1499. package/sqlite-core/query-builders/query.js.map +1 -1
  1500. package/sqlite-core/query-builders/raw.cjs +0 -4
  1501. package/sqlite-core/query-builders/raw.cjs.map +1 -1
  1502. package/sqlite-core/query-builders/raw.js +0 -4
  1503. package/sqlite-core/query-builders/raw.js.map +1 -1
  1504. package/sqlite-core/query-builders/select.cjs +2 -2
  1505. package/sqlite-core/query-builders/select.cjs.map +1 -1
  1506. package/sqlite-core/query-builders/select.js +2 -2
  1507. package/sqlite-core/query-builders/select.js.map +1 -1
  1508. package/sqlite-core/query-builders/update.cjs +2 -2
  1509. package/sqlite-core/query-builders/update.cjs.map +1 -1
  1510. package/sqlite-core/query-builders/update.js +2 -2
  1511. package/sqlite-core/query-builders/update.js.map +1 -1
  1512. package/sqlite-core/session.cjs +8 -8
  1513. package/sqlite-core/session.cjs.map +1 -1
  1514. package/sqlite-core/session.d.cts +5 -5
  1515. package/sqlite-core/session.d.ts +5 -5
  1516. package/sqlite-core/session.js +8 -8
  1517. package/sqlite-core/session.js.map +1 -1
  1518. package/sqlite-core/table.cjs +1 -1
  1519. package/sqlite-core/table.cjs.map +1 -1
  1520. package/sqlite-core/table.js +1 -1
  1521. package/sqlite-core/table.js.map +1 -1
  1522. package/sqlite-core/utils.cjs +3 -3
  1523. package/sqlite-core/utils.js +3 -3
  1524. package/sqlite-proxy/driver.cjs +3 -2
  1525. package/sqlite-proxy/driver.cjs.map +1 -1
  1526. package/sqlite-proxy/driver.d.ts +1 -1
  1527. package/sqlite-proxy/driver.js +3 -2
  1528. package/sqlite-proxy/driver.js.map +1 -1
  1529. package/sqlite-proxy/session.cjs +20 -17
  1530. package/sqlite-proxy/session.cjs.map +1 -1
  1531. package/sqlite-proxy/session.d.cts +11 -7
  1532. package/sqlite-proxy/session.d.ts +12 -8
  1533. package/sqlite-proxy/session.js +21 -18
  1534. package/sqlite-proxy/session.js.map +1 -1
  1535. package/table.d.cts +1 -1
  1536. package/table.d.ts +1 -1
  1537. package/tidb-serverless/driver.cjs +3 -2
  1538. package/tidb-serverless/driver.cjs.map +1 -1
  1539. package/tidb-serverless/driver.d.cts +1 -0
  1540. package/tidb-serverless/driver.d.ts +1 -0
  1541. package/tidb-serverless/driver.js +3 -2
  1542. package/tidb-serverless/driver.js.map +1 -1
  1543. package/tidb-serverless/session.cjs +25 -37
  1544. package/tidb-serverless/session.cjs.map +1 -1
  1545. package/tidb-serverless/session.d.cts +10 -4
  1546. package/tidb-serverless/session.d.ts +12 -6
  1547. package/tidb-serverless/session.js +26 -38
  1548. package/tidb-serverless/session.js.map +1 -1
  1549. package/tursodatabase/driver-core.cjs +3 -2
  1550. package/tursodatabase/driver-core.cjs.map +1 -1
  1551. package/tursodatabase/driver-core.d.ts +1 -1
  1552. package/tursodatabase/driver-core.js +3 -2
  1553. package/tursodatabase/driver-core.js.map +1 -1
  1554. package/tursodatabase/session.cjs +20 -19
  1555. package/tursodatabase/session.cjs.map +1 -1
  1556. package/tursodatabase/session.d.cts +9 -6
  1557. package/tursodatabase/session.d.ts +10 -7
  1558. package/tursodatabase/session.js +21 -20
  1559. package/tursodatabase/session.js.map +1 -1
  1560. package/up-migrations/effect-pg.cjs +3 -3
  1561. package/up-migrations/effect-pg.cjs.map +1 -1
  1562. package/up-migrations/effect-pg.d.ts +1 -1
  1563. package/up-migrations/effect-pg.js +3 -3
  1564. package/up-migrations/effect-pg.js.map +1 -1
  1565. package/up-migrations/pg.cjs +3 -8
  1566. package/up-migrations/pg.cjs.map +1 -1
  1567. package/up-migrations/pg.d.cts +1 -1
  1568. package/up-migrations/pg.d.ts +2 -2
  1569. package/up-migrations/pg.js +3 -8
  1570. package/up-migrations/pg.js.map +1 -1
  1571. package/up-migrations/sqlite.d.ts +2 -2
  1572. package/utils.cjs +129 -7
  1573. package/utils.cjs.map +1 -1
  1574. package/utils.d.cts +10 -3
  1575. package/utils.d.ts +10 -3
  1576. package/utils.js +127 -8
  1577. package/utils.js.map +1 -1
  1578. package/vercel-postgres/driver.cjs +14 -32
  1579. package/vercel-postgres/driver.cjs.map +1 -1
  1580. package/vercel-postgres/driver.d.cts +12 -17
  1581. package/vercel-postgres/driver.d.ts +13 -18
  1582. package/vercel-postgres/driver.js +14 -31
  1583. package/vercel-postgres/driver.js.map +1 -1
  1584. package/vercel-postgres/index.cjs +2 -3
  1585. package/vercel-postgres/index.d.cts +3 -3
  1586. package/vercel-postgres/index.d.ts +3 -3
  1587. package/vercel-postgres/index.js +3 -3
  1588. package/vercel-postgres/migrator.cjs.map +1 -1
  1589. package/vercel-postgres/migrator.d.cts +1 -1
  1590. package/vercel-postgres/migrator.d.ts +1 -1
  1591. package/vercel-postgres/migrator.js.map +1 -1
  1592. package/vercel-postgres/session.cjs +32 -110
  1593. package/vercel-postgres/session.cjs.map +1 -1
  1594. package/vercel-postgres/session.d.cts +9 -32
  1595. package/vercel-postgres/session.d.ts +10 -33
  1596. package/vercel-postgres/session.js +34 -111
  1597. package/vercel-postgres/session.js.map +1 -1
  1598. package/xata-http/driver.cjs +91 -31
  1599. package/xata-http/driver.cjs.map +1 -1
  1600. package/xata-http/driver.d.cts +10 -16
  1601. package/xata-http/driver.d.ts +11 -17
  1602. package/xata-http/driver.js +91 -30
  1603. package/xata-http/driver.js.map +1 -1
  1604. package/xata-http/index.cjs +2 -4
  1605. package/xata-http/index.d.cts +3 -3
  1606. package/xata-http/index.d.ts +3 -3
  1607. package/xata-http/index.js +3 -3
  1608. package/xata-http/migrator.cjs +1 -1
  1609. package/xata-http/migrator.cjs.map +1 -1
  1610. package/xata-http/migrator.d.cts +1 -1
  1611. package/xata-http/migrator.d.ts +1 -1
  1612. package/xata-http/migrator.js +1 -1
  1613. package/xata-http/migrator.js.map +1 -1
  1614. package/xata-http/session.cjs +24 -110
  1615. package/xata-http/session.cjs.map +1 -1
  1616. package/xata-http/session.d.cts +7 -33
  1617. package/xata-http/session.d.ts +8 -34
  1618. package/xata-http/session.js +26 -110
  1619. package/xata-http/session.js.map +1 -1
  1620. package/pg-core/query-builders/_query.cjs +0 -101
  1621. package/pg-core/query-builders/_query.cjs.map +0 -1
  1622. package/pg-core/query-builders/_query.d.cts +0 -55
  1623. package/pg-core/query-builders/_query.d.ts +0 -55
  1624. package/pg-core/query-builders/_query.js +0 -97
  1625. package/pg-core/query-builders/_query.js.map +0 -1
  1626. package/pg-core/utils/array.cjs.map +0 -1
  1627. package/pg-core/utils/array.js.map +0 -1
  1628. package/pg-core/utils/index.cjs +0 -6
  1629. package/pg-core/utils/index.d.cts +0 -2
  1630. package/pg-core/utils/index.d.ts +0 -2
  1631. package/pg-core/utils/index.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","names":[],"sources":["../../src/neon-serverless/session.ts"],"sourcesContent":["import {\n\ttype Client,\n\ttype CustomTypesConfig,\n\tPool,\n\ttype PoolClient,\n\ttype QueryResult,\n\ttype QueryResultRow,\n\ttypes,\n} from '@neondatabase/serverless';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport { PgAsyncPreparedQuery, PgAsyncSession, PgAsyncTransaction } from '~/pg-core/async/session.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport type NeonClient = Pool | PoolClient | Client;\n\nconst parsers: CustomTypesConfig = {\n\t// @ts-ignore\n\tgetTypeParser: (typeId, format) => {\n\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\treturn (val: any) => val;\n\t\t}\n\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\treturn (val: any) => val;\n\t\t}\n\t\tif (typeId === types.builtins.DATE) {\n\t\t\treturn (val: any) => val;\n\t\t}\n\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\treturn (val: any) => val;\n\t\t}\n\t\t// numeric[]\n\t\tif (typeId === 1231) {\n\t\t\treturn (val: any) => val;\n\t\t}\n\t\t// timestamp[]\n\t\tif (typeId === 1115) {\n\t\t\treturn (val) => val;\n\t\t}\n\t\t// timestamp with timezone[]\n\t\tif (typeId === 1185) {\n\t\t\treturn (val) => val;\n\t\t}\n\t\t// interval[]\n\t\tif (typeId === 1187) {\n\t\t\treturn (val) => val;\n\t\t}\n\t\t// date[]\n\t\tif (typeId === 1182) {\n\t\t\treturn (val) => val;\n\t\t}\n\t\t// @ts-ignore\n\t\treturn types.getTypeParser(typeId, format);\n\t},\n};\n\nexport class NeonPreparedQuery<T extends PreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends PgAsyncPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'NeonPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: NeonClient,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate name: string | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper(query, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, query, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await client.query({\n\t\t\t\t\ttext: this.query.sql,\n\t\t\t\t\tname: this.name,\n\t\t\t\t\ttypes: parsers,\n\t\t\t\t}, params);\n\t\t\t});\n\t\t}\n\n\t\tconst result = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await client.query({\n\t\t\t\ttext: this.query.sql,\n\t\t\t\tname: this.name,\n\t\t\t\ttypes: parsers,\n\t\t\t\trowMode: 'array',\n\t\t\t}, params);\n\t\t});\n\n\t\treturn customResultMapper\n\t\t\t? (customResultMapper as (rows: unknown[][]) => T['execute'])(result.rows)\n\t\t\t: result.rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, customResultMapper } = this;\n\n\t\tconst result = await client.query({\n\t\t\ttext: this.query.sql,\n\t\t\tname: this.name,\n\t\t\ttypes: parsers,\n\t\t}, params);\n\n\t\treturn customResultMapper!(result.rows);\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn await this.client.query({\n\t\t\t\ttext: this.query.sql,\n\t\t\t\tname: this.name,\n\t\t\t\ttypes: parsers,\n\t\t\t}, params);\n\t\t}).then((result) => result.rows);\n\t}\n\n\tvalues(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['values']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.queryWithCache(this.query.sql, params, async () => {\n\t\t\treturn await this.client.query({\n\t\t\t\ttext: this.query.sql,\n\t\t\t\tname: this.name,\n\t\t\t\ttypes: parsers,\n\t\t\t\trowMode: 'array',\n\t\t\t}, params);\n\t\t}).then((result) => result.rows);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface NeonSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NeonSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends PgAsyncSession<NeonQueryResultHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NeonSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: NeonClient,\n\t\tdialect: PgDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NeonSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\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): PgAsyncPreparedQuery<T> {\n\t\treturn new NeonPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tname,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tcustomResultMapper?: (rows: Record<string, unknown>[]) => T['execute'],\n\t): PgAsyncPreparedQuery<T> {\n\t\treturn new NeonPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\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\tname,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\tasync query(query: string, params: unknown[]): Promise<QueryResult> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.query({\n\t\t\trowMode: 'array',\n\t\t\ttext: query,\n\t\t\tvalues: params,\n\t\t});\n\t\treturn result;\n\t}\n\n\tasync queryObjects<T extends QueryResultRow>(\n\t\tquery: string,\n\t\tparams: unknown[],\n\t): Promise<QueryResult<T>> {\n\t\treturn this.client.query<T>(query, params);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NeonTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig: PgTransactionConfig = {},\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // oxlint-disable-line drizzle-internal/no-instanceof\n\t\t\t? new NeonSession(await this.client.connect(), this.dialect, this.relations, this.schema, this.options)\n\t\t\t: this;\n\t\tconst tx = new NeonTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tsession,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t);\n\t\tawait tx.execute(sql`begin ${tx.getTransactionConfigSQL(config)}`);\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 (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // oxlint-disable-line drizzle-internal/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport class NeonTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends PgAsyncTransaction<NeonQueryResultHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NeonTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NeonTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NeonTransaction<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);\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 (e) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow e;\n\t\t}\n\t}\n}\n\nexport interface NeonQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"session.js","names":[],"sources":["../../src/neon-serverless/session.ts"],"sourcesContent":["import {\n\ttype Client,\n\ttype CustomTypesConfig,\n\tPool,\n\ttype PoolClient,\n\ttype QueryResult,\n\ttype QueryResultRow,\n\ttypes,\n} from '@neondatabase/serverless';\nimport { type Cache, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport { PgAsyncPreparedQuery, PgAsyncSession, PgAsyncTransaction } from '~/pg-core/async/session.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { preparedStatementName } from '~/query-name-generator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { type Query, sql } from '~/sql/sql.ts';\nimport type { Assume } from '~/utils.ts';\n\nexport type NeonClient = Pool | PoolClient | Client;\n\nconst noop = (val: any) => val;\nconst typeConfig: CustomTypesConfig = {\n\tgetTypeParser: <CustomTypesConfig['getTypeParser']> ((typeId, format) => {\n\t\tswitch (typeId as number) {\n\t\t\tcase types.builtins.TIMESTAMPTZ:\n\t\t\tcase types.builtins.TIMESTAMP:\n\t\t\tcase types.builtins.DATE:\n\t\t\tcase types.builtins.INTERVAL:\n\t\t\tcase 1231: // numeric[]\n\t\t\tcase 1115: // timestamp[]\n\t\t\tcase 1185: // timestamp with timezone[]\n\t\t\tcase 1187: // interval[]\n\t\t\tcase 1182: // date[]\n\t\t\t\treturn noop;\n\t\t\tdefault:\n\t\t\t\treturn types.getTypeParser(typeId, format as any);\n\t\t}\n\t}),\n};\n\nexport interface NeonSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tuseJitMapper?: boolean;\n}\n\nexport class NeonSession<TRelations extends AnyRelations> extends PgAsyncSession<NeonQueryResultHKT, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NeonSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: NeonClient,\n\t\tdialect: PgDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate options: NeonSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tmode: 'arrays' | 'objects' | 'raw',\n\t\tname: string | boolean,\n\t\tmapper: ((rows: any[]) => any) | undefined,\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): PgAsyncPreparedQuery<T> {\n\t\tconst queryName = typeof name === 'string'\n\t\t\t? name\n\t\t\t: name === true\n\t\t\t? preparedStatementName(query.sql, query.params)\n\t\t\t: undefined;\n\n\t\tconst executor = async (params?: unknown[]) => {\n\t\t\treturn this.client.query({\n\t\t\t\tname: queryName,\n\t\t\t\trowMode: mode === 'arrays' ? 'array' : undefined as any,\n\t\t\t\ttext: query.sql,\n\t\t\t\ttypes: typeConfig,\n\t\t\t}, params).then((r) => mode === 'raw' ? r : r.rows);\n\t\t};\n\n\t\treturn new PgAsyncPreparedQuery<T>(\n\t\t\texecutor,\n\t\t\tquery,\n\t\t\tmapper,\n\t\t\tmode,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NeonTransaction<TRelations>) => Promise<T>,\n\t\tconfig: PgTransactionConfig = {},\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // oxlint-disable-line drizzle-internal/no-instanceof\n\t\t\t? new NeonSession(await this.client.connect(), this.dialect, this.relations, this.options)\n\t\t\t: this;\n\t\tconst tx = new NeonTransaction<TRelations>(\n\t\t\tthis.dialect,\n\t\t\tsession,\n\t\t\tthis.relations,\n\t\t\tundefined,\n\t\t\tfalse,\n\t\t);\n\t\tawait tx.execute(sql`begin ${tx.getTransactionConfigSQL(config)}`);\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 (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // oxlint-disable-line drizzle-internal/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport class NeonTransaction<\n\tTRelations extends AnyRelations,\n> extends PgAsyncTransaction<NeonQueryResultHKT, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NeonTransaction';\n\n\toverride transaction = async <T>(\n\t\ttransaction: (tx: NeonTransaction<TRelations>) => Promise<T>,\n\t): Promise<T> => {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NeonTransaction<TRelations>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis._.relations,\n\t\t\tthis.nestedIndex + 1,\n\t\t\tfalse,\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 (e) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow e;\n\t\t}\n\t};\n}\n\nexport interface NeonQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":";;;;;;;;;AAwBA,MAAM,QAAQ,QAAa;AAC3B,MAAM,aAAgC,EACrC,iBAAsD,QAAQ,WAAW;AACxE,SAAQ,QAAR;EACC,KAAK,MAAM,SAAS;EACpB,KAAK,MAAM,SAAS;EACpB,KAAK,MAAM,SAAS;EACpB,KAAK,MAAM,SAAS;EACpB,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK,KACJ,QAAO;EACR,QACC,QAAO,MAAM,cAAc,QAAQ,OAAc;;IAGpD;AAQD,IAAa,cAAb,MAAa,oBAAqD,eAA+C;CAChH,QAA0B,cAAsB;CAEhD,AAAQ;CACR,AAAQ;CAER,YACC,AAAQ,QACR,SACA,AAAQ,WACR,AAAQ,UAA8B,EAAE,EACvC;AACD,QAAM,QAAQ;EALN;EAEA;EACA;AAGR,OAAK,SAAS,QAAQ,UAAU,IAAI,YAAY;AAChD,OAAK,QAAQ,QAAQ,SAAS,IAAI,WAAW;;CAG9C,aACC,OACA,MACA,MACA,QACA,eAIA,aAC0B;EAC1B,MAAM,YAAY,OAAO,SAAS,WAC/B,OACA,SAAS,OACT,sBAAsB,MAAM,KAAK,MAAM,OAAO,GAC9C;EAEH,MAAM,WAAW,OAAO,WAAuB;AAC9C,UAAO,KAAK,OAAO,MAAM;IACxB,MAAM;IACN,SAAS,SAAS,WAAW,UAAU;IACvC,MAAM,MAAM;IACZ,OAAO;IACP,EAAE,OAAO,CAAC,MAAM,MAAM,SAAS,QAAQ,IAAI,EAAE,KAAK;;AAGpD,SAAO,IAAI,qBACV,UACA,OACA,QACA,MACA,KAAK,QACL,KAAK,OACL,eACA,YACA;;CAGF,MAAe,YACd,aACA,SAA8B,EAAE,EACnB;EACb,MAAM,UAAU,KAAK,kBAAkB,OACpC,IAAI,YAAY,MAAM,KAAK,OAAO,SAAS,EAAE,KAAK,SAAS,KAAK,WAAW,KAAK,QAAQ,GACxF;EACH,MAAM,KAAK,IAAI,gBACd,KAAK,SACL,SACA,KAAK,WACL,QACA,MACA;AACD,QAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,wBAAwB,OAAO,GAAG;AAClE,MAAI;GACH,MAAM,SAAS,MAAM,YAAY,GAAG;AACpC,SAAM,GAAG,QAAQ,GAAG,SAAS;AAC7B,UAAO;WACC,OAAO;AACf,SAAM,GAAG,QAAQ,GAAG,WAAW;AAC/B,SAAM;YACG;AACT,OAAI,KAAK,kBAAkB,KAC1B,CAAC,QAAQ,OAAsB,SAAS;;;;AAM5C,IAAa,kBAAb,MAAa,wBAEH,mBAAmD;CAC5D,QAA0B,cAAsB;CAEhD,AAAS,cAAc,OACtB,gBACgB;EAChB,MAAM,gBAAgB,KAAK,KAAK,cAAc;EAC9C,MAAM,KAAK,IAAI,gBACd,KAAK,SACL,KAAK,SACL,KAAK,EAAE,WACP,KAAK,cAAc,GACnB,MACA;AACD,QAAM,GAAG,QAAQ,IAAI,IAAI,aAAa,gBAAgB,CAAC;AACvD,MAAI;GACH,MAAM,SAAS,MAAM,YAAY,GAAG;AACpC,SAAM,GAAG,QAAQ,IAAI,IAAI,qBAAqB,gBAAgB,CAAC;AAC/D,UAAO;WACC,GAAG;AACX,SAAM,GAAG,QAAQ,IAAI,IAAI,yBAAyB,gBAAgB,CAAC;AACnE,SAAM"}
@@ -3,67 +3,59 @@ const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
3
3
  const require_netlify_db_session = require('./session.cjs');
4
4
  let __entity_ts = require("../entity.cjs");
5
5
  let __utils_ts = require("../utils.cjs");
6
- let ___relations_ts = require("../_relations.cjs");
7
- ___relations_ts = require_runtime.__toESM(___relations_ts);
8
6
  let __logger_ts = require("../logger.cjs");
9
7
  let __pg_core_async_db_ts = require("../pg-core/async/db.cjs");
8
+ let __pg_core_codecs_ts = require("../pg-core/codecs.cjs");
10
9
  let __pg_core_dialect_ts = require("../pg-core/dialect.cjs");
11
10
  let _neondatabase_serverless = require("@neondatabase/serverless");
12
11
  let __node_postgres_driver_ts = require("../node-postgres/driver.cjs");
13
12
 
14
13
  //#region src/netlify-db/driver.ts
15
- var NetlifyDbDriver = class {
16
- static [__entity_ts.entityKind] = "NetlifyDbDriver";
17
- constructor(httpClient, pool, dialect, options = {}) {
18
- this.httpClient = httpClient;
19
- this.pool = pool;
20
- this.dialect = dialect;
21
- this.options = options;
22
- this.initMappers();
23
- }
24
- createSession(relations, schema) {
25
- return new require_netlify_db_session.NetlifyDbSession(this.httpClient, this.pool, this.dialect, relations ?? {}, schema, {
26
- logger: this.options.logger,
27
- cache: this.options.cache
14
+ var NetlifyDbDatabase = class NetlifyDbDatabase extends __pg_core_async_db_ts.PgAsyncDatabase {
15
+ static [__entity_ts.entityKind] = "NetlifyDbDatabase";
16
+ $withAuth(token) {
17
+ const session = new require_netlify_db_session.NetlifyDbSession(this.session.httpClient, this.session.pool, this.dialect, this._.relations, {
18
+ ...this.session.options,
19
+ authToken: token
28
20
  });
21
+ return new NetlifyDbDatabase(this.dialect, session, this._.relations);
29
22
  }
30
- initMappers() {
31
- _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.TIMESTAMPTZ, (val) => val);
32
- _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.TIMESTAMP, (val) => val);
33
- _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.DATE, (val) => val);
34
- _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.INTERVAL, (val) => val);
35
- _neondatabase_serverless.types.setTypeParser(1231, (val) => val);
36
- _neondatabase_serverless.types.setTypeParser(1115, (val) => val);
37
- _neondatabase_serverless.types.setTypeParser(1185, (val) => val);
38
- _neondatabase_serverless.types.setTypeParser(1187, (val) => val);
39
- _neondatabase_serverless.types.setTypeParser(1182, (val) => val);
40
- }
41
- };
42
- var NetlifyDbDatabase = class extends __pg_core_async_db_ts.PgAsyncDatabase {
43
- static [__entity_ts.entityKind] = "NetlifyDbDatabase";
44
23
  async batch(batch) {
45
24
  return this.session.batch(batch);
46
25
  }
47
26
  };
27
+ const netlifyDbCodecs = (0, __pg_core_codecs_ts.refineGenericPgCodecs)({
28
+ bytea: { normalizeParam: String },
29
+ json: { normalizeParam: (v) => JSON.stringify(v) },
30
+ jsonb: { normalizeParam: (v) => JSON.stringify(v) }
31
+ });
32
+ const netlifyDbTransactionCodecs = (0, __pg_core_codecs_ts.refineGenericPgCodecs)();
48
33
  function construct(httpClient, pool, config = {}) {
49
- const dialect = new __pg_core_dialect_ts.PgDialect({ casing: config.casing });
34
+ const dialect = new __pg_core_dialect_ts.PgDialect({
35
+ casing: config.casing,
36
+ codecs: config.codecs ?? netlifyDbCodecs,
37
+ useJitMappers: config.useJitMappers
38
+ });
50
39
  let logger;
51
40
  if (config.logger === true) logger = new __logger_ts.DefaultLogger();
52
41
  else if (config.logger !== false) logger = config.logger;
53
- let schema;
54
- if (config.schema) {
55
- const tablesConfig = ___relations_ts.extractTablesRelationalConfig(config.schema, ___relations_ts.createTableRelationsHelpers);
56
- schema = {
57
- fullSchema: config.schema,
58
- schema: tablesConfig.tables,
59
- tableNamesMap: tablesConfig.tableNamesMap
60
- };
61
- }
62
42
  const relations = config.relations ?? {};
63
- const db = new NetlifyDbDatabase(dialect, new NetlifyDbDriver(httpClient, pool, dialect, {
43
+ const session = new require_netlify_db_session.NetlifyDbSession(httpClient, pool, dialect, relations ?? {}, {
64
44
  logger,
65
- cache: config.cache
66
- }).createSession(relations, schema), relations, schema);
45
+ cache: config.cache,
46
+ casing: config.casing,
47
+ transactionCodecs: config.transactionCodecs ?? netlifyDbTransactionCodecs
48
+ });
49
+ _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.TIMESTAMPTZ, (val) => val);
50
+ _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.TIMESTAMP, (val) => val);
51
+ _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.DATE, (val) => val);
52
+ _neondatabase_serverless.types.setTypeParser(_neondatabase_serverless.types.builtins.INTERVAL, (val) => val);
53
+ _neondatabase_serverless.types.setTypeParser(1231, (val) => val);
54
+ _neondatabase_serverless.types.setTypeParser(1115, (val) => val);
55
+ _neondatabase_serverless.types.setTypeParser(1185, (val) => val);
56
+ _neondatabase_serverless.types.setTypeParser(1187, (val) => val);
57
+ _neondatabase_serverless.types.setTypeParser(1182, (val) => val);
58
+ const db = new NetlifyDbDatabase(dialect, session, relations);
67
59
  db.$client = {
68
60
  http: httpClient,
69
61
  pool
@@ -113,11 +105,12 @@ function drizzle(...params) {
113
105
 
114
106
  //#endregion
115
107
  exports.NetlifyDbDatabase = NetlifyDbDatabase;
116
- exports.NetlifyDbDriver = NetlifyDbDriver;
117
108
  Object.defineProperty(exports, 'drizzle', {
118
109
  enumerable: true,
119
110
  get: function () {
120
111
  return drizzle;
121
112
  }
122
113
  });
114
+ exports.netlifyDbCodecs = netlifyDbCodecs;
115
+ exports.netlifyDbTransactionCodecs = netlifyDbTransactionCodecs;
123
116
  //# sourceMappingURL=driver.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver.cjs","names":["entityKind","NetlifyDbSession","types","PgAsyncDatabase","PgDialect","DefaultLogger","V1","Pool"],"sources":["../../src/netlify-db/driver.ts"],"sourcesContent":["import { neon, Pool, 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 type { NeonHttpClient, NeonHttpQueryResultHKT } from '~/neon-http/session.ts';\nimport { drizzle as drizzleNodePg, type NodePgDatabase } from '~/node-postgres/driver.ts';\nimport type { NodePgClient } from '~/node-postgres/session.ts';\nimport { PgAsyncDatabase } from '~/pg-core/async/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 NetlifyDbClient, NetlifyDbSession } from './session.ts';\n\nexport interface ServerlessDrizzleClient {\n\tdriver: 'serverless';\n\thttpClient: NeonHttpClient;\n\tpool: Pool;\n\tconnectionString: string;\n}\n\nexport interface ServerDrizzleClient {\n\tdriver: 'server';\n\tpool: NodePgClient;\n\tconnectionString: string;\n}\n\nexport type DrizzleClient = ServerlessDrizzleClient | ServerDrizzleClient;\n\nexport interface NetlifyDbDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NetlifyDbDriver {\n\tstatic readonly [entityKind]: string = 'NetlifyDbDriver';\n\n\tconstructor(\n\t\tprivate httpClient: NeonHttpClient,\n\t\tprivate pool: Pool,\n\t\tprivate dialect: PgDialect,\n\t\tprivate options: NetlifyDbDriverOptions = {},\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): NetlifyDbSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig> {\n\t\treturn new NetlifyDbSession(this.httpClient, this.pool, this.dialect, relations ?? {}, 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\nexport class NetlifyDbDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NetlifyDbDatabase';\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 (<NetlifyDbSession<TSchema, TRelations, V1.ExtractTablesWithRelations<TSchema>>> this.session).batch(\n\t\t\tbatch,\n\t\t) 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>(\n\thttpClient: NeonHttpClient,\n\tpool: Pool,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): NetlifyDbDatabase<TSchema, TRelations> & {\n\t$client: NetlifyDbClient;\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 NetlifyDbDriver(httpClient, pool, dialect, { logger, cache: config.cache });\n\tconst session = driver.createSession(relations, schema);\n\n\tconst db = new NetlifyDbDatabase(\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 = { http: httpClient, pool } satisfies NetlifyDbClient;\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>():\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations>,\n):\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations> & { client: ServerlessDrizzleClient },\n): NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations> & { client: ServerDrizzleClient },\n): NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient };\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations> & { client: DrizzleClient },\n):\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\t...params: [\n\t\tstring,\n\t] | [\n\t\tstring,\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 };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n): NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\t...params: [] | [\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\tstring,\n\t] | [\n\t\tstring,\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 };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n):\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient })\n{\n\t// Zero-config: read env vars\n\tif (\n\t\tparams.length === 0\n\t\t|| (params.length === 1 && isConfig(params[0]) && !('connection' in (params[0] as any))\n\t\t\t&& !('client' in (params[0] as any)))\n\t) {\n\t\tconst drizzleConfig = (params[0] ?? {}) as DrizzleConfig<TSchema, TRelations>;\n\t\tconst connectionString = process.env['NETLIFY_DB_URL'];\n\n\t\tif (!connectionString) {\n\t\t\tthrow new Error(\n\t\t\t\t'NETLIFY_DB_URL environment variable is not set. '\n\t\t\t\t\t+ 'Provide a connection string or client to drizzle().',\n\t\t\t);\n\t\t}\n\n\t\tconst driver = process.env['NETLIFY_DB_DRIVER'];\n\n\t\tif (driver === 'server') {\n\t\t\treturn drizzleNodePg({ connection: connectionString, ...drizzleConfig }) as any;\n\t\t}\n\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tif (typeof params[0] === 'string') {\n\t\tconst connectionString = params[0];\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { connectionString: string } | string;\n\t\t\tclient?: NetlifyDbClient | DrizzleClient;\n\t\t} & DrizzleConfig<TSchema, TRelations>;\n\n\t\tif (client) {\n\t\t\tif ('driver' in client) {\n\t\t\t\tif (client.driver === 'serverless') {\n\t\t\t\t\treturn construct(client.httpClient, client.pool, drizzleConfig);\n\t\t\t\t}\n\t\t\t\treturn drizzleNodePg({ client: client.pool, ...drizzleConfig }) as any;\n\t\t\t}\n\t\t\treturn construct(client.http, client.pool, drizzleConfig);\n\t\t}\n\n\t\tconst connectionString = typeof connection === 'string' ? connection : connection!.connectionString;\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tthrow new Error('Invalid arguments. Expected a connection string or a config object.');\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): NetlifyDbDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, {} as any, config) as any;\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"driver.cjs","names":["PgAsyncDatabase","entityKind","NetlifyDbSession","PgDialect","DefaultLogger","types","Pool"],"sources":["../../src/netlify-db/driver.ts"],"sourcesContent":["import { type HTTPQueryOptions, neon, Pool, types } from '@neondatabase/serverless';\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 type { NeonHttpClient, NeonHttpQueryResultHKT } from '~/neon-http/session.ts';\nimport { drizzle as drizzleNodePg, type NodePgDatabase } from '~/node-postgres/driver.ts';\nimport type { NodePgClient } from '~/node-postgres/session.ts';\nimport { PgAsyncDatabase } from '~/pg-core/async/db.ts';\nimport { type PgCodecs, refineGenericPgCodecs } from '~/pg-core/codecs.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type { DrizzlePgConfig } from '~/pg-core/utils.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { isConfig } from '~/utils.ts';\nimport { type NetlifyDbClient, NetlifyDbSession } from './session.ts';\n\nexport interface ServerlessDrizzleClient {\n\tdriver: 'serverless';\n\thttpClient: NeonHttpClient;\n\tpool: Pool;\n\tconnectionString: string;\n}\n\nexport interface ServerDrizzleClient {\n\tdriver: 'server';\n\tpool: NodePgClient;\n\tconnectionString: string;\n}\n\nexport type DrizzleClient = ServerlessDrizzleClient | ServerDrizzleClient;\n\nexport interface NetlifyDbDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport interface DrizzleNetlifyConfig<TRelations extends AnyRelations = EmptyRelations>\n\textends DrizzlePgConfig<TRelations>\n{\n\t/** Netlify utilizes different driver for transactions, thus requiring separate set of codecs */\n\ttransactionCodecs?: PgCodecs | undefined;\n}\n\nexport class NetlifyDbDatabase<\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NetlifyDbDatabase';\n\n\tdeclare session: NetlifyDbSession<TRelations>;\n\n\t$withAuth(\n\t\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\t): Omit<this, '$withAuth'> {\n\t\tconst session = new NetlifyDbSession(this.session.httpClient, this.session.pool, this.dialect, this._.relations, {\n\t\t\t...this.session.options,\n\t\t\tauthToken: token,\n\t\t});\n\n\t\treturn new NetlifyDbDatabase(this.dialect, session, this._.relations) as any;\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(\n\t\t\tbatch,\n\t\t) as Promise<BatchResponse<T>>;\n\t}\n}\n\nexport const netlifyDbCodecs = refineGenericPgCodecs({\n\tbytea: {\n\t\tnormalizeParam: String,\n\t},\n\tjson: {\n\t\tnormalizeParam: (v) => JSON.stringify(v),\n\t},\n\tjsonb: {\n\t\tnormalizeParam: (v) => JSON.stringify(v),\n\t},\n});\n\nexport const netlifyDbTransactionCodecs = refineGenericPgCodecs();\n\nfunction construct<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\thttpClient: NeonHttpClient,\n\tpool: Pool,\n\tconfig: DrizzleNetlifyConfig<TRelations> = {},\n): NetlifyDbDatabase<TRelations> & {\n\t$client: NetlifyDbClient;\n} {\n\tconst dialect = new PgDialect({\n\t\tcasing: config.casing,\n\t\tcodecs: config.codecs ?? netlifyDbCodecs,\n\t\tuseJitMappers: config.useJitMappers,\n\t});\n\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\tconst relations = config.relations ?? {} as TRelations;\n\n\tconst session = new NetlifyDbSession(httpClient, pool, dialect, relations ?? {}, {\n\t\tlogger: logger,\n\t\tcache: config.cache,\n\t\tcasing: config.casing,\n\t\ttransactionCodecs: config.transactionCodecs ?? netlifyDbTransactionCodecs,\n\t});\n\n\ttypes.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);\n\ttypes.setTypeParser(types.builtins.TIMESTAMP, (val) => val);\n\ttypes.setTypeParser(types.builtins.DATE, (val) => val);\n\ttypes.setTypeParser(types.builtins.INTERVAL, (val) => val);\n\ttypes.setTypeParser(1231, (val) => val);\n\ttypes.setTypeParser(1115, (val) => val);\n\ttypes.setTypeParser(1185, (val) => val);\n\ttypes.setTypeParser(1187, (val) => val);\n\ttypes.setTypeParser(1182, (val) => val);\n\n\tconst db = new NetlifyDbDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t);\n\t(<any> db).$client = { http: httpClient, pool } satisfies NetlifyDbClient;\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\tTRelations extends AnyRelations = EmptyRelations,\n>():\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations>,\n):\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations> & { client: ServerlessDrizzleClient },\n): NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations> & { client: ServerDrizzleClient },\n): NodePgDatabase<TRelations> & { $client: NodePgClient };\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations> & { client: DrizzleClient },\n):\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\t...params: [\n\t\tstring,\n\t] | [\n\t\tstring,\n\t\tDrizzleNetlifyConfig<TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleNetlifyConfig<TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | { connectionString: string };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n): NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<TRelations extends AnyRelations = EmptyRelations>(\n\t...params: [] | [\n\t\tDrizzleNetlifyConfig<TRelations>,\n\t] | [\n\t\tstring,\n\t] | [\n\t\tstring,\n\t\tDrizzleNetlifyConfig<TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleNetlifyConfig<TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | { connectionString: string };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n):\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient })\n{\n\t// Zero-config: read env vars\n\tif (\n\t\tparams.length === 0\n\t\t|| (params.length === 1 && isConfig(params[0]) && !('connection' in (params[0] as any))\n\t\t\t&& !('client' in (params[0] as any)))\n\t) {\n\t\tconst drizzleConfig = (params[0] ?? {}) as DrizzleNetlifyConfig<TRelations>;\n\t\tconst connectionString = process.env['NETLIFY_DB_URL'];\n\n\t\tif (!connectionString) {\n\t\t\tthrow new Error(\n\t\t\t\t'NETLIFY_DB_URL environment variable is not set. '\n\t\t\t\t\t+ 'Provide a connection string or client to drizzle().',\n\t\t\t);\n\t\t}\n\n\t\tconst driver = process.env['NETLIFY_DB_DRIVER'];\n\n\t\tif (driver === 'server') {\n\t\t\treturn drizzleNodePg({ connection: connectionString, ...drizzleConfig }) as any;\n\t\t}\n\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tif (typeof params[0] === 'string') {\n\t\tconst connectionString = params[0];\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { connectionString: string } | string;\n\t\t\tclient?: NetlifyDbClient | DrizzleClient;\n\t\t} & DrizzleNetlifyConfig<TRelations>;\n\n\t\tif (client) {\n\t\t\tif ('driver' in client) {\n\t\t\t\tif (client.driver === 'serverless') {\n\t\t\t\t\treturn construct(client.httpClient, client.pool, drizzleConfig);\n\t\t\t\t}\n\t\t\t\treturn drizzleNodePg({ client: client.pool, ...drizzleConfig }) as any;\n\t\t\t}\n\t\t\treturn construct(client.http, client.pool, drizzleConfig);\n\t\t}\n\n\t\tconst connectionString = typeof connection === 'string' ? connection : connection!.connectionString;\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tthrow new Error('Invalid arguments. Expected a connection string or a config object.');\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleNetlifyConfig<TRelations>,\n\t): NetlifyDbDatabase<TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, {} as any, config) as any;\n\t}\n}\n"],"mappings":"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"}
@@ -1,14 +1,16 @@
1
+ import { Codec } from "../codecs.cjs";
1
2
  import { NetlifyDbClient, NetlifyDbSession } from "./session.cjs";
2
3
  import { entityKind } from "../entity.cjs";
3
- import { DrizzleConfig } from "../utils.cjs";
4
- import * as V1 from "../_relations.cjs";
4
+ import * as __utils_ts0 from "../utils.cjs";
5
5
  import { Cache } from "../cache/core/cache.cjs";
6
6
  import { AnyRelations, EmptyRelations } from "../relations.cjs";
7
- import { PgDialect } from "../pg-core/dialect.cjs";
8
7
  import { Logger } from "../logger.cjs";
8
+ import * as __pg_core_codecs_ts0 from "../pg-core/codecs.cjs";
9
+ import { PgCodecs } from "../pg-core/codecs.cjs";
9
10
  import { PgAsyncDatabase } from "../pg-core/async/db.cjs";
11
+ import { DrizzlePgConfig } from "../pg-core/utils.cjs";
10
12
  import { BatchItem, BatchResponse } from "../batch.cjs";
11
- import { Pool } from "@neondatabase/serverless";
13
+ import { HTTPQueryOptions, Pool } from "@neondatabase/serverless";
12
14
  import { NeonHttpClient, NeonHttpQueryResultHKT } from "../neon-http/session.cjs";
13
15
  import { NodePgDatabase } from "../node-postgres/driver.cjs";
14
16
  import { NodePgClient } from "../node-postgres/session.cjs";
@@ -30,61 +32,59 @@ interface NetlifyDbDriverOptions {
30
32
  logger?: Logger;
31
33
  cache?: Cache;
32
34
  }
33
- declare class NetlifyDbDriver {
34
- private httpClient;
35
- private pool;
36
- private dialect;
37
- private options;
38
- static readonly [entityKind]: string;
39
- constructor(httpClient: NeonHttpClient, pool: Pool, dialect: PgDialect, options?: NetlifyDbDriverOptions);
40
- createSession(relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined): NetlifyDbSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig>;
41
- initMappers(): void;
35
+ interface DrizzleNetlifyConfig<TRelations extends AnyRelations = EmptyRelations> extends DrizzlePgConfig<TRelations> {
36
+ /** Netlify utilizes different driver for transactions, thus requiring separate set of codecs */
37
+ transactionCodecs?: PgCodecs | undefined;
42
38
  }
43
- declare class NetlifyDbDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {
39
+ declare class NetlifyDbDatabase<TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TRelations> {
44
40
  static readonly [entityKind]: string;
41
+ session: NetlifyDbSession<TRelations>;
42
+ $withAuth(token: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>): Omit<this, '$withAuth'>;
45
43
  batch<U extends BatchItem<'pg'>, T extends Readonly<[U, ...U[]]>>(batch: T): Promise<BatchResponse<T>>;
46
44
  }
47
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(): (NetlifyDbDatabase<TSchema, TRelations> & {
45
+ declare const netlifyDbCodecs: __utils_ts0.PartialWithUndefined<Record<__pg_core_codecs_ts0.PostgresType, Codec>>;
46
+ declare const netlifyDbTransactionCodecs: __utils_ts0.PartialWithUndefined<Record<__pg_core_codecs_ts0.PostgresType, Codec>>;
47
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(): (NetlifyDbDatabase<TRelations> & {
48
48
  $client: NetlifyDbClient;
49
- }) | (NodePgDatabase<TSchema, TRelations> & {
49
+ }) | (NodePgDatabase<TRelations> & {
50
50
  $client: NodePgClient;
51
51
  });
52
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations>): (NetlifyDbDatabase<TSchema, TRelations> & {
52
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations>): (NetlifyDbDatabase<TRelations> & {
53
53
  $client: NetlifyDbClient;
54
- }) | (NodePgDatabase<TSchema, TRelations> & {
54
+ }) | (NodePgDatabase<TRelations> & {
55
55
  $client: NodePgClient;
56
56
  });
57
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations> & {
57
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations> & {
58
58
  client: ServerlessDrizzleClient;
59
- }): NetlifyDbDatabase<TSchema, TRelations> & {
59
+ }): NetlifyDbDatabase<TRelations> & {
60
60
  $client: NetlifyDbClient;
61
61
  };
62
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations> & {
62
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations> & {
63
63
  client: ServerDrizzleClient;
64
- }): NodePgDatabase<TSchema, TRelations> & {
64
+ }): NodePgDatabase<TRelations> & {
65
65
  $client: NodePgClient;
66
66
  };
67
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations> & {
67
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations> & {
68
68
  client: DrizzleClient;
69
- }): (NetlifyDbDatabase<TSchema, TRelations> & {
69
+ }): (NetlifyDbDatabase<TRelations> & {
70
70
  $client: NetlifyDbClient;
71
- }) | (NodePgDatabase<TSchema, TRelations> & {
71
+ }) | (NodePgDatabase<TRelations> & {
72
72
  $client: NodePgClient;
73
73
  });
74
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(...params: [string] | [string, DrizzleConfig<TSchema, TRelations>] | [(DrizzleConfig<TSchema, TRelations> & ({
74
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(...params: [string] | [string, DrizzleNetlifyConfig<TRelations>] | [(DrizzleNetlifyConfig<TRelations> & ({
75
75
  connection: string | {
76
76
  connectionString: string;
77
77
  };
78
78
  } | {
79
79
  client: NetlifyDbClient | DrizzleClient;
80
- }))]): NetlifyDbDatabase<TSchema, TRelations> & {
80
+ }))]): NetlifyDbDatabase<TRelations> & {
81
81
  $client: NetlifyDbClient;
82
82
  };
83
83
  declare namespace drizzle {
84
- function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): NetlifyDbDatabase<TSchema, TRelations> & {
84
+ function mock<TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleNetlifyConfig<TRelations>): NetlifyDbDatabase<TRelations> & {
85
85
  $client: '$client is not available on drizzle.mock()';
86
86
  };
87
87
  }
88
88
  //#endregion
89
- export { DrizzleClient, NetlifyDbDatabase, NetlifyDbDriver, NetlifyDbDriverOptions, ServerDrizzleClient, ServerlessDrizzleClient, drizzle };
89
+ export { DrizzleClient, DrizzleNetlifyConfig, NetlifyDbDatabase, NetlifyDbDriverOptions, ServerDrizzleClient, ServerlessDrizzleClient, drizzle, netlifyDbCodecs, netlifyDbTransactionCodecs };
90
90
  //# sourceMappingURL=driver.d.cts.map
@@ -1,16 +1,18 @@
1
+ import { Codec } from "../codecs.js";
1
2
  import { NetlifyDbClient, NetlifyDbSession } from "./session.js";
2
3
  import { entityKind } from "../entity.js";
3
- import { DrizzleConfig } from "../utils.js";
4
- import * as V1 from "../_relations.js";
4
+ import * as __utils_ts0 from "../utils.js";
5
5
  import { Logger } from "../logger.js";
6
+ import { AnyRelations, EmptyRelations } from "../relations.js";
6
7
  import { PgAsyncDatabase } from "../pg-core/async/db.js";
7
- import { PgDialect } from "../pg-core/dialect.js";
8
+ import * as __pg_core_codecs_ts0 from "../pg-core/codecs.js";
9
+ import { PgCodecs } from "../pg-core/codecs.js";
8
10
  import { Cache } from "../cache/core/cache.js";
9
- import { Pool } from "@neondatabase/serverless";
10
- import { AnyRelations, EmptyRelations } from "../relations.js";
11
+ import { HTTPQueryOptions, Pool } from "@neondatabase/serverless";
11
12
  import { NodePgDatabase } from "../node-postgres/driver.js";
12
- import { NeonHttpClient, NeonHttpQueryResultHKT } from "../neon-http/session.js";
13
+ import { DrizzlePgConfig } from "../pg-core/utils.js";
13
14
  import { BatchItem, BatchResponse } from "../batch.js";
15
+ import { NeonHttpClient, NeonHttpQueryResultHKT } from "../neon-http/session.js";
14
16
  import { NodePgClient } from "../node-postgres/session.js";
15
17
 
16
18
  //#region src/netlify-db/driver.d.ts
@@ -30,61 +32,59 @@ interface NetlifyDbDriverOptions {
30
32
  logger?: Logger;
31
33
  cache?: Cache;
32
34
  }
33
- declare class NetlifyDbDriver {
34
- private httpClient;
35
- private pool;
36
- private dialect;
37
- private options;
38
- static readonly [entityKind]: string;
39
- constructor(httpClient: NeonHttpClient, pool: Pool, dialect: PgDialect, options?: NetlifyDbDriverOptions);
40
- createSession(relations: AnyRelations | undefined, schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined): NetlifyDbSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig>;
41
- initMappers(): void;
35
+ interface DrizzleNetlifyConfig<TRelations extends AnyRelations = EmptyRelations> extends DrizzlePgConfig<TRelations> {
36
+ /** Netlify utilizes different driver for transactions, thus requiring separate set of codecs */
37
+ transactionCodecs?: PgCodecs | undefined;
42
38
  }
43
- declare class NetlifyDbDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {
39
+ declare class NetlifyDbDatabase<TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TRelations> {
44
40
  static readonly [entityKind]: string;
41
+ session: NetlifyDbSession<TRelations>;
42
+ $withAuth(token: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>): Omit<this, '$withAuth'>;
45
43
  batch<U extends BatchItem<'pg'>, T extends Readonly<[U, ...U[]]>>(batch: T): Promise<BatchResponse<T>>;
46
44
  }
47
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(): (NetlifyDbDatabase<TSchema, TRelations> & {
45
+ declare const netlifyDbCodecs: __utils_ts0.PartialWithUndefined<Record<__pg_core_codecs_ts0.PostgresType, Codec>>;
46
+ declare const netlifyDbTransactionCodecs: __utils_ts0.PartialWithUndefined<Record<__pg_core_codecs_ts0.PostgresType, Codec>>;
47
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(): (NetlifyDbDatabase<TRelations> & {
48
48
  $client: NetlifyDbClient;
49
- }) | (NodePgDatabase<TSchema, TRelations> & {
49
+ }) | (NodePgDatabase<TRelations> & {
50
50
  $client: NodePgClient;
51
51
  });
52
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations>): (NetlifyDbDatabase<TSchema, TRelations> & {
52
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations>): (NetlifyDbDatabase<TRelations> & {
53
53
  $client: NetlifyDbClient;
54
- }) | (NodePgDatabase<TSchema, TRelations> & {
54
+ }) | (NodePgDatabase<TRelations> & {
55
55
  $client: NodePgClient;
56
56
  });
57
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations> & {
57
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations> & {
58
58
  client: ServerlessDrizzleClient;
59
- }): NetlifyDbDatabase<TSchema, TRelations> & {
59
+ }): NetlifyDbDatabase<TRelations> & {
60
60
  $client: NetlifyDbClient;
61
61
  };
62
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations> & {
62
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations> & {
63
63
  client: ServerDrizzleClient;
64
- }): NodePgDatabase<TSchema, TRelations> & {
64
+ }): NodePgDatabase<TRelations> & {
65
65
  $client: NodePgClient;
66
66
  };
67
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config: DrizzleConfig<TSchema, TRelations> & {
67
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(config: DrizzleNetlifyConfig<TRelations> & {
68
68
  client: DrizzleClient;
69
- }): (NetlifyDbDatabase<TSchema, TRelations> & {
69
+ }): (NetlifyDbDatabase<TRelations> & {
70
70
  $client: NetlifyDbClient;
71
- }) | (NodePgDatabase<TSchema, TRelations> & {
71
+ }) | (NodePgDatabase<TRelations> & {
72
72
  $client: NodePgClient;
73
73
  });
74
- declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(...params: [string] | [string, DrizzleConfig<TSchema, TRelations>] | [(DrizzleConfig<TSchema, TRelations> & ({
74
+ declare function drizzle<TRelations extends AnyRelations = EmptyRelations>(...params: [string] | [string, DrizzleNetlifyConfig<TRelations>] | [(DrizzleNetlifyConfig<TRelations> & ({
75
75
  connection: string | {
76
76
  connectionString: string;
77
77
  };
78
78
  } | {
79
79
  client: NetlifyDbClient | DrizzleClient;
80
- }))]): NetlifyDbDatabase<TSchema, TRelations> & {
80
+ }))]): NetlifyDbDatabase<TRelations> & {
81
81
  $client: NetlifyDbClient;
82
82
  };
83
83
  declare namespace drizzle {
84
- function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): NetlifyDbDatabase<TSchema, TRelations> & {
84
+ function mock<TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleNetlifyConfig<TRelations>): NetlifyDbDatabase<TRelations> & {
85
85
  $client: '$client is not available on drizzle.mock()';
86
86
  };
87
87
  }
88
88
  //#endregion
89
- export { DrizzleClient, NetlifyDbDatabase, NetlifyDbDriver, NetlifyDbDriverOptions, ServerDrizzleClient, ServerlessDrizzleClient, drizzle };
89
+ export { DrizzleClient, DrizzleNetlifyConfig, NetlifyDbDatabase, NetlifyDbDriverOptions, ServerDrizzleClient, ServerlessDrizzleClient, drizzle, netlifyDbCodecs, netlifyDbTransactionCodecs };
90
90
  //# sourceMappingURL=driver.d.ts.map
@@ -1,66 +1,59 @@
1
1
  import { NetlifyDbSession } from "./session.js";
2
2
  import { entityKind } from "../entity.js";
3
3
  import { isConfig } from "../utils.js";
4
- import * as V1 from "../_relations.js";
5
4
  import { DefaultLogger } from "../logger.js";
6
5
  import { PgAsyncDatabase } from "../pg-core/async/db.js";
6
+ import { refineGenericPgCodecs } from "../pg-core/codecs.js";
7
7
  import { PgDialect } from "../pg-core/dialect.js";
8
8
  import { Pool, neon, types } from "@neondatabase/serverless";
9
9
  import { drizzle as drizzle$1 } from "../node-postgres/driver.js";
10
10
 
11
11
  //#region src/netlify-db/driver.ts
12
- var NetlifyDbDriver = class {
13
- static [entityKind] = "NetlifyDbDriver";
14
- constructor(httpClient, pool, dialect, options = {}) {
15
- this.httpClient = httpClient;
16
- this.pool = pool;
17
- this.dialect = dialect;
18
- this.options = options;
19
- this.initMappers();
20
- }
21
- createSession(relations, schema) {
22
- return new NetlifyDbSession(this.httpClient, this.pool, this.dialect, relations ?? {}, schema, {
23
- logger: this.options.logger,
24
- cache: this.options.cache
12
+ var NetlifyDbDatabase = class NetlifyDbDatabase extends PgAsyncDatabase {
13
+ static [entityKind] = "NetlifyDbDatabase";
14
+ $withAuth(token) {
15
+ const session = new NetlifyDbSession(this.session.httpClient, this.session.pool, this.dialect, this._.relations, {
16
+ ...this.session.options,
17
+ authToken: token
25
18
  });
19
+ return new NetlifyDbDatabase(this.dialect, session, this._.relations);
26
20
  }
27
- initMappers() {
28
- types.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);
29
- types.setTypeParser(types.builtins.TIMESTAMP, (val) => val);
30
- types.setTypeParser(types.builtins.DATE, (val) => val);
31
- types.setTypeParser(types.builtins.INTERVAL, (val) => val);
32
- types.setTypeParser(1231, (val) => val);
33
- types.setTypeParser(1115, (val) => val);
34
- types.setTypeParser(1185, (val) => val);
35
- types.setTypeParser(1187, (val) => val);
36
- types.setTypeParser(1182, (val) => val);
37
- }
38
- };
39
- var NetlifyDbDatabase = class extends PgAsyncDatabase {
40
- static [entityKind] = "NetlifyDbDatabase";
41
21
  async batch(batch) {
42
22
  return this.session.batch(batch);
43
23
  }
44
24
  };
25
+ const netlifyDbCodecs = refineGenericPgCodecs({
26
+ bytea: { normalizeParam: String },
27
+ json: { normalizeParam: (v) => JSON.stringify(v) },
28
+ jsonb: { normalizeParam: (v) => JSON.stringify(v) }
29
+ });
30
+ const netlifyDbTransactionCodecs = refineGenericPgCodecs();
45
31
  function construct(httpClient, pool, config = {}) {
46
- const dialect = new PgDialect({ casing: config.casing });
32
+ const dialect = new PgDialect({
33
+ casing: config.casing,
34
+ codecs: config.codecs ?? netlifyDbCodecs,
35
+ useJitMappers: config.useJitMappers
36
+ });
47
37
  let logger;
48
38
  if (config.logger === true) logger = new DefaultLogger();
49
39
  else if (config.logger !== false) logger = config.logger;
50
- let schema;
51
- if (config.schema) {
52
- const tablesConfig = V1.extractTablesRelationalConfig(config.schema, V1.createTableRelationsHelpers);
53
- schema = {
54
- fullSchema: config.schema,
55
- schema: tablesConfig.tables,
56
- tableNamesMap: tablesConfig.tableNamesMap
57
- };
58
- }
59
40
  const relations = config.relations ?? {};
60
- const db = new NetlifyDbDatabase(dialect, new NetlifyDbDriver(httpClient, pool, dialect, {
41
+ const session = new NetlifyDbSession(httpClient, pool, dialect, relations ?? {}, {
61
42
  logger,
62
- cache: config.cache
63
- }).createSession(relations, schema), relations, schema);
43
+ cache: config.cache,
44
+ casing: config.casing,
45
+ transactionCodecs: config.transactionCodecs ?? netlifyDbTransactionCodecs
46
+ });
47
+ types.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);
48
+ types.setTypeParser(types.builtins.TIMESTAMP, (val) => val);
49
+ types.setTypeParser(types.builtins.DATE, (val) => val);
50
+ types.setTypeParser(types.builtins.INTERVAL, (val) => val);
51
+ types.setTypeParser(1231, (val) => val);
52
+ types.setTypeParser(1115, (val) => val);
53
+ types.setTypeParser(1185, (val) => val);
54
+ types.setTypeParser(1187, (val) => val);
55
+ types.setTypeParser(1182, (val) => val);
56
+ const db = new NetlifyDbDatabase(dialect, session, relations);
64
57
  db.$client = {
65
58
  http: httpClient,
66
59
  pool
@@ -109,5 +102,5 @@ function drizzle(...params) {
109
102
  })(drizzle || (drizzle = {}));
110
103
 
111
104
  //#endregion
112
- export { NetlifyDbDatabase, NetlifyDbDriver, drizzle };
105
+ export { NetlifyDbDatabase, drizzle, netlifyDbCodecs, netlifyDbTransactionCodecs };
113
106
  //# sourceMappingURL=driver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","names":["drizzleNodePg"],"sources":["../../src/netlify-db/driver.ts"],"sourcesContent":["import { neon, Pool, 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 type { NeonHttpClient, NeonHttpQueryResultHKT } from '~/neon-http/session.ts';\nimport { drizzle as drizzleNodePg, type NodePgDatabase } from '~/node-postgres/driver.ts';\nimport type { NodePgClient } from '~/node-postgres/session.ts';\nimport { PgAsyncDatabase } from '~/pg-core/async/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 NetlifyDbClient, NetlifyDbSession } from './session.ts';\n\nexport interface ServerlessDrizzleClient {\n\tdriver: 'serverless';\n\thttpClient: NeonHttpClient;\n\tpool: Pool;\n\tconnectionString: string;\n}\n\nexport interface ServerDrizzleClient {\n\tdriver: 'server';\n\tpool: NodePgClient;\n\tconnectionString: string;\n}\n\nexport type DrizzleClient = ServerlessDrizzleClient | ServerDrizzleClient;\n\nexport interface NetlifyDbDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NetlifyDbDriver {\n\tstatic readonly [entityKind]: string = 'NetlifyDbDriver';\n\n\tconstructor(\n\t\tprivate httpClient: NeonHttpClient,\n\t\tprivate pool: Pool,\n\t\tprivate dialect: PgDialect,\n\t\tprivate options: NetlifyDbDriverOptions = {},\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): NetlifyDbSession<Record<string, unknown>, EmptyRelations, V1.TablesRelationalConfig> {\n\t\treturn new NetlifyDbSession(this.httpClient, this.pool, this.dialect, relations ?? {}, 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\nexport class NetlifyDbDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NetlifyDbDatabase';\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 (<NetlifyDbSession<TSchema, TRelations, V1.ExtractTablesWithRelations<TSchema>>> this.session).batch(\n\t\t\tbatch,\n\t\t) 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>(\n\thttpClient: NeonHttpClient,\n\tpool: Pool,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): NetlifyDbDatabase<TSchema, TRelations> & {\n\t$client: NetlifyDbClient;\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 NetlifyDbDriver(httpClient, pool, dialect, { logger, cache: config.cache });\n\tconst session = driver.createSession(relations, schema);\n\n\tconst db = new NetlifyDbDatabase(\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 = { http: httpClient, pool } satisfies NetlifyDbClient;\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>():\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations>,\n):\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations> & { client: ServerlessDrizzleClient },\n): NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations> & { client: ServerDrizzleClient },\n): NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient };\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleConfig<TSchema, TRelations> & { client: DrizzleClient },\n):\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\t...params: [\n\t\tstring,\n\t] | [\n\t\tstring,\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 };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n): NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\t...params: [] | [\n\t\tDrizzleConfig<TSchema>,\n\t] | [\n\t\tstring,\n\t] | [\n\t\tstring,\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 };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n):\n\t| (NetlifyDbDatabase<TSchema, TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TSchema, TRelations> & { $client: NodePgClient })\n{\n\t// Zero-config: read env vars\n\tif (\n\t\tparams.length === 0\n\t\t|| (params.length === 1 && isConfig(params[0]) && !('connection' in (params[0] as any))\n\t\t\t&& !('client' in (params[0] as any)))\n\t) {\n\t\tconst drizzleConfig = (params[0] ?? {}) as DrizzleConfig<TSchema, TRelations>;\n\t\tconst connectionString = process.env['NETLIFY_DB_URL'];\n\n\t\tif (!connectionString) {\n\t\t\tthrow new Error(\n\t\t\t\t'NETLIFY_DB_URL environment variable is not set. '\n\t\t\t\t\t+ 'Provide a connection string or client to drizzle().',\n\t\t\t);\n\t\t}\n\n\t\tconst driver = process.env['NETLIFY_DB_DRIVER'];\n\n\t\tif (driver === 'server') {\n\t\t\treturn drizzleNodePg({ connection: connectionString, ...drizzleConfig }) as any;\n\t\t}\n\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tif (typeof params[0] === 'string') {\n\t\tconst connectionString = params[0];\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { connectionString: string } | string;\n\t\t\tclient?: NetlifyDbClient | DrizzleClient;\n\t\t} & DrizzleConfig<TSchema, TRelations>;\n\n\t\tif (client) {\n\t\t\tif ('driver' in client) {\n\t\t\t\tif (client.driver === 'serverless') {\n\t\t\t\t\treturn construct(client.httpClient, client.pool, drizzleConfig);\n\t\t\t\t}\n\t\t\t\treturn drizzleNodePg({ client: client.pool, ...drizzleConfig }) as any;\n\t\t\t}\n\t\t\treturn construct(client.http, client.pool, drizzleConfig);\n\t\t}\n\n\t\tconst connectionString = typeof connection === 'string' ? connection : connection!.connectionString;\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tthrow new Error('Invalid arguments. Expected a connection string or a config object.');\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): NetlifyDbDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, {} as any, config) as any;\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"driver.js","names":["drizzleNodePg"],"sources":["../../src/netlify-db/driver.ts"],"sourcesContent":["import { type HTTPQueryOptions, neon, Pool, types } from '@neondatabase/serverless';\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 type { NeonHttpClient, NeonHttpQueryResultHKT } from '~/neon-http/session.ts';\nimport { drizzle as drizzleNodePg, type NodePgDatabase } from '~/node-postgres/driver.ts';\nimport type { NodePgClient } from '~/node-postgres/session.ts';\nimport { PgAsyncDatabase } from '~/pg-core/async/db.ts';\nimport { type PgCodecs, refineGenericPgCodecs } from '~/pg-core/codecs.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type { DrizzlePgConfig } from '~/pg-core/utils.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { isConfig } from '~/utils.ts';\nimport { type NetlifyDbClient, NetlifyDbSession } from './session.ts';\n\nexport interface ServerlessDrizzleClient {\n\tdriver: 'serverless';\n\thttpClient: NeonHttpClient;\n\tpool: Pool;\n\tconnectionString: string;\n}\n\nexport interface ServerDrizzleClient {\n\tdriver: 'server';\n\tpool: NodePgClient;\n\tconnectionString: string;\n}\n\nexport type DrizzleClient = ServerlessDrizzleClient | ServerDrizzleClient;\n\nexport interface NetlifyDbDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport interface DrizzleNetlifyConfig<TRelations extends AnyRelations = EmptyRelations>\n\textends DrizzlePgConfig<TRelations>\n{\n\t/** Netlify utilizes different driver for transactions, thus requiring separate set of codecs */\n\ttransactionCodecs?: PgCodecs | undefined;\n}\n\nexport class NetlifyDbDatabase<\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgAsyncDatabase<NeonHttpQueryResultHKT, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NetlifyDbDatabase';\n\n\tdeclare session: NetlifyDbSession<TRelations>;\n\n\t$withAuth(\n\t\ttoken: Exclude<HTTPQueryOptions<true, true>['authToken'], undefined>,\n\t): Omit<this, '$withAuth'> {\n\t\tconst session = new NetlifyDbSession(this.session.httpClient, this.session.pool, this.dialect, this._.relations, {\n\t\t\t...this.session.options,\n\t\t\tauthToken: token,\n\t\t});\n\n\t\treturn new NetlifyDbDatabase(this.dialect, session, this._.relations) as any;\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(\n\t\t\tbatch,\n\t\t) as Promise<BatchResponse<T>>;\n\t}\n}\n\nexport const netlifyDbCodecs = refineGenericPgCodecs({\n\tbytea: {\n\t\tnormalizeParam: String,\n\t},\n\tjson: {\n\t\tnormalizeParam: (v) => JSON.stringify(v),\n\t},\n\tjsonb: {\n\t\tnormalizeParam: (v) => JSON.stringify(v),\n\t},\n});\n\nexport const netlifyDbTransactionCodecs = refineGenericPgCodecs();\n\nfunction construct<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\thttpClient: NeonHttpClient,\n\tpool: Pool,\n\tconfig: DrizzleNetlifyConfig<TRelations> = {},\n): NetlifyDbDatabase<TRelations> & {\n\t$client: NetlifyDbClient;\n} {\n\tconst dialect = new PgDialect({\n\t\tcasing: config.casing,\n\t\tcodecs: config.codecs ?? netlifyDbCodecs,\n\t\tuseJitMappers: config.useJitMappers,\n\t});\n\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\tconst relations = config.relations ?? {} as TRelations;\n\n\tconst session = new NetlifyDbSession(httpClient, pool, dialect, relations ?? {}, {\n\t\tlogger: logger,\n\t\tcache: config.cache,\n\t\tcasing: config.casing,\n\t\ttransactionCodecs: config.transactionCodecs ?? netlifyDbTransactionCodecs,\n\t});\n\n\ttypes.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);\n\ttypes.setTypeParser(types.builtins.TIMESTAMP, (val) => val);\n\ttypes.setTypeParser(types.builtins.DATE, (val) => val);\n\ttypes.setTypeParser(types.builtins.INTERVAL, (val) => val);\n\ttypes.setTypeParser(1231, (val) => val);\n\ttypes.setTypeParser(1115, (val) => val);\n\ttypes.setTypeParser(1185, (val) => val);\n\ttypes.setTypeParser(1187, (val) => val);\n\ttypes.setTypeParser(1182, (val) => val);\n\n\tconst db = new NetlifyDbDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t);\n\t(<any> db).$client = { http: httpClient, pool } satisfies NetlifyDbClient;\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\tTRelations extends AnyRelations = EmptyRelations,\n>():\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations>,\n):\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations> & { client: ServerlessDrizzleClient },\n): NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations> & { client: ServerDrizzleClient },\n): NodePgDatabase<TRelations> & { $client: NodePgClient };\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tconfig: DrizzleNetlifyConfig<TRelations> & { client: DrizzleClient },\n):\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient });\n\nexport function drizzle<\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\t...params: [\n\t\tstring,\n\t] | [\n\t\tstring,\n\t\tDrizzleNetlifyConfig<TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleNetlifyConfig<TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | { connectionString: string };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n): NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient };\n\nexport function drizzle<TRelations extends AnyRelations = EmptyRelations>(\n\t...params: [] | [\n\t\tDrizzleNetlifyConfig<TRelations>,\n\t] | [\n\t\tstring,\n\t] | [\n\t\tstring,\n\t\tDrizzleNetlifyConfig<TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleNetlifyConfig<TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | { connectionString: string };\n\t\t\t} | {\n\t\t\t\tclient: NetlifyDbClient | DrizzleClient;\n\t\t\t})\n\t\t),\n\t]\n):\n\t| (NetlifyDbDatabase<TRelations> & { $client: NetlifyDbClient })\n\t| (NodePgDatabase<TRelations> & { $client: NodePgClient })\n{\n\t// Zero-config: read env vars\n\tif (\n\t\tparams.length === 0\n\t\t|| (params.length === 1 && isConfig(params[0]) && !('connection' in (params[0] as any))\n\t\t\t&& !('client' in (params[0] as any)))\n\t) {\n\t\tconst drizzleConfig = (params[0] ?? {}) as DrizzleNetlifyConfig<TRelations>;\n\t\tconst connectionString = process.env['NETLIFY_DB_URL'];\n\n\t\tif (!connectionString) {\n\t\t\tthrow new Error(\n\t\t\t\t'NETLIFY_DB_URL environment variable is not set. '\n\t\t\t\t\t+ 'Provide a connection string or client to drizzle().',\n\t\t\t);\n\t\t}\n\n\t\tconst driver = process.env['NETLIFY_DB_DRIVER'];\n\n\t\tif (driver === 'server') {\n\t\t\treturn drizzleNodePg({ connection: connectionString, ...drizzleConfig }) as any;\n\t\t}\n\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tif (typeof params[0] === 'string') {\n\t\tconst connectionString = params[0];\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\t\treturn construct(httpClient, pool, params[1]) as any;\n\t}\n\n\tif (isConfig(params[0])) {\n\t\tconst { connection, client, ...drizzleConfig } = params[0] as {\n\t\t\tconnection?: { connectionString: string } | string;\n\t\t\tclient?: NetlifyDbClient | DrizzleClient;\n\t\t} & DrizzleNetlifyConfig<TRelations>;\n\n\t\tif (client) {\n\t\t\tif ('driver' in client) {\n\t\t\t\tif (client.driver === 'serverless') {\n\t\t\t\t\treturn construct(client.httpClient, client.pool, drizzleConfig);\n\t\t\t\t}\n\t\t\t\treturn drizzleNodePg({ client: client.pool, ...drizzleConfig }) as any;\n\t\t\t}\n\t\t\treturn construct(client.http, client.pool, drizzleConfig);\n\t\t}\n\n\t\tconst connectionString = typeof connection === 'string' ? connection : connection!.connectionString;\n\t\tconst httpClient = neon(connectionString);\n\t\tconst pool = new Pool({ connectionString });\n\n\t\treturn construct(httpClient, pool, drizzleConfig) as any;\n\t}\n\n\tthrow new Error('Invalid arguments. Expected a connection string or a config object.');\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleNetlifyConfig<TRelations>,\n\t): NetlifyDbDatabase<TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, {} as any, config) as any;\n\t}\n}\n"],"mappings":"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"}