drizzle-orm 1.0.0-beta.1-08e4e66 → 1.0.0-beta.1-fd8bfcc

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 (1309) hide show
  1. package/_relations.cjs +0 -48
  2. package/_relations.cjs.map +1 -1
  3. package/_relations.d.cts +0 -1
  4. package/_relations.d.ts +0 -1
  5. package/_relations.js +0 -47
  6. package/_relations.js.map +1 -1
  7. package/column-builder.cjs.map +1 -1
  8. package/column-builder.d.cts +8 -10
  9. package/column-builder.d.ts +8 -10
  10. package/column-builder.js.map +1 -1
  11. package/column.cjs +0 -2
  12. package/column.cjs.map +1 -1
  13. package/column.d.cts +0 -1
  14. package/column.d.ts +0 -1
  15. package/column.js +0 -2
  16. package/column.js.map +1 -1
  17. package/gel-core/columns/bigint.cjs.map +1 -1
  18. package/gel-core/columns/bigint.d.cts +1 -0
  19. package/gel-core/columns/bigint.d.ts +1 -0
  20. package/gel-core/columns/bigint.js.map +1 -1
  21. package/gel-core/columns/bigintT.cjs.map +1 -1
  22. package/gel-core/columns/bigintT.d.cts +1 -0
  23. package/gel-core/columns/bigintT.d.ts +1 -0
  24. package/gel-core/columns/bigintT.js.map +1 -1
  25. package/gel-core/columns/boolean.cjs.map +1 -1
  26. package/gel-core/columns/boolean.d.cts +1 -0
  27. package/gel-core/columns/boolean.d.ts +1 -0
  28. package/gel-core/columns/boolean.js.map +1 -1
  29. package/gel-core/columns/bytes.cjs.map +1 -1
  30. package/gel-core/columns/bytes.d.cts +1 -0
  31. package/gel-core/columns/bytes.d.ts +1 -0
  32. package/gel-core/columns/bytes.js.map +1 -1
  33. package/gel-core/columns/custom.cjs.map +1 -1
  34. package/gel-core/columns/custom.d.cts +1 -0
  35. package/gel-core/columns/custom.d.ts +1 -0
  36. package/gel-core/columns/custom.js.map +1 -1
  37. package/gel-core/columns/date-duration.cjs.map +1 -1
  38. package/gel-core/columns/date-duration.d.cts +1 -0
  39. package/gel-core/columns/date-duration.d.ts +1 -0
  40. package/gel-core/columns/date-duration.js.map +1 -1
  41. package/gel-core/columns/decimal.cjs.map +1 -1
  42. package/gel-core/columns/decimal.d.cts +1 -0
  43. package/gel-core/columns/decimal.d.ts +1 -0
  44. package/gel-core/columns/decimal.js.map +1 -1
  45. package/gel-core/columns/double-precision.cjs.map +1 -1
  46. package/gel-core/columns/double-precision.d.cts +1 -0
  47. package/gel-core/columns/double-precision.d.ts +1 -0
  48. package/gel-core/columns/double-precision.js.map +1 -1
  49. package/gel-core/columns/duration.cjs.map +1 -1
  50. package/gel-core/columns/duration.d.cts +1 -0
  51. package/gel-core/columns/duration.d.ts +1 -0
  52. package/gel-core/columns/duration.js.map +1 -1
  53. package/gel-core/columns/integer.cjs.map +1 -1
  54. package/gel-core/columns/integer.d.cts +1 -0
  55. package/gel-core/columns/integer.d.ts +1 -0
  56. package/gel-core/columns/integer.js.map +1 -1
  57. package/gel-core/columns/json.cjs.map +1 -1
  58. package/gel-core/columns/json.d.cts +1 -0
  59. package/gel-core/columns/json.d.ts +1 -0
  60. package/gel-core/columns/json.js.map +1 -1
  61. package/gel-core/columns/localdate.cjs.map +1 -1
  62. package/gel-core/columns/localdate.d.cts +1 -0
  63. package/gel-core/columns/localdate.d.ts +1 -0
  64. package/gel-core/columns/localdate.js.map +1 -1
  65. package/gel-core/columns/localtime.cjs.map +1 -1
  66. package/gel-core/columns/localtime.d.cts +1 -0
  67. package/gel-core/columns/localtime.d.ts +1 -0
  68. package/gel-core/columns/localtime.js.map +1 -1
  69. package/gel-core/columns/real.cjs.map +1 -1
  70. package/gel-core/columns/real.d.cts +1 -0
  71. package/gel-core/columns/real.d.ts +1 -0
  72. package/gel-core/columns/real.js.map +1 -1
  73. package/gel-core/columns/relative-duration.cjs.map +1 -1
  74. package/gel-core/columns/relative-duration.d.cts +1 -0
  75. package/gel-core/columns/relative-duration.d.ts +1 -0
  76. package/gel-core/columns/relative-duration.js.map +1 -1
  77. package/gel-core/columns/smallint.cjs.map +1 -1
  78. package/gel-core/columns/smallint.d.cts +1 -0
  79. package/gel-core/columns/smallint.d.ts +1 -0
  80. package/gel-core/columns/smallint.js.map +1 -1
  81. package/gel-core/columns/text.cjs.map +1 -1
  82. package/gel-core/columns/text.d.cts +1 -0
  83. package/gel-core/columns/text.d.ts +1 -0
  84. package/gel-core/columns/text.js.map +1 -1
  85. package/gel-core/columns/timestamp.cjs.map +1 -1
  86. package/gel-core/columns/timestamp.d.cts +1 -0
  87. package/gel-core/columns/timestamp.d.ts +1 -0
  88. package/gel-core/columns/timestamp.js.map +1 -1
  89. package/gel-core/columns/timestamptz.cjs.map +1 -1
  90. package/gel-core/columns/timestamptz.d.cts +1 -0
  91. package/gel-core/columns/timestamptz.d.ts +1 -0
  92. package/gel-core/columns/timestamptz.js.map +1 -1
  93. package/gel-core/columns/uuid.cjs.map +1 -1
  94. package/gel-core/columns/uuid.d.cts +1 -0
  95. package/gel-core/columns/uuid.d.ts +1 -0
  96. package/gel-core/columns/uuid.js.map +1 -1
  97. package/gel-core/query-builders/insert.cjs.map +1 -1
  98. package/gel-core/query-builders/insert.d.cts +9 -6
  99. package/gel-core/query-builders/insert.d.ts +9 -6
  100. package/gel-core/query-builders/insert.js.map +1 -1
  101. package/gel-core/query-builders/update.cjs.map +1 -1
  102. package/gel-core/query-builders/update.d.cts +1 -1
  103. package/gel-core/query-builders/update.d.ts +1 -1
  104. package/gel-core/query-builders/update.js.map +1 -1
  105. package/mysql-core/columns/bigint.cjs.map +1 -1
  106. package/mysql-core/columns/bigint.d.cts +2 -0
  107. package/mysql-core/columns/bigint.d.ts +2 -0
  108. package/mysql-core/columns/bigint.js.map +1 -1
  109. package/mysql-core/columns/binary.cjs +1 -0
  110. package/mysql-core/columns/binary.cjs.map +1 -1
  111. package/mysql-core/columns/binary.d.cts +2 -0
  112. package/mysql-core/columns/binary.d.ts +2 -0
  113. package/mysql-core/columns/binary.js +1 -0
  114. package/mysql-core/columns/binary.js.map +1 -1
  115. package/mysql-core/columns/boolean.cjs.map +1 -1
  116. package/mysql-core/columns/boolean.d.cts +1 -0
  117. package/mysql-core/columns/boolean.d.ts +1 -0
  118. package/mysql-core/columns/boolean.js.map +1 -1
  119. package/mysql-core/columns/char.cjs +1 -0
  120. package/mysql-core/columns/char.cjs.map +1 -1
  121. package/mysql-core/columns/char.d.cts +2 -0
  122. package/mysql-core/columns/char.d.ts +2 -0
  123. package/mysql-core/columns/char.js +1 -0
  124. package/mysql-core/columns/char.js.map +1 -1
  125. package/mysql-core/columns/common.cjs.map +1 -1
  126. package/mysql-core/columns/common.d.cts +1 -1
  127. package/mysql-core/columns/common.d.ts +1 -1
  128. package/mysql-core/columns/common.js.map +1 -1
  129. package/mysql-core/columns/custom.cjs +3 -1
  130. package/mysql-core/columns/custom.cjs.map +1 -1
  131. package/mysql-core/columns/custom.d.cts +1 -0
  132. package/mysql-core/columns/custom.d.ts +1 -0
  133. package/mysql-core/columns/custom.js +3 -1
  134. package/mysql-core/columns/custom.js.map +1 -1
  135. package/mysql-core/columns/date.cjs.map +1 -1
  136. package/mysql-core/columns/date.d.cts +2 -0
  137. package/mysql-core/columns/date.d.ts +2 -0
  138. package/mysql-core/columns/date.js.map +1 -1
  139. package/mysql-core/columns/datetime.cjs.map +1 -1
  140. package/mysql-core/columns/datetime.d.cts +2 -0
  141. package/mysql-core/columns/datetime.d.ts +2 -0
  142. package/mysql-core/columns/datetime.js.map +1 -1
  143. package/mysql-core/columns/decimal.cjs.map +1 -1
  144. package/mysql-core/columns/decimal.d.cts +3 -0
  145. package/mysql-core/columns/decimal.d.ts +3 -0
  146. package/mysql-core/columns/decimal.js.map +1 -1
  147. package/mysql-core/columns/double.cjs.map +1 -1
  148. package/mysql-core/columns/double.d.cts +1 -0
  149. package/mysql-core/columns/double.d.ts +1 -0
  150. package/mysql-core/columns/double.js.map +1 -1
  151. package/mysql-core/columns/enum.cjs.map +1 -1
  152. package/mysql-core/columns/enum.d.cts +2 -0
  153. package/mysql-core/columns/enum.d.ts +2 -0
  154. package/mysql-core/columns/enum.js.map +1 -1
  155. package/mysql-core/columns/float.cjs.map +1 -1
  156. package/mysql-core/columns/float.d.cts +1 -0
  157. package/mysql-core/columns/float.d.ts +1 -0
  158. package/mysql-core/columns/float.js.map +1 -1
  159. package/mysql-core/columns/int.cjs.map +1 -1
  160. package/mysql-core/columns/int.d.cts +1 -0
  161. package/mysql-core/columns/int.d.ts +1 -0
  162. package/mysql-core/columns/int.js.map +1 -1
  163. package/mysql-core/columns/json.cjs.map +1 -1
  164. package/mysql-core/columns/json.d.cts +1 -0
  165. package/mysql-core/columns/json.d.ts +1 -0
  166. package/mysql-core/columns/json.js.map +1 -1
  167. package/mysql-core/columns/mediumint.cjs.map +1 -1
  168. package/mysql-core/columns/mediumint.d.cts +1 -0
  169. package/mysql-core/columns/mediumint.d.ts +1 -0
  170. package/mysql-core/columns/mediumint.js.map +1 -1
  171. package/mysql-core/columns/real.cjs.map +1 -1
  172. package/mysql-core/columns/real.d.cts +1 -0
  173. package/mysql-core/columns/real.d.ts +1 -0
  174. package/mysql-core/columns/real.js.map +1 -1
  175. package/mysql-core/columns/serial.cjs.map +1 -1
  176. package/mysql-core/columns/serial.d.cts +1 -0
  177. package/mysql-core/columns/serial.d.ts +1 -0
  178. package/mysql-core/columns/serial.js.map +1 -1
  179. package/mysql-core/columns/smallint.cjs.map +1 -1
  180. package/mysql-core/columns/smallint.d.cts +1 -0
  181. package/mysql-core/columns/smallint.d.ts +1 -0
  182. package/mysql-core/columns/smallint.js.map +1 -1
  183. package/mysql-core/columns/text.cjs.map +1 -1
  184. package/mysql-core/columns/text.d.cts +1 -0
  185. package/mysql-core/columns/text.d.ts +1 -0
  186. package/mysql-core/columns/text.js.map +1 -1
  187. package/mysql-core/columns/time.cjs.map +1 -1
  188. package/mysql-core/columns/time.d.cts +1 -0
  189. package/mysql-core/columns/time.d.ts +1 -0
  190. package/mysql-core/columns/time.js.map +1 -1
  191. package/mysql-core/columns/timestamp.cjs.map +1 -1
  192. package/mysql-core/columns/timestamp.d.cts +2 -0
  193. package/mysql-core/columns/timestamp.d.ts +2 -0
  194. package/mysql-core/columns/timestamp.js.map +1 -1
  195. package/mysql-core/columns/tinyint.cjs.map +1 -1
  196. package/mysql-core/columns/tinyint.d.cts +1 -0
  197. package/mysql-core/columns/tinyint.d.ts +1 -0
  198. package/mysql-core/columns/tinyint.js.map +1 -1
  199. package/mysql-core/columns/varbinary.cjs.map +1 -1
  200. package/mysql-core/columns/varbinary.d.cts +1 -0
  201. package/mysql-core/columns/varbinary.d.ts +1 -0
  202. package/mysql-core/columns/varbinary.js.map +1 -1
  203. package/mysql-core/columns/varchar.cjs +1 -1
  204. package/mysql-core/columns/varchar.cjs.map +1 -1
  205. package/mysql-core/columns/varchar.d.cts +2 -1
  206. package/mysql-core/columns/varchar.d.ts +2 -1
  207. package/mysql-core/columns/varchar.js +1 -1
  208. package/mysql-core/columns/varchar.js.map +1 -1
  209. package/mysql-core/columns/year.cjs.map +1 -1
  210. package/mysql-core/columns/year.d.cts +1 -0
  211. package/mysql-core/columns/year.d.ts +1 -0
  212. package/mysql-core/columns/year.js.map +1 -1
  213. package/mysql-core/dialect.cjs +0 -3
  214. package/mysql-core/dialect.cjs.map +1 -1
  215. package/mysql-core/dialect.d.cts +0 -1
  216. package/mysql-core/dialect.d.ts +0 -1
  217. package/mysql-core/dialect.js +0 -3
  218. package/mysql-core/dialect.js.map +1 -1
  219. package/mysql-core/query-builders/insert.cjs.map +1 -1
  220. package/mysql-core/query-builders/insert.d.cts +2 -2
  221. package/mysql-core/query-builders/insert.d.ts +2 -2
  222. package/mysql-core/query-builders/insert.js.map +1 -1
  223. package/mysql-core/query-builders/update.cjs.map +1 -1
  224. package/mysql-core/query-builders/update.d.cts +1 -1
  225. package/mysql-core/query-builders/update.d.ts +1 -1
  226. package/mysql-core/query-builders/update.js.map +1 -1
  227. package/mysql-proxy/driver.cjs +2 -2
  228. package/mysql-proxy/driver.cjs.map +1 -1
  229. package/mysql-proxy/driver.d.cts +1 -2
  230. package/mysql-proxy/driver.d.ts +1 -2
  231. package/mysql-proxy/driver.js +2 -2
  232. package/mysql-proxy/driver.js.map +1 -1
  233. package/node-postgres/session.cjs.map +1 -1
  234. package/node-postgres/session.js.map +1 -1
  235. package/package.json +190 -1632
  236. package/pg-core/columns/bigint.cjs.map +1 -1
  237. package/pg-core/columns/bigint.d.cts +2 -0
  238. package/pg-core/columns/bigint.d.ts +2 -0
  239. package/pg-core/columns/bigint.js.map +1 -1
  240. package/pg-core/columns/bigserial.cjs +0 -1
  241. package/pg-core/columns/bigserial.cjs.map +1 -1
  242. package/pg-core/columns/bigserial.d.cts +2 -0
  243. package/pg-core/columns/bigserial.d.ts +2 -0
  244. package/pg-core/columns/bigserial.js +0 -1
  245. package/pg-core/columns/bigserial.js.map +1 -1
  246. package/pg-core/columns/boolean.cjs.map +1 -1
  247. package/pg-core/columns/boolean.d.cts +1 -0
  248. package/pg-core/columns/boolean.d.ts +1 -0
  249. package/pg-core/columns/boolean.js.map +1 -1
  250. package/pg-core/columns/bytea.cjs.map +1 -1
  251. package/pg-core/columns/bytea.d.cts +1 -0
  252. package/pg-core/columns/bytea.d.ts +1 -0
  253. package/pg-core/columns/bytea.js.map +1 -1
  254. package/pg-core/columns/char.cjs +1 -0
  255. package/pg-core/columns/char.cjs.map +1 -1
  256. package/pg-core/columns/char.d.cts +2 -0
  257. package/pg-core/columns/char.d.ts +2 -0
  258. package/pg-core/columns/char.js +1 -0
  259. package/pg-core/columns/char.js.map +1 -1
  260. package/pg-core/columns/cidr.cjs.map +1 -1
  261. package/pg-core/columns/cidr.d.cts +1 -0
  262. package/pg-core/columns/cidr.d.ts +1 -0
  263. package/pg-core/columns/cidr.js.map +1 -1
  264. package/pg-core/columns/common.cjs +10 -11
  265. package/pg-core/columns/common.cjs.map +1 -1
  266. package/pg-core/columns/common.d.cts +2 -3
  267. package/pg-core/columns/common.d.ts +2 -3
  268. package/pg-core/columns/common.js +10 -11
  269. package/pg-core/columns/common.js.map +1 -1
  270. package/pg-core/columns/custom.cjs.map +1 -1
  271. package/pg-core/columns/custom.d.cts +1 -0
  272. package/pg-core/columns/custom.d.ts +1 -0
  273. package/pg-core/columns/custom.js.map +1 -1
  274. package/pg-core/columns/date.cjs.map +1 -1
  275. package/pg-core/columns/date.d.cts +2 -0
  276. package/pg-core/columns/date.d.ts +2 -0
  277. package/pg-core/columns/date.js.map +1 -1
  278. package/pg-core/columns/double-precision.cjs.map +1 -1
  279. package/pg-core/columns/double-precision.d.cts +1 -0
  280. package/pg-core/columns/double-precision.d.ts +1 -0
  281. package/pg-core/columns/double-precision.js.map +1 -1
  282. package/pg-core/columns/enum.cjs.map +1 -1
  283. package/pg-core/columns/enum.d.cts +2 -0
  284. package/pg-core/columns/enum.d.ts +2 -0
  285. package/pg-core/columns/enum.js.map +1 -1
  286. package/pg-core/columns/inet.cjs.map +1 -1
  287. package/pg-core/columns/inet.d.cts +1 -0
  288. package/pg-core/columns/inet.d.ts +1 -0
  289. package/pg-core/columns/inet.js.map +1 -1
  290. package/pg-core/columns/integer.cjs.map +1 -1
  291. package/pg-core/columns/integer.d.cts +1 -0
  292. package/pg-core/columns/integer.d.ts +1 -0
  293. package/pg-core/columns/integer.js.map +1 -1
  294. package/pg-core/columns/interval.cjs.map +1 -1
  295. package/pg-core/columns/interval.d.cts +1 -0
  296. package/pg-core/columns/interval.d.ts +1 -0
  297. package/pg-core/columns/interval.js.map +1 -1
  298. package/pg-core/columns/json.cjs.map +1 -1
  299. package/pg-core/columns/json.d.cts +1 -0
  300. package/pg-core/columns/json.d.ts +1 -0
  301. package/pg-core/columns/json.js.map +1 -1
  302. package/pg-core/columns/jsonb.cjs.map +1 -1
  303. package/pg-core/columns/jsonb.d.cts +1 -0
  304. package/pg-core/columns/jsonb.d.ts +1 -0
  305. package/pg-core/columns/jsonb.js.map +1 -1
  306. package/pg-core/columns/line.cjs +0 -2
  307. package/pg-core/columns/line.cjs.map +1 -1
  308. package/pg-core/columns/line.d.cts +2 -2
  309. package/pg-core/columns/line.d.ts +2 -2
  310. package/pg-core/columns/line.js +0 -2
  311. package/pg-core/columns/line.js.map +1 -1
  312. package/pg-core/columns/macaddr.cjs.map +1 -1
  313. package/pg-core/columns/macaddr.d.cts +1 -0
  314. package/pg-core/columns/macaddr.d.ts +1 -0
  315. package/pg-core/columns/macaddr.js.map +1 -1
  316. package/pg-core/columns/macaddr8.cjs.map +1 -1
  317. package/pg-core/columns/macaddr8.d.cts +1 -0
  318. package/pg-core/columns/macaddr8.d.ts +1 -0
  319. package/pg-core/columns/macaddr8.js.map +1 -1
  320. package/pg-core/columns/numeric.cjs.map +1 -1
  321. package/pg-core/columns/numeric.d.cts +3 -0
  322. package/pg-core/columns/numeric.d.ts +3 -0
  323. package/pg-core/columns/numeric.js.map +1 -1
  324. package/pg-core/columns/point.cjs +0 -2
  325. package/pg-core/columns/point.cjs.map +1 -1
  326. package/pg-core/columns/point.d.cts +2 -2
  327. package/pg-core/columns/point.d.ts +2 -2
  328. package/pg-core/columns/point.js +0 -2
  329. package/pg-core/columns/point.js.map +1 -1
  330. package/pg-core/columns/postgis_extension/geometry.cjs +8 -14
  331. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  332. package/pg-core/columns/postgis_extension/geometry.d.cts +6 -16
  333. package/pg-core/columns/postgis_extension/geometry.d.ts +6 -16
  334. package/pg-core/columns/postgis_extension/geometry.js +8 -14
  335. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  336. package/pg-core/columns/postgis_extension/utils.cjs +3 -3
  337. package/pg-core/columns/postgis_extension/utils.cjs.map +1 -1
  338. package/pg-core/columns/postgis_extension/utils.d.cts +1 -4
  339. package/pg-core/columns/postgis_extension/utils.d.ts +1 -4
  340. package/pg-core/columns/postgis_extension/utils.js +3 -3
  341. package/pg-core/columns/postgis_extension/utils.js.map +1 -1
  342. package/pg-core/columns/real.cjs.map +1 -1
  343. package/pg-core/columns/real.d.cts +1 -0
  344. package/pg-core/columns/real.d.ts +1 -0
  345. package/pg-core/columns/real.js.map +1 -1
  346. package/pg-core/columns/serial.cjs.map +1 -1
  347. package/pg-core/columns/serial.d.cts +1 -0
  348. package/pg-core/columns/serial.d.ts +1 -0
  349. package/pg-core/columns/serial.js.map +1 -1
  350. package/pg-core/columns/smallint.cjs.map +1 -1
  351. package/pg-core/columns/smallint.d.cts +1 -0
  352. package/pg-core/columns/smallint.d.ts +1 -0
  353. package/pg-core/columns/smallint.js.map +1 -1
  354. package/pg-core/columns/smallserial.cjs.map +1 -1
  355. package/pg-core/columns/smallserial.d.cts +1 -0
  356. package/pg-core/columns/smallserial.d.ts +1 -0
  357. package/pg-core/columns/smallserial.js.map +1 -1
  358. package/pg-core/columns/text.cjs.map +1 -1
  359. package/pg-core/columns/text.d.cts +1 -0
  360. package/pg-core/columns/text.d.ts +1 -0
  361. package/pg-core/columns/text.js.map +1 -1
  362. package/pg-core/columns/time.cjs.map +1 -1
  363. package/pg-core/columns/time.d.cts +1 -0
  364. package/pg-core/columns/time.d.ts +1 -0
  365. package/pg-core/columns/time.js.map +1 -1
  366. package/pg-core/columns/timestamp.cjs.map +1 -1
  367. package/pg-core/columns/timestamp.d.cts +2 -0
  368. package/pg-core/columns/timestamp.d.ts +2 -0
  369. package/pg-core/columns/timestamp.js.map +1 -1
  370. package/pg-core/columns/uuid.cjs.map +1 -1
  371. package/pg-core/columns/uuid.d.cts +1 -0
  372. package/pg-core/columns/uuid.d.ts +1 -0
  373. package/pg-core/columns/uuid.js.map +1 -1
  374. package/pg-core/columns/varchar.cjs.map +1 -1
  375. package/pg-core/columns/varchar.d.cts +1 -0
  376. package/pg-core/columns/varchar.d.ts +1 -0
  377. package/pg-core/columns/varchar.js.map +1 -1
  378. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  379. package/pg-core/columns/vector_extension/bit.d.cts +1 -0
  380. package/pg-core/columns/vector_extension/bit.d.ts +1 -0
  381. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  382. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  383. package/pg-core/columns/vector_extension/halfvec.d.cts +1 -0
  384. package/pg-core/columns/vector_extension/halfvec.d.ts +1 -0
  385. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  386. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  387. package/pg-core/columns/vector_extension/sparsevec.d.cts +1 -0
  388. package/pg-core/columns/vector_extension/sparsevec.d.ts +1 -0
  389. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  390. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  391. package/pg-core/columns/vector_extension/vector.d.cts +1 -0
  392. package/pg-core/columns/vector_extension/vector.d.ts +1 -0
  393. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  394. package/pg-core/foreign-keys.cjs +0 -4
  395. package/pg-core/foreign-keys.cjs.map +1 -1
  396. package/pg-core/foreign-keys.d.cts +0 -2
  397. package/pg-core/foreign-keys.d.ts +0 -2
  398. package/pg-core/foreign-keys.js +0 -4
  399. package/pg-core/foreign-keys.js.map +1 -1
  400. package/pg-core/primary-keys.cjs +0 -3
  401. package/pg-core/primary-keys.cjs.map +1 -1
  402. package/pg-core/primary-keys.d.cts +0 -1
  403. package/pg-core/primary-keys.d.ts +0 -1
  404. package/pg-core/primary-keys.js +0 -3
  405. package/pg-core/primary-keys.js.map +1 -1
  406. package/pg-core/query-builders/insert.cjs.map +1 -1
  407. package/pg-core/query-builders/insert.d.cts +9 -6
  408. package/pg-core/query-builders/insert.d.ts +9 -6
  409. package/pg-core/query-builders/insert.js.map +1 -1
  410. package/pg-core/query-builders/update.cjs.map +1 -1
  411. package/pg-core/query-builders/update.d.cts +1 -1
  412. package/pg-core/query-builders/update.d.ts +1 -1
  413. package/pg-core/query-builders/update.js.map +1 -1
  414. package/pg-core/unique-constraint.cjs +0 -5
  415. package/pg-core/unique-constraint.cjs.map +1 -1
  416. package/pg-core/unique-constraint.d.cts +0 -2
  417. package/pg-core/unique-constraint.d.ts +0 -2
  418. package/pg-core/unique-constraint.js +0 -5
  419. package/pg-core/unique-constraint.js.map +1 -1
  420. package/relations.cjs +5 -0
  421. package/relations.cjs.map +1 -1
  422. package/relations.js +5 -0
  423. package/relations.js.map +1 -1
  424. package/singlestore-core/columns/bigint.cjs.map +1 -1
  425. package/singlestore-core/columns/bigint.d.cts +2 -0
  426. package/singlestore-core/columns/bigint.d.ts +2 -0
  427. package/singlestore-core/columns/bigint.js.map +1 -1
  428. package/singlestore-core/columns/binary.cjs +1 -0
  429. package/singlestore-core/columns/binary.cjs.map +1 -1
  430. package/singlestore-core/columns/binary.d.cts +2 -0
  431. package/singlestore-core/columns/binary.d.ts +2 -0
  432. package/singlestore-core/columns/binary.js +1 -0
  433. package/singlestore-core/columns/binary.js.map +1 -1
  434. package/singlestore-core/columns/boolean.cjs.map +1 -1
  435. package/singlestore-core/columns/boolean.d.cts +1 -0
  436. package/singlestore-core/columns/boolean.d.ts +1 -0
  437. package/singlestore-core/columns/boolean.js.map +1 -1
  438. package/singlestore-core/columns/char.cjs +1 -0
  439. package/singlestore-core/columns/char.cjs.map +1 -1
  440. package/singlestore-core/columns/char.d.cts +2 -0
  441. package/singlestore-core/columns/char.d.ts +2 -0
  442. package/singlestore-core/columns/char.js +1 -0
  443. package/singlestore-core/columns/char.js.map +1 -1
  444. package/singlestore-core/columns/common.cjs.map +1 -1
  445. package/singlestore-core/columns/common.d.cts +1 -1
  446. package/singlestore-core/columns/common.d.ts +1 -1
  447. package/singlestore-core/columns/common.js.map +1 -1
  448. package/singlestore-core/columns/custom.cjs.map +1 -1
  449. package/singlestore-core/columns/custom.d.cts +1 -0
  450. package/singlestore-core/columns/custom.d.ts +1 -0
  451. package/singlestore-core/columns/custom.js.map +1 -1
  452. package/singlestore-core/columns/date.cjs.map +1 -1
  453. package/singlestore-core/columns/date.d.cts +2 -0
  454. package/singlestore-core/columns/date.d.ts +2 -0
  455. package/singlestore-core/columns/date.js.map +1 -1
  456. package/singlestore-core/columns/datetime.cjs.map +1 -1
  457. package/singlestore-core/columns/datetime.d.cts +2 -0
  458. package/singlestore-core/columns/datetime.d.ts +2 -0
  459. package/singlestore-core/columns/datetime.js.map +1 -1
  460. package/singlestore-core/columns/decimal.cjs.map +1 -1
  461. package/singlestore-core/columns/decimal.d.cts +3 -0
  462. package/singlestore-core/columns/decimal.d.ts +3 -0
  463. package/singlestore-core/columns/decimal.js.map +1 -1
  464. package/singlestore-core/columns/double.cjs.map +1 -1
  465. package/singlestore-core/columns/double.d.cts +1 -0
  466. package/singlestore-core/columns/double.d.ts +1 -0
  467. package/singlestore-core/columns/double.js.map +1 -1
  468. package/singlestore-core/columns/enum.cjs.map +1 -1
  469. package/singlestore-core/columns/enum.d.cts +1 -0
  470. package/singlestore-core/columns/enum.d.ts +1 -0
  471. package/singlestore-core/columns/enum.js.map +1 -1
  472. package/singlestore-core/columns/float.cjs.map +1 -1
  473. package/singlestore-core/columns/float.d.cts +1 -0
  474. package/singlestore-core/columns/float.d.ts +1 -0
  475. package/singlestore-core/columns/float.js.map +1 -1
  476. package/singlestore-core/columns/int.cjs.map +1 -1
  477. package/singlestore-core/columns/int.d.cts +1 -0
  478. package/singlestore-core/columns/int.d.ts +1 -0
  479. package/singlestore-core/columns/int.js.map +1 -1
  480. package/singlestore-core/columns/json.cjs.map +1 -1
  481. package/singlestore-core/columns/json.d.cts +1 -0
  482. package/singlestore-core/columns/json.d.ts +1 -0
  483. package/singlestore-core/columns/json.js.map +1 -1
  484. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  485. package/singlestore-core/columns/mediumint.d.cts +1 -0
  486. package/singlestore-core/columns/mediumint.d.ts +1 -0
  487. package/singlestore-core/columns/mediumint.js.map +1 -1
  488. package/singlestore-core/columns/real.cjs.map +1 -1
  489. package/singlestore-core/columns/real.d.cts +1 -0
  490. package/singlestore-core/columns/real.d.ts +1 -0
  491. package/singlestore-core/columns/real.js.map +1 -1
  492. package/singlestore-core/columns/serial.cjs.map +1 -1
  493. package/singlestore-core/columns/serial.d.cts +1 -0
  494. package/singlestore-core/columns/serial.d.ts +1 -0
  495. package/singlestore-core/columns/serial.js.map +1 -1
  496. package/singlestore-core/columns/smallint.cjs.map +1 -1
  497. package/singlestore-core/columns/smallint.d.cts +1 -0
  498. package/singlestore-core/columns/smallint.d.ts +1 -0
  499. package/singlestore-core/columns/smallint.js.map +1 -1
  500. package/singlestore-core/columns/text.cjs.map +1 -1
  501. package/singlestore-core/columns/text.d.cts +1 -0
  502. package/singlestore-core/columns/text.d.ts +1 -0
  503. package/singlestore-core/columns/text.js.map +1 -1
  504. package/singlestore-core/columns/time.cjs.map +1 -1
  505. package/singlestore-core/columns/time.d.cts +1 -0
  506. package/singlestore-core/columns/time.d.ts +1 -0
  507. package/singlestore-core/columns/time.js.map +1 -1
  508. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  509. package/singlestore-core/columns/timestamp.d.cts +2 -0
  510. package/singlestore-core/columns/timestamp.d.ts +2 -0
  511. package/singlestore-core/columns/timestamp.js.map +1 -1
  512. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  513. package/singlestore-core/columns/tinyint.d.cts +1 -0
  514. package/singlestore-core/columns/tinyint.d.ts +1 -0
  515. package/singlestore-core/columns/tinyint.js.map +1 -1
  516. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  517. package/singlestore-core/columns/varbinary.d.cts +1 -0
  518. package/singlestore-core/columns/varbinary.d.ts +1 -0
  519. package/singlestore-core/columns/varbinary.js.map +1 -1
  520. package/singlestore-core/columns/varchar.cjs.map +1 -1
  521. package/singlestore-core/columns/varchar.d.cts +1 -0
  522. package/singlestore-core/columns/varchar.d.ts +1 -0
  523. package/singlestore-core/columns/varchar.js.map +1 -1
  524. package/singlestore-core/columns/vector.cjs.map +1 -1
  525. package/singlestore-core/columns/vector.d.cts +2 -0
  526. package/singlestore-core/columns/vector.d.ts +2 -0
  527. package/singlestore-core/columns/vector.js.map +1 -1
  528. package/singlestore-core/columns/year.cjs.map +1 -1
  529. package/singlestore-core/columns/year.d.cts +1 -0
  530. package/singlestore-core/columns/year.d.ts +1 -0
  531. package/singlestore-core/columns/year.js.map +1 -1
  532. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  533. package/singlestore-core/query-builders/insert.d.cts +1 -1
  534. package/singlestore-core/query-builders/insert.d.ts +1 -1
  535. package/singlestore-core/query-builders/insert.js.map +1 -1
  536. package/singlestore-core/query-builders/update.cjs.map +1 -1
  537. package/singlestore-core/query-builders/update.d.cts +1 -1
  538. package/singlestore-core/query-builders/update.d.ts +1 -1
  539. package/singlestore-core/query-builders/update.js.map +1 -1
  540. package/sql/sql.cjs +3 -10
  541. package/sql/sql.cjs.map +1 -1
  542. package/sql/sql.d.cts +1 -1
  543. package/sql/sql.d.ts +1 -1
  544. package/sql/sql.js +3 -10
  545. package/sql/sql.js.map +1 -1
  546. package/sqlite-core/columns/blob.cjs +3 -3
  547. package/sqlite-core/columns/blob.cjs.map +1 -1
  548. package/sqlite-core/columns/blob.d.cts +3 -0
  549. package/sqlite-core/columns/blob.d.ts +3 -0
  550. package/sqlite-core/columns/blob.js +3 -3
  551. package/sqlite-core/columns/blob.js.map +1 -1
  552. package/sqlite-core/columns/custom.cjs.map +1 -1
  553. package/sqlite-core/columns/custom.d.cts +1 -0
  554. package/sqlite-core/columns/custom.d.ts +1 -0
  555. package/sqlite-core/columns/custom.js.map +1 -1
  556. package/sqlite-core/columns/integer.cjs.map +1 -1
  557. package/sqlite-core/columns/integer.d.cts +3 -0
  558. package/sqlite-core/columns/integer.d.ts +3 -0
  559. package/sqlite-core/columns/integer.js.map +1 -1
  560. package/sqlite-core/columns/numeric.cjs.map +1 -1
  561. package/sqlite-core/columns/numeric.d.cts +3 -0
  562. package/sqlite-core/columns/numeric.d.ts +3 -0
  563. package/sqlite-core/columns/numeric.js.map +1 -1
  564. package/sqlite-core/columns/real.cjs.map +1 -1
  565. package/sqlite-core/columns/real.d.cts +1 -0
  566. package/sqlite-core/columns/real.d.ts +1 -0
  567. package/sqlite-core/columns/real.js.map +1 -1
  568. package/sqlite-core/columns/text.cjs.map +1 -1
  569. package/sqlite-core/columns/text.d.cts +2 -0
  570. package/sqlite-core/columns/text.d.ts +2 -0
  571. package/sqlite-core/columns/text.js.map +1 -1
  572. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  573. package/sqlite-core/query-builders/insert.d.cts +2 -2
  574. package/sqlite-core/query-builders/insert.d.ts +2 -2
  575. package/sqlite-core/query-builders/insert.js.map +1 -1
  576. package/sqlite-core/query-builders/update.cjs.map +1 -1
  577. package/sqlite-core/query-builders/update.d.cts +1 -1
  578. package/sqlite-core/query-builders/update.d.ts +1 -1
  579. package/sqlite-core/query-builders/update.js.map +1 -1
  580. package/version.cjs +1 -1
  581. package/version.d.cts +1 -1
  582. package/version.d.ts +1 -1
  583. package/version.js +1 -1
  584. package/cockroach/driver.cjs +0 -113
  585. package/cockroach/driver.cjs.map +0 -1
  586. package/cockroach/driver.d.cts +0 -42
  587. package/cockroach/driver.d.ts +0 -42
  588. package/cockroach/driver.js +0 -77
  589. package/cockroach/driver.js.map +0 -1
  590. package/cockroach/index.cjs +0 -25
  591. package/cockroach/index.cjs.map +0 -1
  592. package/cockroach/index.d.cts +0 -2
  593. package/cockroach/index.d.ts +0 -2
  594. package/cockroach/index.js +0 -3
  595. package/cockroach/index.js.map +0 -1
  596. package/cockroach/migrator.cjs +0 -33
  597. package/cockroach/migrator.cjs.map +0 -1
  598. package/cockroach/migrator.d.cts +0 -3
  599. package/cockroach/migrator.d.ts +0 -3
  600. package/cockroach/migrator.js +0 -9
  601. package/cockroach/migrator.js.map +0 -1
  602. package/cockroach/session.cjs +0 -253
  603. package/cockroach/session.cjs.map +0 -1
  604. package/cockroach/session.d.cts +0 -48
  605. package/cockroach/session.d.ts +0 -48
  606. package/cockroach/session.js +0 -217
  607. package/cockroach/session.js.map +0 -1
  608. package/cockroach-core/alias.cjs +0 -32
  609. package/cockroach-core/alias.cjs.map +0 -1
  610. package/cockroach-core/alias.d.cts +0 -4
  611. package/cockroach-core/alias.d.ts +0 -4
  612. package/cockroach-core/alias.js +0 -8
  613. package/cockroach-core/alias.js.map +0 -1
  614. package/cockroach-core/checks.cjs +0 -58
  615. package/cockroach-core/checks.cjs.map +0 -1
  616. package/cockroach-core/checks.d.cts +0 -18
  617. package/cockroach-core/checks.d.ts +0 -18
  618. package/cockroach-core/checks.js +0 -32
  619. package/cockroach-core/checks.js.map +0 -1
  620. package/cockroach-core/columns/all.cjs +0 -81
  621. package/cockroach-core/columns/all.cjs.map +0 -1
  622. package/cockroach-core/columns/all.d.cts +0 -52
  623. package/cockroach-core/columns/all.d.ts +0 -52
  624. package/cockroach-core/columns/all.js +0 -57
  625. package/cockroach-core/columns/all.js.map +0 -1
  626. package/cockroach-core/columns/bigint.cjs +0 -104
  627. package/cockroach-core/columns/bigint.cjs.map +0 -1
  628. package/cockroach-core/columns/bigint.d.cts +0 -37
  629. package/cockroach-core/columns/bigint.d.ts +0 -37
  630. package/cockroach-core/columns/bigint.js +0 -75
  631. package/cockroach-core/columns/bigint.js.map +0 -1
  632. package/cockroach-core/columns/bit.cjs +0 -61
  633. package/cockroach-core/columns/bit.cjs.map +0 -1
  634. package/cockroach-core/columns/bit.d.cts +0 -29
  635. package/cockroach-core/columns/bit.d.ts +0 -29
  636. package/cockroach-core/columns/bit.js +0 -35
  637. package/cockroach-core/columns/bit.js.map +0 -1
  638. package/cockroach-core/columns/bool.cjs +0 -59
  639. package/cockroach-core/columns/bool.cjs.map +0 -1
  640. package/cockroach-core/columns/bool.d.cts +0 -17
  641. package/cockroach-core/columns/bool.d.ts +0 -17
  642. package/cockroach-core/columns/bool.js +0 -32
  643. package/cockroach-core/columns/bool.js.map +0 -1
  644. package/cockroach-core/columns/char.cjs +0 -62
  645. package/cockroach-core/columns/char.cjs.map +0 -1
  646. package/cockroach-core/columns/char.d.cts +0 -31
  647. package/cockroach-core/columns/char.d.ts +0 -31
  648. package/cockroach-core/columns/char.js +0 -36
  649. package/cockroach-core/columns/char.js.map +0 -1
  650. package/cockroach-core/columns/common.cjs +0 -199
  651. package/cockroach-core/columns/common.cjs.map +0 -1
  652. package/cockroach-core/columns/common.d.cts +0 -98
  653. package/cockroach-core/columns/common.d.ts +0 -98
  654. package/cockroach-core/columns/common.js +0 -169
  655. package/cockroach-core/columns/common.js.map +0 -1
  656. package/cockroach-core/columns/custom.cjs +0 -102
  657. package/cockroach-core/columns/custom.cjs.map +0 -1
  658. package/cockroach-core/columns/custom.d.cts +0 -261
  659. package/cockroach-core/columns/custom.d.ts +0 -261
  660. package/cockroach-core/columns/custom.js +0 -76
  661. package/cockroach-core/columns/custom.js.map +0 -1
  662. package/cockroach-core/columns/date.cjs +0 -91
  663. package/cockroach-core/columns/date.cjs.map +0 -1
  664. package/cockroach-core/columns/date.common.cjs +0 -37
  665. package/cockroach-core/columns/date.common.cjs.map +0 -1
  666. package/cockroach-core/columns/date.common.d.cts +0 -7
  667. package/cockroach-core/columns/date.common.d.ts +0 -7
  668. package/cockroach-core/columns/date.common.js +0 -13
  669. package/cockroach-core/columns/date.common.js.map +0 -1
  670. package/cockroach-core/columns/date.d.cts +0 -36
  671. package/cockroach-core/columns/date.d.ts +0 -36
  672. package/cockroach-core/columns/date.js +0 -63
  673. package/cockroach-core/columns/date.js.map +0 -1
  674. package/cockroach-core/columns/decimal.cjs +0 -164
  675. package/cockroach-core/columns/decimal.cjs.map +0 -1
  676. package/cockroach-core/columns/decimal.d.cts +0 -80
  677. package/cockroach-core/columns/decimal.d.ts +0 -80
  678. package/cockroach-core/columns/decimal.js +0 -133
  679. package/cockroach-core/columns/decimal.js.map +0 -1
  680. package/cockroach-core/columns/enum.cjs +0 -127
  681. package/cockroach-core/columns/enum.cjs.map +0 -1
  682. package/cockroach-core/columns/enum.d.cts +0 -64
  683. package/cockroach-core/columns/enum.d.ts +0 -64
  684. package/cockroach-core/columns/enum.js +0 -96
  685. package/cockroach-core/columns/enum.js.map +0 -1
  686. package/cockroach-core/columns/float.cjs +0 -65
  687. package/cockroach-core/columns/float.cjs.map +0 -1
  688. package/cockroach-core/columns/float.d.cts +0 -18
  689. package/cockroach-core/columns/float.d.ts +0 -18
  690. package/cockroach-core/columns/float.js +0 -38
  691. package/cockroach-core/columns/float.js.map +0 -1
  692. package/cockroach-core/columns/geometry.cjs +0 -105
  693. package/cockroach-core/columns/geometry.cjs.map +0 -1
  694. package/cockroach-core/columns/geometry.d.cts +0 -60
  695. package/cockroach-core/columns/geometry.d.ts +0 -60
  696. package/cockroach-core/columns/geometry.js +0 -77
  697. package/cockroach-core/columns/geometry.js.map +0 -1
  698. package/cockroach-core/columns/index.cjs +0 -71
  699. package/cockroach-core/columns/index.cjs.map +0 -1
  700. package/cockroach-core/columns/index.d.cts +0 -25
  701. package/cockroach-core/columns/index.d.ts +0 -25
  702. package/cockroach-core/columns/index.js +0 -26
  703. package/cockroach-core/columns/index.js.map +0 -1
  704. package/cockroach-core/columns/inet.cjs +0 -56
  705. package/cockroach-core/columns/inet.cjs.map +0 -1
  706. package/cockroach-core/columns/inet.d.cts +0 -16
  707. package/cockroach-core/columns/inet.d.ts +0 -16
  708. package/cockroach-core/columns/inet.js +0 -30
  709. package/cockroach-core/columns/inet.js.map +0 -1
  710. package/cockroach-core/columns/int.common.cjs +0 -55
  711. package/cockroach-core/columns/int.common.cjs.map +0 -1
  712. package/cockroach-core/columns/int.common.d.cts +0 -11
  713. package/cockroach-core/columns/int.common.d.ts +0 -11
  714. package/cockroach-core/columns/int.common.js +0 -31
  715. package/cockroach-core/columns/int.common.js.map +0 -1
  716. package/cockroach-core/columns/integer.cjs +0 -63
  717. package/cockroach-core/columns/integer.cjs.map +0 -1
  718. package/cockroach-core/columns/integer.d.cts +0 -18
  719. package/cockroach-core/columns/integer.d.ts +0 -18
  720. package/cockroach-core/columns/integer.js +0 -37
  721. package/cockroach-core/columns/integer.js.map +0 -1
  722. package/cockroach-core/columns/interval.cjs +0 -63
  723. package/cockroach-core/columns/interval.cjs.map +0 -1
  724. package/cockroach-core/columns/interval.d.cts +0 -28
  725. package/cockroach-core/columns/interval.d.ts +0 -28
  726. package/cockroach-core/columns/interval.js +0 -37
  727. package/cockroach-core/columns/interval.js.map +0 -1
  728. package/cockroach-core/columns/jsonb.cjs +0 -72
  729. package/cockroach-core/columns/jsonb.cjs.map +0 -1
  730. package/cockroach-core/columns/jsonb.d.cts +0 -20
  731. package/cockroach-core/columns/jsonb.d.ts +0 -20
  732. package/cockroach-core/columns/jsonb.js +0 -46
  733. package/cockroach-core/columns/jsonb.js.map +0 -1
  734. package/cockroach-core/columns/real.cjs +0 -66
  735. package/cockroach-core/columns/real.cjs.map +0 -1
  736. package/cockroach-core/columns/real.d.cts +0 -21
  737. package/cockroach-core/columns/real.d.ts +0 -21
  738. package/cockroach-core/columns/real.js +0 -40
  739. package/cockroach-core/columns/real.js.map +0 -1
  740. package/cockroach-core/columns/smallint.cjs +0 -68
  741. package/cockroach-core/columns/smallint.cjs.map +0 -1
  742. package/cockroach-core/columns/smallint.d.cts +0 -19
  743. package/cockroach-core/columns/smallint.d.ts +0 -19
  744. package/cockroach-core/columns/smallint.js +0 -41
  745. package/cockroach-core/columns/smallint.js.map +0 -1
  746. package/cockroach-core/columns/string.cjs +0 -67
  747. package/cockroach-core/columns/string.cjs.map +0 -1
  748. package/cockroach-core/columns/string.d.cts +0 -36
  749. package/cockroach-core/columns/string.d.ts +0 -36
  750. package/cockroach-core/columns/string.js +0 -40
  751. package/cockroach-core/columns/string.js.map +0 -1
  752. package/cockroach-core/columns/time.cjs +0 -70
  753. package/cockroach-core/columns/time.cjs.map +0 -1
  754. package/cockroach-core/columns/time.d.cts +0 -31
  755. package/cockroach-core/columns/time.d.ts +0 -31
  756. package/cockroach-core/columns/time.js +0 -44
  757. package/cockroach-core/columns/time.js.map +0 -1
  758. package/cockroach-core/columns/timestamp.cjs +0 -111
  759. package/cockroach-core/columns/timestamp.cjs.map +0 -1
  760. package/cockroach-core/columns/timestamp.d.cts +0 -52
  761. package/cockroach-core/columns/timestamp.d.ts +0 -52
  762. package/cockroach-core/columns/timestamp.js +0 -83
  763. package/cockroach-core/columns/timestamp.js.map +0 -1
  764. package/cockroach-core/columns/utils.cjs +0 -65
  765. package/cockroach-core/columns/utils.cjs.map +0 -1
  766. package/cockroach-core/columns/utils.d.cts +0 -4
  767. package/cockroach-core/columns/utils.d.ts +0 -4
  768. package/cockroach-core/columns/utils.js +0 -41
  769. package/cockroach-core/columns/utils.js.map +0 -1
  770. package/cockroach-core/columns/uuid.cjs +0 -63
  771. package/cockroach-core/columns/uuid.cjs.map +0 -1
  772. package/cockroach-core/columns/uuid.d.cts +0 -20
  773. package/cockroach-core/columns/uuid.d.ts +0 -20
  774. package/cockroach-core/columns/uuid.js +0 -37
  775. package/cockroach-core/columns/uuid.js.map +0 -1
  776. package/cockroach-core/columns/varbit.cjs +0 -59
  777. package/cockroach-core/columns/varbit.cjs.map +0 -1
  778. package/cockroach-core/columns/varbit.d.cts +0 -24
  779. package/cockroach-core/columns/varbit.d.ts +0 -24
  780. package/cockroach-core/columns/varbit.js +0 -33
  781. package/cockroach-core/columns/varbit.js.map +0 -1
  782. package/cockroach-core/columns/varchar.cjs +0 -61
  783. package/cockroach-core/columns/varchar.cjs.map +0 -1
  784. package/cockroach-core/columns/varchar.d.cts +0 -30
  785. package/cockroach-core/columns/varchar.d.ts +0 -30
  786. package/cockroach-core/columns/varchar.js +0 -35
  787. package/cockroach-core/columns/varchar.js.map +0 -1
  788. package/cockroach-core/columns/vector.cjs +0 -65
  789. package/cockroach-core/columns/vector.cjs.map +0 -1
  790. package/cockroach-core/columns/vector.d.cts +0 -26
  791. package/cockroach-core/columns/vector.d.ts +0 -26
  792. package/cockroach-core/columns/vector.js +0 -39
  793. package/cockroach-core/columns/vector.js.map +0 -1
  794. package/cockroach-core/db.cjs +0 -346
  795. package/cockroach-core/db.cjs.map +0 -1
  796. package/cockroach-core/db.d.cts +0 -282
  797. package/cockroach-core/db.d.ts +0 -282
  798. package/cockroach-core/db.js +0 -327
  799. package/cockroach-core/db.js.map +0 -1
  800. package/cockroach-core/dialect.cjs +0 -1146
  801. package/cockroach-core/dialect.cjs.map +0 -1
  802. package/cockroach-core/dialect.d.cts +0 -65
  803. package/cockroach-core/dialect.d.ts +0 -65
  804. package/cockroach-core/dialect.js +0 -1126
  805. package/cockroach-core/dialect.js.map +0 -1
  806. package/cockroach-core/expressions.cjs +0 -49
  807. package/cockroach-core/expressions.cjs.map +0 -1
  808. package/cockroach-core/expressions.d.cts +0 -8
  809. package/cockroach-core/expressions.d.ts +0 -8
  810. package/cockroach-core/expressions.js +0 -22
  811. package/cockroach-core/expressions.js.map +0 -1
  812. package/cockroach-core/foreign-keys.cjs +0 -92
  813. package/cockroach-core/foreign-keys.cjs.map +0 -1
  814. package/cockroach-core/foreign-keys.d.cts +0 -52
  815. package/cockroach-core/foreign-keys.d.ts +0 -52
  816. package/cockroach-core/foreign-keys.js +0 -66
  817. package/cockroach-core/foreign-keys.js.map +0 -1
  818. package/cockroach-core/index.cjs +0 -61
  819. package/cockroach-core/index.cjs.map +0 -1
  820. package/cockroach-core/index.d.cts +0 -20
  821. package/cockroach-core/index.d.ts +0 -20
  822. package/cockroach-core/index.js +0 -21
  823. package/cockroach-core/index.js.map +0 -1
  824. package/cockroach-core/indexes.cjs +0 -137
  825. package/cockroach-core/indexes.cjs.map +0 -1
  826. package/cockroach-core/indexes.d.cts +0 -64
  827. package/cockroach-core/indexes.d.ts +0 -64
  828. package/cockroach-core/indexes.js +0 -109
  829. package/cockroach-core/indexes.js.map +0 -1
  830. package/cockroach-core/policies.cjs +0 -58
  831. package/cockroach-core/policies.cjs.map +0 -1
  832. package/cockroach-core/policies.d.cts +0 -24
  833. package/cockroach-core/policies.d.ts +0 -24
  834. package/cockroach-core/policies.js +0 -33
  835. package/cockroach-core/policies.js.map +0 -1
  836. package/cockroach-core/primary-keys.cjs +0 -64
  837. package/cockroach-core/primary-keys.cjs.map +0 -1
  838. package/cockroach-core/primary-keys.d.cts +0 -23
  839. package/cockroach-core/primary-keys.d.ts +0 -23
  840. package/cockroach-core/primary-keys.js +0 -38
  841. package/cockroach-core/primary-keys.js.map +0 -1
  842. package/cockroach-core/query-builders/count.cjs +0 -79
  843. package/cockroach-core/query-builders/count.cjs.map +0 -1
  844. package/cockroach-core/query-builders/count.d.cts +0 -29
  845. package/cockroach-core/query-builders/count.d.ts +0 -29
  846. package/cockroach-core/query-builders/count.js +0 -55
  847. package/cockroach-core/query-builders/count.js.map +0 -1
  848. package/cockroach-core/query-builders/delete.cjs +0 -124
  849. package/cockroach-core/query-builders/delete.cjs.map +0 -1
  850. package/cockroach-core/query-builders/delete.d.cts +0 -103
  851. package/cockroach-core/query-builders/delete.d.ts +0 -103
  852. package/cockroach-core/query-builders/delete.js +0 -100
  853. package/cockroach-core/query-builders/delete.js.map +0 -1
  854. package/cockroach-core/query-builders/index.cjs +0 -35
  855. package/cockroach-core/query-builders/index.cjs.map +0 -1
  856. package/cockroach-core/query-builders/index.d.cts +0 -7
  857. package/cockroach-core/query-builders/index.d.ts +0 -7
  858. package/cockroach-core/query-builders/index.js +0 -8
  859. package/cockroach-core/query-builders/index.js.map +0 -1
  860. package/cockroach-core/query-builders/insert.cjs +0 -213
  861. package/cockroach-core/query-builders/insert.cjs.map +0 -1
  862. package/cockroach-core/query-builders/insert.d.cts +0 -168
  863. package/cockroach-core/query-builders/insert.d.ts +0 -168
  864. package/cockroach-core/query-builders/insert.js +0 -188
  865. package/cockroach-core/query-builders/insert.js.map +0 -1
  866. package/cockroach-core/query-builders/query-builder.cjs +0 -118
  867. package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
  868. package/cockroach-core/query-builders/query-builder.d.cts +0 -37
  869. package/cockroach-core/query-builders/query-builder.d.ts +0 -37
  870. package/cockroach-core/query-builders/query-builder.js +0 -94
  871. package/cockroach-core/query-builders/query-builder.js.map +0 -1
  872. package/cockroach-core/query-builders/query.cjs +0 -145
  873. package/cockroach-core/query-builders/query.cjs.map +0 -1
  874. package/cockroach-core/query-builders/query.d.cts +0 -47
  875. package/cockroach-core/query-builders/query.d.ts +0 -47
  876. package/cockroach-core/query-builders/query.js +0 -122
  877. package/cockroach-core/query-builders/query.js.map +0 -1
  878. package/cockroach-core/query-builders/raw.cjs +0 -57
  879. package/cockroach-core/query-builders/raw.cjs.map +0 -1
  880. package/cockroach-core/query-builders/raw.d.cts +0 -22
  881. package/cockroach-core/query-builders/raw.d.ts +0 -22
  882. package/cockroach-core/query-builders/raw.js +0 -33
  883. package/cockroach-core/query-builders/raw.js.map +0 -1
  884. package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
  885. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
  886. package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
  887. package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
  888. package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
  889. package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
  890. package/cockroach-core/query-builders/select.cjs +0 -848
  891. package/cockroach-core/query-builders/select.cjs.map +0 -1
  892. package/cockroach-core/query-builders/select.d.cts +0 -787
  893. package/cockroach-core/query-builders/select.d.ts +0 -787
  894. package/cockroach-core/query-builders/select.js +0 -821
  895. package/cockroach-core/query-builders/select.js.map +0 -1
  896. package/cockroach-core/query-builders/select.types.cjs +0 -17
  897. package/cockroach-core/query-builders/select.types.cjs.map +0 -1
  898. package/cockroach-core/query-builders/select.types.d.cts +0 -140
  899. package/cockroach-core/query-builders/select.types.d.ts +0 -140
  900. package/cockroach-core/query-builders/select.types.js +0 -1
  901. package/cockroach-core/query-builders/select.types.js.map +0 -1
  902. package/cockroach-core/query-builders/update.cjs +0 -240
  903. package/cockroach-core/query-builders/update.cjs.map +0 -1
  904. package/cockroach-core/query-builders/update.d.cts +0 -170
  905. package/cockroach-core/query-builders/update.d.ts +0 -170
  906. package/cockroach-core/query-builders/update.js +0 -219
  907. package/cockroach-core/query-builders/update.js.map +0 -1
  908. package/cockroach-core/roles.cjs +0 -54
  909. package/cockroach-core/roles.cjs.map +0 -1
  910. package/cockroach-core/roles.d.cts +0 -12
  911. package/cockroach-core/roles.d.ts +0 -12
  912. package/cockroach-core/roles.js +0 -29
  913. package/cockroach-core/roles.js.map +0 -1
  914. package/cockroach-core/schema.cjs +0 -80
  915. package/cockroach-core/schema.cjs.map +0 -1
  916. package/cockroach-core/schema.d.cts +0 -22
  917. package/cockroach-core/schema.d.ts +0 -22
  918. package/cockroach-core/schema.js +0 -60
  919. package/cockroach-core/schema.js.map +0 -1
  920. package/cockroach-core/sequence.cjs +0 -52
  921. package/cockroach-core/sequence.cjs.map +0 -1
  922. package/cockroach-core/sequence.d.cts +0 -17
  923. package/cockroach-core/sequence.d.ts +0 -17
  924. package/cockroach-core/sequence.js +0 -25
  925. package/cockroach-core/sequence.js.map +0 -1
  926. package/cockroach-core/session.cjs +0 -120
  927. package/cockroach-core/session.cjs.map +0 -1
  928. package/cockroach-core/session.d.cts +0 -62
  929. package/cockroach-core/session.d.ts +0 -62
  930. package/cockroach-core/session.js +0 -94
  931. package/cockroach-core/session.js.map +0 -1
  932. package/cockroach-core/subquery.cjs +0 -17
  933. package/cockroach-core/subquery.cjs.map +0 -1
  934. package/cockroach-core/subquery.d.cts +0 -18
  935. package/cockroach-core/subquery.d.ts +0 -18
  936. package/cockroach-core/subquery.js +0 -1
  937. package/cockroach-core/subquery.js.map +0 -1
  938. package/cockroach-core/table.cjs +0 -100
  939. package/cockroach-core/table.cjs.map +0 -1
  940. package/cockroach-core/table.d.cts +0 -37
  941. package/cockroach-core/table.d.ts +0 -37
  942. package/cockroach-core/table.js +0 -73
  943. package/cockroach-core/table.js.map +0 -1
  944. package/cockroach-core/unique-constraint.cjs +0 -77
  945. package/cockroach-core/unique-constraint.cjs.map +0 -1
  946. package/cockroach-core/unique-constraint.d.cts +0 -23
  947. package/cockroach-core/unique-constraint.d.ts +0 -23
  948. package/cockroach-core/unique-constraint.js +0 -50
  949. package/cockroach-core/unique-constraint.js.map +0 -1
  950. package/cockroach-core/utils/array.cjs +0 -106
  951. package/cockroach-core/utils/array.cjs.map +0 -1
  952. package/cockroach-core/utils/array.d.cts +0 -3
  953. package/cockroach-core/utils/array.d.ts +0 -3
  954. package/cockroach-core/utils/array.js +0 -80
  955. package/cockroach-core/utils/array.js.map +0 -1
  956. package/cockroach-core/utils/index.cjs +0 -23
  957. package/cockroach-core/utils/index.cjs.map +0 -1
  958. package/cockroach-core/utils/index.d.cts +0 -1
  959. package/cockroach-core/utils/index.d.ts +0 -1
  960. package/cockroach-core/utils/index.js +0 -2
  961. package/cockroach-core/utils/index.js.map +0 -1
  962. package/cockroach-core/utils.cjs +0 -98
  963. package/cockroach-core/utils.cjs.map +0 -1
  964. package/cockroach-core/utils.d.cts +0 -47
  965. package/cockroach-core/utils.d.ts +0 -47
  966. package/cockroach-core/utils.js +0 -72
  967. package/cockroach-core/utils.js.map +0 -1
  968. package/cockroach-core/view-base.cjs +0 -33
  969. package/cockroach-core/view-base.cjs.map +0 -1
  970. package/cockroach-core/view-base.d.cts +0 -8
  971. package/cockroach-core/view-base.d.ts +0 -8
  972. package/cockroach-core/view-base.js +0 -9
  973. package/cockroach-core/view-base.js.map +0 -1
  974. package/cockroach-core/view.cjs +0 -271
  975. package/cockroach-core/view.cjs.map +0 -1
  976. package/cockroach-core/view.d.cts +0 -106
  977. package/cockroach-core/view.d.ts +0 -106
  978. package/cockroach-core/view.js +0 -233
  979. package/cockroach-core/view.js.map +0 -1
  980. package/mssql-core/alias.cjs +0 -32
  981. package/mssql-core/alias.cjs.map +0 -1
  982. package/mssql-core/alias.d.cts +0 -4
  983. package/mssql-core/alias.d.ts +0 -4
  984. package/mssql-core/alias.js +0 -8
  985. package/mssql-core/alias.js.map +0 -1
  986. package/mssql-core/checks.cjs +0 -58
  987. package/mssql-core/checks.cjs.map +0 -1
  988. package/mssql-core/checks.d.cts +0 -18
  989. package/mssql-core/checks.d.ts +0 -18
  990. package/mssql-core/checks.js +0 -32
  991. package/mssql-core/checks.js.map +0 -1
  992. package/mssql-core/columns/all.cjs +0 -74
  993. package/mssql-core/columns/all.cjs.map +0 -1
  994. package/mssql-core/columns/all.d.cts +0 -45
  995. package/mssql-core/columns/all.d.ts +0 -45
  996. package/mssql-core/columns/all.js +0 -50
  997. package/mssql-core/columns/all.js.map +0 -1
  998. package/mssql-core/columns/bigint.cjs +0 -72
  999. package/mssql-core/columns/bigint.cjs.map +0 -1
  1000. package/mssql-core/columns/bigint.d.cts +0 -25
  1001. package/mssql-core/columns/bigint.d.ts +0 -25
  1002. package/mssql-core/columns/bigint.js +0 -46
  1003. package/mssql-core/columns/bigint.js.map +0 -1
  1004. package/mssql-core/columns/binary.cjs +0 -57
  1005. package/mssql-core/columns/binary.cjs.map +0 -1
  1006. package/mssql-core/columns/binary.d.cts +0 -24
  1007. package/mssql-core/columns/binary.d.ts +0 -24
  1008. package/mssql-core/columns/binary.js +0 -31
  1009. package/mssql-core/columns/binary.js.map +0 -1
  1010. package/mssql-core/columns/bit.cjs +0 -54
  1011. package/mssql-core/columns/bit.cjs.map +0 -1
  1012. package/mssql-core/columns/bit.d.cts +0 -17
  1013. package/mssql-core/columns/bit.d.ts +0 -17
  1014. package/mssql-core/columns/bit.js +0 -28
  1015. package/mssql-core/columns/bit.js.map +0 -1
  1016. package/mssql-core/columns/char.cjs +0 -73
  1017. package/mssql-core/columns/char.cjs.map +0 -1
  1018. package/mssql-core/columns/char.d.cts +0 -29
  1019. package/mssql-core/columns/char.d.ts +0 -29
  1020. package/mssql-core/columns/char.js +0 -46
  1021. package/mssql-core/columns/char.js.map +0 -1
  1022. package/mssql-core/columns/common.cjs +0 -112
  1023. package/mssql-core/columns/common.cjs.map +0 -1
  1024. package/mssql-core/columns/common.d.cts +0 -57
  1025. package/mssql-core/columns/common.d.ts +0 -57
  1026. package/mssql-core/columns/common.js +0 -85
  1027. package/mssql-core/columns/common.js.map +0 -1
  1028. package/mssql-core/columns/custom.cjs +0 -105
  1029. package/mssql-core/columns/custom.cjs.map +0 -1
  1030. package/mssql-core/columns/custom.d.cts +0 -261
  1031. package/mssql-core/columns/custom.d.ts +0 -261
  1032. package/mssql-core/columns/custom.js +0 -79
  1033. package/mssql-core/columns/custom.js.map +0 -1
  1034. package/mssql-core/columns/date.cjs +0 -94
  1035. package/mssql-core/columns/date.cjs.map +0 -1
  1036. package/mssql-core/columns/date.common.cjs +0 -37
  1037. package/mssql-core/columns/date.common.cjs.map +0 -1
  1038. package/mssql-core/columns/date.common.d.cts +0 -12
  1039. package/mssql-core/columns/date.common.d.ts +0 -12
  1040. package/mssql-core/columns/date.common.js +0 -13
  1041. package/mssql-core/columns/date.common.js.map +0 -1
  1042. package/mssql-core/columns/date.d.cts +0 -39
  1043. package/mssql-core/columns/date.d.ts +0 -39
  1044. package/mssql-core/columns/date.js +0 -66
  1045. package/mssql-core/columns/date.js.map +0 -1
  1046. package/mssql-core/columns/datetime.cjs +0 -94
  1047. package/mssql-core/columns/datetime.cjs.map +0 -1
  1048. package/mssql-core/columns/datetime.d.cts +0 -38
  1049. package/mssql-core/columns/datetime.d.ts +0 -38
  1050. package/mssql-core/columns/datetime.js +0 -66
  1051. package/mssql-core/columns/datetime.js.map +0 -1
  1052. package/mssql-core/columns/datetime2.cjs +0 -102
  1053. package/mssql-core/columns/datetime2.cjs.map +0 -1
  1054. package/mssql-core/columns/datetime2.d.cts +0 -38
  1055. package/mssql-core/columns/datetime2.d.ts +0 -38
  1056. package/mssql-core/columns/datetime2.js +0 -74
  1057. package/mssql-core/columns/datetime2.js.map +0 -1
  1058. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  1059. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  1060. package/mssql-core/columns/datetimeoffset.d.cts +0 -39
  1061. package/mssql-core/columns/datetimeoffset.d.ts +0 -39
  1062. package/mssql-core/columns/datetimeoffset.js +0 -74
  1063. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  1064. package/mssql-core/columns/decimal.cjs +0 -146
  1065. package/mssql-core/columns/decimal.cjs.map +0 -1
  1066. package/mssql-core/columns/decimal.d.cts +0 -58
  1067. package/mssql-core/columns/decimal.d.ts +0 -58
  1068. package/mssql-core/columns/decimal.js +0 -116
  1069. package/mssql-core/columns/decimal.js.map +0 -1
  1070. package/mssql-core/columns/float.cjs +0 -58
  1071. package/mssql-core/columns/float.cjs.map +0 -1
  1072. package/mssql-core/columns/float.d.cts +0 -21
  1073. package/mssql-core/columns/float.d.ts +0 -21
  1074. package/mssql-core/columns/float.js +0 -32
  1075. package/mssql-core/columns/float.js.map +0 -1
  1076. package/mssql-core/columns/index.cjs +0 -63
  1077. package/mssql-core/columns/index.cjs.map +0 -1
  1078. package/mssql-core/columns/index.d.cts +0 -21
  1079. package/mssql-core/columns/index.d.ts +0 -21
  1080. package/mssql-core/columns/index.js +0 -22
  1081. package/mssql-core/columns/index.js.map +0 -1
  1082. package/mssql-core/columns/int.cjs +0 -53
  1083. package/mssql-core/columns/int.cjs.map +0 -1
  1084. package/mssql-core/columns/int.d.cts +0 -16
  1085. package/mssql-core/columns/int.d.ts +0 -16
  1086. package/mssql-core/columns/int.js +0 -27
  1087. package/mssql-core/columns/int.js.map +0 -1
  1088. package/mssql-core/columns/numeric.cjs +0 -146
  1089. package/mssql-core/columns/numeric.cjs.map +0 -1
  1090. package/mssql-core/columns/numeric.d.cts +0 -58
  1091. package/mssql-core/columns/numeric.d.ts +0 -58
  1092. package/mssql-core/columns/numeric.js +0 -116
  1093. package/mssql-core/columns/numeric.js.map +0 -1
  1094. package/mssql-core/columns/real.cjs +0 -53
  1095. package/mssql-core/columns/real.cjs.map +0 -1
  1096. package/mssql-core/columns/real.d.cts +0 -16
  1097. package/mssql-core/columns/real.d.ts +0 -16
  1098. package/mssql-core/columns/real.js +0 -27
  1099. package/mssql-core/columns/real.js.map +0 -1
  1100. package/mssql-core/columns/smallint.cjs +0 -62
  1101. package/mssql-core/columns/smallint.cjs.map +0 -1
  1102. package/mssql-core/columns/smallint.d.cts +0 -17
  1103. package/mssql-core/columns/smallint.d.ts +0 -17
  1104. package/mssql-core/columns/smallint.js +0 -36
  1105. package/mssql-core/columns/smallint.js.map +0 -1
  1106. package/mssql-core/columns/text.cjs +0 -68
  1107. package/mssql-core/columns/text.cjs.map +0 -1
  1108. package/mssql-core/columns/text.d.cts +0 -36
  1109. package/mssql-core/columns/text.d.ts +0 -36
  1110. package/mssql-core/columns/text.js +0 -41
  1111. package/mssql-core/columns/text.js.map +0 -1
  1112. package/mssql-core/columns/time.cjs +0 -90
  1113. package/mssql-core/columns/time.cjs.map +0 -1
  1114. package/mssql-core/columns/time.d.cts +0 -37
  1115. package/mssql-core/columns/time.d.ts +0 -37
  1116. package/mssql-core/columns/time.js +0 -62
  1117. package/mssql-core/columns/time.js.map +0 -1
  1118. package/mssql-core/columns/tinyint.cjs +0 -62
  1119. package/mssql-core/columns/tinyint.cjs.map +0 -1
  1120. package/mssql-core/columns/tinyint.d.cts +0 -17
  1121. package/mssql-core/columns/tinyint.d.ts +0 -17
  1122. package/mssql-core/columns/tinyint.js +0 -36
  1123. package/mssql-core/columns/tinyint.js.map +0 -1
  1124. package/mssql-core/columns/varbinary.cjs +0 -61
  1125. package/mssql-core/columns/varbinary.cjs.map +0 -1
  1126. package/mssql-core/columns/varbinary.d.cts +0 -23
  1127. package/mssql-core/columns/varbinary.d.ts +0 -23
  1128. package/mssql-core/columns/varbinary.js +0 -35
  1129. package/mssql-core/columns/varbinary.js.map +0 -1
  1130. package/mssql-core/columns/varchar.cjs +0 -117
  1131. package/mssql-core/columns/varchar.cjs.map +0 -1
  1132. package/mssql-core/columns/varchar.d.cts +0 -59
  1133. package/mssql-core/columns/varchar.d.ts +0 -59
  1134. package/mssql-core/columns/varchar.js +0 -88
  1135. package/mssql-core/columns/varchar.js.map +0 -1
  1136. package/mssql-core/db.cjs +0 -254
  1137. package/mssql-core/db.cjs.map +0 -1
  1138. package/mssql-core/db.d.cts +0 -228
  1139. package/mssql-core/db.d.ts +0 -228
  1140. package/mssql-core/db.js +0 -235
  1141. package/mssql-core/db.js.map +0 -1
  1142. package/mssql-core/dialect.cjs +0 -633
  1143. package/mssql-core/dialect.cjs.map +0 -1
  1144. package/mssql-core/dialect.d.cts +0 -58
  1145. package/mssql-core/dialect.d.ts +0 -58
  1146. package/mssql-core/dialect.js +0 -599
  1147. package/mssql-core/dialect.js.map +0 -1
  1148. package/mssql-core/expressions.cjs +0 -49
  1149. package/mssql-core/expressions.cjs.map +0 -1
  1150. package/mssql-core/expressions.d.cts +0 -8
  1151. package/mssql-core/expressions.d.ts +0 -8
  1152. package/mssql-core/expressions.js +0 -22
  1153. package/mssql-core/expressions.js.map +0 -1
  1154. package/mssql-core/foreign-keys.cjs +0 -91
  1155. package/mssql-core/foreign-keys.cjs.map +0 -1
  1156. package/mssql-core/foreign-keys.d.cts +0 -51
  1157. package/mssql-core/foreign-keys.d.ts +0 -51
  1158. package/mssql-core/foreign-keys.js +0 -65
  1159. package/mssql-core/foreign-keys.js.map +0 -1
  1160. package/mssql-core/index.cjs +0 -55
  1161. package/mssql-core/index.cjs.map +0 -1
  1162. package/mssql-core/index.d.cts +0 -17
  1163. package/mssql-core/index.d.ts +0 -17
  1164. package/mssql-core/index.js +0 -18
  1165. package/mssql-core/index.js.map +0 -1
  1166. package/mssql-core/indexes.cjs +0 -80
  1167. package/mssql-core/indexes.cjs.map +0 -1
  1168. package/mssql-core/indexes.d.cts +0 -49
  1169. package/mssql-core/indexes.d.ts +0 -49
  1170. package/mssql-core/indexes.js +0 -52
  1171. package/mssql-core/indexes.js.map +0 -1
  1172. package/mssql-core/primary-keys.cjs +0 -64
  1173. package/mssql-core/primary-keys.cjs.map +0 -1
  1174. package/mssql-core/primary-keys.d.cts +0 -23
  1175. package/mssql-core/primary-keys.d.ts +0 -23
  1176. package/mssql-core/primary-keys.js +0 -38
  1177. package/mssql-core/primary-keys.js.map +0 -1
  1178. package/mssql-core/query-builders/delete.cjs +0 -107
  1179. package/mssql-core/query-builders/delete.cjs.map +0 -1
  1180. package/mssql-core/query-builders/delete.d.cts +0 -98
  1181. package/mssql-core/query-builders/delete.d.ts +0 -98
  1182. package/mssql-core/query-builders/delete.js +0 -83
  1183. package/mssql-core/query-builders/delete.js.map +0 -1
  1184. package/mssql-core/query-builders/index.cjs +0 -33
  1185. package/mssql-core/query-builders/index.cjs.map +0 -1
  1186. package/mssql-core/query-builders/index.d.cts +0 -6
  1187. package/mssql-core/query-builders/index.d.ts +0 -6
  1188. package/mssql-core/query-builders/index.js +0 -7
  1189. package/mssql-core/query-builders/index.js.map +0 -1
  1190. package/mssql-core/query-builders/insert.cjs +0 -105
  1191. package/mssql-core/query-builders/insert.cjs.map +0 -1
  1192. package/mssql-core/query-builders/insert.d.cts +0 -79
  1193. package/mssql-core/query-builders/insert.d.ts +0 -79
  1194. package/mssql-core/query-builders/insert.js +0 -80
  1195. package/mssql-core/query-builders/insert.js.map +0 -1
  1196. package/mssql-core/query-builders/query-builder.cjs +0 -95
  1197. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  1198. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  1199. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  1200. package/mssql-core/query-builders/query-builder.js +0 -71
  1201. package/mssql-core/query-builders/query-builder.js.map +0 -1
  1202. package/mssql-core/query-builders/query.cjs +0 -126
  1203. package/mssql-core/query-builders/query.cjs.map +0 -1
  1204. package/mssql-core/query-builders/query.d.cts +0 -42
  1205. package/mssql-core/query-builders/query.d.ts +0 -42
  1206. package/mssql-core/query-builders/query.js +0 -103
  1207. package/mssql-core/query-builders/query.js.map +0 -1
  1208. package/mssql-core/query-builders/select.cjs +0 -679
  1209. package/mssql-core/query-builders/select.cjs.map +0 -1
  1210. package/mssql-core/query-builders/select.d.cts +0 -549
  1211. package/mssql-core/query-builders/select.d.ts +0 -549
  1212. package/mssql-core/query-builders/select.js +0 -649
  1213. package/mssql-core/query-builders/select.js.map +0 -1
  1214. package/mssql-core/query-builders/select.types.cjs +0 -17
  1215. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  1216. package/mssql-core/query-builders/select.types.d.cts +0 -142
  1217. package/mssql-core/query-builders/select.types.d.ts +0 -142
  1218. package/mssql-core/query-builders/select.types.js +0 -1
  1219. package/mssql-core/query-builders/select.types.js.map +0 -1
  1220. package/mssql-core/query-builders/update.cjs +0 -138
  1221. package/mssql-core/query-builders/update.cjs.map +0 -1
  1222. package/mssql-core/query-builders/update.d.cts +0 -142
  1223. package/mssql-core/query-builders/update.d.ts +0 -142
  1224. package/mssql-core/query-builders/update.js +0 -113
  1225. package/mssql-core/query-builders/update.js.map +0 -1
  1226. package/mssql-core/schema.cjs +0 -51
  1227. package/mssql-core/schema.cjs.map +0 -1
  1228. package/mssql-core/schema.d.cts +0 -22
  1229. package/mssql-core/schema.d.ts +0 -22
  1230. package/mssql-core/schema.js +0 -25
  1231. package/mssql-core/schema.js.map +0 -1
  1232. package/mssql-core/session.cjs +0 -74
  1233. package/mssql-core/session.cjs.map +0 -1
  1234. package/mssql-core/session.d.cts +0 -63
  1235. package/mssql-core/session.d.ts +0 -63
  1236. package/mssql-core/session.js +0 -48
  1237. package/mssql-core/session.js.map +0 -1
  1238. package/mssql-core/subquery.cjs +0 -17
  1239. package/mssql-core/subquery.cjs.map +0 -1
  1240. package/mssql-core/subquery.d.cts +0 -18
  1241. package/mssql-core/subquery.d.ts +0 -18
  1242. package/mssql-core/subquery.js +0 -1
  1243. package/mssql-core/subquery.js.map +0 -1
  1244. package/mssql-core/table.cjs +0 -81
  1245. package/mssql-core/table.cjs.map +0 -1
  1246. package/mssql-core/table.d.cts +0 -40
  1247. package/mssql-core/table.d.ts +0 -40
  1248. package/mssql-core/table.js +0 -55
  1249. package/mssql-core/table.js.map +0 -1
  1250. package/mssql-core/unique-constraint.cjs +0 -76
  1251. package/mssql-core/unique-constraint.cjs.map +0 -1
  1252. package/mssql-core/unique-constraint.d.cts +0 -23
  1253. package/mssql-core/unique-constraint.d.ts +0 -23
  1254. package/mssql-core/unique-constraint.js +0 -49
  1255. package/mssql-core/unique-constraint.js.map +0 -1
  1256. package/mssql-core/utils.cjs +0 -85
  1257. package/mssql-core/utils.cjs.map +0 -1
  1258. package/mssql-core/utils.d.cts +0 -31
  1259. package/mssql-core/utils.d.ts +0 -31
  1260. package/mssql-core/utils.js +0 -60
  1261. package/mssql-core/utils.js.map +0 -1
  1262. package/mssql-core/view-base.cjs +0 -33
  1263. package/mssql-core/view-base.cjs.map +0 -1
  1264. package/mssql-core/view-base.d.cts +0 -9
  1265. package/mssql-core/view-base.d.ts +0 -9
  1266. package/mssql-core/view-base.js +0 -9
  1267. package/mssql-core/view-base.js.map +0 -1
  1268. package/mssql-core/view-common.cjs +0 -29
  1269. package/mssql-core/view-common.cjs.map +0 -1
  1270. package/mssql-core/view-common.d.cts +0 -1
  1271. package/mssql-core/view-common.d.ts +0 -1
  1272. package/mssql-core/view-common.js +0 -5
  1273. package/mssql-core/view-common.js.map +0 -1
  1274. package/mssql-core/view.cjs +0 -154
  1275. package/mssql-core/view.cjs.map +0 -1
  1276. package/mssql-core/view.d.cts +0 -63
  1277. package/mssql-core/view.d.ts +0 -63
  1278. package/mssql-core/view.js +0 -125
  1279. package/mssql-core/view.js.map +0 -1
  1280. package/node-mssql/driver.cjs +0 -117
  1281. package/node-mssql/driver.cjs.map +0 -1
  1282. package/node-mssql/driver.d.cts +0 -46
  1283. package/node-mssql/driver.d.ts +0 -46
  1284. package/node-mssql/driver.js +0 -81
  1285. package/node-mssql/driver.js.map +0 -1
  1286. package/node-mssql/index.cjs +0 -25
  1287. package/node-mssql/index.cjs.map +0 -1
  1288. package/node-mssql/index.d.cts +0 -2
  1289. package/node-mssql/index.d.ts +0 -2
  1290. package/node-mssql/index.js +0 -3
  1291. package/node-mssql/index.js.map +0 -1
  1292. package/node-mssql/migrator.cjs +0 -33
  1293. package/node-mssql/migrator.cjs.map +0 -1
  1294. package/node-mssql/migrator.d.cts +0 -3
  1295. package/node-mssql/migrator.d.ts +0 -3
  1296. package/node-mssql/migrator.js +0 -9
  1297. package/node-mssql/migrator.js.map +0 -1
  1298. package/node-mssql/pool.cjs +0 -54
  1299. package/node-mssql/pool.cjs.map +0 -1
  1300. package/node-mssql/pool.d.cts +0 -8
  1301. package/node-mssql/pool.d.ts +0 -8
  1302. package/node-mssql/pool.js +0 -20
  1303. package/node-mssql/pool.js.map +0 -1
  1304. package/node-mssql/session.cjs +0 -256
  1305. package/node-mssql/session.cjs.map +0 -1
  1306. package/node-mssql/session.d.cts +0 -48
  1307. package/node-mssql/session.d.ts +0 -48
  1308. package/node-mssql/session.js +0 -224
  1309. package/node-mssql/session.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/columns/text.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { GelTable } from '~/gel-core/table.ts';\nimport { GelColumn, GelColumnBuilder } from './common.ts';\n\nexport class GelTextBuilder extends GelColumnBuilder<{\n\tdataType: 'string';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'GelTextBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'string', 'GelText');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelText(table, this.config as any);\n\t}\n}\n\nexport class GelText<T extends ColumnBaseConfig<'string'>> extends GelColumn<T, { enumValues: T['enumValues'] }> {\n\tstatic override readonly [entityKind]: string = 'GelText';\n\n\toverride readonly enumValues = this.config.enumValues;\n\n\tgetSQLType(): string {\n\t\treturn 'text';\n\t}\n}\n\nexport function text(name?: string): GelTextBuilder {\n\treturn new GelTextBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,WAAW,wBAAwB;AAErC,MAAM,uBAAuB,iBAIjC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,UAAU,SAAS;AAAA,EAChC;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI,QAAQ,OAAO,KAAK,MAAa;AAAA,EAC7C;AACD;AAEO,MAAM,gBAAsD,UAA8C;AAAA,EAChH,QAA0B,UAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAA+B;AACnD,SAAO,IAAI,eAAe,QAAQ,EAAE;AACrC;","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/columns/text.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { GelTable } from '~/gel-core/table.ts';\nimport { GelColumn, GelColumnBuilder } from './common.ts';\n\nexport class GelTextBuilder extends GelColumnBuilder<{\n\tname: string;\n\tdataType: 'string';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'GelTextBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'string', 'GelText');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelText(table, this.config as any);\n\t}\n}\n\nexport class GelText<T extends ColumnBaseConfig<'string'>> extends GelColumn<T, { enumValues: T['enumValues'] }> {\n\tstatic override readonly [entityKind]: string = 'GelText';\n\n\toverride readonly enumValues = this.config.enumValues;\n\n\tgetSQLType(): string {\n\t\treturn 'text';\n\t}\n}\n\nexport function text(name?: string): GelTextBuilder {\n\treturn new GelTextBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,WAAW,wBAAwB;AAErC,MAAM,uBAAuB,iBAKjC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,UAAU,SAAS;AAAA,EAChC;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI,QAAQ,OAAO,KAAK,MAAa;AAAA,EAC7C;AACD;AAEO,MAAM,gBAAsD,UAA8C;AAAA,EAChH,QAA0B,UAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAA+B;AACnD,SAAO,IAAI,eAAe,QAAQ,EAAE;AACrC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/columns/timestamp.ts"],"sourcesContent":["import type { LocalDateTime } from 'gel';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tdataType: 'object localDateTime';\n\t\tdata: LocalDateTime;\n\t\tdriverParam: LocalDateTime;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object localDateTime', 'GelTimestamp');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestamp(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestamp<T extends ColumnBaseConfig<'object localDateTime'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestamp';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'cal::local_datetime';\n\t}\n}\n\nexport function timestamp(name?: string): GelTimestampBuilder {\n\treturn new GelTimestampBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAA2B;AAE3B,oBAA0B;AAC1B,yBAA8C;AAEvC,MAAM,4BAA4B,iDAMvC;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,wBAAwB,cAAc;AAAA,EACnD;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAAyE,wBAAa;AAAA,EAClG,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAuC;AAChG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,UAAU,MAAoC;AAC7D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/columns/timestamp.ts"],"sourcesContent":["import type { LocalDateTime } from 'gel';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: 'object localDateTime';\n\t\tdata: LocalDateTime;\n\t\tdriverParam: LocalDateTime;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object localDateTime', 'GelTimestamp');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestamp(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestamp<T extends ColumnBaseConfig<'object localDateTime'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestamp';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'cal::local_datetime';\n\t}\n}\n\nexport function timestamp(name?: string): GelTimestampBuilder {\n\treturn new GelTimestampBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAA2B;AAE3B,oBAA0B;AAC1B,yBAA8C;AAEvC,MAAM,4BAA4B,iDAOvC;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,wBAAwB,cAAc;AAAA,EACnD;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAAyE,wBAAa;AAAA,EAClG,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAuC;AAChG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,UAAU,MAAoC;AAC7D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
@@ -5,6 +5,7 @@ import type { AnyGelTable } from "../table.cjs";
5
5
  import { GelColumn } from "./common.cjs";
6
6
  import { GelLocalDateColumnBaseBuilder } from "./date.common.cjs";
7
7
  export declare class GelTimestampBuilder extends GelLocalDateColumnBaseBuilder<{
8
+ name: string;
8
9
  dataType: 'object localDateTime';
9
10
  data: LocalDateTime;
10
11
  driverParam: LocalDateTime;
@@ -5,6 +5,7 @@ import type { AnyGelTable } from "../table.js";
5
5
  import { GelColumn } from "./common.js";
6
6
  import { GelLocalDateColumnBaseBuilder } from "./date.common.js";
7
7
  export declare class GelTimestampBuilder extends GelLocalDateColumnBaseBuilder<{
8
+ name: string;
8
9
  dataType: 'object localDateTime';
9
10
  data: LocalDateTime;
10
11
  driverParam: LocalDateTime;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/columns/timestamp.ts"],"sourcesContent":["import type { LocalDateTime } from 'gel';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tdataType: 'object localDateTime';\n\t\tdata: LocalDateTime;\n\t\tdriverParam: LocalDateTime;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object localDateTime', 'GelTimestamp');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestamp(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestamp<T extends ColumnBaseConfig<'object localDateTime'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestamp';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'cal::local_datetime';\n\t}\n}\n\nexport function timestamp(name?: string): GelTimestampBuilder {\n\treturn new GelTimestampBuilder(name ?? '');\n}\n"],"mappings":"AAEA,SAAS,kBAAkB;AAE3B,SAAS,iBAAiB;AAC1B,SAAS,qCAAqC;AAEvC,MAAM,4BAA4B,8BAMvC;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,wBAAwB,cAAc;AAAA,EACnD;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAAyE,UAAa;AAAA,EAClG,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAuC;AAChG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,UAAU,MAAoC;AAC7D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/columns/timestamp.ts"],"sourcesContent":["import type { LocalDateTime } from 'gel';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: 'object localDateTime';\n\t\tdata: LocalDateTime;\n\t\tdriverParam: LocalDateTime;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object localDateTime', 'GelTimestamp');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestamp(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestamp<T extends ColumnBaseConfig<'object localDateTime'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestamp';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'cal::local_datetime';\n\t}\n}\n\nexport function timestamp(name?: string): GelTimestampBuilder {\n\treturn new GelTimestampBuilder(name ?? '');\n}\n"],"mappings":"AAEA,SAAS,kBAAkB;AAE3B,SAAS,iBAAiB;AAC1B,SAAS,qCAAqC;AAEvC,MAAM,4BAA4B,8BAOvC;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,wBAAwB,cAAc;AAAA,EACnD;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAAyE,UAAa;AAAA,EAClG,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAuC;AAChG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,UAAU,MAAoC;AAC7D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/columns/timestamptz.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampTzBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tdataType: 'object date';\n\t\tdata: Date;\n\t\tdriverParam: Date;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTzBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object date', 'GelTimestampTz');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestampTz(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestampTz<T extends ColumnBaseConfig<'object date'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTz';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampTzBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\toverride mapFromDriverValue(value: unknown): Date {\n\t\t// Needed for fields nested in RQBv2's JSON\n\t\tif (typeof value === 'string') return new Date(value as string);\n\n\t\treturn value as Date;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'datetime';\n\t}\n}\n\nexport function timestamptz(name?: string): GelTimestampTzBuilder {\n\treturn new GelTimestampTzBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAA0B;AAC1B,yBAA8C;AAEvC,MAAM,8BAA8B,iDAMzC;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBAAkE,wBAAa;AAAA,EAC3F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAyC;AAClG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAES,mBAAmB,OAAsB;AAEjD,QAAI,OAAO,UAAU,SAAU,QAAO,IAAI,KAAK,KAAe;AAE9D,WAAO;AAAA,EACR;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,YAAY,MAAsC;AACjE,SAAO,IAAI,sBAAsB,QAAQ,EAAE;AAC5C;","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/columns/timestamptz.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampTzBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: 'object date';\n\t\tdata: Date;\n\t\tdriverParam: Date;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTzBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object date', 'GelTimestampTz');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestampTz(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestampTz<T extends ColumnBaseConfig<'object date'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTz';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampTzBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\toverride mapFromDriverValue(value: unknown): Date {\n\t\t// Needed for fields nested in RQBv2's JSON\n\t\tif (typeof value === 'string') return new Date(value as string);\n\n\t\treturn value as Date;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'datetime';\n\t}\n}\n\nexport function timestamptz(name?: string): GelTimestampTzBuilder {\n\treturn new GelTimestampTzBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAA0B;AAC1B,yBAA8C;AAEvC,MAAM,8BAA8B,iDAOzC;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBAAkE,wBAAa;AAAA,EAC3F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAyC;AAClG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAES,mBAAmB,OAAsB;AAEjD,QAAI,OAAO,UAAU,SAAU,QAAO,IAAI,KAAK,KAAe;AAE9D,WAAO;AAAA,EACR;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,YAAY,MAAsC;AACjE,SAAO,IAAI,sBAAsB,QAAQ,EAAE;AAC5C;","names":[]}
@@ -4,6 +4,7 @@ import type { AnyGelTable } from "../table.cjs";
4
4
  import { GelColumn } from "./common.cjs";
5
5
  import { GelLocalDateColumnBaseBuilder } from "./date.common.cjs";
6
6
  export declare class GelTimestampTzBuilder extends GelLocalDateColumnBaseBuilder<{
7
+ name: string;
7
8
  dataType: 'object date';
8
9
  data: Date;
9
10
  driverParam: Date;
@@ -4,6 +4,7 @@ import type { AnyGelTable } from "../table.js";
4
4
  import { GelColumn } from "./common.js";
5
5
  import { GelLocalDateColumnBaseBuilder } from "./date.common.js";
6
6
  export declare class GelTimestampTzBuilder extends GelLocalDateColumnBaseBuilder<{
7
+ name: string;
7
8
  dataType: 'object date';
8
9
  data: Date;
9
10
  driverParam: Date;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/columns/timestamptz.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampTzBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tdataType: 'object date';\n\t\tdata: Date;\n\t\tdriverParam: Date;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTzBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object date', 'GelTimestampTz');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestampTz(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestampTz<T extends ColumnBaseConfig<'object date'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTz';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampTzBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\toverride mapFromDriverValue(value: unknown): Date {\n\t\t// Needed for fields nested in RQBv2's JSON\n\t\tif (typeof value === 'string') return new Date(value as string);\n\n\t\treturn value as Date;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'datetime';\n\t}\n}\n\nexport function timestamptz(name?: string): GelTimestampTzBuilder {\n\treturn new GelTimestampTzBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,iBAAiB;AAC1B,SAAS,qCAAqC;AAEvC,MAAM,8BAA8B,8BAMzC;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBAAkE,UAAa;AAAA,EAC3F,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAyC;AAClG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAES,mBAAmB,OAAsB;AAEjD,QAAI,OAAO,UAAU,SAAU,QAAO,IAAI,KAAK,KAAe;AAE9D,WAAO;AAAA,EACR;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,YAAY,MAAsC;AACjE,SAAO,IAAI,sBAAsB,QAAQ,EAAE;AAC5C;","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/columns/timestamptz.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnyGelTable, GelTable } from '~/gel-core/table.ts';\nimport { GelColumn } from './common.ts';\nimport { GelLocalDateColumnBaseBuilder } from './date.common.ts';\n\nexport class GelTimestampTzBuilder extends GelLocalDateColumnBaseBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: 'object date';\n\t\tdata: Date;\n\t\tdriverParam: Date;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTzBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t) {\n\t\tsuper(name, 'object date', 'GelTimestampTz');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelTimestampTz(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class GelTimestampTz<T extends ColumnBaseConfig<'object date'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelTimestampTz';\n\n\tconstructor(table: AnyGelTable<{ name: T['tableName'] }>, config: GelTimestampTzBuilder['config']) {\n\t\tsuper(table, config);\n\t}\n\n\toverride mapFromDriverValue(value: unknown): Date {\n\t\t// Needed for fields nested in RQBv2's JSON\n\t\tif (typeof value === 'string') return new Date(value as string);\n\n\t\treturn value as Date;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'datetime';\n\t}\n}\n\nexport function timestamptz(name?: string): GelTimestampTzBuilder {\n\treturn new GelTimestampTzBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,iBAAiB;AAC1B,SAAS,qCAAqC;AAEvC,MAAM,8BAA8B,8BAOzC;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACC;AACD,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBAAkE,UAAa;AAAA,EAC3F,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,OAA8C,QAAyC;AAClG,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAES,mBAAmB,OAAsB;AAEjD,QAAI,OAAO,UAAU,SAAU,QAAO,IAAI,KAAK,KAAe;AAE9D,WAAO;AAAA,EACR;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,YAAY,MAAsC;AACjE,SAAO,IAAI,sBAAsB,QAAQ,EAAE;AAC5C;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/columns/uuid.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { GelTable } from '~/gel-core/table.ts';\nimport { GelColumn, GelColumnBuilder } from './common.ts';\n\nexport class GelUUIDBuilder extends GelColumnBuilder<{\n\tdataType: 'string uuid';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'GelUUIDBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string uuid', 'GelUUID');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelUUID(table, this.config as any);\n\t}\n}\n\nexport class GelUUID<T extends ColumnBaseConfig<'string uuid'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelUUID';\n\n\tgetSQLType(): string {\n\t\treturn 'uuid';\n\t}\n}\n\nexport function uuid(name?: string): GelUUIDBuilder {\n\treturn new GelUUIDBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAA4C;AAErC,MAAM,uBAAuB,+BAIjC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,SAAS;AAAA,EACrC;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI,QAAQ,OAAO,KAAK,MAAa;AAAA,EAC7C;AACD;AAEO,MAAM,gBAA2D,wBAAa;AAAA,EACpF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAA+B;AACnD,SAAO,IAAI,eAAe,QAAQ,EAAE;AACrC;","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/columns/uuid.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { GelTable } from '~/gel-core/table.ts';\nimport { GelColumn, GelColumnBuilder } from './common.ts';\n\nexport class GelUUIDBuilder extends GelColumnBuilder<{\n\tname: string;\n\tdataType: 'string uuid';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'GelUUIDBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string uuid', 'GelUUID');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelUUID(table, this.config as any);\n\t}\n}\n\nexport class GelUUID<T extends ColumnBaseConfig<'string uuid'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelUUID';\n\n\tgetSQLType(): string {\n\t\treturn 'uuid';\n\t}\n}\n\nexport function uuid(name?: string): GelUUIDBuilder {\n\treturn new GelUUIDBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAA4C;AAErC,MAAM,uBAAuB,+BAKjC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,SAAS;AAAA,EACrC;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI,QAAQ,OAAO,KAAK,MAAa;AAAA,EAC7C;AACD;AAEO,MAAM,gBAA2D,wBAAa;AAAA,EACpF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAA+B;AACnD,SAAO,IAAI,eAAe,QAAQ,EAAE;AACrC;","names":[]}
@@ -2,6 +2,7 @@ import type { ColumnBaseConfig } from "../../column.cjs";
2
2
  import { entityKind } from "../../entity.cjs";
3
3
  import { GelColumn, GelColumnBuilder } from "./common.cjs";
4
4
  export declare class GelUUIDBuilder extends GelColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'string uuid';
6
7
  data: string;
7
8
  driverParam: string;
@@ -2,6 +2,7 @@ import type { ColumnBaseConfig } from "../../column.js";
2
2
  import { entityKind } from "../../entity.js";
3
3
  import { GelColumn, GelColumnBuilder } from "./common.js";
4
4
  export declare class GelUUIDBuilder extends GelColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'string uuid';
6
7
  data: string;
7
8
  driverParam: string;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/columns/uuid.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { GelTable } from '~/gel-core/table.ts';\nimport { GelColumn, GelColumnBuilder } from './common.ts';\n\nexport class GelUUIDBuilder extends GelColumnBuilder<{\n\tdataType: 'string uuid';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'GelUUIDBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string uuid', 'GelUUID');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelUUID(table, this.config as any);\n\t}\n}\n\nexport class GelUUID<T extends ColumnBaseConfig<'string uuid'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelUUID';\n\n\tgetSQLType(): string {\n\t\treturn 'uuid';\n\t}\n}\n\nexport function uuid(name?: string): GelUUIDBuilder {\n\treturn new GelUUIDBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,WAAW,wBAAwB;AAErC,MAAM,uBAAuB,iBAIjC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,SAAS;AAAA,EACrC;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI,QAAQ,OAAO,KAAK,MAAa;AAAA,EAC7C;AACD;AAEO,MAAM,gBAA2D,UAAa;AAAA,EACpF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAA+B;AACnD,SAAO,IAAI,eAAe,QAAQ,EAAE;AACrC;","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/columns/uuid.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { GelTable } from '~/gel-core/table.ts';\nimport { GelColumn, GelColumnBuilder } from './common.ts';\n\nexport class GelUUIDBuilder extends GelColumnBuilder<{\n\tname: string;\n\tdataType: 'string uuid';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'GelUUIDBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string uuid', 'GelUUID');\n\t}\n\n\t/** @internal */\n\toverride build(table: GelTable) {\n\t\treturn new GelUUID(table, this.config as any);\n\t}\n}\n\nexport class GelUUID<T extends ColumnBaseConfig<'string uuid'>> extends GelColumn<T> {\n\tstatic override readonly [entityKind]: string = 'GelUUID';\n\n\tgetSQLType(): string {\n\t\treturn 'uuid';\n\t}\n}\n\nexport function uuid(name?: string): GelUUIDBuilder {\n\treturn new GelUUIDBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,WAAW,wBAAwB;AAErC,MAAM,uBAAuB,iBAKjC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,SAAS;AAAA,EACrC;AAAA;AAAA,EAGS,MAAM,OAAiB;AAC/B,WAAO,IAAI,QAAQ,OAAO,KAAK,MAAa;AAAA,EAC7C;AACD;AAEO,MAAM,gBAA2D,UAAa;AAAA,EACpF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAA+B;AACnD,SAAO,IAAI,eAAe,QAAQ,EAAE;AACrC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type { IndexColumn } from '~/gel-core/indexes.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport type { GelTable, TableConfig } from '~/gel-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { InferInsertModel } from '~/table.ts';\nimport { Table, TableColumns } from '~/table.ts';\nimport { tracer } from '~/tracing.ts';\nimport { haveSameKeys, type NeonAuthToken, orderSelectedFields } from '~/utils.ts';\nimport type { AnyGelColumn, GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { GelUpdateSetSource } from './update.ts';\n\nexport interface GelInsertConfig<TTable extends GelTable = GelTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | GelInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL;\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n\toverridingSystemValue_?: boolean;\n}\n\nexport type GelInsertValue<\n\tTTable extends GelTable<TableConfig>,\n\tOverrideT extends boolean = false,\n\tTModel extends Record<string, any> = InferInsertModel<TTable, { dbColumnNames: false; override: OverrideT }>,\n> =\n\t& {\n\t\t[Key in keyof TModel]:\n\t\t\t| TModel[Key]\n\t\t\t| SQL\n\t\t\t| Placeholder;\n\t}\n\t& {};\n\nexport type GelInsertSelectQueryBuilder<\n\tTTable extends GelTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnyGelColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class GelInsertBuilder<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tOverrideT extends boolean = false,\n> {\n\tstatic readonly [entityKind]: string = 'GelInsertBuilder';\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t\tprivate overridingSystemValue_?: boolean,\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\toverridingSystemValue(): Omit<GelInsertBuilder<TTable, TQueryResult, true>, 'overridingSystemValue'> {\n\t\tthis.overridingSystemValue_ = true;\n\t\treturn this as any;\n\t}\n\n\tvalues(value: GelInsertValue<TTable, OverrideT>): GelInsertBase<TTable, TQueryResult>;\n\tvalues(values: GelInsertValue<TTable, OverrideT>[]): GelInsertBase<TTable, TQueryResult>;\n\tvalues(\n\t\tvalues: GelInsertValue<TTable, OverrideT> | GelInsertValue<TTable, OverrideT>[],\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\treturn new GelInsertBase(\n\t\t\tthis.table,\n\t\t\tmappedValues,\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t\tfalse,\n\t\t\tthis.overridingSystemValue_,\n\t\t);\n\t}\n\n\tselect(selectQuery: (qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| GelInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable> | SQL),\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new GelInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type GelInsertWithout<T extends AnyGelInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tGelInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['queryResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type GelInsertReturning<\n\tT extends AnyGelInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tSelectResultFields<TSelectedFields>,\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport type GelInsertReturningAll<T extends AnyGelInsert, TDynamic extends boolean> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['table']['$inferSelect'],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport interface GelInsertOnConflictDoUpdateConfig<T extends AnyGelInsert> {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: GelUpdateSetSource<T['_']['table']>;\n}\n\nexport type GelInsertPrepare<T extends AnyGelInsert> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelInsertDynamic<T extends AnyGelInsert> = GelInsert<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['returning']\n>;\n\nexport type AnyGelInsert = GelInsertBase<any, any, any, any, any>;\n\nexport type GelInsert<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n> = GelInsertBase<TTable, TQueryResult, TReturning, true, never>;\n\nexport interface GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelInsert';\n\n\tprivate config: GelInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: GelInsertConfig['values'],\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t\toverridingSystemValue_?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select, overridingSystemValue_ };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): GelInsertWithout<GelInsertReturningAll<this, TDynamic>, TDynamic, 'returning'>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): GelInsertWithout<GelInsertReturning<this, TDynamic, TSelectedFields>, TDynamic, 'returning'>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[Table.Symbol.Columns],\n\t): GelInsertWithout<AnyGelInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoNothing(\n\t// \tconfig: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {},\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.target === undefined) {\n\t// \t\tthis.config.onConflict = sql`do nothing`;\n\t// \t} else {\n\t// \t\tlet targetColumn = '';\n\t// \t\ttargetColumn = Array.isArray(config.target)\n\t// \t\t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\n\t// \t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \t\tthis.config.onConflict = sql`(${sql.raw(targetColumn)})${whereSql} do nothing`;\n\t// \t}\n\t// \treturn this as any;\n\t// }\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * targetWhere: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoUpdate(\n\t// \tconfig: GelInsertOnConflictDoUpdateConfig<this>,\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.where && (config.targetWhere || config.setWhere)) {\n\t// \t\tthrow new Error(\n\t// \t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t// \t\t);\n\t// \t}\n\t// \tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t// \tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t// \tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t// \tlet targetColumn = '';\n\t// \ttargetColumn = Array.isArray(config.target)\n\t// \t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\t// \tthis.config.onConflict = sql`(${\n\t// \t\tsql.raw(targetColumn)\n\t// \t})${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`;\n\t// \treturn this as any;\n\t// }\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelInsertPrepare<this> {\n\t\treturn tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\treturn this.session.prepareQuery<\n\t\t\t\tPreparedQueryConfig & {\n\t\t\t\t\texecute: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t\t\t\t}\n\t\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t});\n\t\t});\n\t}\n\n\tprepare(name: string): GelInsertPrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\treturn this._prepare().execute(placeholderValues);\n\t\t});\n\t};\n\n\t$dynamic(): GelInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["import_utils"]}
1
+ {"version":3,"sources":["../../../src/gel-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type { IndexColumn } from '~/gel-core/indexes.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport type { GelTable, TableConfig } from '~/gel-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { InferInsertModel } from '~/table.ts';\nimport { Table, TableColumns } from '~/table.ts';\nimport { tracer } from '~/tracing.ts';\nimport { haveSameKeys, type NeonAuthToken, orderSelectedFields } from '~/utils.ts';\nimport type { AnyGelColumn, GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { GelUpdateSetSource } from './update.ts';\n\nexport interface GelInsertConfig<TTable extends GelTable = GelTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | GelInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL;\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n\toverridingSystemValue_?: boolean;\n}\n\nexport type GelInsertValue<TTable extends GelTable<TableConfig>, OverrideT extends boolean = false> =\n\t& {\n\t\t[Key in keyof InferInsertModel<TTable, { dbColumnNames: false; override: OverrideT }>]:\n\t\t\t| InferInsertModel<TTable, { dbColumnNames: false; override: OverrideT }>[Key]\n\t\t\t| SQL\n\t\t\t| Placeholder;\n\t}\n\t& {};\n\nexport type GelInsertSelectQueryBuilder<\n\tTTable extends GelTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnyGelColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class GelInsertBuilder<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tOverrideT extends boolean = false,\n> {\n\tstatic readonly [entityKind]: string = 'GelInsertBuilder';\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t\tprivate overridingSystemValue_?: boolean,\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\toverridingSystemValue(): Omit<GelInsertBuilder<TTable, TQueryResult, true>, 'overridingSystemValue'> {\n\t\tthis.overridingSystemValue_ = true;\n\t\treturn this as any;\n\t}\n\n\tvalues(value: GelInsertValue<TTable, OverrideT>): GelInsertBase<TTable, TQueryResult>;\n\tvalues(values: GelInsertValue<TTable, OverrideT>[]): GelInsertBase<TTable, TQueryResult>;\n\tvalues(\n\t\tvalues: GelInsertValue<TTable, OverrideT> | GelInsertValue<TTable, OverrideT>[],\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\treturn new GelInsertBase(\n\t\t\tthis.table,\n\t\t\tmappedValues,\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t\tfalse,\n\t\t\tthis.overridingSystemValue_,\n\t\t);\n\t}\n\n\tselect(selectQuery: (qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| GelInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable> | SQL),\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new GelInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type GelInsertWithout<T extends AnyGelInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tGelInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['queryResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type GelInsertReturning<\n\tT extends AnyGelInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tSelectResultFields<TSelectedFields>,\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport type GelInsertReturningAll<T extends AnyGelInsert, TDynamic extends boolean> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['table']['$inferSelect'],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport interface GelInsertOnConflictDoUpdateConfig<T extends AnyGelInsert> {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: GelUpdateSetSource<T['_']['table']>;\n}\n\nexport type GelInsertPrepare<T extends AnyGelInsert> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelInsertDynamic<T extends AnyGelInsert> = GelInsert<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['returning']\n>;\n\nexport type AnyGelInsert = GelInsertBase<any, any, any, any, any>;\n\nexport type GelInsert<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n> = GelInsertBase<TTable, TQueryResult, TReturning, true, never>;\n\nexport interface GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelInsert';\n\n\tprivate config: GelInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: GelInsertConfig['values'],\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t\toverridingSystemValue_?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select, overridingSystemValue_ };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): GelInsertWithout<GelInsertReturningAll<this, TDynamic>, TDynamic, 'returning'>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): GelInsertWithout<GelInsertReturning<this, TDynamic, TSelectedFields>, TDynamic, 'returning'>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[Table.Symbol.Columns],\n\t): GelInsertWithout<AnyGelInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoNothing(\n\t// \tconfig: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {},\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.target === undefined) {\n\t// \t\tthis.config.onConflict = sql`do nothing`;\n\t// \t} else {\n\t// \t\tlet targetColumn = '';\n\t// \t\ttargetColumn = Array.isArray(config.target)\n\t// \t\t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\n\t// \t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \t\tthis.config.onConflict = sql`(${sql.raw(targetColumn)})${whereSql} do nothing`;\n\t// \t}\n\t// \treturn this as any;\n\t// }\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * targetWhere: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoUpdate(\n\t// \tconfig: GelInsertOnConflictDoUpdateConfig<this>,\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.where && (config.targetWhere || config.setWhere)) {\n\t// \t\tthrow new Error(\n\t// \t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t// \t\t);\n\t// \t}\n\t// \tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t// \tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t// \tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t// \tlet targetColumn = '';\n\t// \ttargetColumn = Array.isArray(config.target)\n\t// \t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\t// \tthis.config.onConflict = sql`(${\n\t// \t\tsql.raw(targetColumn)\n\t// \t})${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`;\n\t// \treturn this as any;\n\t// }\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelInsertPrepare<this> {\n\t\treturn tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\treturn this.session.prepareQuery<\n\t\t\t\tPreparedQueryConfig & {\n\t\t\t\t\texecute: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t\t\t\t}\n\t\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t});\n\t\t});\n\t}\n\n\tprepare(name: string): GelInsertPrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\treturn this._prepare().execute(placeholderValues);\n\t\t});\n\t};\n\n\t$dynamic(): GelInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["import_utils"]}
@@ -24,13 +24,16 @@ export interface GelInsertConfig<TTable extends GelTable = GelTable> {
24
24
  select?: boolean;
25
25
  overridingSystemValue_?: boolean;
26
26
  }
27
- export type GelInsertValue<TTable extends GelTable<TableConfig>, OverrideT extends boolean = false, TModel extends Record<string, any> = InferInsertModel<TTable, {
28
- dbColumnNames: false;
29
- override: OverrideT;
30
- }>> = {
31
- [Key in keyof TModel]: TModel[Key] | SQL | Placeholder;
27
+ export type GelInsertValue<TTable extends GelTable<TableConfig>, OverrideT extends boolean = false> = {
28
+ [Key in keyof InferInsertModel<TTable, {
29
+ dbColumnNames: false;
30
+ override: OverrideT;
31
+ }>]: InferInsertModel<TTable, {
32
+ dbColumnNames: false;
33
+ override: OverrideT;
34
+ }>[Key] | SQL | Placeholder;
32
35
  } & {};
33
- export type GelInsertSelectQueryBuilder<TTable extends GelTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = TypedQueryBuilder<{
36
+ export type GelInsertSelectQueryBuilder<TTable extends GelTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = TypedQueryBuilder<{
34
37
  [K in keyof TModel]: AnyGelColumn | SQL | SQL.Aliased | TModel[K];
35
38
  }>;
36
39
  export declare class GelInsertBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT, OverrideT extends boolean = false> {
@@ -24,13 +24,16 @@ export interface GelInsertConfig<TTable extends GelTable = GelTable> {
24
24
  select?: boolean;
25
25
  overridingSystemValue_?: boolean;
26
26
  }
27
- export type GelInsertValue<TTable extends GelTable<TableConfig>, OverrideT extends boolean = false, TModel extends Record<string, any> = InferInsertModel<TTable, {
28
- dbColumnNames: false;
29
- override: OverrideT;
30
- }>> = {
31
- [Key in keyof TModel]: TModel[Key] | SQL | Placeholder;
27
+ export type GelInsertValue<TTable extends GelTable<TableConfig>, OverrideT extends boolean = false> = {
28
+ [Key in keyof InferInsertModel<TTable, {
29
+ dbColumnNames: false;
30
+ override: OverrideT;
31
+ }>]: InferInsertModel<TTable, {
32
+ dbColumnNames: false;
33
+ override: OverrideT;
34
+ }>[Key] | SQL | Placeholder;
32
35
  } & {};
33
- export type GelInsertSelectQueryBuilder<TTable extends GelTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = TypedQueryBuilder<{
36
+ export type GelInsertSelectQueryBuilder<TTable extends GelTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = TypedQueryBuilder<{
34
37
  [K in keyof TModel]: AnyGelColumn | SQL | SQL.Aliased | TModel[K];
35
38
  }>;
36
39
  export declare class GelInsertBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT, OverrideT extends boolean = false> {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type { IndexColumn } from '~/gel-core/indexes.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport type { GelTable, TableConfig } from '~/gel-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { InferInsertModel } from '~/table.ts';\nimport { Table, TableColumns } from '~/table.ts';\nimport { tracer } from '~/tracing.ts';\nimport { haveSameKeys, type NeonAuthToken, orderSelectedFields } from '~/utils.ts';\nimport type { AnyGelColumn, GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { GelUpdateSetSource } from './update.ts';\n\nexport interface GelInsertConfig<TTable extends GelTable = GelTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | GelInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL;\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n\toverridingSystemValue_?: boolean;\n}\n\nexport type GelInsertValue<\n\tTTable extends GelTable<TableConfig>,\n\tOverrideT extends boolean = false,\n\tTModel extends Record<string, any> = InferInsertModel<TTable, { dbColumnNames: false; override: OverrideT }>,\n> =\n\t& {\n\t\t[Key in keyof TModel]:\n\t\t\t| TModel[Key]\n\t\t\t| SQL\n\t\t\t| Placeholder;\n\t}\n\t& {};\n\nexport type GelInsertSelectQueryBuilder<\n\tTTable extends GelTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnyGelColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class GelInsertBuilder<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tOverrideT extends boolean = false,\n> {\n\tstatic readonly [entityKind]: string = 'GelInsertBuilder';\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t\tprivate overridingSystemValue_?: boolean,\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\toverridingSystemValue(): Omit<GelInsertBuilder<TTable, TQueryResult, true>, 'overridingSystemValue'> {\n\t\tthis.overridingSystemValue_ = true;\n\t\treturn this as any;\n\t}\n\n\tvalues(value: GelInsertValue<TTable, OverrideT>): GelInsertBase<TTable, TQueryResult>;\n\tvalues(values: GelInsertValue<TTable, OverrideT>[]): GelInsertBase<TTable, TQueryResult>;\n\tvalues(\n\t\tvalues: GelInsertValue<TTable, OverrideT> | GelInsertValue<TTable, OverrideT>[],\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\treturn new GelInsertBase(\n\t\t\tthis.table,\n\t\t\tmappedValues,\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t\tfalse,\n\t\t\tthis.overridingSystemValue_,\n\t\t);\n\t}\n\n\tselect(selectQuery: (qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| GelInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable> | SQL),\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new GelInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type GelInsertWithout<T extends AnyGelInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tGelInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['queryResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type GelInsertReturning<\n\tT extends AnyGelInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tSelectResultFields<TSelectedFields>,\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport type GelInsertReturningAll<T extends AnyGelInsert, TDynamic extends boolean> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['table']['$inferSelect'],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport interface GelInsertOnConflictDoUpdateConfig<T extends AnyGelInsert> {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: GelUpdateSetSource<T['_']['table']>;\n}\n\nexport type GelInsertPrepare<T extends AnyGelInsert> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelInsertDynamic<T extends AnyGelInsert> = GelInsert<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['returning']\n>;\n\nexport type AnyGelInsert = GelInsertBase<any, any, any, any, any>;\n\nexport type GelInsert<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n> = GelInsertBase<TTable, TQueryResult, TReturning, true, never>;\n\nexport interface GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelInsert';\n\n\tprivate config: GelInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: GelInsertConfig['values'],\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t\toverridingSystemValue_?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select, overridingSystemValue_ };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): GelInsertWithout<GelInsertReturningAll<this, TDynamic>, TDynamic, 'returning'>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): GelInsertWithout<GelInsertReturning<this, TDynamic, TSelectedFields>, TDynamic, 'returning'>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[Table.Symbol.Columns],\n\t): GelInsertWithout<AnyGelInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoNothing(\n\t// \tconfig: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {},\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.target === undefined) {\n\t// \t\tthis.config.onConflict = sql`do nothing`;\n\t// \t} else {\n\t// \t\tlet targetColumn = '';\n\t// \t\ttargetColumn = Array.isArray(config.target)\n\t// \t\t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\n\t// \t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \t\tthis.config.onConflict = sql`(${sql.raw(targetColumn)})${whereSql} do nothing`;\n\t// \t}\n\t// \treturn this as any;\n\t// }\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * targetWhere: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoUpdate(\n\t// \tconfig: GelInsertOnConflictDoUpdateConfig<this>,\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.where && (config.targetWhere || config.setWhere)) {\n\t// \t\tthrow new Error(\n\t// \t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t// \t\t);\n\t// \t}\n\t// \tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t// \tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t// \tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t// \tlet targetColumn = '';\n\t// \ttargetColumn = Array.isArray(config.target)\n\t// \t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\t// \tthis.config.onConflict = sql`(${\n\t// \t\tsql.raw(targetColumn)\n\t// \t})${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`;\n\t// \treturn this as any;\n\t// }\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelInsertPrepare<this> {\n\t\treturn tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\treturn this.session.prepareQuery<\n\t\t\t\tPreparedQueryConfig & {\n\t\t\t\t\texecute: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t\t\t\t}\n\t\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t});\n\t\t});\n\t}\n\n\tprepare(name: string): GelInsertPrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\treturn this._prepare().execute(placeholderValues);\n\t\t});\n\t};\n\n\t$dynamic(): GelInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/gel-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type { IndexColumn } from '~/gel-core/indexes.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport type { GelTable, TableConfig } from '~/gel-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { InferInsertModel } from '~/table.ts';\nimport { Table, TableColumns } from '~/table.ts';\nimport { tracer } from '~/tracing.ts';\nimport { haveSameKeys, type NeonAuthToken, orderSelectedFields } from '~/utils.ts';\nimport type { AnyGelColumn, GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { GelUpdateSetSource } from './update.ts';\n\nexport interface GelInsertConfig<TTable extends GelTable = GelTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | GelInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL;\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n\toverridingSystemValue_?: boolean;\n}\n\nexport type GelInsertValue<TTable extends GelTable<TableConfig>, OverrideT extends boolean = false> =\n\t& {\n\t\t[Key in keyof InferInsertModel<TTable, { dbColumnNames: false; override: OverrideT }>]:\n\t\t\t| InferInsertModel<TTable, { dbColumnNames: false; override: OverrideT }>[Key]\n\t\t\t| SQL\n\t\t\t| Placeholder;\n\t}\n\t& {};\n\nexport type GelInsertSelectQueryBuilder<\n\tTTable extends GelTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnyGelColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class GelInsertBuilder<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tOverrideT extends boolean = false,\n> {\n\tstatic readonly [entityKind]: string = 'GelInsertBuilder';\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t\tprivate overridingSystemValue_?: boolean,\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\toverridingSystemValue(): Omit<GelInsertBuilder<TTable, TQueryResult, true>, 'overridingSystemValue'> {\n\t\tthis.overridingSystemValue_ = true;\n\t\treturn this as any;\n\t}\n\n\tvalues(value: GelInsertValue<TTable, OverrideT>): GelInsertBase<TTable, TQueryResult>;\n\tvalues(values: GelInsertValue<TTable, OverrideT>[]): GelInsertBase<TTable, TQueryResult>;\n\tvalues(\n\t\tvalues: GelInsertValue<TTable, OverrideT> | GelInsertValue<TTable, OverrideT>[],\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\treturn new GelInsertBase(\n\t\t\tthis.table,\n\t\t\tmappedValues,\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t\tfalse,\n\t\t\tthis.overridingSystemValue_,\n\t\t);\n\t}\n\n\tselect(selectQuery: (qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: SQL): GelInsertBase<TTable, TQueryResult>;\n\tselect(selectQuery: GelInsertSelectQueryBuilder<TTable>): GelInsertBase<TTable, TQueryResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| GelInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => GelInsertSelectQueryBuilder<TTable> | SQL),\n\t): GelInsertBase<TTable, TQueryResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new GelInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type GelInsertWithout<T extends AnyGelInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tGelInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['queryResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type GelInsertReturning<\n\tT extends AnyGelInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tSelectResultFields<TSelectedFields>,\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport type GelInsertReturningAll<T extends AnyGelInsert, TDynamic extends boolean> = GelInsertBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['table']['$inferSelect'],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\nexport interface GelInsertOnConflictDoUpdateConfig<T extends AnyGelInsert> {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: GelUpdateSetSource<T['_']['table']>;\n}\n\nexport type GelInsertPrepare<T extends AnyGelInsert> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelInsertDynamic<T extends AnyGelInsert> = GelInsert<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['returning']\n>;\n\nexport type AnyGelInsert = GelInsertBase<any, any, any, any, any>;\n\nexport type GelInsert<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n> = GelInsertBase<TTable, TQueryResult, TReturning, true, never>;\n\nexport interface GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelInsertBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelInsert';\n\n\tprivate config: GelInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: GelInsertConfig['values'],\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t\toverridingSystemValue_?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select, overridingSystemValue_ };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): GelInsertWithout<GelInsertReturningAll<this, TDynamic>, TDynamic, 'returning'>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): GelInsertWithout<GelInsertReturning<this, TDynamic, TSelectedFields>, TDynamic, 'returning'>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[Table.Symbol.Columns],\n\t): GelInsertWithout<AnyGelInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoNothing(\n\t// \tconfig: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {},\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.target === undefined) {\n\t// \t\tthis.config.onConflict = sql`do nothing`;\n\t// \t} else {\n\t// \t\tlet targetColumn = '';\n\t// \t\ttargetColumn = Array.isArray(config.target)\n\t// \t\t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\n\t// \t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \t\tthis.config.onConflict = sql`(${sql.raw(targetColumn)})${whereSql} do nothing`;\n\t// \t}\n\t// \treturn this as any;\n\t// }\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * targetWhere: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\t// TODO not supported\n\t// onConflictDoUpdate(\n\t// \tconfig: GelInsertOnConflictDoUpdateConfig<this>,\n\t// ): GelInsertWithout<this, TDynamic, 'onConflictDoNothing' | 'onConflictDoUpdate'> {\n\t// \tif (config.where && (config.targetWhere || config.setWhere)) {\n\t// \t\tthrow new Error(\n\t// \t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t// \t\t);\n\t// \t}\n\t// \tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t// \tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t// \tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t// \tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t// \tlet targetColumn = '';\n\t// \ttargetColumn = Array.isArray(config.target)\n\t// \t\t? config.target.map((it) => this.dialect.escapeName(this.dialect.casing.getColumnCasing(it))).join(',')\n\t// \t\t: this.dialect.escapeName(this.dialect.casing.getColumnCasing(config.target));\n\t// \tthis.config.onConflict = sql`(${\n\t// \t\tsql.raw(targetColumn)\n\t// \t})${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`;\n\t// \treturn this as any;\n\t// }\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelInsertPrepare<this> {\n\t\treturn tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\treturn this.session.prepareQuery<\n\t\t\t\tPreparedQueryConfig & {\n\t\t\t\t\texecute: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t\t\t\t}\n\t\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t});\n\t\t});\n\t}\n\n\tprepare(name: string): GelInsertPrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\treturn this._prepare().execute(placeholderValues);\n\t\t});\n\t};\n\n\t$dynamic(): GelInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/query-builders/update.ts"],"sourcesContent":["import type { GetColumnData } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport { GelTable } from '~/gel-core/table.ts';\nimport type {\n\tAppendToNullabilityMap,\n\tAppendToResult,\n\tGetSelectTableName,\n\tGetSelectTableSelection,\n\tJoinNullability,\n\tJoinType,\n\tSelectMode,\n\tSelectResult,\n} from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport { SelectionProxyHandler } from '~/selection-proxy.ts';\nimport { type ColumnsSelection, type Query, SQL, type SQLWrapper } from '~/sql/sql.ts';\nimport { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table } from '~/table.ts';\nimport {\n\ttype Assume,\n\tgetTableLikeName,\n\tmapUpdateSet,\n\ttype NeonAuthToken,\n\torderSelectedFields,\n\ttype UpdateSet,\n} from '~/utils.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport type { GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { GelViewBase } from '../view-base.ts';\nimport type { GelSelectJoinConfig, SelectedFields, SelectedFieldsOrdered } from './select.types.ts';\n\nexport interface GelUpdateConfig {\n\twhere?: SQL | undefined;\n\tset: UpdateSet;\n\ttable: GelTable;\n\tfrom?: GelTable | Subquery | GelViewBase | SQL;\n\tjoins: GelSelectJoinConfig[];\n\treturning?: SelectedFieldsOrdered;\n\twithList?: Subquery[];\n}\n\nexport type GelUpdateSetSource<\n\tTTable extends GelTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> =\n\t& {\n\t\t[Key in keyof TModel & string]?:\n\t\t\t| GetColumnData<TTable['_']['columns'][Key]>\n\t\t\t| SQL\n\t\t\t| GelColumn;\n\t}\n\t& {};\n\nexport class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {\n\tstatic readonly [entityKind]: string = 'GelUpdateBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly table: TTable;\n\t};\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\tsetToken(token: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tset(\n\t\tvalues: GelUpdateSetSource<TTable>,\n\t): GelUpdateWithout<GelUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'> {\n\t\treturn new GelUpdateBase<TTable, TQueryResult>(\n\t\t\tthis.table,\n\t\t\tmapUpdateSet(this.table, values),\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t);\n\t}\n}\n\nexport type GelUpdateWithout<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tK extends keyof T & string,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tT['_']['returning'],\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods'] | K\n\t>,\n\tT['_']['excludedMethods'] | K\n>;\n\nexport type GelUpdateWithJoins<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tTFrom,\n\t\tT['_']['returning'],\n\t\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TFrom>, 'inner'>,\n\t\t[...T['_']['joins'], {\n\t\t\tname: GetSelectTableName<TFrom>;\n\t\t\tjoinType: 'inner';\n\t\t\ttable: TFrom;\n\t\t}],\n\t\tTDynamic,\n\t\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n\t>,\n\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n>;\n\nexport type GelUpdateJoinFn<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n> = <\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n>(\n\ttable: TJoinedTable,\n\ton:\n\t\t| (\n\t\t\t(\n\t\t\t\tupdateTable: T['_']['table']['_']['columns'],\n\t\t\t\tfrom: T['_']['from'] extends GelTable ? T['_']['from']['_']['columns']\n\t\t\t\t\t: T['_']['from'] extends Subquery | GelViewBase ? T['_']['from']['_']['selectedFields']\n\t\t\t\t\t: never,\n\t\t\t) => SQL | undefined\n\t\t)\n\t\t| SQL\n\t\t| undefined,\n) => GelUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;\n\nexport type GelUpdateJoin<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : GelUpdateBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TJoinedTable>, TJoinType>,\n\t[...T['_']['joins'], {\n\t\tname: GetSelectTableName<TJoinedTable>;\n\t\tjoinType: TJoinType;\n\t\ttable: TJoinedTable;\n\t}],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\ntype Join = {\n\tname: string | undefined;\n\tjoinType: JoinType;\n\ttable: GelTable | Subquery | GelViewBase | SQL;\n};\n\ntype AccumulateToResult<\n\tT extends AnyGelUpdate,\n\tTSelectMode extends SelectMode,\n\tTJoins extends Join[],\n\tTSelectedFields extends ColumnsSelection,\n> = TJoins extends [infer TJoin extends Join, ...infer TRest extends Join[]] ? AccumulateToResult<\n\t\tT,\n\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple',\n\t\tTRest,\n\t\tAppendToResult<\n\t\t\tT['_']['table']['_']['name'],\n\t\t\tTSelectedFields,\n\t\t\tTJoin['name'],\n\t\t\tTJoin['table'] extends Table ? TJoin['table']['_']['columns']\n\t\t\t\t: TJoin['table'] extends Subquery ? Assume<TJoin['table']['_']['selectedFields'], SelectedFields>\n\t\t\t\t: never,\n\t\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple'\n\t\t>\n\t>\n\t: TSelectedFields;\n\nexport type GelUpdateReturningAll<T extends AnyGelUpdate, TDynamic extends boolean> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'single',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tGetSelectTableSelection<T['_']['table']>\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdateReturning<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFields,\n> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'partial',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tTSelectedFields\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdatePrepare<T extends AnyGelUpdate> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelUpdateDynamic<T extends AnyGelUpdate> = GelUpdate<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tT['_']['nullabilityMap']\n>;\n\nexport type GelUpdate<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = GelUpdateBase<TTable, TQueryResult, TFrom, TReturning, TNullabilityMap, TJoins, true, never>;\n\nexport type AnyGelUpdate = GelUpdateBase<any, any, any, any, any, any, any, any>;\n\nexport interface GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly joins: TJoins;\n\t\treadonly nullabilityMap: TNullabilityMap;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly from: TFrom;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelUpdate';\n\n\tprivate config: GelUpdateConfig;\n\tprivate tableName: string | undefined;\n\tprivate joinsNotNullableMap: Record<string, boolean>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tset: UpdateSet,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t) {\n\t\tsuper();\n\t\tthis.config = { set, table, withList, joins: [] };\n\t\tthis.tableName = getTableLikeName(table);\n\t\tthis.joinsNotNullableMap = typeof this.tableName === 'string' ? { [this.tableName]: true } : {};\n\t}\n\n\tfrom<TFrom extends GelTable | Subquery | GelViewBase | SQL>(\n\t\tsource: TFrom,\n\t): GelUpdateWithJoins<this, TDynamic, TFrom> {\n\t\tconst tableName = getTableLikeName(source);\n\t\tif (typeof tableName === 'string') {\n\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t}\n\t\tthis.config.from = source;\n\t\treturn this as any;\n\t}\n\n\tprivate getTableLikeFields(table: GelTable | Subquery | GelViewBase): Record<string, unknown> {\n\t\tif (is(table, GelTable)) {\n\t\t\treturn table[Table.Symbol.Columns];\n\t\t} else if (is(table, Subquery)) {\n\t\t\treturn table._.selectedFields;\n\t\t}\n\t\treturn table[ViewBaseConfig].selectedFields;\n\t}\n\n\tprivate createJoin<TJoinType extends JoinType>(\n\t\tjoinType: TJoinType,\n\t): GelUpdateJoinFn<this, TDynamic, TJoinType> {\n\t\treturn ((\n\t\t\ttable: GelTable | Subquery | GelViewBase | SQL,\n\t\t\ton: ((updateTable: TTable, from: TFrom) => SQL | undefined) | SQL | undefined,\n\t\t) => {\n\t\t\tconst tableName = getTableLikeName(table);\n\n\t\t\tif (typeof tableName === 'string' && this.config.joins.some((join) => join.alias === tableName)) {\n\t\t\t\tthrow new Error(`Alias \"${tableName}\" is already used in this query`);\n\t\t\t}\n\n\t\t\tif (typeof on === 'function') {\n\t\t\t\tconst from = this.config.from && !is(this.config.from, SQL)\n\t\t\t\t\t? this.getTableLikeFields(this.config.from)\n\t\t\t\t\t: undefined;\n\t\t\t\ton = on(\n\t\t\t\t\tnew Proxy(\n\t\t\t\t\t\tthis.config.table[Table.Symbol.Columns],\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t\tfrom && new Proxy(\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.config.joins.push({ on, table, joinType, alias: tableName });\n\n\t\t\tif (typeof tableName === 'string') {\n\t\t\t\tswitch (joinType) {\n\t\t\t\t\tcase 'left': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'right': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'inner': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'full': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this as any;\n\t\t}) as any;\n\t}\n\n\tleftJoin = this.createJoin('left');\n\n\trightJoin = this.createJoin('right');\n\n\tinnerJoin = this.createJoin('inner');\n\n\tfullJoin = this.createJoin('full');\n\n\t/**\n\t * Adds a 'where' clause to the query.\n\t *\n\t * Calling this method will update only those rows that fulfill a specified condition.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update}\n\t *\n\t * @param where the 'where' clause.\n\t *\n\t * @example\n\t * You can use conditional operators and `sql function` to filter the rows to be updated.\n\t *\n\t * ```ts\n\t * // Update all cars with green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'));\n\t * // or\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(sql`${cars.color} = 'green'`)\n\t * ```\n\t *\n\t * You can logically combine conditional operators with `and()` and `or()` operators:\n\t *\n\t * ```ts\n\t * // Update all BMW cars with a green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));\n\t *\n\t * // Update all cars with the green or blue color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));\n\t * ```\n\t */\n\twhere(where: SQL | undefined): GelUpdateWithout<this, TDynamic, 'where'> {\n\t\tthis.config.where = where;\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the updated rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update#update-with-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Update all cars with the green color and return all fields\n\t * const updatedCars: Car[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning();\n\t *\n\t * // Update all cars with the green color and return only their id and brand fields\n\t * const updatedCarsIdsAndBrands: { id: number, brand: string }[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning({ id: cars.id, brand: cars.brand });\n\t * ```\n\t */\n\treturning(): GelUpdateReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFields>(\n\t\tfields: TSelectedFields,\n\t): GelUpdateReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields?: SelectedFields,\n\t): GelUpdateWithout<AnyGelUpdate, TDynamic, 'returning'> {\n\t\tif (!fields) {\n\t\t\tfields = Object.assign({}, this.config.table[Table.Symbol.Columns]);\n\n\t\t\tif (this.config.from) {\n\t\t\t\tconst tableName = getTableLikeName(this.config.from);\n\n\t\t\t\tif (typeof tableName === 'string' && this.config.from && !is(this.config.from, SQL)) {\n\t\t\t\t\tconst fromFields = this.getTableLikeFields(this.config.from);\n\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t}\n\n\t\t\t\tfor (const join of this.config.joins) {\n\t\t\t\t\tconst tableName = getTableLikeName(join.table);\n\n\t\t\t\t\tif (typeof tableName === 'string' && !is(join.table, SQL)) {\n\t\t\t\t\t\tconst fromFields = this.getTableLikeFields(join.table);\n\t\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildUpdateQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'update',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t});\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): GelUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n\n\t$dynamic(): GelUpdateDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["import_table","import_utils","tableName"]}
1
+ {"version":3,"sources":["../../../src/gel-core/query-builders/update.ts"],"sourcesContent":["import type { GetColumnData } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport { GelTable } from '~/gel-core/table.ts';\nimport type {\n\tAppendToNullabilityMap,\n\tAppendToResult,\n\tGetSelectTableName,\n\tGetSelectTableSelection,\n\tJoinNullability,\n\tJoinType,\n\tSelectMode,\n\tSelectResult,\n} from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport { SelectionProxyHandler } from '~/selection-proxy.ts';\nimport { type ColumnsSelection, type Query, SQL, type SQLWrapper } from '~/sql/sql.ts';\nimport { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table } from '~/table.ts';\nimport {\n\ttype Assume,\n\tgetTableLikeName,\n\tmapUpdateSet,\n\ttype NeonAuthToken,\n\torderSelectedFields,\n\ttype UpdateSet,\n} from '~/utils.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport type { GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { GelViewBase } from '../view-base.ts';\nimport type { GelSelectJoinConfig, SelectedFields, SelectedFieldsOrdered } from './select.types.ts';\n\nexport interface GelUpdateConfig {\n\twhere?: SQL | undefined;\n\tset: UpdateSet;\n\ttable: GelTable;\n\tfrom?: GelTable | Subquery | GelViewBase | SQL;\n\tjoins: GelSelectJoinConfig[];\n\treturning?: SelectedFieldsOrdered;\n\twithList?: Subquery[];\n}\n\nexport type GelUpdateSetSource<\n\tTTable extends GelTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> =\n\t& {\n\t\t[Key in keyof TModel & string]?:\n\t\t\t| GetColumnData<TTable['_']['columns'][Key]>\n\t\t\t| SQL\n\t\t\t| GelColumn;\n\t}\n\t& {};\n\nexport class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {\n\tstatic readonly [entityKind]: string = 'GelUpdateBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly table: TTable;\n\t};\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\tsetToken(token: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tset(\n\t\tvalues: GelUpdateSetSource<TTable>,\n\t): GelUpdateWithout<GelUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'> {\n\t\treturn new GelUpdateBase<TTable, TQueryResult>(\n\t\t\tthis.table,\n\t\t\tmapUpdateSet(this.table, values),\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t);\n\t}\n}\n\nexport type GelUpdateWithout<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tK extends keyof T & string,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tT['_']['returning'],\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods'] | K\n\t>,\n\tT['_']['excludedMethods'] | K\n>;\n\nexport type GelUpdateWithJoins<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tTFrom,\n\t\tT['_']['returning'],\n\t\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TFrom>, 'inner'>,\n\t\t[...T['_']['joins'], {\n\t\t\tname: GetSelectTableName<TFrom>;\n\t\t\tjoinType: 'inner';\n\t\t\ttable: TFrom;\n\t\t}],\n\t\tTDynamic,\n\t\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n\t>,\n\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n>;\n\nexport type GelUpdateJoinFn<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n> = <\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n>(\n\ttable: TJoinedTable,\n\ton:\n\t\t| (\n\t\t\t(\n\t\t\t\tupdateTable: T['_']['table']['_']['columns'],\n\t\t\t\tfrom: T['_']['from'] extends GelTable ? T['_']['from']['_']['columns']\n\t\t\t\t\t: T['_']['from'] extends Subquery | GelViewBase ? T['_']['from']['_']['selectedFields']\n\t\t\t\t\t: never,\n\t\t\t) => SQL | undefined\n\t\t)\n\t\t| SQL\n\t\t| undefined,\n) => GelUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;\n\nexport type GelUpdateJoin<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : GelUpdateBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TJoinedTable>, TJoinType>,\n\t[...T['_']['joins'], {\n\t\tname: GetSelectTableName<TJoinedTable>;\n\t\tjoinType: TJoinType;\n\t\ttable: TJoinedTable;\n\t}],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\ntype Join = {\n\tname: string | undefined;\n\tjoinType: JoinType;\n\ttable: GelTable | Subquery | GelViewBase | SQL;\n};\n\ntype AccumulateToResult<\n\tT extends AnyGelUpdate,\n\tTSelectMode extends SelectMode,\n\tTJoins extends Join[],\n\tTSelectedFields extends ColumnsSelection,\n> = TJoins extends [infer TJoin extends Join, ...infer TRest extends Join[]] ? AccumulateToResult<\n\t\tT,\n\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple',\n\t\tTRest,\n\t\tAppendToResult<\n\t\t\tT['_']['table']['_']['name'],\n\t\t\tTSelectedFields,\n\t\t\tTJoin['name'],\n\t\t\tTJoin['table'] extends Table ? TJoin['table']['_']['columns']\n\t\t\t\t: TJoin['table'] extends Subquery ? Assume<TJoin['table']['_']['selectedFields'], SelectedFields>\n\t\t\t\t: never,\n\t\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple'\n\t\t>\n\t>\n\t: TSelectedFields;\n\nexport type GelUpdateReturningAll<T extends AnyGelUpdate, TDynamic extends boolean> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'single',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tGetSelectTableSelection<T['_']['table']>\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdateReturning<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFields,\n> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'partial',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tTSelectedFields\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdatePrepare<T extends AnyGelUpdate> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelUpdateDynamic<T extends AnyGelUpdate> = GelUpdate<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tT['_']['nullabilityMap']\n>;\n\nexport type GelUpdate<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = GelUpdateBase<TTable, TQueryResult, TFrom, TReturning, TNullabilityMap, TJoins, true, never>;\n\nexport type AnyGelUpdate = GelUpdateBase<any, any, any, any, any, any, any, any>;\n\nexport interface GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly joins: TJoins;\n\t\treadonly nullabilityMap: TNullabilityMap;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly from: TFrom;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelUpdate';\n\n\tprivate config: GelUpdateConfig;\n\tprivate tableName: string | undefined;\n\tprivate joinsNotNullableMap: Record<string, boolean>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tset: UpdateSet,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t) {\n\t\tsuper();\n\t\tthis.config = { set, table, withList, joins: [] };\n\t\tthis.tableName = getTableLikeName(table);\n\t\tthis.joinsNotNullableMap = typeof this.tableName === 'string' ? { [this.tableName]: true } : {};\n\t}\n\n\tfrom<TFrom extends GelTable | Subquery | GelViewBase | SQL>(\n\t\tsource: TFrom,\n\t): GelUpdateWithJoins<this, TDynamic, TFrom> {\n\t\tconst tableName = getTableLikeName(source);\n\t\tif (typeof tableName === 'string') {\n\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t}\n\t\tthis.config.from = source;\n\t\treturn this as any;\n\t}\n\n\tprivate getTableLikeFields(table: GelTable | Subquery | GelViewBase): Record<string, unknown> {\n\t\tif (is(table, GelTable)) {\n\t\t\treturn table[Table.Symbol.Columns];\n\t\t} else if (is(table, Subquery)) {\n\t\t\treturn table._.selectedFields;\n\t\t}\n\t\treturn table[ViewBaseConfig].selectedFields;\n\t}\n\n\tprivate createJoin<TJoinType extends JoinType>(\n\t\tjoinType: TJoinType,\n\t): GelUpdateJoinFn<this, TDynamic, TJoinType> {\n\t\treturn ((\n\t\t\ttable: GelTable | Subquery | GelViewBase | SQL,\n\t\t\ton: ((updateTable: TTable, from: TFrom) => SQL | undefined) | SQL | undefined,\n\t\t) => {\n\t\t\tconst tableName = getTableLikeName(table);\n\n\t\t\tif (typeof tableName === 'string' && this.config.joins.some((join) => join.alias === tableName)) {\n\t\t\t\tthrow new Error(`Alias \"${tableName}\" is already used in this query`);\n\t\t\t}\n\n\t\t\tif (typeof on === 'function') {\n\t\t\t\tconst from = this.config.from && !is(this.config.from, SQL)\n\t\t\t\t\t? this.getTableLikeFields(this.config.from)\n\t\t\t\t\t: undefined;\n\t\t\t\ton = on(\n\t\t\t\t\tnew Proxy(\n\t\t\t\t\t\tthis.config.table[Table.Symbol.Columns],\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t\tfrom && new Proxy(\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.config.joins.push({ on, table, joinType, alias: tableName });\n\n\t\t\tif (typeof tableName === 'string') {\n\t\t\t\tswitch (joinType) {\n\t\t\t\t\tcase 'left': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'right': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'inner': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'full': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this as any;\n\t\t}) as any;\n\t}\n\n\tleftJoin = this.createJoin('left');\n\n\trightJoin = this.createJoin('right');\n\n\tinnerJoin = this.createJoin('inner');\n\n\tfullJoin = this.createJoin('full');\n\n\t/**\n\t * Adds a 'where' clause to the query.\n\t *\n\t * Calling this method will update only those rows that fulfill a specified condition.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update}\n\t *\n\t * @param where the 'where' clause.\n\t *\n\t * @example\n\t * You can use conditional operators and `sql function` to filter the rows to be updated.\n\t *\n\t * ```ts\n\t * // Update all cars with green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'));\n\t * // or\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(sql`${cars.color} = 'green'`)\n\t * ```\n\t *\n\t * You can logically combine conditional operators with `and()` and `or()` operators:\n\t *\n\t * ```ts\n\t * // Update all BMW cars with a green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));\n\t *\n\t * // Update all cars with the green or blue color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));\n\t * ```\n\t */\n\twhere(where: SQL | undefined): GelUpdateWithout<this, TDynamic, 'where'> {\n\t\tthis.config.where = where;\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the updated rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update#update-with-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Update all cars with the green color and return all fields\n\t * const updatedCars: Car[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning();\n\t *\n\t * // Update all cars with the green color and return only their id and brand fields\n\t * const updatedCarsIdsAndBrands: { id: number, brand: string }[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning({ id: cars.id, brand: cars.brand });\n\t * ```\n\t */\n\treturning(): GelUpdateReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFields>(\n\t\tfields: TSelectedFields,\n\t): GelUpdateReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields?: SelectedFields,\n\t): GelUpdateWithout<AnyGelUpdate, TDynamic, 'returning'> {\n\t\tif (!fields) {\n\t\t\tfields = Object.assign({}, this.config.table[Table.Symbol.Columns]);\n\n\t\t\tif (this.config.from) {\n\t\t\t\tconst tableName = getTableLikeName(this.config.from);\n\n\t\t\t\tif (typeof tableName === 'string' && this.config.from && !is(this.config.from, SQL)) {\n\t\t\t\t\tconst fromFields = this.getTableLikeFields(this.config.from);\n\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t}\n\n\t\t\t\tfor (const join of this.config.joins) {\n\t\t\t\t\tconst tableName = getTableLikeName(join.table);\n\n\t\t\t\t\tif (typeof tableName === 'string' && !is(join.table, SQL)) {\n\t\t\t\t\t\tconst fromFields = this.getTableLikeFields(join.table);\n\t\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildUpdateQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'update',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t});\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): GelUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n\n\t$dynamic(): GelUpdateDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["import_table","import_utils","tableName"]}
@@ -22,7 +22,7 @@ export interface GelUpdateConfig {
22
22
  returning?: SelectedFieldsOrdered;
23
23
  withList?: Subquery[];
24
24
  }
25
- export type GelUpdateSetSource<TTable extends GelTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = {
25
+ export type GelUpdateSetSource<TTable extends GelTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = {
26
26
  [Key in keyof TModel & string]?: GetColumnData<TTable['_']['columns'][Key]> | SQL | GelColumn;
27
27
  } & {};
28
28
  export declare class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {
@@ -22,7 +22,7 @@ export interface GelUpdateConfig {
22
22
  returning?: SelectedFieldsOrdered;
23
23
  withList?: Subquery[];
24
24
  }
25
- export type GelUpdateSetSource<TTable extends GelTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = {
25
+ export type GelUpdateSetSource<TTable extends GelTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = {
26
26
  [Key in keyof TModel & string]?: GetColumnData<TTable['_']['columns'][Key]> | SQL | GelColumn;
27
27
  } & {};
28
28
  export declare class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {