drizzle-orm 1.0.0-beta.20-afec359 → 1.0.0-beta.21

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 (1633) hide show
  1. package/_relations.cjs.map +1 -1
  2. package/_relations.d.cts +13 -2
  3. package/_relations.d.ts +13 -2
  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 +0 -2
  8. package/aws-data-api/common/index.cjs.map +1 -1
  9. package/aws-data-api/common/index.js +0 -2
  10. package/aws-data-api/common/index.js.map +1 -1
  11. package/aws-data-api/pg/driver.cjs +20 -93
  12. package/aws-data-api/pg/driver.cjs.map +1 -1
  13. package/aws-data-api/pg/driver.d.cts +13 -17
  14. package/aws-data-api/pg/driver.d.ts +13 -17
  15. package/aws-data-api/pg/driver.js +20 -93
  16. package/aws-data-api/pg/driver.js.map +1 -1
  17. package/aws-data-api/pg/index.cjs +1 -1
  18. package/aws-data-api/pg/index.d.cts +3 -3
  19. package/aws-data-api/pg/index.d.ts +3 -3
  20. package/aws-data-api/pg/index.js +3 -3
  21. package/aws-data-api/pg/migrator.cjs.map +1 -1
  22. package/aws-data-api/pg/migrator.d.cts +1 -1
  23. package/aws-data-api/pg/migrator.d.ts +1 -1
  24. package/aws-data-api/pg/migrator.js.map +1 -1
  25. package/aws-data-api/pg/session.cjs +113 -44
  26. package/aws-data-api/pg/session.cjs.map +1 -1
  27. package/aws-data-api/pg/session.d.cts +42 -12
  28. package/aws-data-api/pg/session.d.ts +43 -13
  29. package/aws-data-api/pg/session.js +114 -46
  30. package/aws-data-api/pg/session.js.map +1 -1
  31. package/better-sqlite3/driver.cjs +2 -5
  32. package/better-sqlite3/driver.cjs.map +1 -1
  33. package/better-sqlite3/driver.d.ts +1 -1
  34. package/better-sqlite3/driver.js +2 -5
  35. package/better-sqlite3/driver.js.map +1 -1
  36. package/better-sqlite3/session.cjs +15 -16
  37. package/better-sqlite3/session.cjs.map +1 -1
  38. package/better-sqlite3/session.d.cts +6 -10
  39. package/better-sqlite3/session.d.ts +7 -11
  40. package/better-sqlite3/session.js +16 -17
  41. package/better-sqlite3/session.js.map +1 -1
  42. package/bun-sql/driver.cjs.map +1 -1
  43. package/bun-sql/driver.d.cts +6 -7
  44. package/bun-sql/driver.d.ts +6 -7
  45. package/bun-sql/driver.js.map +1 -1
  46. package/bun-sql/index.cjs +1 -0
  47. package/bun-sql/index.d.cts +2 -2
  48. package/bun-sql/index.d.ts +2 -2
  49. package/bun-sql/index.js +2 -2
  50. package/bun-sql/migrator.cjs.map +1 -1
  51. package/bun-sql/migrator.d.cts +2 -2
  52. package/bun-sql/migrator.d.ts +2 -2
  53. package/bun-sql/migrator.js.map +1 -1
  54. package/bun-sql/mysql/driver.cjs +3 -4
  55. package/bun-sql/mysql/driver.cjs.map +1 -1
  56. package/bun-sql/mysql/driver.js +2 -3
  57. package/bun-sql/mysql/driver.js.map +1 -1
  58. package/bun-sql/mysql/session.cjs +24 -37
  59. package/bun-sql/mysql/session.cjs.map +1 -1
  60. package/bun-sql/mysql/session.d.cts +4 -10
  61. package/bun-sql/mysql/session.d.ts +6 -12
  62. package/bun-sql/mysql/session.js +25 -38
  63. package/bun-sql/mysql/session.js.map +1 -1
  64. package/bun-sql/postgres/driver.cjs +20 -144
  65. package/bun-sql/postgres/driver.cjs.map +1 -1
  66. package/bun-sql/postgres/driver.d.cts +6 -10
  67. package/bun-sql/postgres/driver.d.ts +7 -11
  68. package/bun-sql/postgres/driver.js +20 -144
  69. package/bun-sql/postgres/driver.js.map +1 -1
  70. package/bun-sql/postgres/index.cjs +1 -1
  71. package/bun-sql/postgres/index.d.cts +3 -3
  72. package/bun-sql/postgres/index.d.ts +3 -3
  73. package/bun-sql/postgres/index.js +3 -3
  74. package/bun-sql/postgres/migrator.cjs.map +1 -1
  75. package/bun-sql/postgres/migrator.d.cts +1 -1
  76. package/bun-sql/postgres/migrator.d.ts +1 -1
  77. package/bun-sql/postgres/migrator.js.map +1 -1
  78. package/bun-sql/postgres/session.cjs +112 -17
  79. package/bun-sql/postgres/session.cjs.map +1 -1
  80. package/bun-sql/postgres/session.d.cts +33 -11
  81. package/bun-sql/postgres/session.d.ts +34 -12
  82. package/bun-sql/postgres/session.js +112 -18
  83. package/bun-sql/postgres/session.js.map +1 -1
  84. package/bun-sql/session.cjs +1 -0
  85. package/bun-sql/session.d.cts +2 -2
  86. package/bun-sql/session.d.ts +2 -2
  87. package/bun-sql/session.js +2 -2
  88. package/bun-sql/sqlite/driver.cjs +3 -4
  89. package/bun-sql/sqlite/driver.cjs.map +1 -1
  90. package/bun-sql/sqlite/driver.d.ts +1 -1
  91. package/bun-sql/sqlite/driver.js +2 -3
  92. package/bun-sql/sqlite/driver.js.map +1 -1
  93. package/bun-sql/sqlite/session.cjs +17 -18
  94. package/bun-sql/sqlite/session.cjs.map +1 -1
  95. package/bun-sql/sqlite/session.d.cts +6 -9
  96. package/bun-sql/sqlite/session.d.ts +7 -10
  97. package/bun-sql/sqlite/session.js +18 -19
  98. package/bun-sql/sqlite/session.js.map +1 -1
  99. package/bun-sqlite/driver.cjs +2 -5
  100. package/bun-sqlite/driver.cjs.map +1 -1
  101. package/bun-sqlite/driver.d.ts +1 -1
  102. package/bun-sqlite/driver.js +2 -5
  103. package/bun-sqlite/driver.js.map +1 -1
  104. package/bun-sqlite/session.cjs +14 -15
  105. package/bun-sqlite/session.cjs.map +1 -1
  106. package/bun-sqlite/session.d.cts +6 -10
  107. package/bun-sqlite/session.d.ts +6 -10
  108. package/bun-sqlite/session.js +15 -16
  109. package/bun-sqlite/session.js.map +1 -1
  110. package/cache/core/cache-effect.cjs +2 -2
  111. package/cache/core/cache-effect.d.ts +1 -1
  112. package/cache/core/cache-effect.js +1 -1
  113. package/cockroach/driver.cjs +4 -10
  114. package/cockroach/driver.cjs.map +1 -1
  115. package/cockroach/driver.d.cts +0 -1
  116. package/cockroach/driver.d.ts +2 -3
  117. package/cockroach/driver.js +4 -10
  118. package/cockroach/driver.js.map +1 -1
  119. package/cockroach/session.cjs +9 -7
  120. package/cockroach/session.cjs.map +1 -1
  121. package/cockroach/session.d.cts +3 -5
  122. package/cockroach/session.d.ts +5 -7
  123. package/cockroach/session.js +10 -8
  124. package/cockroach/session.js.map +1 -1
  125. package/cockroach-core/columns/bigint.cjs +4 -4
  126. package/cockroach-core/columns/bigint.cjs.map +1 -1
  127. package/cockroach-core/columns/bigint.d.cts +2 -2
  128. package/cockroach-core/columns/bigint.d.ts +2 -2
  129. package/cockroach-core/columns/bigint.js +4 -4
  130. package/cockroach-core/columns/bigint.js.map +1 -1
  131. package/cockroach-core/columns/common.cjs +5 -5
  132. package/cockroach-core/columns/common.cjs.map +1 -1
  133. package/cockroach-core/columns/common.d.cts +2 -2
  134. package/cockroach-core/columns/common.d.ts +3 -3
  135. package/cockroach-core/columns/common.js +5 -5
  136. package/cockroach-core/columns/common.js.map +1 -1
  137. package/cockroach-core/columns/custom.cjs +4 -4
  138. package/cockroach-core/columns/custom.cjs.map +1 -1
  139. package/cockroach-core/columns/custom.d.cts +2 -2
  140. package/cockroach-core/columns/custom.d.ts +2 -2
  141. package/cockroach-core/columns/custom.js +4 -4
  142. package/cockroach-core/columns/custom.js.map +1 -1
  143. package/cockroach-core/columns/date.cjs +6 -6
  144. package/cockroach-core/columns/date.cjs.map +1 -1
  145. package/cockroach-core/columns/date.d.cts +3 -3
  146. package/cockroach-core/columns/date.d.ts +3 -3
  147. package/cockroach-core/columns/date.js +6 -6
  148. package/cockroach-core/columns/date.js.map +1 -1
  149. package/cockroach-core/columns/decimal.cjs +4 -4
  150. package/cockroach-core/columns/decimal.cjs.map +1 -1
  151. package/cockroach-core/columns/decimal.d.cts +2 -2
  152. package/cockroach-core/columns/decimal.d.ts +2 -2
  153. package/cockroach-core/columns/decimal.js +4 -4
  154. package/cockroach-core/columns/decimal.js.map +1 -1
  155. package/cockroach-core/columns/float.cjs +2 -2
  156. package/cockroach-core/columns/float.cjs.map +1 -1
  157. package/cockroach-core/columns/float.d.cts +1 -1
  158. package/cockroach-core/columns/float.d.ts +1 -1
  159. package/cockroach-core/columns/float.js +2 -2
  160. package/cockroach-core/columns/float.js.map +1 -1
  161. package/cockroach-core/columns/geometry.cjs +8 -8
  162. package/cockroach-core/columns/geometry.cjs.map +1 -1
  163. package/cockroach-core/columns/geometry.d.cts +5 -5
  164. package/cockroach-core/columns/geometry.d.ts +5 -5
  165. package/cockroach-core/columns/geometry.js +8 -8
  166. package/cockroach-core/columns/geometry.js.map +1 -1
  167. package/cockroach-core/columns/integer.cjs +2 -2
  168. package/cockroach-core/columns/integer.cjs.map +1 -1
  169. package/cockroach-core/columns/integer.d.cts +1 -1
  170. package/cockroach-core/columns/integer.d.ts +1 -1
  171. package/cockroach-core/columns/integer.js +2 -2
  172. package/cockroach-core/columns/integer.js.map +1 -1
  173. package/cockroach-core/columns/jsonb.cjs +4 -4
  174. package/cockroach-core/columns/jsonb.cjs.map +1 -1
  175. package/cockroach-core/columns/jsonb.d.cts +2 -2
  176. package/cockroach-core/columns/jsonb.d.ts +2 -2
  177. package/cockroach-core/columns/jsonb.js +4 -4
  178. package/cockroach-core/columns/jsonb.js.map +1 -1
  179. package/cockroach-core/columns/vector.cjs +4 -4
  180. package/cockroach-core/columns/vector.cjs.map +1 -1
  181. package/cockroach-core/columns/vector.d.cts +2 -2
  182. package/cockroach-core/columns/vector.d.ts +2 -2
  183. package/cockroach-core/columns/vector.js +4 -4
  184. package/cockroach-core/columns/vector.js.map +1 -1
  185. package/cockroach-core/db.cjs +1 -1
  186. package/cockroach-core/db.cjs.map +1 -1
  187. package/cockroach-core/db.d.ts +2 -2
  188. package/cockroach-core/db.js +1 -1
  189. package/cockroach-core/db.js.map +1 -1
  190. package/cockroach-core/dialect.cjs +2 -2
  191. package/cockroach-core/dialect.d.ts +2 -2
  192. package/cockroach-core/dialect.js +2 -2
  193. package/cockroach-core/index.cjs +14 -14
  194. package/cockroach-core/index.js +14 -14
  195. package/cockroach-core/query-builders/delete.cjs +1 -1
  196. package/cockroach-core/query-builders/delete.cjs.map +1 -1
  197. package/cockroach-core/query-builders/delete.d.cts +1 -1
  198. package/cockroach-core/query-builders/delete.d.ts +2 -2
  199. package/cockroach-core/query-builders/delete.js +1 -1
  200. package/cockroach-core/query-builders/delete.js.map +1 -1
  201. package/cockroach-core/query-builders/index.cjs +2 -2
  202. package/cockroach-core/query-builders/index.js +2 -2
  203. package/cockroach-core/query-builders/insert.cjs +1 -1
  204. package/cockroach-core/query-builders/insert.cjs.map +1 -1
  205. package/cockroach-core/query-builders/insert.d.ts +1 -1
  206. package/cockroach-core/query-builders/insert.js +1 -1
  207. package/cockroach-core/query-builders/insert.js.map +1 -1
  208. package/cockroach-core/query-builders/query.cjs +1 -1
  209. package/cockroach-core/query-builders/query.cjs.map +1 -1
  210. package/cockroach-core/query-builders/query.js +1 -1
  211. package/cockroach-core/query-builders/query.js.map +1 -1
  212. package/cockroach-core/query-builders/raw.cjs +4 -0
  213. package/cockroach-core/query-builders/raw.cjs.map +1 -1
  214. package/cockroach-core/query-builders/raw.js +4 -0
  215. package/cockroach-core/query-builders/raw.js.map +1 -1
  216. package/cockroach-core/query-builders/refresh-materialized-view.cjs +1 -1
  217. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +1 -1
  218. package/cockroach-core/query-builders/refresh-materialized-view.js +1 -1
  219. package/cockroach-core/query-builders/refresh-materialized-view.js.map +1 -1
  220. package/cockroach-core/query-builders/select.cjs +2 -2
  221. package/cockroach-core/query-builders/select.cjs.map +1 -1
  222. package/cockroach-core/query-builders/select.d.ts +3 -3
  223. package/cockroach-core/query-builders/select.js +2 -2
  224. package/cockroach-core/query-builders/select.js.map +1 -1
  225. package/cockroach-core/query-builders/select.types.d.ts +1 -1
  226. package/cockroach-core/query-builders/update.cjs +2 -2
  227. package/cockroach-core/query-builders/update.cjs.map +1 -1
  228. package/cockroach-core/query-builders/update.d.ts +1 -1
  229. package/cockroach-core/query-builders/update.js +2 -2
  230. package/cockroach-core/query-builders/update.js.map +1 -1
  231. package/cockroach-core/schema.cjs +1 -1
  232. package/cockroach-core/schema.js +1 -1
  233. package/cockroach-core/session.cjs +2 -2
  234. package/cockroach-core/session.cjs.map +1 -1
  235. package/cockroach-core/session.d.cts +1 -1
  236. package/cockroach-core/session.d.ts +1 -1
  237. package/cockroach-core/session.js +2 -2
  238. package/cockroach-core/session.js.map +1 -1
  239. package/cockroach-core/table.cjs +1 -1
  240. package/cockroach-core/table.cjs.map +1 -1
  241. package/cockroach-core/table.js +1 -1
  242. package/cockroach-core/table.js.map +1 -1
  243. package/cockroach-core/utils.cjs +3 -3
  244. package/cockroach-core/utils.js +3 -3
  245. package/cockroach-core/view.cjs +1 -1
  246. package/cockroach-core/view.js +1 -1
  247. package/column.cjs +5 -10
  248. package/column.cjs.map +1 -1
  249. package/column.d.cts +3 -3
  250. package/column.d.ts +3 -3
  251. package/column.js +5 -10
  252. package/column.js.map +1 -1
  253. package/d1/driver.cjs +2 -3
  254. package/d1/driver.cjs.map +1 -1
  255. package/d1/driver.d.ts +1 -1
  256. package/d1/driver.js +2 -3
  257. package/d1/driver.js.map +1 -1
  258. package/d1/session.cjs +15 -17
  259. package/d1/session.cjs.map +1 -1
  260. package/d1/session.d.cts +6 -9
  261. package/d1/session.d.ts +7 -10
  262. package/d1/session.js +16 -18
  263. package/d1/session.js.map +1 -1
  264. package/durable-sqlite/driver.cjs +2 -5
  265. package/durable-sqlite/driver.cjs.map +1 -1
  266. package/durable-sqlite/driver.d.ts +1 -1
  267. package/durable-sqlite/driver.js +2 -5
  268. package/durable-sqlite/driver.js.map +1 -1
  269. package/durable-sqlite/migrator.cjs +1 -1
  270. package/durable-sqlite/migrator.js +1 -1
  271. package/durable-sqlite/session.cjs +14 -15
  272. package/durable-sqlite/session.cjs.map +1 -1
  273. package/durable-sqlite/session.d.cts +6 -10
  274. package/durable-sqlite/session.d.ts +6 -10
  275. package/durable-sqlite/session.js +15 -16
  276. package/durable-sqlite/session.js.map +1 -1
  277. package/effect-core/index.cjs +1 -1
  278. package/effect-core/index.js +1 -1
  279. package/effect-postgres/driver.cjs +14 -100
  280. package/effect-postgres/driver.cjs.map +1 -1
  281. package/effect-postgres/driver.d.cts +8 -12
  282. package/effect-postgres/driver.d.ts +10 -14
  283. package/effect-postgres/driver.js +14 -100
  284. package/effect-postgres/driver.js.map +1 -1
  285. package/effect-postgres/index.cjs +1 -1
  286. package/effect-postgres/index.d.cts +3 -3
  287. package/effect-postgres/index.d.ts +3 -3
  288. package/effect-postgres/index.js +3 -3
  289. package/effect-postgres/migrator.cjs.map +1 -1
  290. package/effect-postgres/migrator.d.cts +1 -1
  291. package/effect-postgres/migrator.d.ts +2 -2
  292. package/effect-postgres/migrator.js.map +1 -1
  293. package/effect-postgres/session.cjs +71 -12
  294. package/effect-postgres/session.cjs.map +1 -1
  295. package/effect-postgres/session.d.cts +31 -14
  296. package/effect-postgres/session.d.ts +34 -17
  297. package/effect-postgres/session.js +71 -13
  298. package/effect-postgres/session.js.map +1 -1
  299. package/effect-schema/column.cjs +1 -1
  300. package/effect-schema/column.d.ts +8 -8
  301. package/effect-schema/column.js +1 -1
  302. package/effect-schema/column.types.d.ts +14 -14
  303. package/effect-schema/schema.types.internal.d.ts +7 -7
  304. package/expo-sqlite/driver.cjs +2 -5
  305. package/expo-sqlite/driver.cjs.map +1 -1
  306. package/expo-sqlite/driver.d.ts +1 -1
  307. package/expo-sqlite/driver.js +2 -5
  308. package/expo-sqlite/driver.js.map +1 -1
  309. package/expo-sqlite/session.cjs +14 -15
  310. package/expo-sqlite/session.cjs.map +1 -1
  311. package/expo-sqlite/session.d.cts +6 -10
  312. package/expo-sqlite/session.d.ts +6 -10
  313. package/expo-sqlite/session.js +15 -16
  314. package/expo-sqlite/session.js.map +1 -1
  315. package/gel/driver.cjs +3 -5
  316. package/gel/driver.cjs.map +1 -1
  317. package/gel/driver.d.cts +0 -1
  318. package/gel/driver.d.ts +4 -5
  319. package/gel/driver.js +3 -5
  320. package/gel/driver.js.map +1 -1
  321. package/gel/session.cjs +13 -13
  322. package/gel/session.cjs.map +1 -1
  323. package/gel/session.d.cts +5 -8
  324. package/gel/session.d.ts +9 -12
  325. package/gel/session.js +14 -14
  326. package/gel/session.js.map +1 -1
  327. package/gel-core/columns/bigintT.cjs +2 -2
  328. package/gel-core/columns/bigintT.cjs.map +1 -1
  329. package/gel-core/columns/bigintT.d.cts +1 -1
  330. package/gel-core/columns/bigintT.d.ts +1 -1
  331. package/gel-core/columns/bigintT.js +2 -2
  332. package/gel-core/columns/bigintT.js.map +1 -1
  333. package/gel-core/columns/common.cjs +3 -3
  334. package/gel-core/columns/common.cjs.map +1 -1
  335. package/gel-core/columns/common.d.cts +1 -1
  336. package/gel-core/columns/common.d.ts +1 -1
  337. package/gel-core/columns/common.js +3 -3
  338. package/gel-core/columns/common.js.map +1 -1
  339. package/gel-core/columns/custom.cjs +4 -4
  340. package/gel-core/columns/custom.cjs.map +1 -1
  341. package/gel-core/columns/custom.d.cts +2 -2
  342. package/gel-core/columns/custom.d.ts +2 -2
  343. package/gel-core/columns/custom.js +4 -4
  344. package/gel-core/columns/custom.js.map +1 -1
  345. package/gel-core/columns/double-precision.cjs +2 -2
  346. package/gel-core/columns/double-precision.cjs.map +1 -1
  347. package/gel-core/columns/double-precision.d.cts +1 -1
  348. package/gel-core/columns/double-precision.d.ts +1 -1
  349. package/gel-core/columns/double-precision.js +2 -2
  350. package/gel-core/columns/double-precision.js.map +1 -1
  351. package/gel-core/columns/timestamp.d.ts +1 -1
  352. package/gel-core/columns/timestamptz.cjs +2 -2
  353. package/gel-core/columns/timestamptz.cjs.map +1 -1
  354. package/gel-core/columns/timestamptz.d.cts +1 -1
  355. package/gel-core/columns/timestamptz.d.ts +1 -1
  356. package/gel-core/columns/timestamptz.js +2 -2
  357. package/gel-core/columns/timestamptz.js.map +1 -1
  358. package/gel-core/db.cjs +1 -1
  359. package/gel-core/db.cjs.map +1 -1
  360. package/gel-core/db.d.ts +3 -3
  361. package/gel-core/db.js +1 -1
  362. package/gel-core/db.js.map +1 -1
  363. package/gel-core/index.cjs +13 -13
  364. package/gel-core/index.js +13 -13
  365. package/gel-core/query-builders/_query.cjs +1 -1
  366. package/gel-core/query-builders/_query.cjs.map +1 -1
  367. package/gel-core/query-builders/_query.js +1 -1
  368. package/gel-core/query-builders/_query.js.map +1 -1
  369. package/gel-core/query-builders/delete.cjs +1 -1
  370. package/gel-core/query-builders/delete.cjs.map +1 -1
  371. package/gel-core/query-builders/delete.d.ts +2 -2
  372. package/gel-core/query-builders/delete.js +1 -1
  373. package/gel-core/query-builders/delete.js.map +1 -1
  374. package/gel-core/query-builders/index.cjs +1 -1
  375. package/gel-core/query-builders/index.js +1 -1
  376. package/gel-core/query-builders/insert.cjs +1 -1
  377. package/gel-core/query-builders/insert.cjs.map +1 -1
  378. package/gel-core/query-builders/insert.d.ts +2 -2
  379. package/gel-core/query-builders/insert.js +1 -1
  380. package/gel-core/query-builders/insert.js.map +1 -1
  381. package/gel-core/query-builders/query.cjs +5 -13
  382. package/gel-core/query-builders/query.cjs.map +1 -1
  383. package/gel-core/query-builders/query.d.ts +1 -1
  384. package/gel-core/query-builders/query.js +5 -13
  385. package/gel-core/query-builders/query.js.map +1 -1
  386. package/gel-core/query-builders/raw.cjs +4 -0
  387. package/gel-core/query-builders/raw.cjs.map +1 -1
  388. package/gel-core/query-builders/raw.js +4 -0
  389. package/gel-core/query-builders/raw.js.map +1 -1
  390. package/gel-core/query-builders/refresh-materialized-view.cjs +1 -1
  391. package/gel-core/query-builders/refresh-materialized-view.cjs.map +1 -1
  392. package/gel-core/query-builders/refresh-materialized-view.d.ts +1 -1
  393. package/gel-core/query-builders/refresh-materialized-view.js +1 -1
  394. package/gel-core/query-builders/refresh-materialized-view.js.map +1 -1
  395. package/gel-core/query-builders/select.cjs +1 -1
  396. package/gel-core/query-builders/select.cjs.map +1 -1
  397. package/gel-core/query-builders/select.d.ts +3 -3
  398. package/gel-core/query-builders/select.js +1 -1
  399. package/gel-core/query-builders/select.js.map +1 -1
  400. package/gel-core/query-builders/select.types.d.ts +1 -1
  401. package/gel-core/query-builders/update.cjs +1 -1
  402. package/gel-core/query-builders/update.cjs.map +1 -1
  403. package/gel-core/query-builders/update.d.ts +2 -2
  404. package/gel-core/query-builders/update.js +1 -1
  405. package/gel-core/query-builders/update.js.map +1 -1
  406. package/gel-core/session.cjs +2 -2
  407. package/gel-core/session.cjs.map +1 -1
  408. package/gel-core/session.d.cts +3 -3
  409. package/gel-core/session.d.ts +3 -3
  410. package/gel-core/session.js +2 -2
  411. package/gel-core/session.js.map +1 -1
  412. package/gel-core/table.cjs +1 -1
  413. package/gel-core/table.cjs.map +1 -1
  414. package/gel-core/table.js +1 -1
  415. package/gel-core/table.js.map +1 -1
  416. package/gel-core/utils.cjs +4 -4
  417. package/gel-core/utils.js +4 -4
  418. package/gel-core/view.cjs +1 -1
  419. package/gel-core/view.js +1 -1
  420. package/index.cjs +6 -12
  421. package/index.d.cts +6 -6
  422. package/index.d.ts +6 -6
  423. package/index.js +9 -9
  424. package/libsql/driver-core.cjs +2 -3
  425. package/libsql/driver-core.cjs.map +1 -1
  426. package/libsql/driver-core.d.ts +1 -1
  427. package/libsql/driver-core.js +2 -3
  428. package/libsql/driver-core.js.map +1 -1
  429. package/libsql/session.cjs +15 -14
  430. package/libsql/session.cjs.map +1 -1
  431. package/libsql/session.d.cts +6 -9
  432. package/libsql/session.d.ts +7 -10
  433. package/libsql/session.js +16 -15
  434. package/libsql/session.js.map +1 -1
  435. package/mssql-core/columns/bigint.cjs +2 -2
  436. package/mssql-core/columns/bigint.cjs.map +1 -1
  437. package/mssql-core/columns/bigint.d.cts +1 -1
  438. package/mssql-core/columns/bigint.d.ts +1 -1
  439. package/mssql-core/columns/bigint.js +2 -2
  440. package/mssql-core/columns/bigint.js.map +1 -1
  441. package/mssql-core/columns/custom.cjs +4 -4
  442. package/mssql-core/columns/custom.cjs.map +1 -1
  443. package/mssql-core/columns/custom.d.cts +2 -2
  444. package/mssql-core/columns/custom.d.ts +2 -2
  445. package/mssql-core/columns/custom.js +4 -4
  446. package/mssql-core/columns/custom.js.map +1 -1
  447. package/mssql-core/columns/date.cjs +4 -4
  448. package/mssql-core/columns/date.cjs.map +1 -1
  449. package/mssql-core/columns/date.d.cts +2 -2
  450. package/mssql-core/columns/date.d.ts +2 -2
  451. package/mssql-core/columns/date.js +4 -4
  452. package/mssql-core/columns/date.js.map +1 -1
  453. package/mssql-core/columns/datetime.cjs +2 -2
  454. package/mssql-core/columns/datetime.cjs.map +1 -1
  455. package/mssql-core/columns/datetime.d.cts +1 -1
  456. package/mssql-core/columns/datetime.d.ts +1 -1
  457. package/mssql-core/columns/datetime.js +2 -2
  458. package/mssql-core/columns/datetime.js.map +1 -1
  459. package/mssql-core/columns/datetime2.cjs +2 -2
  460. package/mssql-core/columns/datetime2.cjs.map +1 -1
  461. package/mssql-core/columns/datetime2.d.cts +1 -1
  462. package/mssql-core/columns/datetime2.d.ts +1 -1
  463. package/mssql-core/columns/datetime2.js +2 -2
  464. package/mssql-core/columns/datetime2.js.map +1 -1
  465. package/mssql-core/columns/datetimeoffset.cjs +2 -2
  466. package/mssql-core/columns/datetimeoffset.cjs.map +1 -1
  467. package/mssql-core/columns/datetimeoffset.d.cts +1 -1
  468. package/mssql-core/columns/datetimeoffset.d.ts +1 -1
  469. package/mssql-core/columns/datetimeoffset.js +2 -2
  470. package/mssql-core/columns/datetimeoffset.js.map +1 -1
  471. package/mssql-core/columns/decimal.cjs +4 -4
  472. package/mssql-core/columns/decimal.cjs.map +1 -1
  473. package/mssql-core/columns/decimal.d.cts +2 -2
  474. package/mssql-core/columns/decimal.d.ts +2 -2
  475. package/mssql-core/columns/decimal.js +4 -4
  476. package/mssql-core/columns/decimal.js.map +1 -1
  477. package/mssql-core/columns/numeric.cjs +4 -4
  478. package/mssql-core/columns/numeric.cjs.map +1 -1
  479. package/mssql-core/columns/numeric.d.cts +2 -2
  480. package/mssql-core/columns/numeric.d.ts +2 -2
  481. package/mssql-core/columns/numeric.js +4 -4
  482. package/mssql-core/columns/numeric.js.map +1 -1
  483. package/mssql-core/columns/smallint.cjs +2 -2
  484. package/mssql-core/columns/smallint.cjs.map +1 -1
  485. package/mssql-core/columns/smallint.d.cts +1 -1
  486. package/mssql-core/columns/smallint.d.ts +1 -1
  487. package/mssql-core/columns/smallint.js +2 -2
  488. package/mssql-core/columns/smallint.js.map +1 -1
  489. package/mssql-core/columns/time.cjs +2 -2
  490. package/mssql-core/columns/time.cjs.map +1 -1
  491. package/mssql-core/columns/time.d.cts +1 -1
  492. package/mssql-core/columns/time.d.ts +1 -1
  493. package/mssql-core/columns/time.js +2 -2
  494. package/mssql-core/columns/time.js.map +1 -1
  495. package/mssql-core/columns/tinyint.cjs +2 -2
  496. package/mssql-core/columns/tinyint.cjs.map +1 -1
  497. package/mssql-core/columns/tinyint.d.cts +1 -1
  498. package/mssql-core/columns/tinyint.d.ts +1 -1
  499. package/mssql-core/columns/tinyint.js +2 -2
  500. package/mssql-core/columns/tinyint.js.map +1 -1
  501. package/mssql-core/columns/varchar.cjs +4 -4
  502. package/mssql-core/columns/varchar.cjs.map +1 -1
  503. package/mssql-core/columns/varchar.d.cts +2 -2
  504. package/mssql-core/columns/varchar.d.ts +2 -2
  505. package/mssql-core/columns/varchar.js +4 -4
  506. package/mssql-core/columns/varchar.js.map +1 -1
  507. package/mssql-core/dialect.cjs +2 -2
  508. package/mssql-core/dialect.d.ts +1 -1
  509. package/mssql-core/dialect.js +2 -2
  510. package/mssql-core/index.cjs +13 -13
  511. package/mssql-core/index.js +13 -13
  512. package/mssql-core/query-builders/delete.d.ts +1 -1
  513. package/mssql-core/query-builders/insert.d.ts +1 -1
  514. package/mssql-core/query-builders/select.d.ts +1 -1
  515. package/mssql-core/query-builders/update.d.ts +2 -2
  516. package/mssql-core/table.cjs +1 -1
  517. package/mssql-core/table.cjs.map +1 -1
  518. package/mssql-core/table.js +1 -1
  519. package/mssql-core/table.js.map +1 -1
  520. package/mssql-core/utils.cjs +3 -3
  521. package/mssql-core/utils.js +3 -3
  522. package/mssql-core/view.cjs +2 -2
  523. package/mssql-core/view.js +2 -2
  524. package/mysql-core/columns/bigint.cjs +8 -8
  525. package/mysql-core/columns/bigint.cjs.map +1 -1
  526. package/mysql-core/columns/bigint.d.cts +4 -4
  527. package/mysql-core/columns/bigint.d.ts +4 -4
  528. package/mysql-core/columns/bigint.js +8 -8
  529. package/mysql-core/columns/bigint.js.map +1 -1
  530. package/mysql-core/columns/binary.cjs +2 -2
  531. package/mysql-core/columns/binary.cjs.map +1 -1
  532. package/mysql-core/columns/binary.d.cts +1 -1
  533. package/mysql-core/columns/binary.d.ts +1 -1
  534. package/mysql-core/columns/binary.js +2 -2
  535. package/mysql-core/columns/binary.js.map +1 -1
  536. package/mysql-core/columns/blob.cjs +4 -4
  537. package/mysql-core/columns/blob.cjs.map +1 -1
  538. package/mysql-core/columns/blob.d.cts +2 -2
  539. package/mysql-core/columns/blob.d.ts +2 -2
  540. package/mysql-core/columns/blob.js +4 -4
  541. package/mysql-core/columns/blob.js.map +1 -1
  542. package/mysql-core/columns/boolean.cjs +2 -2
  543. package/mysql-core/columns/boolean.cjs.map +1 -1
  544. package/mysql-core/columns/boolean.d.cts +1 -1
  545. package/mysql-core/columns/boolean.d.ts +1 -1
  546. package/mysql-core/columns/boolean.js +2 -2
  547. package/mysql-core/columns/boolean.js.map +1 -1
  548. package/mysql-core/columns/custom.cjs +4 -4
  549. package/mysql-core/columns/custom.cjs.map +1 -1
  550. package/mysql-core/columns/custom.d.cts +2 -2
  551. package/mysql-core/columns/custom.d.ts +2 -2
  552. package/mysql-core/columns/custom.js +4 -4
  553. package/mysql-core/columns/custom.js.map +1 -1
  554. package/mysql-core/columns/date.cjs +4 -4
  555. package/mysql-core/columns/date.cjs.map +1 -1
  556. package/mysql-core/columns/date.d.cts +2 -2
  557. package/mysql-core/columns/date.d.ts +2 -2
  558. package/mysql-core/columns/date.js +4 -4
  559. package/mysql-core/columns/date.js.map +1 -1
  560. package/mysql-core/columns/datetime.cjs +8 -8
  561. package/mysql-core/columns/datetime.cjs.map +1 -1
  562. package/mysql-core/columns/datetime.d.cts +4 -4
  563. package/mysql-core/columns/datetime.d.ts +4 -4
  564. package/mysql-core/columns/datetime.js +8 -8
  565. package/mysql-core/columns/datetime.js.map +1 -1
  566. package/mysql-core/columns/decimal.cjs +4 -4
  567. package/mysql-core/columns/decimal.cjs.map +1 -1
  568. package/mysql-core/columns/decimal.d.cts +2 -2
  569. package/mysql-core/columns/decimal.d.ts +2 -2
  570. package/mysql-core/columns/decimal.js +4 -4
  571. package/mysql-core/columns/decimal.js.map +1 -1
  572. package/mysql-core/columns/float.cjs +2 -2
  573. package/mysql-core/columns/float.cjs.map +1 -1
  574. package/mysql-core/columns/float.d.cts +1 -1
  575. package/mysql-core/columns/float.d.ts +1 -1
  576. package/mysql-core/columns/float.js +2 -2
  577. package/mysql-core/columns/float.js.map +1 -1
  578. package/mysql-core/columns/int.cjs +2 -2
  579. package/mysql-core/columns/int.cjs.map +1 -1
  580. package/mysql-core/columns/int.d.cts +1 -1
  581. package/mysql-core/columns/int.d.ts +1 -1
  582. package/mysql-core/columns/int.js +2 -2
  583. package/mysql-core/columns/int.js.map +1 -1
  584. package/mysql-core/columns/json.cjs +2 -2
  585. package/mysql-core/columns/json.cjs.map +1 -1
  586. package/mysql-core/columns/json.d.cts +1 -1
  587. package/mysql-core/columns/json.d.ts +1 -1
  588. package/mysql-core/columns/json.js +2 -2
  589. package/mysql-core/columns/json.js.map +1 -1
  590. package/mysql-core/columns/mediumint.cjs +2 -2
  591. package/mysql-core/columns/mediumint.cjs.map +1 -1
  592. package/mysql-core/columns/mediumint.d.cts +1 -1
  593. package/mysql-core/columns/mediumint.d.ts +1 -1
  594. package/mysql-core/columns/mediumint.js +2 -2
  595. package/mysql-core/columns/mediumint.js.map +1 -1
  596. package/mysql-core/columns/serial.cjs +2 -2
  597. package/mysql-core/columns/serial.cjs.map +1 -1
  598. package/mysql-core/columns/serial.d.cts +1 -1
  599. package/mysql-core/columns/serial.d.ts +1 -1
  600. package/mysql-core/columns/serial.js +2 -2
  601. package/mysql-core/columns/serial.js.map +1 -1
  602. package/mysql-core/columns/smallint.cjs +2 -2
  603. package/mysql-core/columns/smallint.cjs.map +1 -1
  604. package/mysql-core/columns/smallint.d.cts +1 -1
  605. package/mysql-core/columns/smallint.d.ts +1 -1
  606. package/mysql-core/columns/smallint.js +2 -2
  607. package/mysql-core/columns/smallint.js.map +1 -1
  608. package/mysql-core/columns/time.cjs +2 -2
  609. package/mysql-core/columns/time.cjs.map +1 -1
  610. package/mysql-core/columns/time.d.cts +1 -1
  611. package/mysql-core/columns/time.d.ts +1 -1
  612. package/mysql-core/columns/time.js +2 -2
  613. package/mysql-core/columns/time.js.map +1 -1
  614. package/mysql-core/columns/timestamp.cjs +8 -8
  615. package/mysql-core/columns/timestamp.cjs.map +1 -1
  616. package/mysql-core/columns/timestamp.d.cts +4 -4
  617. package/mysql-core/columns/timestamp.d.ts +4 -4
  618. package/mysql-core/columns/timestamp.js +8 -8
  619. package/mysql-core/columns/timestamp.js.map +1 -1
  620. package/mysql-core/columns/tinyint.cjs +2 -2
  621. package/mysql-core/columns/tinyint.cjs.map +1 -1
  622. package/mysql-core/columns/tinyint.d.cts +1 -1
  623. package/mysql-core/columns/tinyint.d.ts +1 -1
  624. package/mysql-core/columns/tinyint.js +2 -2
  625. package/mysql-core/columns/tinyint.js.map +1 -1
  626. package/mysql-core/columns/varbinary.cjs +2 -2
  627. package/mysql-core/columns/varbinary.cjs.map +1 -1
  628. package/mysql-core/columns/varbinary.d.cts +1 -1
  629. package/mysql-core/columns/varbinary.d.ts +1 -1
  630. package/mysql-core/columns/varbinary.js +2 -2
  631. package/mysql-core/columns/varbinary.js.map +1 -1
  632. package/mysql-core/columns/year.cjs +2 -2
  633. package/mysql-core/columns/year.cjs.map +1 -1
  634. package/mysql-core/columns/year.d.cts +1 -1
  635. package/mysql-core/columns/year.d.ts +1 -1
  636. package/mysql-core/columns/year.js +2 -2
  637. package/mysql-core/columns/year.js.map +1 -1
  638. package/mysql-core/db.d.ts +2 -2
  639. package/mysql-core/dialect.cjs +2 -2
  640. package/mysql-core/dialect.d.ts +1 -1
  641. package/mysql-core/dialect.js +2 -2
  642. package/mysql-core/index.cjs +1 -1
  643. package/mysql-core/index.js +1 -1
  644. package/mysql-core/query-builders/query.cjs +5 -13
  645. package/mysql-core/query-builders/query.cjs.map +1 -1
  646. package/mysql-core/query-builders/query.d.ts +1 -1
  647. package/mysql-core/query-builders/query.js +5 -13
  648. package/mysql-core/query-builders/query.js.map +1 -1
  649. package/mysql-core/session.cjs +2 -1
  650. package/mysql-core/session.cjs.map +1 -1
  651. package/mysql-core/session.d.cts +4 -3
  652. package/mysql-core/session.d.ts +4 -3
  653. package/mysql-core/session.js +2 -1
  654. package/mysql-core/session.js.map +1 -1
  655. package/mysql-core/table.cjs +1 -1
  656. package/mysql-core/table.cjs.map +1 -1
  657. package/mysql-core/table.js +1 -1
  658. package/mysql-core/table.js.map +1 -1
  659. package/mysql-proxy/driver.cjs +2 -5
  660. package/mysql-proxy/driver.cjs.map +1 -1
  661. package/mysql-proxy/driver.js +2 -5
  662. package/mysql-proxy/driver.js.map +1 -1
  663. package/mysql-proxy/session.cjs +19 -26
  664. package/mysql-proxy/session.cjs.map +1 -1
  665. package/mysql-proxy/session.d.cts +4 -11
  666. package/mysql-proxy/session.d.ts +6 -13
  667. package/mysql-proxy/session.js +20 -27
  668. package/mysql-proxy/session.js.map +1 -1
  669. package/mysql2/driver.cjs +2 -3
  670. package/mysql2/driver.cjs.map +1 -1
  671. package/mysql2/driver.d.cts +0 -1
  672. package/mysql2/driver.d.ts +3 -4
  673. package/mysql2/driver.js +2 -3
  674. package/mysql2/driver.js.map +1 -1
  675. package/mysql2/session.cjs +39 -49
  676. package/mysql2/session.cjs.map +1 -1
  677. package/mysql2/session.d.cts +4 -11
  678. package/mysql2/session.d.ts +6 -13
  679. package/mysql2/session.js +40 -50
  680. package/mysql2/session.js.map +1 -1
  681. package/neon-http/driver.cjs +65 -34
  682. package/neon-http/driver.cjs.map +1 -1
  683. package/neon-http/driver.d.cts +19 -15
  684. package/neon-http/driver.d.ts +20 -16
  685. package/neon-http/driver.js +64 -34
  686. package/neon-http/driver.js.map +1 -1
  687. package/neon-http/index.cjs +4 -2
  688. package/neon-http/index.d.cts +3 -3
  689. package/neon-http/index.d.ts +3 -3
  690. package/neon-http/index.js +3 -3
  691. package/neon-http/migrator.cjs +1 -1
  692. package/neon-http/migrator.cjs.map +1 -1
  693. package/neon-http/migrator.d.cts +1 -1
  694. package/neon-http/migrator.d.ts +1 -1
  695. package/neon-http/migrator.js +1 -1
  696. package/neon-http/migrator.js.map +1 -1
  697. package/neon-http/session.cjs +117 -28
  698. package/neon-http/session.cjs.map +1 -1
  699. package/neon-http/session.d.cts +38 -10
  700. package/neon-http/session.d.ts +40 -12
  701. package/neon-http/session.js +117 -30
  702. package/neon-http/session.js.map +1 -1
  703. package/neon-serverless/driver.cjs +32 -14
  704. package/neon-serverless/driver.cjs.map +1 -1
  705. package/neon-serverless/driver.d.cts +17 -12
  706. package/neon-serverless/driver.d.ts +18 -13
  707. package/neon-serverless/driver.js +31 -14
  708. package/neon-serverless/driver.js.map +1 -1
  709. package/neon-serverless/index.cjs +3 -2
  710. package/neon-serverless/index.d.cts +3 -3
  711. package/neon-serverless/index.d.ts +3 -3
  712. package/neon-serverless/index.js +3 -3
  713. package/neon-serverless/migrator.cjs.map +1 -1
  714. package/neon-serverless/migrator.d.cts +1 -1
  715. package/neon-serverless/migrator.d.ts +1 -1
  716. package/neon-serverless/migrator.js.map +1 -1
  717. package/neon-serverless/session.cjs +108 -32
  718. package/neon-serverless/session.cjs.map +1 -1
  719. package/neon-serverless/session.d.cts +32 -9
  720. package/neon-serverless/session.d.ts +33 -10
  721. package/neon-serverless/session.js +109 -34
  722. package/neon-serverless/session.js.map +1 -1
  723. package/netlify-db/driver.cjs +123 -0
  724. package/netlify-db/driver.cjs.map +1 -0
  725. package/netlify-db/driver.d.cts +90 -0
  726. package/netlify-db/driver.d.ts +90 -0
  727. package/netlify-db/driver.js +113 -0
  728. package/netlify-db/driver.js.map +1 -0
  729. package/netlify-db/index.cjs +15 -0
  730. package/netlify-db/index.d.cts +3 -0
  731. package/netlify-db/index.d.ts +3 -0
  732. package/netlify-db/index.js +4 -0
  733. package/netlify-db/migrator.cjs +17 -0
  734. package/netlify-db/migrator.cjs.map +1 -0
  735. package/netlify-db/migrator.d.cts +11 -0
  736. package/netlify-db/migrator.d.ts +11 -0
  737. package/netlify-db/migrator.js +15 -0
  738. package/netlify-db/migrator.js.map +1 -0
  739. package/netlify-db/session.cjs +153 -0
  740. package/netlify-db/session.cjs.map +1 -0
  741. package/netlify-db/session.d.cts +68 -0
  742. package/netlify-db/session.d.ts +68 -0
  743. package/netlify-db/session.js +149 -0
  744. package/netlify-db/session.js.map +1 -0
  745. package/node-mssql/driver.cjs +3 -9
  746. package/node-mssql/driver.cjs.map +1 -1
  747. package/node-mssql/driver.d.cts +0 -1
  748. package/node-mssql/driver.d.ts +2 -3
  749. package/node-mssql/driver.js +3 -9
  750. package/node-mssql/driver.js.map +1 -1
  751. package/node-mssql/session.cjs +4 -6
  752. package/node-mssql/session.cjs.map +1 -1
  753. package/node-mssql/session.d.cts +1 -4
  754. package/node-mssql/session.d.ts +3 -6
  755. package/node-mssql/session.js +5 -7
  756. package/node-mssql/session.js.map +1 -1
  757. package/node-postgres/driver.cjs +18 -15
  758. package/node-postgres/driver.cjs.map +1 -1
  759. package/node-postgres/driver.d.cts +6 -11
  760. package/node-postgres/driver.d.ts +7 -12
  761. package/node-postgres/driver.js +18 -15
  762. package/node-postgres/driver.js.map +1 -1
  763. package/node-postgres/index.cjs +2 -2
  764. package/node-postgres/index.d.cts +3 -3
  765. package/node-postgres/index.d.ts +3 -3
  766. package/node-postgres/index.js +3 -3
  767. package/node-postgres/migrator.cjs.map +1 -1
  768. package/node-postgres/migrator.d.cts +1 -1
  769. package/node-postgres/migrator.d.ts +1 -1
  770. package/node-postgres/migrator.js.map +1 -1
  771. package/node-postgres/session.cjs +126 -33
  772. package/node-postgres/session.cjs.map +1 -1
  773. package/node-postgres/session.d.cts +30 -10
  774. package/node-postgres/session.d.ts +31 -11
  775. package/node-postgres/session.js +127 -35
  776. package/node-postgres/session.js.map +1 -1
  777. package/node-sqlite/driver.cjs +1 -1
  778. package/node-sqlite/driver.d.ts +1 -1
  779. package/node-sqlite/driver.js +1 -1
  780. package/node-sqlite/session.cjs +9 -4
  781. package/node-sqlite/session.cjs.map +1 -1
  782. package/node-sqlite/session.d.cts +4 -3
  783. package/node-sqlite/session.d.ts +5 -4
  784. package/node-sqlite/session.js +9 -4
  785. package/node-sqlite/session.js.map +1 -1
  786. package/op-sqlite/driver.cjs +2 -3
  787. package/op-sqlite/driver.cjs.map +1 -1
  788. package/op-sqlite/driver.d.ts +1 -1
  789. package/op-sqlite/driver.js +2 -3
  790. package/op-sqlite/driver.js.map +1 -1
  791. package/op-sqlite/session.cjs +16 -18
  792. package/op-sqlite/session.cjs.map +1 -1
  793. package/op-sqlite/session.d.cts +6 -10
  794. package/op-sqlite/session.d.ts +7 -11
  795. package/op-sqlite/session.js +17 -19
  796. package/op-sqlite/session.js.map +1 -1
  797. package/operations.d.cts +0 -3
  798. package/operations.d.ts +0 -3
  799. package/package.cjs +1 -1
  800. package/package.js +1 -1
  801. package/package.json +4736 -4700
  802. package/pg-core/async/count.cjs +9 -2
  803. package/pg-core/async/count.cjs.map +1 -1
  804. package/pg-core/async/count.js +9 -2
  805. package/pg-core/async/count.js.map +1 -1
  806. package/pg-core/async/db.cjs +27 -10
  807. package/pg-core/async/db.cjs.map +1 -1
  808. package/pg-core/async/db.d.cts +13 -5
  809. package/pg-core/async/db.d.ts +16 -8
  810. package/pg-core/async/db.js +27 -10
  811. package/pg-core/async/db.js.map +1 -1
  812. package/pg-core/async/delete.cjs +13 -8
  813. package/pg-core/async/delete.cjs.map +1 -1
  814. package/pg-core/async/delete.js +13 -8
  815. package/pg-core/async/delete.js.map +1 -1
  816. package/pg-core/async/insert.cjs +12 -7
  817. package/pg-core/async/insert.cjs.map +1 -1
  818. package/pg-core/async/insert.js +12 -7
  819. package/pg-core/async/insert.js.map +1 -1
  820. package/pg-core/async/query.cjs +14 -8
  821. package/pg-core/async/query.cjs.map +1 -1
  822. package/pg-core/async/query.js +14 -8
  823. package/pg-core/async/query.js.map +1 -1
  824. package/pg-core/async/refresh-materialized-view.cjs +9 -1
  825. package/pg-core/async/refresh-materialized-view.cjs.map +1 -1
  826. package/pg-core/async/refresh-materialized-view.js +9 -1
  827. package/pg-core/async/refresh-materialized-view.js.map +1 -1
  828. package/pg-core/async/select.cjs +13 -4
  829. package/pg-core/async/select.cjs.map +1 -1
  830. package/pg-core/async/select.js +13 -4
  831. package/pg-core/async/select.js.map +1 -1
  832. package/pg-core/async/session.cjs +22 -46
  833. package/pg-core/async/session.cjs.map +1 -1
  834. package/pg-core/async/session.d.cts +31 -25
  835. package/pg-core/async/session.d.ts +32 -26
  836. package/pg-core/async/session.js +23 -47
  837. package/pg-core/async/session.js.map +1 -1
  838. package/pg-core/async/update.cjs +15 -11
  839. package/pg-core/async/update.cjs.map +1 -1
  840. package/pg-core/async/update.js +15 -11
  841. package/pg-core/async/update.js.map +1 -1
  842. package/pg-core/columns/bigint.cjs +9 -10
  843. package/pg-core/columns/bigint.cjs.map +1 -1
  844. package/pg-core/columns/bigint.d.cts +3 -2
  845. package/pg-core/columns/bigint.d.ts +3 -2
  846. package/pg-core/columns/bigint.js +9 -10
  847. package/pg-core/columns/bigint.js.map +1 -1
  848. package/pg-core/columns/bigserial.cjs +6 -6
  849. package/pg-core/columns/bigserial.cjs.map +1 -1
  850. package/pg-core/columns/bigserial.d.cts +2 -1
  851. package/pg-core/columns/bigserial.d.ts +2 -1
  852. package/pg-core/columns/bigserial.js +6 -6
  853. package/pg-core/columns/bigserial.js.map +1 -1
  854. package/pg-core/columns/boolean.cjs +0 -2
  855. package/pg-core/columns/boolean.cjs.map +1 -1
  856. package/pg-core/columns/boolean.js +0 -2
  857. package/pg-core/columns/boolean.js.map +1 -1
  858. package/pg-core/columns/bytea.cjs +8 -2
  859. package/pg-core/columns/bytea.cjs.map +1 -1
  860. package/pg-core/columns/bytea.d.cts +1 -0
  861. package/pg-core/columns/bytea.d.ts +1 -0
  862. package/pg-core/columns/bytea.js +8 -2
  863. package/pg-core/columns/bytea.js.map +1 -1
  864. package/pg-core/columns/char.cjs +0 -2
  865. package/pg-core/columns/char.cjs.map +1 -1
  866. package/pg-core/columns/char.js +0 -2
  867. package/pg-core/columns/char.js.map +1 -1
  868. package/pg-core/columns/cidr.cjs +0 -2
  869. package/pg-core/columns/cidr.cjs.map +1 -1
  870. package/pg-core/columns/cidr.js +0 -2
  871. package/pg-core/columns/cidr.js.map +1 -1
  872. package/pg-core/columns/common.cjs +9 -11
  873. package/pg-core/columns/common.cjs.map +1 -1
  874. package/pg-core/columns/common.d.cts +39 -34
  875. package/pg-core/columns/common.d.ts +39 -34
  876. package/pg-core/columns/common.js +9 -11
  877. package/pg-core/columns/common.js.map +1 -1
  878. package/pg-core/columns/custom.cjs +46 -16
  879. package/pg-core/columns/custom.cjs.map +1 -1
  880. package/pg-core/columns/custom.d.cts +8 -17
  881. package/pg-core/columns/custom.d.ts +8 -17
  882. package/pg-core/columns/custom.js +46 -16
  883. package/pg-core/columns/custom.js.map +1 -1
  884. package/pg-core/columns/date.cjs +12 -11
  885. package/pg-core/columns/date.cjs.map +1 -1
  886. package/pg-core/columns/date.d.cts +4 -3
  887. package/pg-core/columns/date.d.ts +4 -3
  888. package/pg-core/columns/date.js +12 -11
  889. package/pg-core/columns/date.js.map +1 -1
  890. package/pg-core/columns/double-precision.cjs +4 -2
  891. package/pg-core/columns/double-precision.cjs.map +1 -1
  892. package/pg-core/columns/double-precision.d.cts +1 -0
  893. package/pg-core/columns/double-precision.d.ts +1 -0
  894. package/pg-core/columns/double-precision.js +4 -2
  895. package/pg-core/columns/double-precision.js.map +1 -1
  896. package/pg-core/columns/enum.cjs +0 -4
  897. package/pg-core/columns/enum.cjs.map +1 -1
  898. package/pg-core/columns/enum.js +0 -4
  899. package/pg-core/columns/enum.js.map +1 -1
  900. package/pg-core/columns/index.d.cts +2 -2
  901. package/pg-core/columns/index.d.ts +2 -2
  902. package/pg-core/columns/inet.cjs +0 -2
  903. package/pg-core/columns/inet.cjs.map +1 -1
  904. package/pg-core/columns/inet.js +0 -2
  905. package/pg-core/columns/inet.js.map +1 -1
  906. package/pg-core/columns/integer.cjs +4 -2
  907. package/pg-core/columns/integer.cjs.map +1 -1
  908. package/pg-core/columns/integer.d.cts +1 -0
  909. package/pg-core/columns/integer.d.ts +1 -0
  910. package/pg-core/columns/integer.js +4 -2
  911. package/pg-core/columns/integer.js.map +1 -1
  912. package/pg-core/columns/interval.cjs +0 -2
  913. package/pg-core/columns/interval.cjs.map +1 -1
  914. package/pg-core/columns/interval.js +0 -2
  915. package/pg-core/columns/interval.js.map +1 -1
  916. package/pg-core/columns/json.cjs +11 -2
  917. package/pg-core/columns/json.cjs.map +1 -1
  918. package/pg-core/columns/json.d.cts +2 -0
  919. package/pg-core/columns/json.d.ts +2 -0
  920. package/pg-core/columns/json.js +11 -2
  921. package/pg-core/columns/json.js.map +1 -1
  922. package/pg-core/columns/jsonb.cjs +11 -2
  923. package/pg-core/columns/jsonb.cjs.map +1 -1
  924. package/pg-core/columns/jsonb.d.cts +2 -0
  925. package/pg-core/columns/jsonb.d.ts +2 -0
  926. package/pg-core/columns/jsonb.js +11 -2
  927. package/pg-core/columns/jsonb.js.map +1 -1
  928. package/pg-core/columns/line.cjs +8 -12
  929. package/pg-core/columns/line.cjs.map +1 -1
  930. package/pg-core/columns/line.d.cts +5 -5
  931. package/pg-core/columns/line.d.ts +5 -5
  932. package/pg-core/columns/line.js +8 -12
  933. package/pg-core/columns/line.js.map +1 -1
  934. package/pg-core/columns/macaddr.cjs +0 -2
  935. package/pg-core/columns/macaddr.cjs.map +1 -1
  936. package/pg-core/columns/macaddr.js +0 -2
  937. package/pg-core/columns/macaddr.js.map +1 -1
  938. package/pg-core/columns/macaddr8.cjs +0 -2
  939. package/pg-core/columns/macaddr8.cjs.map +1 -1
  940. package/pg-core/columns/macaddr8.js +0 -2
  941. package/pg-core/columns/macaddr8.js.map +1 -1
  942. package/pg-core/columns/numeric.cjs +15 -12
  943. package/pg-core/columns/numeric.cjs.map +1 -1
  944. package/pg-core/columns/numeric.d.cts +5 -4
  945. package/pg-core/columns/numeric.d.ts +5 -4
  946. package/pg-core/columns/numeric.js +15 -12
  947. package/pg-core/columns/numeric.js.map +1 -1
  948. package/pg-core/columns/point.cjs +21 -19
  949. package/pg-core/columns/point.cjs.map +1 -1
  950. package/pg-core/columns/point.d.cts +11 -5
  951. package/pg-core/columns/point.d.ts +11 -5
  952. package/pg-core/columns/point.js +21 -19
  953. package/pg-core/columns/point.js.map +1 -1
  954. package/pg-core/columns/postgis_extension/geometry.cjs +9 -12
  955. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  956. package/pg-core/columns/postgis_extension/geometry.d.cts +5 -5
  957. package/pg-core/columns/postgis_extension/geometry.d.ts +5 -5
  958. package/pg-core/columns/postgis_extension/geometry.js +9 -12
  959. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  960. package/pg-core/columns/real.cjs +4 -2
  961. package/pg-core/columns/real.cjs.map +1 -1
  962. package/pg-core/columns/real.d.cts +1 -0
  963. package/pg-core/columns/real.d.ts +1 -0
  964. package/pg-core/columns/real.js +4 -2
  965. package/pg-core/columns/real.js.map +1 -1
  966. package/pg-core/columns/serial.cjs +0 -2
  967. package/pg-core/columns/serial.cjs.map +1 -1
  968. package/pg-core/columns/serial.js +0 -2
  969. package/pg-core/columns/serial.js.map +1 -1
  970. package/pg-core/columns/smallint.cjs +4 -2
  971. package/pg-core/columns/smallint.cjs.map +1 -1
  972. package/pg-core/columns/smallint.d.cts +1 -0
  973. package/pg-core/columns/smallint.d.ts +1 -0
  974. package/pg-core/columns/smallint.js +4 -2
  975. package/pg-core/columns/smallint.js.map +1 -1
  976. package/pg-core/columns/smallserial.cjs +0 -2
  977. package/pg-core/columns/smallserial.cjs.map +1 -1
  978. package/pg-core/columns/smallserial.js +0 -2
  979. package/pg-core/columns/smallserial.js.map +1 -1
  980. package/pg-core/columns/text.cjs +0 -2
  981. package/pg-core/columns/text.cjs.map +1 -1
  982. package/pg-core/columns/text.js +0 -2
  983. package/pg-core/columns/text.js.map +1 -1
  984. package/pg-core/columns/time.cjs +0 -2
  985. package/pg-core/columns/time.cjs.map +1 -1
  986. package/pg-core/columns/time.js +0 -2
  987. package/pg-core/columns/time.js.map +1 -1
  988. package/pg-core/columns/timestamp.cjs +14 -13
  989. package/pg-core/columns/timestamp.cjs.map +1 -1
  990. package/pg-core/columns/timestamp.d.cts +4 -3
  991. package/pg-core/columns/timestamp.d.ts +4 -3
  992. package/pg-core/columns/timestamp.js +14 -13
  993. package/pg-core/columns/timestamp.js.map +1 -1
  994. package/pg-core/columns/uuid.cjs +0 -2
  995. package/pg-core/columns/uuid.cjs.map +1 -1
  996. package/pg-core/columns/uuid.js +0 -2
  997. package/pg-core/columns/uuid.js.map +1 -1
  998. package/pg-core/columns/varchar.cjs +0 -2
  999. package/pg-core/columns/varchar.cjs.map +1 -1
  1000. package/pg-core/columns/varchar.js +0 -2
  1001. package/pg-core/columns/varchar.js.map +1 -1
  1002. package/pg-core/columns/vector_extension/bit.cjs +0 -2
  1003. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  1004. package/pg-core/columns/vector_extension/bit.js +0 -2
  1005. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  1006. package/pg-core/columns/vector_extension/halfvec.cjs +4 -6
  1007. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  1008. package/pg-core/columns/vector_extension/halfvec.d.cts +2 -2
  1009. package/pg-core/columns/vector_extension/halfvec.d.ts +2 -2
  1010. package/pg-core/columns/vector_extension/halfvec.js +4 -6
  1011. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  1012. package/pg-core/columns/vector_extension/sparsevec.cjs +0 -2
  1013. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  1014. package/pg-core/columns/vector_extension/sparsevec.js +0 -2
  1015. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  1016. package/pg-core/columns/vector_extension/vector.cjs +4 -6
  1017. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  1018. package/pg-core/columns/vector_extension/vector.d.cts +2 -2
  1019. package/pg-core/columns/vector_extension/vector.d.ts +2 -2
  1020. package/pg-core/columns/vector_extension/vector.js +4 -6
  1021. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  1022. package/pg-core/dialect.cjs +217 -52
  1023. package/pg-core/dialect.cjs.map +1 -1
  1024. package/pg-core/dialect.d.cts +30 -19
  1025. package/pg-core/dialect.d.ts +31 -20
  1026. package/pg-core/dialect.js +221 -57
  1027. package/pg-core/dialect.js.map +1 -1
  1028. package/pg-core/effect/count.cjs +1 -1
  1029. package/pg-core/effect/count.cjs.map +1 -1
  1030. package/pg-core/effect/count.d.cts +2 -2
  1031. package/pg-core/effect/count.d.ts +2 -2
  1032. package/pg-core/effect/count.js +1 -1
  1033. package/pg-core/effect/count.js.map +1 -1
  1034. package/pg-core/effect/db.cjs +20 -14
  1035. package/pg-core/effect/db.cjs.map +1 -1
  1036. package/pg-core/effect/db.d.cts +11 -7
  1037. package/pg-core/effect/db.d.ts +13 -9
  1038. package/pg-core/effect/db.js +20 -14
  1039. package/pg-core/effect/db.js.map +1 -1
  1040. package/pg-core/effect/delete.cjs +6 -8
  1041. package/pg-core/effect/delete.cjs.map +1 -1
  1042. package/pg-core/effect/delete.d.cts +1 -1
  1043. package/pg-core/effect/delete.d.ts +1 -1
  1044. package/pg-core/effect/delete.js +6 -8
  1045. package/pg-core/effect/delete.js.map +1 -1
  1046. package/pg-core/effect/index.cjs +3 -3
  1047. package/pg-core/effect/index.js +3 -3
  1048. package/pg-core/effect/insert.cjs +5 -7
  1049. package/pg-core/effect/insert.cjs.map +1 -1
  1050. package/pg-core/effect/insert.d.cts +1 -1
  1051. package/pg-core/effect/insert.d.ts +1 -1
  1052. package/pg-core/effect/insert.js +5 -7
  1053. package/pg-core/effect/insert.js.map +1 -1
  1054. package/pg-core/effect/query.cjs +6 -7
  1055. package/pg-core/effect/query.cjs.map +1 -1
  1056. package/pg-core/effect/query.d.cts +1 -1
  1057. package/pg-core/effect/query.d.ts +1 -1
  1058. package/pg-core/effect/query.js +6 -7
  1059. package/pg-core/effect/query.js.map +1 -1
  1060. package/pg-core/effect/refresh-materialized-view.cjs +2 -1
  1061. package/pg-core/effect/refresh-materialized-view.cjs.map +1 -1
  1062. package/pg-core/effect/refresh-materialized-view.d.cts +1 -1
  1063. package/pg-core/effect/refresh-materialized-view.d.ts +1 -1
  1064. package/pg-core/effect/refresh-materialized-view.js +2 -1
  1065. package/pg-core/effect/refresh-materialized-view.js.map +1 -1
  1066. package/pg-core/effect/select.cjs +5 -3
  1067. package/pg-core/effect/select.cjs.map +1 -1
  1068. package/pg-core/effect/select.d.cts +1 -1
  1069. package/pg-core/effect/select.d.ts +1 -1
  1070. package/pg-core/effect/select.js +5 -3
  1071. package/pg-core/effect/select.js.map +1 -1
  1072. package/pg-core/effect/session.cjs +19 -30
  1073. package/pg-core/effect/session.cjs.map +1 -1
  1074. package/pg-core/effect/session.d.cts +28 -24
  1075. package/pg-core/effect/session.d.ts +29 -25
  1076. package/pg-core/effect/session.js +20 -31
  1077. package/pg-core/effect/session.js.map +1 -1
  1078. package/pg-core/effect/update.cjs +8 -8
  1079. package/pg-core/effect/update.cjs.map +1 -1
  1080. package/pg-core/effect/update.d.cts +1 -1
  1081. package/pg-core/effect/update.d.ts +1 -1
  1082. package/pg-core/effect/update.js +8 -8
  1083. package/pg-core/effect/update.js.map +1 -1
  1084. package/pg-core/index.cjs +16 -16
  1085. package/pg-core/index.d.cts +4 -4
  1086. package/pg-core/index.d.ts +4 -4
  1087. package/pg-core/index.js +13 -13
  1088. package/pg-core/query-builders/_query.cjs +101 -0
  1089. package/pg-core/query-builders/_query.cjs.map +1 -0
  1090. package/pg-core/query-builders/_query.d.cts +55 -0
  1091. package/pg-core/query-builders/_query.d.ts +55 -0
  1092. package/pg-core/query-builders/_query.js +97 -0
  1093. package/pg-core/query-builders/_query.js.map +1 -0
  1094. package/pg-core/query-builders/delete.cjs +1 -1
  1095. package/pg-core/query-builders/delete.cjs.map +1 -1
  1096. package/pg-core/query-builders/delete.js +1 -1
  1097. package/pg-core/query-builders/delete.js.map +1 -1
  1098. package/pg-core/query-builders/index.cjs +1 -1
  1099. package/pg-core/query-builders/index.js +1 -1
  1100. package/pg-core/query-builders/insert.cjs +1 -1
  1101. package/pg-core/query-builders/insert.cjs.map +1 -1
  1102. package/pg-core/query-builders/insert.js +1 -1
  1103. package/pg-core/query-builders/insert.js.map +1 -1
  1104. package/pg-core/query-builders/query.cjs +1 -0
  1105. package/pg-core/query-builders/query.cjs.map +1 -1
  1106. package/pg-core/query-builders/query.d.cts +1 -2
  1107. package/pg-core/query-builders/query.d.ts +1 -2
  1108. package/pg-core/query-builders/query.js +1 -0
  1109. package/pg-core/query-builders/query.js.map +1 -1
  1110. package/pg-core/query-builders/raw.cjs +4 -0
  1111. package/pg-core/query-builders/raw.cjs.map +1 -1
  1112. package/pg-core/query-builders/raw.js +4 -0
  1113. package/pg-core/query-builders/raw.js.map +1 -1
  1114. package/pg-core/query-builders/update.cjs +1 -1
  1115. package/pg-core/query-builders/update.cjs.map +1 -1
  1116. package/pg-core/query-builders/update.js +1 -1
  1117. package/pg-core/query-builders/update.js.map +1 -1
  1118. package/pg-core/schema.cjs +1 -1
  1119. package/pg-core/schema.js +1 -1
  1120. package/pg-core/session.cjs +5 -3
  1121. package/pg-core/session.cjs.map +1 -1
  1122. package/pg-core/session.d.cts +7 -4
  1123. package/pg-core/session.d.ts +7 -4
  1124. package/pg-core/session.js +5 -3
  1125. package/pg-core/session.js.map +1 -1
  1126. package/pg-core/table.cjs +1 -1
  1127. package/pg-core/table.cjs.map +1 -1
  1128. package/pg-core/table.js +1 -1
  1129. package/pg-core/table.js.map +1 -1
  1130. package/pg-core/{array.cjs → utils/array.cjs} +1 -1
  1131. package/pg-core/utils/array.cjs.map +1 -0
  1132. package/pg-core/{array.d.cts → utils/array.d.cts} +1 -1
  1133. package/pg-core/{array.d.ts → utils/array.d.ts} +1 -1
  1134. package/pg-core/{array.js → utils/array.js} +1 -1
  1135. package/pg-core/utils/array.js.map +1 -0
  1136. package/pg-core/utils/index.cjs +6 -0
  1137. package/pg-core/utils/index.d.cts +2 -0
  1138. package/pg-core/utils/index.d.ts +2 -0
  1139. package/pg-core/utils/index.js +3 -0
  1140. package/pg-core/utils.cjs +2 -2
  1141. package/pg-core/utils.cjs.map +1 -1
  1142. package/pg-core/utils.d.cts +1 -7
  1143. package/pg-core/utils.d.ts +1 -7
  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 +15 -10
  1149. package/pg-proxy/driver.cjs.map +1 -1
  1150. package/pg-proxy/driver.d.cts +3 -6
  1151. package/pg-proxy/driver.d.ts +4 -7
  1152. package/pg-proxy/driver.js +14 -10
  1153. package/pg-proxy/driver.js.map +1 -1
  1154. package/pg-proxy/index.cjs +2 -0
  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 +84 -8
  1163. package/pg-proxy/session.cjs.map +1 -1
  1164. package/pg-proxy/session.d.cts +32 -9
  1165. package/pg-proxy/session.d.ts +33 -10
  1166. package/pg-proxy/session.js +84 -10
  1167. package/pg-proxy/session.js.map +1 -1
  1168. package/pglite/driver.cjs +33 -71
  1169. package/pglite/driver.cjs.map +1 -1
  1170. package/pglite/driver.d.cts +17 -12
  1171. package/pglite/driver.d.ts +19 -14
  1172. package/pglite/driver.js +32 -71
  1173. package/pglite/driver.js.map +1 -1
  1174. package/pglite/index.cjs +3 -2
  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 +86 -25
  1183. package/pglite/session.cjs.map +1 -1
  1184. package/pglite/session.d.cts +30 -9
  1185. package/pglite/session.d.ts +32 -11
  1186. package/pglite/session.js +87 -27
  1187. package/pglite/session.js.map +1 -1
  1188. package/planetscale-serverless/driver.cjs +2 -3
  1189. package/planetscale-serverless/driver.cjs.map +1 -1
  1190. package/planetscale-serverless/driver.d.cts +0 -1
  1191. package/planetscale-serverless/driver.d.ts +0 -1
  1192. package/planetscale-serverless/driver.js +2 -3
  1193. package/planetscale-serverless/driver.js.map +1 -1
  1194. package/planetscale-serverless/session.cjs +20 -27
  1195. package/planetscale-serverless/session.cjs.map +1 -1
  1196. package/planetscale-serverless/session.d.cts +6 -12
  1197. package/planetscale-serverless/session.d.ts +8 -14
  1198. package/planetscale-serverless/session.js +21 -28
  1199. package/planetscale-serverless/session.js.map +1 -1
  1200. package/postgres-js/driver.cjs +19 -124
  1201. package/postgres-js/driver.cjs.map +1 -1
  1202. package/postgres-js/driver.d.cts +6 -10
  1203. package/postgres-js/driver.d.ts +7 -11
  1204. package/postgres-js/driver.js +19 -124
  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 +112 -17
  1215. package/postgres-js/session.cjs.map +1 -1
  1216. package/postgres-js/session.d.cts +31 -10
  1217. package/postgres-js/session.d.ts +32 -11
  1218. package/postgres-js/session.js +112 -18
  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 +1 -2
  1223. package/prisma/mysql/session.cjs.map +1 -1
  1224. package/prisma/mysql/session.d.cts +0 -1
  1225. package/prisma/mysql/session.d.ts +1 -2
  1226. package/prisma/mysql/session.js +1 -2
  1227. package/prisma/mysql/session.js.map +1 -1
  1228. package/prisma/pg/driver.cjs +3 -9
  1229. package/prisma/pg/driver.cjs.map +1 -1
  1230. package/prisma/pg/driver.d.cts +3 -7
  1231. package/prisma/pg/driver.d.ts +3 -7
  1232. package/prisma/pg/driver.js +4 -9
  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 +25 -1
  1239. package/prisma/pg/session.cjs.map +1 -1
  1240. package/prisma/pg/session.d.cts +15 -3
  1241. package/prisma/pg/session.d.ts +15 -3
  1242. package/prisma/pg/session.js +25 -2
  1243. package/prisma/pg/session.js.map +1 -1
  1244. package/prisma/sqlite/session.cjs +3 -0
  1245. package/prisma/sqlite/session.cjs.map +1 -1
  1246. package/prisma/sqlite/session.d.cts +1 -0
  1247. package/prisma/sqlite/session.d.ts +2 -1
  1248. package/prisma/sqlite/session.js +3 -0
  1249. package/prisma/sqlite/session.js.map +1 -1
  1250. package/relations.cjs +24 -85
  1251. package/relations.cjs.map +1 -1
  1252. package/relations.d.cts +16 -41
  1253. package/relations.d.ts +16 -41
  1254. package/relations.js +25 -84
  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 +2 -4
  1263. package/singlestore/driver.cjs.map +1 -1
  1264. package/singlestore/driver.d.cts +1 -2
  1265. package/singlestore/driver.d.ts +3 -4
  1266. package/singlestore/driver.js +2 -4
  1267. package/singlestore/driver.js.map +1 -1
  1268. package/singlestore/session.cjs +7 -17
  1269. package/singlestore/session.cjs.map +1 -1
  1270. package/singlestore/session.d.cts +4 -8
  1271. package/singlestore/session.d.ts +6 -10
  1272. package/singlestore/session.js +8 -18
  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 +5 -13
  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 +5 -13
  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 +2 -5
  1404. package/singlestore-proxy/driver.cjs.map +1 -1
  1405. package/singlestore-proxy/driver.js +2 -5
  1406. package/singlestore-proxy/driver.js.map +1 -1
  1407. package/singlestore-proxy/session.cjs +6 -11
  1408. package/singlestore-proxy/session.cjs.map +1 -1
  1409. package/singlestore-proxy/session.d.cts +4 -9
  1410. package/singlestore-proxy/session.d.ts +5 -10
  1411. package/singlestore-proxy/session.js +7 -12
  1412. package/singlestore-proxy/session.js.map +1 -1
  1413. package/sql/index.cjs +0 -1
  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 +11 -32
  1418. package/sql/sql.cjs.map +1 -1
  1419. package/sql/sql.d.cts +5 -15
  1420. package/sql/sql.d.ts +5 -15
  1421. package/sql/sql.js +12 -32
  1422. package/sql/sql.js.map +1 -1
  1423. package/sql-js/driver.cjs +2 -5
  1424. package/sql-js/driver.cjs.map +1 -1
  1425. package/sql-js/driver.d.ts +1 -1
  1426. package/sql-js/driver.js +2 -5
  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 +6 -10
  1431. package/sql-js/session.d.ts +6 -10
  1432. package/sql-js/session.js +15 -15
  1433. package/sql-js/session.js.map +1 -1
  1434. package/sqlite-cloud/driver.cjs +2 -3
  1435. package/sqlite-cloud/driver.cjs.map +1 -1
  1436. package/sqlite-cloud/driver.d.ts +1 -1
  1437. package/sqlite-cloud/driver.js +2 -3
  1438. package/sqlite-cloud/driver.js.map +1 -1
  1439. package/sqlite-cloud/session.cjs +20 -21
  1440. package/sqlite-cloud/session.cjs.map +1 -1
  1441. package/sqlite-cloud/session.d.cts +6 -9
  1442. package/sqlite-cloud/session.d.ts +7 -10
  1443. package/sqlite-cloud/session.js +21 -22
  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 +5 -13
  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 +5 -13
  1499. package/sqlite-core/query-builders/query.js.map +1 -1
  1500. package/sqlite-core/query-builders/raw.cjs +4 -0
  1501. package/sqlite-core/query-builders/raw.cjs.map +1 -1
  1502. package/sqlite-core/query-builders/raw.js +4 -0
  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 +2 -3
  1525. package/sqlite-proxy/driver.cjs.map +1 -1
  1526. package/sqlite-proxy/driver.d.ts +1 -1
  1527. package/sqlite-proxy/driver.js +2 -3
  1528. package/sqlite-proxy/driver.js.map +1 -1
  1529. package/sqlite-proxy/session.cjs +17 -20
  1530. package/sqlite-proxy/session.cjs.map +1 -1
  1531. package/sqlite-proxy/session.d.cts +7 -11
  1532. package/sqlite-proxy/session.d.ts +8 -12
  1533. package/sqlite-proxy/session.js +18 -21
  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 +2 -3
  1538. package/tidb-serverless/driver.cjs.map +1 -1
  1539. package/tidb-serverless/driver.d.cts +0 -1
  1540. package/tidb-serverless/driver.d.ts +0 -1
  1541. package/tidb-serverless/driver.js +2 -3
  1542. package/tidb-serverless/driver.js.map +1 -1
  1543. package/tidb-serverless/session.cjs +37 -25
  1544. package/tidb-serverless/session.cjs.map +1 -1
  1545. package/tidb-serverless/session.d.cts +4 -10
  1546. package/tidb-serverless/session.d.ts +6 -12
  1547. package/tidb-serverless/session.js +38 -26
  1548. package/tidb-serverless/session.js.map +1 -1
  1549. package/tursodatabase/driver-core.cjs +2 -3
  1550. package/tursodatabase/driver-core.cjs.map +1 -1
  1551. package/tursodatabase/driver-core.d.ts +1 -1
  1552. package/tursodatabase/driver-core.js +2 -3
  1553. package/tursodatabase/driver-core.js.map +1 -1
  1554. package/tursodatabase/session.cjs +19 -20
  1555. package/tursodatabase/session.cjs.map +1 -1
  1556. package/tursodatabase/session.d.cts +6 -9
  1557. package/tursodatabase/session.d.ts +7 -10
  1558. package/tursodatabase/session.js +20 -21
  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 +8 -3
  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 +8 -3
  1570. package/up-migrations/pg.js.map +1 -1
  1571. package/up-migrations/sqlite.d.ts +2 -2
  1572. package/utils.cjs +7 -129
  1573. package/utils.cjs.map +1 -1
  1574. package/utils.d.cts +3 -10
  1575. package/utils.d.ts +3 -10
  1576. package/utils.js +8 -127
  1577. package/utils.js.map +1 -1
  1578. package/vercel-postgres/driver.cjs +32 -14
  1579. package/vercel-postgres/driver.cjs.map +1 -1
  1580. package/vercel-postgres/driver.d.cts +17 -12
  1581. package/vercel-postgres/driver.d.ts +18 -13
  1582. package/vercel-postgres/driver.js +31 -14
  1583. package/vercel-postgres/driver.js.map +1 -1
  1584. package/vercel-postgres/index.cjs +3 -2
  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 +110 -32
  1593. package/vercel-postgres/session.cjs.map +1 -1
  1594. package/vercel-postgres/session.d.cts +32 -9
  1595. package/vercel-postgres/session.d.ts +33 -10
  1596. package/vercel-postgres/session.js +111 -34
  1597. package/vercel-postgres/session.js.map +1 -1
  1598. package/xata-http/driver.cjs +31 -91
  1599. package/xata-http/driver.cjs.map +1 -1
  1600. package/xata-http/driver.d.cts +16 -10
  1601. package/xata-http/driver.d.ts +17 -11
  1602. package/xata-http/driver.js +30 -91
  1603. package/xata-http/driver.js.map +1 -1
  1604. package/xata-http/index.cjs +4 -2
  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 +110 -24
  1615. package/xata-http/session.cjs.map +1 -1
  1616. package/xata-http/session.d.cts +33 -7
  1617. package/xata-http/session.d.ts +34 -8
  1618. package/xata-http/session.js +110 -26
  1619. package/xata-http/session.js.map +1 -1
  1620. package/codecs.cjs +0 -77
  1621. package/codecs.cjs.map +0 -1
  1622. package/codecs.d.cts +0 -68
  1623. package/codecs.d.ts +0 -68
  1624. package/codecs.js +0 -74
  1625. package/codecs.js.map +0 -1
  1626. package/pg-core/array.cjs.map +0 -1
  1627. package/pg-core/array.js.map +0 -1
  1628. package/pg-core/codecs.cjs +0 -156
  1629. package/pg-core/codecs.cjs.map +0 -1
  1630. package/pg-core/codecs.d.cts +0 -27
  1631. package/pg-core/codecs.d.ts +0 -27
  1632. package/pg-core/codecs.js +0 -148
  1633. package/pg-core/codecs.js.map +0 -1
@@ -5,8 +5,8 @@ import { Subquery } from "../../subquery.js";
5
5
  import { ValueOrArray } from "../../utils.js";
6
6
  import { Placeholder, Query, SQL, SQLWrapper } from "../../sql/sql.js";
7
7
  import { QueryPromise } from "../../query-promise.js";
8
- import { AnySingleStoreQueryResultHKT, PreparedQueryHKTBase, PreparedQueryKind, SingleStorePreparedQueryConfig, SingleStoreQueryResultHKT, SingleStoreQueryResultKind, SingleStoreSession } from "../session.js";
9
8
  import { SingleStoreDialect } from "../dialect.js";
9
+ import { AnySingleStoreQueryResultHKT, PreparedQueryHKTBase, PreparedQueryKind, SingleStorePreparedQueryConfig, SingleStoreQueryResultHKT, SingleStoreQueryResultKind, SingleStoreSession } from "../session.js";
10
10
  import { SingleStoreTable } from "../table.js";
11
11
 
12
12
  //#region src/singlestore-core/query-builders/delete.d.ts
@@ -5,8 +5,8 @@ import { entityKind } from "../../entity.js";
5
5
  import { InferInsertModel, InferModelFromColumns } from "../../table.js";
6
6
  import { Param, Placeholder, Query, SQL, SQLWrapper } from "../../sql/sql.js";
7
7
  import { QueryPromise } from "../../query-promise.js";
8
- import { AnySingleStoreQueryResultHKT, PreparedQueryHKTBase, PreparedQueryKind, SingleStorePreparedQueryConfig, SingleStoreQueryResultHKT, SingleStoreQueryResultKind, SingleStoreSession } from "../session.js";
9
8
  import { SingleStoreDialect } from "../dialect.js";
9
+ import { AnySingleStoreQueryResultHKT, PreparedQueryHKTBase, PreparedQueryKind, SingleStorePreparedQueryConfig, SingleStoreQueryResultHKT, SingleStoreQueryResultKind, SingleStoreSession } from "../session.js";
10
10
  import { RunnableQuery } from "../../runnable-query.js";
11
11
  import { SingleStoreTable } from "../table.js";
12
12
 
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_runtime = require('../../_virtual/_rolldown/runtime.cjs');
3
3
  let __entity_ts = require("../../entity.cjs");
4
- let __relations_ts = require("../../relations.cjs");
5
4
  let __query_promise_ts = require("../../query-promise.cjs");
5
+ let __relations_ts = require("../../relations.cjs");
6
6
 
7
7
  //#region src/singlestore-core/query-builders/query.ts
8
8
  var RelationalQueryBuilder = class {
@@ -35,18 +35,10 @@ var SingleStoreRelationalQuery = class extends __query_promise_ts.QueryPromise {
35
35
  }
36
36
  prepare() {
37
37
  const { query, builtQuery } = this._toSQL();
38
- return this.session.prepareRelationalQuery(builtQuery, void 0, (0, __relations_ts.makeRqbMapper)({
39
- isFirst: this.mode === "first",
40
- parseJson: false,
41
- parseJsonIfString: true,
42
- rootJsonMappers: true,
43
- selection: query.selection
44
- }), {
45
- isFirst: this.mode === "first",
46
- parseJson: false,
47
- parseJsonIfString: true,
48
- rootJsonMappers: true,
49
- selection: query.selection
38
+ return this.session.prepareRelationalQuery(builtQuery, void 0, (rawRows) => {
39
+ const rows = rawRows.map((row) => (0, __relations_ts.mapRelationalRow)(row, query.selection, void 0, void 0, true));
40
+ if (this.mode === "first") return rows[0];
41
+ return rows;
50
42
  });
51
43
  }
52
44
  _getQuery() {
@@ -1 +1 @@
1
- {"version":3,"file":"query.cjs","names":["entityKind","QueryPromise"],"sources":["../../../src/singlestore-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmakeRqbMapper,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { SingleStoreDialect } from '../dialect.ts';\nimport type {\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n\tSingleStorePreparedQueryConfig,\n\tSingleStoreSession,\n} from '../session.ts';\nimport type { SingleStoreTable } from '../table.ts';\nimport type { SingleStoreView } from '../view.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreRelationalQueryBuilderV2';\n\n\tconstructor(\n\t\tprivate schema: TSchema,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'many'> | undefined ?? true,\n\t\t\t'many',\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends DBQueryConfig<'one', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TSelection, DBQueryConfig<'one', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'one'> | undefined ?? true,\n\t\t\t'first',\n\t\t);\n\t}\n}\n\nexport class SingleStoreRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRelationalQueryV2';\n\n\tdeclare protected $brand: 'SingleStoreRelationalQuery';\n\n\tconstructor(\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t\tprivate config: DBQueryConfig<'many' | 'one'> | true,\n\t\tprivate mode: 'many' | 'first',\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\t\treturn this.session.prepareRelationalQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\tmakeRqbMapper({\n\t\t\t\tisFirst: this.mode === 'first',\n\t\t\t\tparseJson: false,\n\t\t\t\tparseJsonIfString: true,\n\t\t\t\trootJsonMappers: true,\n\t\t\t\tselection: query.selection,\n\t\t\t}),\n\t\t\t{\n\t\t\t\tisFirst: this.mode === 'first',\n\t\t\t\tparseJson: false,\n\t\t\t\tparseJsonIfString: true,\n\t\t\t\trootJsonMappers: true,\n\t\t\t\tselection: query.selection,\n\t\t\t},\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, SingleStorePreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\treturn this.dialect.buildRelationalQuery({\n\t\t\tschema: this.schema,\n\t\t\ttable: this.table,\n\t\t\ttableConfig: this.tableConfig,\n\t\t\tqueryConfig: this.config,\n\t\t\tmode: this.mode,\n\t\t});\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":";;;;;;;AAsBA,IAAa,yBAAb,MAIE;CACD,QAAiBA,0BAAsB;CAEvC,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACP;EALO;EACA;EACA;EACA;EACA;;CAGT,SACC,QAC+F;AAC/F,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA+C,MAC/C,OACA;;CAGF,UACC,QAC4G;AAC5G,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA8C,MAC9C,QACA;;;AAIH,IAAa,6BAAb,cAGUC,gCAAsB;CAC/B,QAA0BD,0BAAsB;CAIhD,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACR,AAAQ,QACR,AAAQ,MACP;AACD,SAAO;EARC;EACA;EACA;EACA;EACA;EACA;EACA;;CAKT,UAAU;EACT,MAAM,EAAE,OAAO,eAAe,KAAK,QAAQ;AAC3C,SAAO,KAAK,QAAQ,uBACnB,YACA,0CACc;GACb,SAAS,KAAK,SAAS;GACvB,WAAW;GACX,mBAAmB;GACnB,iBAAiB;GACjB,WAAW,MAAM;GACjB,CAAC,EACF;GACC,SAAS,KAAK,SAAS;GACvB,WAAW;GACX,mBAAmB;GACnB,iBAAiB;GACjB,WAAW,MAAM;GACjB,CACD;;CAGF,AAAQ,YAAY;AACnB,SAAO,KAAK,QAAQ,qBAAqB;GACxC,QAAQ,KAAK;GACb,OAAO,KAAK;GACZ,aAAa,KAAK;GAClB,aAAa,KAAK;GAClB,MAAM,KAAK;GACX,CAAC;;CAGH,AAAQ,SAA8E;EACrF,MAAM,QAAQ,KAAK,WAAW;AAI9B,SAAO;GAAE,YAFU,KAAK,QAAQ,WAAW,MAAM,IAAI;GAEhC;GAAO;;;CAI7B,SAAc;AACb,SAAO,KAAK,WAAW,CAAC;;CAGzB,QAAe;AACd,SAAO,KAAK,QAAQ,CAAC;;CAGtB,AAAS,UAA4B;AACpC,SAAO,KAAK,SAAS,CAAC,SAAS"}
1
+ {"version":3,"file":"query.cjs","names":["entityKind","QueryPromise"],"sources":["../../../src/singlestore-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmapRelationalRow,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { SingleStoreDialect } from '../dialect.ts';\nimport type {\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n\tSingleStorePreparedQueryConfig,\n\tSingleStoreSession,\n} from '../session.ts';\nimport type { SingleStoreTable } from '../table.ts';\nimport type { SingleStoreView } from '../view.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreRelationalQueryBuilderV2';\n\n\tconstructor(\n\t\tprivate schema: TSchema,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'many'> | undefined ?? true,\n\t\t\t'many',\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends DBQueryConfig<'one', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TSelection, DBQueryConfig<'one', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'one'> | undefined ?? true,\n\t\t\t'first',\n\t\t);\n\t}\n}\n\nexport class SingleStoreRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRelationalQueryV2';\n\n\tdeclare protected $brand: 'SingleStoreRelationalQuery';\n\n\tconstructor(\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t\tprivate config: DBQueryConfig<'many' | 'one'> | true,\n\t\tprivate mode: 'many' | 'first',\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\t\treturn this.session.prepareRelationalQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\t(rawRows) => {\n\t\t\t\tconst rows = rawRows.map((row) => mapRelationalRow(row, query.selection, undefined, undefined, true));\n\t\t\t\tif (this.mode === 'first') {\n\t\t\t\t\treturn rows[0] as TResult;\n\t\t\t\t}\n\t\t\t\treturn rows as TResult;\n\t\t\t},\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, SingleStorePreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\treturn this.dialect.buildRelationalQuery({\n\t\t\tschema: this.schema,\n\t\t\ttable: this.table,\n\t\t\ttableConfig: this.tableConfig,\n\t\t\tqueryConfig: this.config,\n\t\t\tmode: this.mode,\n\t\t});\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":";;;;;;;AAsBA,IAAa,yBAAb,MAIE;CACD,QAAiBA,0BAAsB;CAEvC,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACP;EALO;EACA;EACA;EACA;EACA;;CAGT,SACC,QAC+F;AAC/F,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA+C,MAC/C,OACA;;CAGF,UACC,QAC4G;AAC5G,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA8C,MAC9C,QACA;;;AAIH,IAAa,6BAAb,cAGUC,gCAAsB;CAC/B,QAA0BD,0BAAsB;CAIhD,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACR,AAAQ,QACR,AAAQ,MACP;AACD,SAAO;EARC;EACA;EACA;EACA;EACA;EACA;EACA;;CAKT,UAAU;EACT,MAAM,EAAE,OAAO,eAAe,KAAK,QAAQ;AAC3C,SAAO,KAAK,QAAQ,uBACnB,YACA,SACC,YAAY;GACZ,MAAM,OAAO,QAAQ,KAAK,6CAAyB,KAAK,MAAM,WAAW,QAAW,QAAW,KAAK,CAAC;AACrG,OAAI,KAAK,SAAS,QACjB,QAAO,KAAK;AAEb,UAAO;IAER;;CAGF,AAAQ,YAAY;AACnB,SAAO,KAAK,QAAQ,qBAAqB;GACxC,QAAQ,KAAK;GACb,OAAO,KAAK;GACZ,aAAa,KAAK;GAClB,aAAa,KAAK;GAClB,MAAM,KAAK;GACX,CAAC;;CAGH,AAAQ,SAA8E;EACrF,MAAM,QAAQ,KAAK,WAAW;AAI9B,SAAO;GAAE,YAFU,KAAK,QAAQ,WAAW,MAAM,IAAI;GAEhC;GAAO;;;CAI7B,SAAc;AACb,SAAO,KAAK,WAAW,CAAC;;CAGzB,QAAe;AACd,SAAO,KAAK,QAAQ,CAAC;;CAGtB,AAAS,UAA4B;AACpC,SAAO,KAAK,SAAS,CAAC,SAAS"}
@@ -5,8 +5,8 @@ import { PreparedQueryHKTBase, PreparedQueryKind, SingleStorePreparedQueryConfig
5
5
  import { entityKind } from "../../entity.js";
6
6
  import { KnownKeysOnly } from "../../utils.js";
7
7
  import { Query } from "../../sql/sql.js";
8
- import { BuildQueryResult, DBQueryConfig, TableRelationalConfig, TablesRelationalConfig } from "../../relations.js";
9
8
  import { QueryPromise } from "../../query-promise.js";
9
+ import { BuildQueryResult, DBQueryConfig, TableRelationalConfig, TablesRelationalConfig } from "../../relations.js";
10
10
 
11
11
  //#region src/singlestore-core/query-builders/query.d.ts
12
12
  declare class RelationalQueryBuilder<TPreparedQueryHKT extends PreparedQueryHKTBase, TSchema extends TablesRelationalConfig, TFields extends TableRelationalConfig> {
@@ -1,6 +1,6 @@
1
1
  import { entityKind } from "../../entity.js";
2
- import { makeRqbMapper } from "../../relations.js";
3
2
  import { QueryPromise } from "../../query-promise.js";
3
+ import { mapRelationalRow } from "../../relations.js";
4
4
 
5
5
  //#region src/singlestore-core/query-builders/query.ts
6
6
  var RelationalQueryBuilder = class {
@@ -33,18 +33,10 @@ var SingleStoreRelationalQuery = class extends QueryPromise {
33
33
  }
34
34
  prepare() {
35
35
  const { query, builtQuery } = this._toSQL();
36
- return this.session.prepareRelationalQuery(builtQuery, void 0, makeRqbMapper({
37
- isFirst: this.mode === "first",
38
- parseJson: false,
39
- parseJsonIfString: true,
40
- rootJsonMappers: true,
41
- selection: query.selection
42
- }), {
43
- isFirst: this.mode === "first",
44
- parseJson: false,
45
- parseJsonIfString: true,
46
- rootJsonMappers: true,
47
- selection: query.selection
36
+ return this.session.prepareRelationalQuery(builtQuery, void 0, (rawRows) => {
37
+ const rows = rawRows.map((row) => mapRelationalRow(row, query.selection, void 0, void 0, true));
38
+ if (this.mode === "first") return rows[0];
39
+ return rows;
48
40
  });
49
41
  }
50
42
  _getQuery() {
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","names":[],"sources":["../../../src/singlestore-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmakeRqbMapper,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { SingleStoreDialect } from '../dialect.ts';\nimport type {\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n\tSingleStorePreparedQueryConfig,\n\tSingleStoreSession,\n} from '../session.ts';\nimport type { SingleStoreTable } from '../table.ts';\nimport type { SingleStoreView } from '../view.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreRelationalQueryBuilderV2';\n\n\tconstructor(\n\t\tprivate schema: TSchema,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'many'> | undefined ?? true,\n\t\t\t'many',\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends DBQueryConfig<'one', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TSelection, DBQueryConfig<'one', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'one'> | undefined ?? true,\n\t\t\t'first',\n\t\t);\n\t}\n}\n\nexport class SingleStoreRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRelationalQueryV2';\n\n\tdeclare protected $brand: 'SingleStoreRelationalQuery';\n\n\tconstructor(\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t\tprivate config: DBQueryConfig<'many' | 'one'> | true,\n\t\tprivate mode: 'many' | 'first',\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\t\treturn this.session.prepareRelationalQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\tmakeRqbMapper({\n\t\t\t\tisFirst: this.mode === 'first',\n\t\t\t\tparseJson: false,\n\t\t\t\tparseJsonIfString: true,\n\t\t\t\trootJsonMappers: true,\n\t\t\t\tselection: query.selection,\n\t\t\t}),\n\t\t\t{\n\t\t\t\tisFirst: this.mode === 'first',\n\t\t\t\tparseJson: false,\n\t\t\t\tparseJsonIfString: true,\n\t\t\t\trootJsonMappers: true,\n\t\t\t\tselection: query.selection,\n\t\t\t},\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, SingleStorePreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\treturn this.dialect.buildRelationalQuery({\n\t\t\tschema: this.schema,\n\t\t\ttable: this.table,\n\t\t\ttableConfig: this.tableConfig,\n\t\t\tqueryConfig: this.config,\n\t\t\tmode: this.mode,\n\t\t});\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":";;;;;AAsBA,IAAa,yBAAb,MAIE;CACD,QAAiB,cAAsB;CAEvC,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACP;EALO;EACA;EACA;EACA;EACA;;CAGT,SACC,QAC+F;AAC/F,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA+C,MAC/C,OACA;;CAGF,UACC,QAC4G;AAC5G,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA8C,MAC9C,QACA;;;AAIH,IAAa,6BAAb,cAGU,aAAsB;CAC/B,QAA0B,cAAsB;CAIhD,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACR,AAAQ,QACR,AAAQ,MACP;AACD,SAAO;EARC;EACA;EACA;EACA;EACA;EACA;EACA;;CAKT,UAAU;EACT,MAAM,EAAE,OAAO,eAAe,KAAK,QAAQ;AAC3C,SAAO,KAAK,QAAQ,uBACnB,YACA,QACA,cAAc;GACb,SAAS,KAAK,SAAS;GACvB,WAAW;GACX,mBAAmB;GACnB,iBAAiB;GACjB,WAAW,MAAM;GACjB,CAAC,EACF;GACC,SAAS,KAAK,SAAS;GACvB,WAAW;GACX,mBAAmB;GACnB,iBAAiB;GACjB,WAAW,MAAM;GACjB,CACD;;CAGF,AAAQ,YAAY;AACnB,SAAO,KAAK,QAAQ,qBAAqB;GACxC,QAAQ,KAAK;GACb,OAAO,KAAK;GACZ,aAAa,KAAK;GAClB,aAAa,KAAK;GAClB,MAAM,KAAK;GACX,CAAC;;CAGH,AAAQ,SAA8E;EACrF,MAAM,QAAQ,KAAK,WAAW;AAI9B,SAAO;GAAE,YAFU,KAAK,QAAQ,WAAW,MAAM,IAAI;GAEhC;GAAO;;;CAI7B,SAAc;AACb,SAAO,KAAK,WAAW,CAAC;;CAGzB,QAAe;AACd,SAAO,KAAK,QAAQ,CAAC;;CAGtB,AAAS,UAA4B;AACpC,SAAO,KAAK,SAAS,CAAC,SAAS"}
1
+ {"version":3,"file":"query.js","names":[],"sources":["../../../src/singlestore-core/query-builders/query.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport {\n\ttype BuildQueryResult,\n\ttype BuildRelationalQueryResult,\n\ttype DBQueryConfig,\n\tmapRelationalRow,\n\ttype TableRelationalConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { Query, QueryWithTypings, SQL } from '~/sql/sql.ts';\nimport type { KnownKeysOnly } from '~/utils.ts';\nimport type { SingleStoreDialect } from '../dialect.ts';\nimport type {\n\tPreparedQueryHKTBase,\n\tPreparedQueryKind,\n\tSingleStorePreparedQueryConfig,\n\tSingleStoreSession,\n} from '../session.ts';\nimport type { SingleStoreTable } from '../table.ts';\nimport type { SingleStoreView } from '../view.ts';\n\nexport class RelationalQueryBuilder<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTSchema extends TablesRelationalConfig,\n\tTFields extends TableRelationalConfig,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreRelationalQueryBuilderV2';\n\n\tconstructor(\n\t\tprivate schema: TSchema,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t) {}\n\n\tfindMany<TConfig extends DBQueryConfig<'many', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TConfig, DBQueryConfig<'many', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TConfig>[]> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'many'> | undefined ?? true,\n\t\t\t'many',\n\t\t);\n\t}\n\n\tfindFirst<TSelection extends DBQueryConfig<'one', TSchema, TFields>>(\n\t\tconfig?: KnownKeysOnly<TSelection, DBQueryConfig<'one', TSchema, TFields>>,\n\t): SingleStoreRelationalQuery<TPreparedQueryHKT, BuildQueryResult<TSchema, TFields, TSelection> | undefined> {\n\t\treturn new SingleStoreRelationalQuery(\n\t\t\tthis.schema,\n\t\t\tthis.table,\n\t\t\tthis.tableConfig,\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tconfig as DBQueryConfig<'one'> | undefined ?? true,\n\t\t\t'first',\n\t\t);\n\t}\n}\n\nexport class SingleStoreRelationalQuery<\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTResult,\n> extends QueryPromise<TResult> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRelationalQueryV2';\n\n\tdeclare protected $brand: 'SingleStoreRelationalQuery';\n\n\tconstructor(\n\t\tprivate schema: TablesRelationalConfig,\n\t\tprivate table: SingleStoreTable | SingleStoreView,\n\t\tprivate tableConfig: TableRelationalConfig,\n\t\tprivate dialect: SingleStoreDialect,\n\t\tprivate session: SingleStoreSession,\n\t\tprivate config: DBQueryConfig<'many' | 'one'> | true,\n\t\tprivate mode: 'many' | 'first',\n\t) {\n\t\tsuper();\n\t}\n\n\tprepare() {\n\t\tconst { query, builtQuery } = this._toSQL();\n\t\treturn this.session.prepareRelationalQuery(\n\t\t\tbuiltQuery,\n\t\t\tundefined,\n\t\t\t(rawRows) => {\n\t\t\t\tconst rows = rawRows.map((row) => mapRelationalRow(row, query.selection, undefined, undefined, true));\n\t\t\t\tif (this.mode === 'first') {\n\t\t\t\t\treturn rows[0] as TResult;\n\t\t\t\t}\n\t\t\t\treturn rows as TResult;\n\t\t\t},\n\t\t) as PreparedQueryKind<TPreparedQueryHKT, SingleStorePreparedQueryConfig & { execute: TResult }, true>;\n\t}\n\n\tprivate _getQuery() {\n\t\treturn this.dialect.buildRelationalQuery({\n\t\t\tschema: this.schema,\n\t\t\ttable: this.table,\n\t\t\ttableConfig: this.tableConfig,\n\t\t\tqueryConfig: this.config,\n\t\t\tmode: this.mode,\n\t\t});\n\t}\n\n\tprivate _toSQL(): { query: BuildRelationalQueryResult; builtQuery: QueryWithTypings } {\n\t\tconst query = this._getQuery();\n\n\t\tconst builtQuery = this.dialect.sqlToQuery(query.sql);\n\n\t\treturn { builtQuery, query };\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this._getQuery().sql;\n\t}\n\n\ttoSQL(): Query {\n\t\treturn this._toSQL().builtQuery;\n\t}\n\n\toverride execute(): Promise<TResult> {\n\t\treturn this.prepare().execute();\n\t}\n}\n"],"mappings":";;;;;AAsBA,IAAa,yBAAb,MAIE;CACD,QAAiB,cAAsB;CAEvC,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACP;EALO;EACA;EACA;EACA;EACA;;CAGT,SACC,QAC+F;AAC/F,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA+C,MAC/C,OACA;;CAGF,UACC,QAC4G;AAC5G,SAAO,IAAI,2BACV,KAAK,QACL,KAAK,OACL,KAAK,aACL,KAAK,SACL,KAAK,SACL,UAA8C,MAC9C,QACA;;;AAIH,IAAa,6BAAb,cAGU,aAAsB;CAC/B,QAA0B,cAAsB;CAIhD,YACC,AAAQ,QACR,AAAQ,OACR,AAAQ,aACR,AAAQ,SACR,AAAQ,SACR,AAAQ,QACR,AAAQ,MACP;AACD,SAAO;EARC;EACA;EACA;EACA;EACA;EACA;EACA;;CAKT,UAAU;EACT,MAAM,EAAE,OAAO,eAAe,KAAK,QAAQ;AAC3C,SAAO,KAAK,QAAQ,uBACnB,YACA,SACC,YAAY;GACZ,MAAM,OAAO,QAAQ,KAAK,QAAQ,iBAAiB,KAAK,MAAM,WAAW,QAAW,QAAW,KAAK,CAAC;AACrG,OAAI,KAAK,SAAS,QACjB,QAAO,KAAK;AAEb,UAAO;IAER;;CAGF,AAAQ,YAAY;AACnB,SAAO,KAAK,QAAQ,qBAAqB;GACxC,QAAQ,KAAK;GACb,OAAO,KAAK;GACZ,aAAa,KAAK;GAClB,aAAa,KAAK;GAClB,MAAM,KAAK;GACX,CAAC;;CAGH,AAAQ,SAA8E;EACrF,MAAM,QAAQ,KAAK,WAAW;AAI9B,SAAO;GAAE,YAFU,KAAK,QAAQ,WAAW,MAAM,IAAI;GAEhC;GAAO;;;CAI7B,SAAc;AACb,SAAO,KAAK,WAAW,CAAC;;CAGzB,QAAe;AACd,SAAO,KAAK,QAAQ,CAAC;;CAGtB,AAAS,UAA4B;AACpC,SAAO,KAAK,SAAS,CAAC,SAAS"}
@@ -5,8 +5,8 @@ import { ValueOrArray } from "../../utils.js";
5
5
  import { ColumnsSelection, Query, SQL } from "../../sql/sql.js";
6
6
  import { QueryPromise } from "../../query-promise.js";
7
7
  import { TypedQueryBuilder } from "../../query-builders/query-builder.js";
8
- import { PreparedQueryHKTBase, SingleStoreSession } from "../session.js";
9
8
  import { SingleStoreDialect } from "../dialect.js";
9
+ import { PreparedQueryHKTBase, SingleStoreSession } from "../session.js";
10
10
  import { BuildSubquerySelection, GetSelectTableName, GetSelectTableSelection, JoinNullability, SelectMode, SelectResult } from "../../query-builders/select.types.js";
11
11
  import { CacheConfig, WithCacheConfig } from "../../cache/core/types.js";
12
12
  import { SingleStoreColumn } from "../columns/index.js";
@@ -7,8 +7,8 @@ import { GetColumnData } from "../../column.js";
7
7
  import { UpdateSet, ValueOrArray } from "../../utils.js";
8
8
  import { Placeholder, Query, SQL, SQLWrapper } from "../../sql/sql.js";
9
9
  import { QueryPromise } from "../../query-promise.js";
10
- import { AnySingleStoreQueryResultHKT, PreparedQueryHKTBase, PreparedQueryKind, SingleStorePreparedQueryConfig, SingleStoreQueryResultHKT, SingleStoreQueryResultKind, SingleStoreSession } from "../session.js";
11
10
  import { SingleStoreDialect } from "../dialect.js";
11
+ import { AnySingleStoreQueryResultHKT, PreparedQueryHKTBase, PreparedQueryKind, SingleStorePreparedQueryConfig, SingleStoreQueryResultHKT, SingleStoreQueryResultKind, SingleStoreSession } from "../session.js";
12
12
  import { SingleStoreTable } from "../table.js";
13
13
 
14
14
  //#region src/singlestore-core/query-builders/update.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"session.cjs","names":["entityKind","NoopCache","DrizzleQueryError","sql","SingleStoreDatabase","TransactionRollbackError"],"sources":["../../src/singlestore-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations, RelationalQueryMapperConfig } from '~/relations.ts';\nimport { type Query, type SQL, sql } from '~/sql/sql.ts';\nimport type { Assume, Equal } from '~/utils.ts';\nimport { SingleStoreDatabase } from './db.ts';\nimport type { SingleStoreDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface SingleStoreQueryResultHKT {\n\treadonly $brand: 'SingleStoreQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport interface AnySingleStoreQueryResultHKT extends SingleStoreQueryResultHKT {\n\treadonly type: any;\n}\n\nexport type SingleStoreQueryResultKind<TKind extends SingleStoreQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n\nexport interface SingleStorePreparedQueryConfig {\n\texecute: unknown;\n\titerator: unknown;\n}\n\nexport interface SingleStorePreparedQueryHKT {\n\treadonly $brand: 'SingleStorePreparedQueryHKT';\n\treadonly config: unknown;\n\treadonly type: unknown;\n}\n\nexport type PreparedQueryKind<\n\tTKind extends SingleStorePreparedQueryHKT,\n\tTConfig extends SingleStorePreparedQueryConfig,\n\tTAssume extends boolean = false,\n> = Equal<TAssume, true> extends true\n\t? Assume<(TKind & { readonly config: TConfig })['type'], SingleStorePreparedQuery<TConfig>>\n\t: (TKind & { readonly config: TConfig })['type'];\n\nexport abstract class SingleStorePreparedQuery<T extends SingleStorePreparedQueryConfig> {\n\tstatic readonly [entityKind]: string = 'SingleStorePreparedQuery';\n\n\tconstructor(\n\t\tprivate cache?: Cache,\n\t\t// per query related metadata\n\t\tprivate queryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enabled: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enabled) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enabled) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\n\tabstract iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']>;\n}\n\nexport interface SingleStoreTransactionConfig {\n\twithConsistentSnapshot?: boolean;\n\taccessMode?: 'read only' | 'read write';\n\tisolationLevel: 'read committed'; // SingleStore only supports read committed isolation level (https://docs.singlestore.com/db/v8.7/introduction/faqs/durability/)\n}\n\nexport abstract class SingleStoreSession<\n\tTQueryResult extends SingleStoreQueryResultHKT = SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase = PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreSession';\n\n\tconstructor(protected dialect: SingleStoreDialect) {}\n\n\tabstract prepareQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\tabstract prepareRelationalQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tconfig: RelationalQueryMapperConfig,\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\texecute<T>(query: SQL): Promise<T> {\n\t\treturn this.prepareQuery<SingleStorePreparedQueryConfig & { execute: T }, PreparedQueryHKTBase>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t).execute();\n\t}\n\n\tabstract all<T = unknown>(query: SQL): Promise<T[]>;\n\n\tasync count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<[[{ count: string }]]>(sql);\n\n\t\treturn Number(\n\t\t\tres[0][0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t\tconfig?: SingleStoreTransactionConfig,\n\t): Promise<T>;\n\n\tprotected getSetTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.isolationLevel) {\n\t\t\tparts.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\n\t\treturn parts.length ? sql`set transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n\n\tprotected getStartTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.withConsistentSnapshot) {\n\t\t\tparts.push('with consistent snapshot');\n\t\t}\n\n\t\tif (config.accessMode) {\n\t\t\tparts.push(config.accessMode);\n\t\t}\n\n\t\treturn parts.length ? sql`start transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n}\n\nexport abstract class SingleStoreTransaction<\n\tTQueryResult extends SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> extends SingleStoreDatabase<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTransaction';\n\n\tconstructor(\n\t\tdialect: SingleStoreDialect,\n\t\tsession: SingleStoreSession,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprotected readonly nestedIndex: number,\n\t) {\n\t\tsuper(dialect, session, relations, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** Nested transactions (aka savepoints) only work with InnoDB engine. */\n\tabstract override transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PreparedQueryHKTBase extends SingleStorePreparedQueryHKT {\n\ttype: SingleStorePreparedQuery<Assume<this['config'], SingleStorePreparedQueryConfig>>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"session.cjs","names":["entityKind","NoopCache","DrizzleQueryError","sql","SingleStoreDatabase","TransactionRollbackError"],"sources":["../../src/singlestore-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { type Query, type SQL, sql } from '~/sql/sql.ts';\nimport type { Assume, Equal } from '~/utils.ts';\nimport { SingleStoreDatabase } from './db.ts';\nimport type { SingleStoreDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface SingleStoreQueryResultHKT {\n\treadonly $brand: 'SingleStoreQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport interface AnySingleStoreQueryResultHKT extends SingleStoreQueryResultHKT {\n\treadonly type: any;\n}\n\nexport type SingleStoreQueryResultKind<TKind extends SingleStoreQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n\nexport interface SingleStorePreparedQueryConfig {\n\texecute: unknown;\n\titerator: unknown;\n}\n\nexport interface SingleStorePreparedQueryHKT {\n\treadonly $brand: 'SingleStorePreparedQueryHKT';\n\treadonly config: unknown;\n\treadonly type: unknown;\n}\n\nexport type PreparedQueryKind<\n\tTKind extends SingleStorePreparedQueryHKT,\n\tTConfig extends SingleStorePreparedQueryConfig,\n\tTAssume extends boolean = false,\n> = Equal<TAssume, true> extends true\n\t? Assume<(TKind & { readonly config: TConfig })['type'], SingleStorePreparedQuery<TConfig>>\n\t: (TKind & { readonly config: TConfig })['type'];\n\nexport abstract class SingleStorePreparedQuery<T extends SingleStorePreparedQueryConfig> {\n\tstatic readonly [entityKind]: string = 'SingleStorePreparedQuery';\n\n\tconstructor(\n\t\tprivate cache?: Cache,\n\t\t// per query related metadata\n\t\tprivate queryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enabled: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enabled) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enabled) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\n\tabstract iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']>;\n}\n\nexport interface SingleStoreTransactionConfig {\n\twithConsistentSnapshot?: boolean;\n\taccessMode?: 'read only' | 'read write';\n\tisolationLevel: 'read committed'; // SingleStore only supports read committed isolation level (https://docs.singlestore.com/db/v8.7/introduction/faqs/durability/)\n}\n\nexport abstract class SingleStoreSession<\n\tTQueryResult extends SingleStoreQueryResultHKT = SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase = PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreSession';\n\n\tconstructor(protected dialect: SingleStoreDialect) {}\n\n\tabstract prepareQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\tabstract prepareRelationalQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\texecute<T>(query: SQL): Promise<T> {\n\t\treturn this.prepareQuery<SingleStorePreparedQueryConfig & { execute: T }, PreparedQueryHKTBase>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t).execute();\n\t}\n\n\tabstract all<T = unknown>(query: SQL): Promise<T[]>;\n\n\tasync count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<[[{ count: string }]]>(sql);\n\n\t\treturn Number(\n\t\t\tres[0][0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t\tconfig?: SingleStoreTransactionConfig,\n\t): Promise<T>;\n\n\tprotected getSetTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.isolationLevel) {\n\t\t\tparts.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\n\t\treturn parts.length ? sql`set transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n\n\tprotected getStartTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.withConsistentSnapshot) {\n\t\t\tparts.push('with consistent snapshot');\n\t\t}\n\n\t\tif (config.accessMode) {\n\t\t\tparts.push(config.accessMode);\n\t\t}\n\n\t\treturn parts.length ? sql`start transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n}\n\nexport abstract class SingleStoreTransaction<\n\tTQueryResult extends SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> extends SingleStoreDatabase<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTransaction';\n\n\tconstructor(\n\t\tdialect: SingleStoreDialect,\n\t\tsession: SingleStoreSession,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprotected readonly nestedIndex: number,\n\t) {\n\t\tsuper(dialect, session, relations, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** Nested transactions (aka savepoints) only work with InnoDB engine. */\n\tabstract override transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PreparedQueryHKTBase extends SingleStorePreparedQueryHKT {\n\ttype: SingleStorePreparedQuery<Assume<this['config'], SingleStorePreparedQueryConfig>>;\n}\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ import { Assume, Equal } from "../utils.cjs";
7
7
  import * as V1 from "../_relations.cjs";
8
8
  import { Cache } from "../cache/core/cache.cjs";
9
9
  import { WithCacheConfig } from "../cache/core/types.cjs";
10
- import { AnyRelations, EmptyRelations, RelationalQueryMapperConfig } from "../relations.cjs";
10
+ import { AnyRelations, EmptyRelations } from "../relations.cjs";
11
11
 
12
12
  //#region src/singlestore-core/session.d.ts
13
13
  interface SingleStoreQueryResultHKT {
@@ -60,7 +60,7 @@ declare abstract class SingleStoreSession<TQueryResult extends SingleStoreQueryR
60
60
  type: 'select' | 'update' | 'delete' | 'insert';
61
61
  tables: string[];
62
62
  }, cacheConfig?: WithCacheConfig): PreparedQueryKind<TPreparedQueryHKT, T>;
63
- abstract prepareRelationalQuery<T extends SingleStorePreparedQueryConfig, TPreparedQueryHKT extends SingleStorePreparedQueryHKT>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], config: RelationalQueryMapperConfig, generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<TPreparedQueryHKT, T>;
63
+ abstract prepareRelationalQuery<T extends SingleStorePreparedQueryConfig, TPreparedQueryHKT extends SingleStorePreparedQueryHKT>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<TPreparedQueryHKT, T>;
64
64
  execute<T>(query: SQL): Promise<T>;
65
65
  abstract all<T = unknown>(query: SQL): Promise<T[]>;
66
66
  count(sql: SQL): Promise<number>;
@@ -5,8 +5,8 @@ import { entityKind } from "../entity.js";
5
5
  import { Assume, Equal } from "../utils.js";
6
6
  import { Query, SQL } from "../sql/sql.js";
7
7
  import * as V1 from "../_relations.js";
8
- import { AnyRelations, EmptyRelations, RelationalQueryMapperConfig } from "../relations.js";
9
8
  import { Cache } from "../cache/core/cache.js";
9
+ import { AnyRelations, EmptyRelations } from "../relations.js";
10
10
  import { WithCacheConfig } from "../cache/core/types.js";
11
11
 
12
12
  //#region src/singlestore-core/session.d.ts
@@ -60,7 +60,7 @@ declare abstract class SingleStoreSession<TQueryResult extends SingleStoreQueryR
60
60
  type: 'select' | 'update' | 'delete' | 'insert';
61
61
  tables: string[];
62
62
  }, cacheConfig?: WithCacheConfig): PreparedQueryKind<TPreparedQueryHKT, T>;
63
- abstract prepareRelationalQuery<T extends SingleStorePreparedQueryConfig, TPreparedQueryHKT extends SingleStorePreparedQueryHKT>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], config: RelationalQueryMapperConfig, generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<TPreparedQueryHKT, T>;
63
+ abstract prepareRelationalQuery<T extends SingleStorePreparedQueryConfig, TPreparedQueryHKT extends SingleStorePreparedQueryHKT>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<TPreparedQueryHKT, T>;
64
64
  execute<T>(query: SQL): Promise<T>;
65
65
  abstract all<T = unknown>(query: SQL): Promise<T[]>;
66
66
  count(sql: SQL): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","names":[],"sources":["../../src/singlestore-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations, RelationalQueryMapperConfig } from '~/relations.ts';\nimport { type Query, type SQL, sql } from '~/sql/sql.ts';\nimport type { Assume, Equal } from '~/utils.ts';\nimport { SingleStoreDatabase } from './db.ts';\nimport type { SingleStoreDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface SingleStoreQueryResultHKT {\n\treadonly $brand: 'SingleStoreQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport interface AnySingleStoreQueryResultHKT extends SingleStoreQueryResultHKT {\n\treadonly type: any;\n}\n\nexport type SingleStoreQueryResultKind<TKind extends SingleStoreQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n\nexport interface SingleStorePreparedQueryConfig {\n\texecute: unknown;\n\titerator: unknown;\n}\n\nexport interface SingleStorePreparedQueryHKT {\n\treadonly $brand: 'SingleStorePreparedQueryHKT';\n\treadonly config: unknown;\n\treadonly type: unknown;\n}\n\nexport type PreparedQueryKind<\n\tTKind extends SingleStorePreparedQueryHKT,\n\tTConfig extends SingleStorePreparedQueryConfig,\n\tTAssume extends boolean = false,\n> = Equal<TAssume, true> extends true\n\t? Assume<(TKind & { readonly config: TConfig })['type'], SingleStorePreparedQuery<TConfig>>\n\t: (TKind & { readonly config: TConfig })['type'];\n\nexport abstract class SingleStorePreparedQuery<T extends SingleStorePreparedQueryConfig> {\n\tstatic readonly [entityKind]: string = 'SingleStorePreparedQuery';\n\n\tconstructor(\n\t\tprivate cache?: Cache,\n\t\t// per query related metadata\n\t\tprivate queryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enabled: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enabled) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enabled) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\n\tabstract iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']>;\n}\n\nexport interface SingleStoreTransactionConfig {\n\twithConsistentSnapshot?: boolean;\n\taccessMode?: 'read only' | 'read write';\n\tisolationLevel: 'read committed'; // SingleStore only supports read committed isolation level (https://docs.singlestore.com/db/v8.7/introduction/faqs/durability/)\n}\n\nexport abstract class SingleStoreSession<\n\tTQueryResult extends SingleStoreQueryResultHKT = SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase = PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreSession';\n\n\tconstructor(protected dialect: SingleStoreDialect) {}\n\n\tabstract prepareQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\tabstract prepareRelationalQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tconfig: RelationalQueryMapperConfig,\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\texecute<T>(query: SQL): Promise<T> {\n\t\treturn this.prepareQuery<SingleStorePreparedQueryConfig & { execute: T }, PreparedQueryHKTBase>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t).execute();\n\t}\n\n\tabstract all<T = unknown>(query: SQL): Promise<T[]>;\n\n\tasync count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<[[{ count: string }]]>(sql);\n\n\t\treturn Number(\n\t\t\tres[0][0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t\tconfig?: SingleStoreTransactionConfig,\n\t): Promise<T>;\n\n\tprotected getSetTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.isolationLevel) {\n\t\t\tparts.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\n\t\treturn parts.length ? sql`set transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n\n\tprotected getStartTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.withConsistentSnapshot) {\n\t\t\tparts.push('with consistent snapshot');\n\t\t}\n\n\t\tif (config.accessMode) {\n\t\t\tparts.push(config.accessMode);\n\t\t}\n\n\t\treturn parts.length ? sql`start transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n}\n\nexport abstract class SingleStoreTransaction<\n\tTQueryResult extends SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> extends SingleStoreDatabase<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTransaction';\n\n\tconstructor(\n\t\tdialect: SingleStoreDialect,\n\t\tsession: SingleStoreSession,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprotected readonly nestedIndex: number,\n\t) {\n\t\tsuper(dialect, session, relations, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** Nested transactions (aka savepoints) only work with InnoDB engine. */\n\tabstract override transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PreparedQueryHKTBase extends SingleStorePreparedQueryHKT {\n\ttype: SingleStorePreparedQuery<Assume<this['config'], SingleStorePreparedQueryConfig>>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"session.js","names":[],"sources":["../../src/singlestore-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { type Query, type SQL, sql } from '~/sql/sql.ts';\nimport type { Assume, Equal } from '~/utils.ts';\nimport { SingleStoreDatabase } from './db.ts';\nimport type { SingleStoreDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface SingleStoreQueryResultHKT {\n\treadonly $brand: 'SingleStoreQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport interface AnySingleStoreQueryResultHKT extends SingleStoreQueryResultHKT {\n\treadonly type: any;\n}\n\nexport type SingleStoreQueryResultKind<TKind extends SingleStoreQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n\nexport interface SingleStorePreparedQueryConfig {\n\texecute: unknown;\n\titerator: unknown;\n}\n\nexport interface SingleStorePreparedQueryHKT {\n\treadonly $brand: 'SingleStorePreparedQueryHKT';\n\treadonly config: unknown;\n\treadonly type: unknown;\n}\n\nexport type PreparedQueryKind<\n\tTKind extends SingleStorePreparedQueryHKT,\n\tTConfig extends SingleStorePreparedQueryConfig,\n\tTAssume extends boolean = false,\n> = Equal<TAssume, true> extends true\n\t? Assume<(TKind & { readonly config: TConfig })['type'], SingleStorePreparedQuery<TConfig>>\n\t: (TKind & { readonly config: TConfig })['type'];\n\nexport abstract class SingleStorePreparedQuery<T extends SingleStorePreparedQueryConfig> {\n\tstatic readonly [entityKind]: string = 'SingleStorePreparedQuery';\n\n\tconstructor(\n\t\tprivate cache?: Cache,\n\t\t// per query related metadata\n\t\tprivate queryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enabled: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enabled) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enabled) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\n\tabstract iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']>;\n}\n\nexport interface SingleStoreTransactionConfig {\n\twithConsistentSnapshot?: boolean;\n\taccessMode?: 'read only' | 'read write';\n\tisolationLevel: 'read committed'; // SingleStore only supports read committed isolation level (https://docs.singlestore.com/db/v8.7/introduction/faqs/durability/)\n}\n\nexport abstract class SingleStoreSession<\n\tTQueryResult extends SingleStoreQueryResultHKT = SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase = PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> {\n\tstatic readonly [entityKind]: string = 'SingleStoreSession';\n\n\tconstructor(protected dialect: SingleStoreDialect) {}\n\n\tabstract prepareQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\tabstract prepareRelationalQuery<\n\t\tT extends SingleStorePreparedQueryConfig,\n\t\tTPreparedQueryHKT extends SingleStorePreparedQueryHKT,\n\t>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\texecute<T>(query: SQL): Promise<T> {\n\t\treturn this.prepareQuery<SingleStorePreparedQueryConfig & { execute: T }, PreparedQueryHKTBase>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t).execute();\n\t}\n\n\tabstract all<T = unknown>(query: SQL): Promise<T[]>;\n\n\tasync count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<[[{ count: string }]]>(sql);\n\n\t\treturn Number(\n\t\t\tres[0][0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t\tconfig?: SingleStoreTransactionConfig,\n\t): Promise<T>;\n\n\tprotected getSetTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.isolationLevel) {\n\t\t\tparts.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\n\t\treturn parts.length ? sql`set transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n\n\tprotected getStartTransactionSQL(config: SingleStoreTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.withConsistentSnapshot) {\n\t\t\tparts.push('with consistent snapshot');\n\t\t}\n\n\t\tif (config.accessMode) {\n\t\t\tparts.push(config.accessMode);\n\t\t}\n\n\t\treturn parts.length ? sql`start transaction ${sql.raw(parts.join(' '))}` : undefined;\n\t}\n}\n\nexport abstract class SingleStoreTransaction<\n\tTQueryResult extends SingleStoreQueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = Record<string, never>,\n> extends SingleStoreDatabase<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTransaction';\n\n\tconstructor(\n\t\tdialect: SingleStoreDialect,\n\t\tsession: SingleStoreSession,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprotected readonly nestedIndex: number,\n\t) {\n\t\tsuper(dialect, session, relations, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** Nested transactions (aka savepoints) only work with InnoDB engine. */\n\tabstract override transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SingleStoreTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TRelations, TSchema>,\n\t\t) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PreparedQueryHKTBase extends SingleStorePreparedQueryHKT {\n\ttype: SingleStorePreparedQuery<Assume<this['config'], SingleStorePreparedQueryConfig>>;\n}\n"],"mappings":"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"}
@@ -20,7 +20,7 @@ function singlestoreTableWithSchema(name, columns, extraConfig, schema, baseName
20
20
  const builtColumns = Object.fromEntries(Object.entries(parsedColumns).map(([name, colBuilderBase]) => {
21
21
  const colBuilder = colBuilderBase;
22
22
  colBuilder.setName(name);
23
- return [name, colBuilder.build(rawTable).postBuild()];
23
+ return [name, colBuilder.build(rawTable)];
24
24
  }));
25
25
  const table = Object.assign(rawTable, builtColumns);
26
26
  table[__table_ts.Table.Symbol.Columns] = builtColumns;
@@ -1 +1 @@
1
- {"version":3,"file":"table.cjs","names":["Table","entityKind","getSingleStoreColumnBuilders"],"sources":["../../src/singlestore-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns, ColumnBuilderBase } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport {\n\ttype InferTableColumnsModels,\n\tTable,\n\ttype TableConfig as TableConfigBase,\n\ttype UpdateTableConfig,\n} from '~/table.ts';\nimport { getSingleStoreColumnBuilders, type SingleStoreColumnBuilders } from './columns/all.ts';\nimport type { SingleStoreColumn, SingleStoreColumnBuilder, SingleStoreColumns } from './columns/common.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type SingleStoreTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder;\n\nexport type SingleStoreTableExtraConfig = Record<\n\tstring,\n\tSingleStoreTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<SingleStoreColumns>;\n\nexport class SingleStoreTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {});\n\n\t/** @internal */\n\toverride [Table.Symbol.Columns]!: NonNullable<T['columns']>;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]:\n\t\t| ((self: Record<string, SingleStoreColumn>) => SingleStoreTableExtraConfig)\n\t\t| undefined = undefined;\n}\n\nexport type AnySingleStoreTable<TPartial extends Partial<TableConfig> = {}> = SingleStoreTable<\n\tUpdateTableConfig<TableConfig, TPartial>\n>;\n\nexport type SingleStoreTableWithColumns<T extends TableConfig> =\n\t& SingleStoreTable<T>\n\t& T['columns']\n\t& InferTableColumnsModels<T['columns']>;\n\nexport function singlestoreTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: SingleStoreColumnBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfig | SingleStoreTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): SingleStoreTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\tdialect: 'singlestore';\n}> {\n\tconst rawTable = new SingleStoreTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getSingleStoreColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as SingleStoreColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable).postBuild();\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumns as unknown as BuildExtraConfigColumns<\n\t\tTTableName,\n\t\tTColumnsMap,\n\t\t'singlestore'\n\t>;\n\n\tif (extraConfig) {\n\t\ttable[SingleStoreTable.Symbol.ExtraConfigBuilder] = extraConfig as unknown as (\n\t\t\tself: Record<string, SingleStoreColumn>,\n\t\t) => SingleStoreTableExtraConfig;\n\t}\n\n\treturn table as any;\n}\n\nexport interface SingleStoreTableFn<TSchemaName extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n}\n\nexport const singlestoreTable: SingleStoreTableFn = (name, columns, extraConfig) => {\n\treturn singlestoreTableWithSchema(name, columns, extraConfig, undefined, name);\n};\n\nexport function singlestoreTableCreator(customizeTableName: (name: string) => string): SingleStoreTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn singlestoreTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;;;AA0BA,IAAa,mBAAb,cAA2EA,iBAAS;CACnF,QAA0BC,0BAAsB;;CAGhD,OAAyB,SAAS,OAAO,OAAO,EAAE,EAAED,iBAAM,QAAQ,EAAE,CAAC;;CAGrE,CAAUA,iBAAM,OAAO;;CAGvB,CAAUA,iBAAM,OAAO,sBAER;;AAYhB,SAAgB,2BAKf,MACA,SACA,aAKA,QACA,WAAW,MAMT;CACF,MAAM,WAAW,IAAI,iBAKlB,MAAM,QAAQ,SAAS;CAE1B,MAAM,gBAA6B,OAAO,YAAY,aAAa,QAAQE,mEAA8B,CAAC,GAAG;CAE7G,MAAM,eAAe,OAAO,YAC3B,OAAO,QAAQ,cAAc,CAAC,KAAK,CAAC,MAAM,oBAAoB;EAC7D,MAAM,aAAa;AACnB,aAAW,QAAQ,KAAK;AAExB,SAAO,CAAC,MADO,WAAW,MAAM,SAAS,CAAC,WAAW,CAChC;GACpB,CACF;CAED,MAAM,QAAQ,OAAO,OAAO,UAAU,aAAa;AAEnD,OAAMF,iBAAM,OAAO,WAAW;AAC9B,OAAMA,iBAAM,OAAO,sBAAsB;AAMzC,KAAI,YACH,OAAM,iBAAiB,OAAO,sBAAsB;AAKrD,QAAO;;AA0GR,MAAa,oBAAwC,MAAM,SAAS,gBAAgB;AACnF,QAAO,2BAA2B,MAAM,SAAS,aAAa,QAAW,KAAK;;AAG/E,SAAgB,wBAAwB,oBAAkE;AACzG,SAAQ,MAAM,SAAS,gBAAgB;AACtC,SAAO,2BAA2B,mBAAmB,KAAK,EAAiB,SAAS,aAAa,QAAW,KAAK"}
1
+ {"version":3,"file":"table.cjs","names":["Table","entityKind","getSingleStoreColumnBuilders"],"sources":["../../src/singlestore-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns, ColumnBuilderBase } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport {\n\ttype InferTableColumnsModels,\n\tTable,\n\ttype TableConfig as TableConfigBase,\n\ttype UpdateTableConfig,\n} from '~/table.ts';\nimport { getSingleStoreColumnBuilders, type SingleStoreColumnBuilders } from './columns/all.ts';\nimport type { SingleStoreColumn, SingleStoreColumnBuilder, SingleStoreColumns } from './columns/common.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type SingleStoreTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder;\n\nexport type SingleStoreTableExtraConfig = Record<\n\tstring,\n\tSingleStoreTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<SingleStoreColumns>;\n\nexport class SingleStoreTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {});\n\n\t/** @internal */\n\toverride [Table.Symbol.Columns]!: NonNullable<T['columns']>;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]:\n\t\t| ((self: Record<string, SingleStoreColumn>) => SingleStoreTableExtraConfig)\n\t\t| undefined = undefined;\n}\n\nexport type AnySingleStoreTable<TPartial extends Partial<TableConfig> = {}> = SingleStoreTable<\n\tUpdateTableConfig<TableConfig, TPartial>\n>;\n\nexport type SingleStoreTableWithColumns<T extends TableConfig> =\n\t& SingleStoreTable<T>\n\t& T['columns']\n\t& InferTableColumnsModels<T['columns']>;\n\nexport function singlestoreTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: SingleStoreColumnBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfig | SingleStoreTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): SingleStoreTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\tdialect: 'singlestore';\n}> {\n\tconst rawTable = new SingleStoreTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getSingleStoreColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as SingleStoreColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumns as unknown as BuildExtraConfigColumns<\n\t\tTTableName,\n\t\tTColumnsMap,\n\t\t'singlestore'\n\t>;\n\n\tif (extraConfig) {\n\t\ttable[SingleStoreTable.Symbol.ExtraConfigBuilder] = extraConfig as unknown as (\n\t\t\tself: Record<string, SingleStoreColumn>,\n\t\t) => SingleStoreTableExtraConfig;\n\t}\n\n\treturn table as any;\n}\n\nexport interface SingleStoreTableFn<TSchemaName extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n}\n\nexport const singlestoreTable: SingleStoreTableFn = (name, columns, extraConfig) => {\n\treturn singlestoreTableWithSchema(name, columns, extraConfig, undefined, name);\n};\n\nexport function singlestoreTableCreator(customizeTableName: (name: string) => string): SingleStoreTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn singlestoreTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;;;AA0BA,IAAa,mBAAb,cAA2EA,iBAAS;CACnF,QAA0BC,0BAAsB;;CAGhD,OAAyB,SAAS,OAAO,OAAO,EAAE,EAAED,iBAAM,QAAQ,EAAE,CAAC;;CAGrE,CAAUA,iBAAM,OAAO;;CAGvB,CAAUA,iBAAM,OAAO,sBAER;;AAYhB,SAAgB,2BAKf,MACA,SACA,aAKA,QACA,WAAW,MAMT;CACF,MAAM,WAAW,IAAI,iBAKlB,MAAM,QAAQ,SAAS;CAE1B,MAAM,gBAA6B,OAAO,YAAY,aAAa,QAAQE,mEAA8B,CAAC,GAAG;CAE7G,MAAM,eAAe,OAAO,YAC3B,OAAO,QAAQ,cAAc,CAAC,KAAK,CAAC,MAAM,oBAAoB;EAC7D,MAAM,aAAa;AACnB,aAAW,QAAQ,KAAK;AAExB,SAAO,CAAC,MADO,WAAW,MAAM,SAAS,CACpB;GACpB,CACF;CAED,MAAM,QAAQ,OAAO,OAAO,UAAU,aAAa;AAEnD,OAAMF,iBAAM,OAAO,WAAW;AAC9B,OAAMA,iBAAM,OAAO,sBAAsB;AAMzC,KAAI,YACH,OAAM,iBAAiB,OAAO,sBAAsB;AAKrD,QAAO;;AA0GR,MAAa,oBAAwC,MAAM,SAAS,gBAAgB;AACnF,QAAO,2BAA2B,MAAM,SAAS,aAAa,QAAW,KAAK;;AAG/E,SAAgB,wBAAwB,oBAAkE;AACzG,SAAQ,MAAM,SAAS,gBAAgB;AACtC,SAAO,2BAA2B,mBAAmB,KAAK,EAAiB,SAAS,aAAa,QAAW,KAAK"}
@@ -18,7 +18,7 @@ function singlestoreTableWithSchema(name, columns, extraConfig, schema, baseName
18
18
  const builtColumns = Object.fromEntries(Object.entries(parsedColumns).map(([name, colBuilderBase]) => {
19
19
  const colBuilder = colBuilderBase;
20
20
  colBuilder.setName(name);
21
- return [name, colBuilder.build(rawTable).postBuild()];
21
+ return [name, colBuilder.build(rawTable)];
22
22
  }));
23
23
  const table = Object.assign(rawTable, builtColumns);
24
24
  table[Table.Symbol.Columns] = builtColumns;
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","names":[],"sources":["../../src/singlestore-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns, ColumnBuilderBase } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport {\n\ttype InferTableColumnsModels,\n\tTable,\n\ttype TableConfig as TableConfigBase,\n\ttype UpdateTableConfig,\n} from '~/table.ts';\nimport { getSingleStoreColumnBuilders, type SingleStoreColumnBuilders } from './columns/all.ts';\nimport type { SingleStoreColumn, SingleStoreColumnBuilder, SingleStoreColumns } from './columns/common.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type SingleStoreTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder;\n\nexport type SingleStoreTableExtraConfig = Record<\n\tstring,\n\tSingleStoreTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<SingleStoreColumns>;\n\nexport class SingleStoreTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {});\n\n\t/** @internal */\n\toverride [Table.Symbol.Columns]!: NonNullable<T['columns']>;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]:\n\t\t| ((self: Record<string, SingleStoreColumn>) => SingleStoreTableExtraConfig)\n\t\t| undefined = undefined;\n}\n\nexport type AnySingleStoreTable<TPartial extends Partial<TableConfig> = {}> = SingleStoreTable<\n\tUpdateTableConfig<TableConfig, TPartial>\n>;\n\nexport type SingleStoreTableWithColumns<T extends TableConfig> =\n\t& SingleStoreTable<T>\n\t& T['columns']\n\t& InferTableColumnsModels<T['columns']>;\n\nexport function singlestoreTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: SingleStoreColumnBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfig | SingleStoreTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): SingleStoreTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\tdialect: 'singlestore';\n}> {\n\tconst rawTable = new SingleStoreTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getSingleStoreColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as SingleStoreColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable).postBuild();\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumns as unknown as BuildExtraConfigColumns<\n\t\tTTableName,\n\t\tTColumnsMap,\n\t\t'singlestore'\n\t>;\n\n\tif (extraConfig) {\n\t\ttable[SingleStoreTable.Symbol.ExtraConfigBuilder] = extraConfig as unknown as (\n\t\t\tself: Record<string, SingleStoreColumn>,\n\t\t) => SingleStoreTableExtraConfig;\n\t}\n\n\treturn table as any;\n}\n\nexport interface SingleStoreTableFn<TSchemaName extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n}\n\nexport const singlestoreTable: SingleStoreTableFn = (name, columns, extraConfig) => {\n\treturn singlestoreTableWithSchema(name, columns, extraConfig, undefined, name);\n};\n\nexport function singlestoreTableCreator(customizeTableName: (name: string) => string): SingleStoreTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn singlestoreTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;AA0BA,IAAa,mBAAb,cAA2E,MAAS;CACnF,QAA0B,cAAsB;;CAGhD,OAAyB,SAAS,OAAO,OAAO,EAAE,EAAE,MAAM,QAAQ,EAAE,CAAC;;CAGrE,CAAU,MAAM,OAAO;;CAGvB,CAAU,MAAM,OAAO,sBAER;;AAYhB,SAAgB,2BAKf,MACA,SACA,aAKA,QACA,WAAW,MAMT;CACF,MAAM,WAAW,IAAI,iBAKlB,MAAM,QAAQ,SAAS;CAE1B,MAAM,gBAA6B,OAAO,YAAY,aAAa,QAAQ,8BAA8B,CAAC,GAAG;CAE7G,MAAM,eAAe,OAAO,YAC3B,OAAO,QAAQ,cAAc,CAAC,KAAK,CAAC,MAAM,oBAAoB;EAC7D,MAAM,aAAa;AACnB,aAAW,QAAQ,KAAK;AAExB,SAAO,CAAC,MADO,WAAW,MAAM,SAAS,CAAC,WAAW,CAChC;GACpB,CACF;CAED,MAAM,QAAQ,OAAO,OAAO,UAAU,aAAa;AAEnD,OAAM,MAAM,OAAO,WAAW;AAC9B,OAAM,MAAM,OAAO,sBAAsB;AAMzC,KAAI,YACH,OAAM,iBAAiB,OAAO,sBAAsB;AAKrD,QAAO;;AA0GR,MAAa,oBAAwC,MAAM,SAAS,gBAAgB;AACnF,QAAO,2BAA2B,MAAM,SAAS,aAAa,QAAW,KAAK;;AAG/E,SAAgB,wBAAwB,oBAAkE;AACzG,SAAQ,MAAM,SAAS,gBAAgB;AACtC,SAAO,2BAA2B,mBAAmB,KAAK,EAAiB,SAAS,aAAa,QAAW,KAAK"}
1
+ {"version":3,"file":"table.js","names":[],"sources":["../../src/singlestore-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns, ColumnBuilderBase } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport {\n\ttype InferTableColumnsModels,\n\tTable,\n\ttype TableConfig as TableConfigBase,\n\ttype UpdateTableConfig,\n} from '~/table.ts';\nimport { getSingleStoreColumnBuilders, type SingleStoreColumnBuilders } from './columns/all.ts';\nimport type { SingleStoreColumn, SingleStoreColumnBuilder, SingleStoreColumns } from './columns/common.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type SingleStoreTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder;\n\nexport type SingleStoreTableExtraConfig = Record<\n\tstring,\n\tSingleStoreTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<SingleStoreColumns>;\n\nexport class SingleStoreTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {});\n\n\t/** @internal */\n\toverride [Table.Symbol.Columns]!: NonNullable<T['columns']>;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]:\n\t\t| ((self: Record<string, SingleStoreColumn>) => SingleStoreTableExtraConfig)\n\t\t| undefined = undefined;\n}\n\nexport type AnySingleStoreTable<TPartial extends Partial<TableConfig> = {}> = SingleStoreTable<\n\tUpdateTableConfig<TableConfig, TPartial>\n>;\n\nexport type SingleStoreTableWithColumns<T extends TableConfig> =\n\t& SingleStoreTable<T>\n\t& T['columns']\n\t& InferTableColumnsModels<T['columns']>;\n\nexport function singlestoreTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: SingleStoreColumnBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfig | SingleStoreTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): SingleStoreTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\tdialect: 'singlestore';\n}> {\n\tconst rawTable = new SingleStoreTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getSingleStoreColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as SingleStoreColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumns as unknown as BuildExtraConfigColumns<\n\t\tTTableName,\n\t\tTColumnsMap,\n\t\t'singlestore'\n\t>;\n\n\tif (extraConfig) {\n\t\ttable[SingleStoreTable.Symbol.ExtraConfigBuilder] = extraConfig as unknown as (\n\t\t\tself: Record<string, SingleStoreColumn>,\n\t\t) => SingleStoreTableExtraConfig;\n\t}\n\n\treturn table as any;\n}\n\nexport interface SingleStoreTableFn<TSchemaName extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (\n\t\t\tself: BuildColumns<TTableName, TColumnsMap, 'singlestore'>,\n\t\t) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfigValue[],\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n\n\t/**\n\t * @deprecated The third parameter of singlestoreTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = singlestoreTable(\"users\", {\n\t * \tid: int(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: SingleStoreColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildColumns<TTableName, TColumnsMap, 'singlestore'>) => SingleStoreTableExtraConfig,\n\t): SingleStoreTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'singlestore'>;\n\t\tdialect: 'singlestore';\n\t}>;\n}\n\nexport const singlestoreTable: SingleStoreTableFn = (name, columns, extraConfig) => {\n\treturn singlestoreTableWithSchema(name, columns, extraConfig, undefined, name);\n};\n\nexport function singlestoreTableCreator(customizeTableName: (name: string) => string): SingleStoreTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn singlestoreTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;AA0BA,IAAa,mBAAb,cAA2E,MAAS;CACnF,QAA0B,cAAsB;;CAGhD,OAAyB,SAAS,OAAO,OAAO,EAAE,EAAE,MAAM,QAAQ,EAAE,CAAC;;CAGrE,CAAU,MAAM,OAAO;;CAGvB,CAAU,MAAM,OAAO,sBAER;;AAYhB,SAAgB,2BAKf,MACA,SACA,aAKA,QACA,WAAW,MAMT;CACF,MAAM,WAAW,IAAI,iBAKlB,MAAM,QAAQ,SAAS;CAE1B,MAAM,gBAA6B,OAAO,YAAY,aAAa,QAAQ,8BAA8B,CAAC,GAAG;CAE7G,MAAM,eAAe,OAAO,YAC3B,OAAO,QAAQ,cAAc,CAAC,KAAK,CAAC,MAAM,oBAAoB;EAC7D,MAAM,aAAa;AACnB,aAAW,QAAQ,KAAK;AAExB,SAAO,CAAC,MADO,WAAW,MAAM,SAAS,CACpB;GACpB,CACF;CAED,MAAM,QAAQ,OAAO,OAAO,UAAU,aAAa;AAEnD,OAAM,MAAM,OAAO,WAAW;AAC9B,OAAM,MAAM,OAAO,sBAAsB;AAMzC,KAAI,YACH,OAAM,iBAAiB,OAAO,sBAAsB;AAKrD,QAAO;;AA0GR,MAAa,oBAAwC,MAAM,SAAS,gBAAgB;AACnF,QAAO,2BAA2B,MAAM,SAAS,aAAa,QAAW,KAAK;;AAG/E,SAAgB,wBAAwB,oBAAkE;AACzG,SAAQ,MAAM,SAAS,gBAAgB;AACtC,SAAO,2BAA2B,mBAAmB,KAAK,EAAiB,SAAS,aAAa,QAAW,KAAK"}
@@ -2,8 +2,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
3
3
  const require_singlestore_proxy_session = require('./session.cjs');
4
4
  let __entity_ts = require("../entity.cjs");
5
- let __logger_ts = require("../logger.cjs");
6
5
  let ___relations_ts = require("../_relations.cjs");
6
+ let __logger_ts = require("../logger.cjs");
7
7
  let __singlestore_core_db_ts = require("../singlestore-core/db.cjs");
8
8
  let __singlestore_core_dialect_ts = require("../singlestore-core/dialect.cjs");
9
9
 
@@ -26,10 +26,7 @@ function drizzle(callback, config = {}) {
26
26
  };
27
27
  }
28
28
  const relations = config.relations ?? {};
29
- return new SingleStoreRemoteDatabase(dialect, new require_singlestore_proxy_session.SingleStoreRemoteSession(callback, dialect, relations, schema, {
30
- logger,
31
- useJitMapper: config.useJitMappers
32
- }), relations, schema);
29
+ return new SingleStoreRemoteDatabase(dialect, new require_singlestore_proxy_session.SingleStoreRemoteSession(callback, dialect, relations, schema, { logger }), relations, schema);
33
30
  }
34
31
 
35
32
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"driver.cjs","names":["SingleStoreDatabase","entityKind","SingleStoreDialect","DefaultLogger","createTableRelationsHelpers","SingleStoreRemoteSession"],"sources":["../../src/singlestore-proxy/driver.ts"],"sourcesContent":["import {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { SingleStoreDatabase } from '~/singlestore-core/db.ts';\nimport { SingleStoreDialect } from '~/singlestore-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport {\n\ttype SingleStoreRemotePreparedQueryHKT,\n\ttype SingleStoreRemoteQueryResultHKT,\n\tSingleStoreRemoteSession,\n} from './session.ts';\n\nexport class SingleStoreRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): SingleStoreRemoteDatabase<TSchema, TRelations> {\n\tconst dialect = new SingleStoreDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new SingleStoreRemoteSession(callback, dialect, relations, schema, {\n\t\tlogger,\n\t\tuseJitMapper: config.useJitMappers,\n\t});\n\treturn new SingleStoreRemoteDatabase(dialect, session, relations, schema as any) as SingleStoreRemoteDatabase<\n\t\tTSchema,\n\t\tTRelations\n\t>;\n}\n"],"mappings":";;;;;;;;;;AAkBA,IAAa,4BAAb,cAGUA,6CAA6G;CACtH,QAA0BC,0BAAsB;;AASjD,SAAgB,QAIf,UACA,SAA6C,EAAE,EACE;CACjD,MAAM,UAAU,IAAIC,iDAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAIC,2BAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,kEACL,OAAO,QACPC,4CACA;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;AAKxC,QAAO,IAAI,0BAA0B,SAJrB,IAAIC,2DAAyB,UAAU,SAAS,WAAW,QAAQ;EAClF;EACA,cAAc,OAAO;EACrB,CAAC,EACqD,WAAW,OAAc"}
1
+ {"version":3,"file":"driver.cjs","names":["SingleStoreDatabase","entityKind","SingleStoreDialect","DefaultLogger","createTableRelationsHelpers","SingleStoreRemoteSession"],"sources":["../../src/singlestore-proxy/driver.ts"],"sourcesContent":["import {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { SingleStoreDatabase } from '~/singlestore-core/db.ts';\nimport { SingleStoreDialect } from '~/singlestore-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport {\n\ttype SingleStoreRemotePreparedQueryHKT,\n\ttype SingleStoreRemoteQueryResultHKT,\n\tSingleStoreRemoteSession,\n} from './session.ts';\n\nexport class SingleStoreRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): SingleStoreRemoteDatabase<TSchema, TRelations> {\n\tconst dialect = new SingleStoreDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new SingleStoreRemoteSession(callback, dialect, relations, schema, { logger });\n\treturn new SingleStoreRemoteDatabase(dialect, session, relations, schema as any) as SingleStoreRemoteDatabase<\n\t\tTSchema,\n\t\tTRelations\n\t>;\n}\n"],"mappings":";;;;;;;;;;AAkBA,IAAa,4BAAb,cAGUA,6CAA6G;CACtH,QAA0BC,0BAAsB;;AASjD,SAAgB,QAIf,UACA,SAA6C,EAAE,EACE;CACjD,MAAM,UAAU,IAAIC,iDAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAIC,2BAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,kEACL,OAAO,QACPC,4CACA;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;AAExC,QAAO,IAAI,0BAA0B,SADrB,IAAIC,2DAAyB,UAAU,SAAS,WAAW,QAAQ,EAAE,QAAQ,CAAC,EACvC,WAAW,OAAc"}
@@ -1,7 +1,7 @@
1
1
  import { SingleStoreRemoteSession } from "./session.js";
2
2
  import { entityKind } from "../entity.js";
3
- import { DefaultLogger } from "../logger.js";
4
3
  import { createTableRelationsHelpers, extractTablesRelationalConfig } from "../_relations.js";
4
+ import { DefaultLogger } from "../logger.js";
5
5
  import { SingleStoreDatabase } from "../singlestore-core/db.js";
6
6
  import { SingleStoreDialect } from "../singlestore-core/dialect.js";
7
7
 
@@ -24,10 +24,7 @@ function drizzle(callback, config = {}) {
24
24
  };
25
25
  }
26
26
  const relations = config.relations ?? {};
27
- return new SingleStoreRemoteDatabase(dialect, new SingleStoreRemoteSession(callback, dialect, relations, schema, {
28
- logger,
29
- useJitMapper: config.useJitMappers
30
- }), relations, schema);
27
+ return new SingleStoreRemoteDatabase(dialect, new SingleStoreRemoteSession(callback, dialect, relations, schema, { logger }), relations, schema);
31
28
  }
32
29
 
33
30
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","names":[],"sources":["../../src/singlestore-proxy/driver.ts"],"sourcesContent":["import {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { SingleStoreDatabase } from '~/singlestore-core/db.ts';\nimport { SingleStoreDialect } from '~/singlestore-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport {\n\ttype SingleStoreRemotePreparedQueryHKT,\n\ttype SingleStoreRemoteQueryResultHKT,\n\tSingleStoreRemoteSession,\n} from './session.ts';\n\nexport class SingleStoreRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): SingleStoreRemoteDatabase<TSchema, TRelations> {\n\tconst dialect = new SingleStoreDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new SingleStoreRemoteSession(callback, dialect, relations, schema, {\n\t\tlogger,\n\t\tuseJitMapper: config.useJitMappers,\n\t});\n\treturn new SingleStoreRemoteDatabase(dialect, session, relations, schema as any) as SingleStoreRemoteDatabase<\n\t\tTSchema,\n\t\tTRelations\n\t>;\n}\n"],"mappings":";;;;;;;;AAkBA,IAAa,4BAAb,cAGU,oBAA6G;CACtH,QAA0B,cAAsB;;AASjD,SAAgB,QAIf,UACA,SAA6C,EAAE,EACE;CACjD,MAAM,UAAU,IAAI,mBAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAI,eAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAe,8BACpB,OAAO,QACP,4BACA;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;AAKxC,QAAO,IAAI,0BAA0B,SAJrB,IAAI,yBAAyB,UAAU,SAAS,WAAW,QAAQ;EAClF;EACA,cAAc,OAAO;EACrB,CAAC,EACqD,WAAW,OAAc"}
1
+ {"version":3,"file":"driver.js","names":[],"sources":["../../src/singlestore-proxy/driver.ts"],"sourcesContent":["import {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { SingleStoreDatabase } from '~/singlestore-core/db.ts';\nimport { SingleStoreDialect } from '~/singlestore-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport {\n\ttype SingleStoreRemotePreparedQueryHKT,\n\ttype SingleStoreRemoteQueryResultHKT,\n\tSingleStoreRemoteSession,\n} from './session.ts';\n\nexport class SingleStoreRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): SingleStoreRemoteDatabase<TSchema, TRelations> {\n\tconst dialect = new SingleStoreDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new SingleStoreRemoteSession(callback, dialect, relations, schema, { logger });\n\treturn new SingleStoreRemoteDatabase(dialect, session, relations, schema as any) as SingleStoreRemoteDatabase<\n\t\tTSchema,\n\t\tTRelations\n\t>;\n}\n"],"mappings":";;;;;;;;AAkBA,IAAa,4BAAb,cAGU,oBAA6G;CACtH,QAA0B,cAAsB;;AASjD,SAAgB,QAIf,UACA,SAA6C,EAAE,EACE;CACjD,MAAM,UAAU,IAAI,mBAAmB,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACjE,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAI,eAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAe,8BACpB,OAAO,QACP,4BACA;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;AAExC,QAAO,IAAI,0BAA0B,SADrB,IAAI,yBAAyB,UAAU,SAAS,WAAW,QAAQ,EAAE,QAAQ,CAAC,EACvC,WAAW,OAAc"}