drizzle-orm 1.0.0-beta.1-02522e1 → 1.0.0-beta.1-37e2608

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 (1794) hide show
  1. package/_relations.cjs +6 -50
  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 +6 -49
  6. package/_relations.js.map +1 -1
  7. package/aws-data-api/common/index.cjs.map +1 -1
  8. package/aws-data-api/common/index.js.map +1 -1
  9. package/aws-data-api/pg/driver.cjs +4 -1
  10. package/aws-data-api/pg/driver.cjs.map +1 -1
  11. package/aws-data-api/pg/driver.d.cts +3 -0
  12. package/aws-data-api/pg/driver.d.ts +3 -0
  13. package/aws-data-api/pg/driver.js +4 -1
  14. package/aws-data-api/pg/driver.js.map +1 -1
  15. package/aws-data-api/pg/session.cjs +12 -3
  16. package/aws-data-api/pg/session.cjs.map +1 -1
  17. package/aws-data-api/pg/session.d.cts +1 -0
  18. package/aws-data-api/pg/session.d.ts +1 -0
  19. package/aws-data-api/pg/session.js +12 -3
  20. package/aws-data-api/pg/session.js.map +1 -1
  21. package/better-sqlite3/driver.cjs +14 -10
  22. package/better-sqlite3/driver.cjs.map +1 -1
  23. package/better-sqlite3/driver.d.cts +3 -3
  24. package/better-sqlite3/driver.d.ts +3 -3
  25. package/better-sqlite3/driver.js +14 -10
  26. package/better-sqlite3/driver.js.map +1 -1
  27. package/bun-sql/driver.cjs.map +1 -1
  28. package/bun-sql/driver.d.cts +8 -8
  29. package/bun-sql/driver.d.ts +8 -8
  30. package/bun-sql/driver.js.map +1 -1
  31. package/bun-sql/mysql/driver.cjs +14 -10
  32. package/bun-sql/mysql/driver.cjs.map +1 -1
  33. package/bun-sql/mysql/driver.d.cts +3 -3
  34. package/bun-sql/mysql/driver.d.ts +3 -3
  35. package/bun-sql/mysql/driver.js +14 -10
  36. package/bun-sql/mysql/driver.js.map +1 -1
  37. package/bun-sql/postgres/driver.cjs +14 -10
  38. package/bun-sql/postgres/driver.cjs.map +1 -1
  39. package/bun-sql/postgres/driver.d.cts +3 -3
  40. package/bun-sql/postgres/driver.d.ts +3 -3
  41. package/bun-sql/postgres/driver.js +14 -10
  42. package/bun-sql/postgres/driver.js.map +1 -1
  43. package/bun-sql/sqlite/driver.cjs +14 -10
  44. package/bun-sql/sqlite/driver.cjs.map +1 -1
  45. package/bun-sql/sqlite/driver.d.cts +3 -3
  46. package/bun-sql/sqlite/driver.d.ts +3 -3
  47. package/bun-sql/sqlite/driver.js +14 -10
  48. package/bun-sql/sqlite/driver.js.map +1 -1
  49. package/bun-sql/sqlite/session.cjs +2 -0
  50. package/bun-sql/sqlite/session.cjs.map +1 -1
  51. package/bun-sql/sqlite/session.js +2 -0
  52. package/bun-sql/sqlite/session.js.map +1 -1
  53. package/bun-sqlite/driver.cjs +15 -11
  54. package/bun-sqlite/driver.cjs.map +1 -1
  55. package/bun-sqlite/driver.d.cts +3 -3
  56. package/bun-sqlite/driver.d.ts +3 -3
  57. package/bun-sqlite/driver.js +15 -11
  58. package/bun-sqlite/driver.js.map +1 -1
  59. package/column-builder.cjs.map +1 -1
  60. package/column-builder.d.cts +8 -9
  61. package/column-builder.d.ts +8 -9
  62. package/column-builder.js.map +1 -1
  63. package/durable-sqlite/migrator.cjs +7 -10
  64. package/durable-sqlite/migrator.cjs.map +1 -1
  65. package/durable-sqlite/migrator.d.cts +8 -0
  66. package/durable-sqlite/migrator.d.ts +8 -0
  67. package/durable-sqlite/migrator.js +7 -10
  68. package/durable-sqlite/migrator.js.map +1 -1
  69. package/durable-sqlite/session.cjs +3 -6
  70. package/durable-sqlite/session.cjs.map +1 -1
  71. package/durable-sqlite/session.d.cts +2 -1
  72. package/durable-sqlite/session.d.ts +2 -1
  73. package/durable-sqlite/session.js +2 -6
  74. package/durable-sqlite/session.js.map +1 -1
  75. package/entity.cjs.map +1 -1
  76. package/entity.js.map +1 -1
  77. package/expo-sqlite/migrator.cjs +7 -10
  78. package/expo-sqlite/migrator.cjs.map +1 -1
  79. package/expo-sqlite/migrator.d.cts +8 -0
  80. package/expo-sqlite/migrator.d.ts +8 -0
  81. package/expo-sqlite/migrator.js +7 -10
  82. package/expo-sqlite/migrator.js.map +1 -1
  83. package/gel/driver.cjs +10 -6
  84. package/gel/driver.cjs.map +1 -1
  85. package/gel/driver.d.cts +2 -2
  86. package/gel/driver.d.ts +2 -2
  87. package/gel/driver.js +10 -6
  88. package/gel/driver.js.map +1 -1
  89. package/gel-core/columns/bigint.cjs.map +1 -1
  90. package/gel-core/columns/bigint.d.cts +1 -0
  91. package/gel-core/columns/bigint.d.ts +1 -0
  92. package/gel-core/columns/bigint.js.map +1 -1
  93. package/gel-core/columns/bigintT.cjs.map +1 -1
  94. package/gel-core/columns/bigintT.d.cts +1 -0
  95. package/gel-core/columns/bigintT.d.ts +1 -0
  96. package/gel-core/columns/bigintT.js.map +1 -1
  97. package/gel-core/columns/boolean.cjs.map +1 -1
  98. package/gel-core/columns/boolean.d.cts +1 -0
  99. package/gel-core/columns/boolean.d.ts +1 -0
  100. package/gel-core/columns/boolean.js.map +1 -1
  101. package/gel-core/columns/bytes.cjs.map +1 -1
  102. package/gel-core/columns/bytes.d.cts +1 -0
  103. package/gel-core/columns/bytes.d.ts +1 -0
  104. package/gel-core/columns/bytes.js.map +1 -1
  105. package/gel-core/columns/common.cjs +4 -0
  106. package/gel-core/columns/common.cjs.map +1 -1
  107. package/gel-core/columns/common.d.cts +1 -1
  108. package/gel-core/columns/common.d.ts +1 -1
  109. package/gel-core/columns/common.js +4 -0
  110. package/gel-core/columns/common.js.map +1 -1
  111. package/gel-core/columns/custom.cjs.map +1 -1
  112. package/gel-core/columns/custom.d.cts +1 -0
  113. package/gel-core/columns/custom.d.ts +1 -0
  114. package/gel-core/columns/custom.js.map +1 -1
  115. package/gel-core/columns/date-duration.cjs.map +1 -1
  116. package/gel-core/columns/date-duration.d.cts +1 -0
  117. package/gel-core/columns/date-duration.d.ts +1 -0
  118. package/gel-core/columns/date-duration.js.map +1 -1
  119. package/gel-core/columns/decimal.cjs.map +1 -1
  120. package/gel-core/columns/decimal.d.cts +1 -0
  121. package/gel-core/columns/decimal.d.ts +1 -0
  122. package/gel-core/columns/decimal.js.map +1 -1
  123. package/gel-core/columns/double-precision.cjs.map +1 -1
  124. package/gel-core/columns/double-precision.d.cts +1 -0
  125. package/gel-core/columns/double-precision.d.ts +1 -0
  126. package/gel-core/columns/double-precision.js.map +1 -1
  127. package/gel-core/columns/duration.cjs.map +1 -1
  128. package/gel-core/columns/duration.d.cts +1 -0
  129. package/gel-core/columns/duration.d.ts +1 -0
  130. package/gel-core/columns/duration.js.map +1 -1
  131. package/gel-core/columns/integer.cjs.map +1 -1
  132. package/gel-core/columns/integer.d.cts +1 -0
  133. package/gel-core/columns/integer.d.ts +1 -0
  134. package/gel-core/columns/integer.js.map +1 -1
  135. package/gel-core/columns/json.cjs.map +1 -1
  136. package/gel-core/columns/json.d.cts +1 -0
  137. package/gel-core/columns/json.d.ts +1 -0
  138. package/gel-core/columns/json.js.map +1 -1
  139. package/gel-core/columns/localdate.cjs.map +1 -1
  140. package/gel-core/columns/localdate.d.cts +1 -0
  141. package/gel-core/columns/localdate.d.ts +1 -0
  142. package/gel-core/columns/localdate.js.map +1 -1
  143. package/gel-core/columns/localtime.cjs.map +1 -1
  144. package/gel-core/columns/localtime.d.cts +1 -0
  145. package/gel-core/columns/localtime.d.ts +1 -0
  146. package/gel-core/columns/localtime.js.map +1 -1
  147. package/gel-core/columns/real.cjs.map +1 -1
  148. package/gel-core/columns/real.d.cts +1 -0
  149. package/gel-core/columns/real.d.ts +1 -0
  150. package/gel-core/columns/real.js.map +1 -1
  151. package/gel-core/columns/relative-duration.cjs.map +1 -1
  152. package/gel-core/columns/relative-duration.d.cts +1 -0
  153. package/gel-core/columns/relative-duration.d.ts +1 -0
  154. package/gel-core/columns/relative-duration.js.map +1 -1
  155. package/gel-core/columns/smallint.cjs.map +1 -1
  156. package/gel-core/columns/smallint.d.cts +1 -0
  157. package/gel-core/columns/smallint.d.ts +1 -0
  158. package/gel-core/columns/smallint.js.map +1 -1
  159. package/gel-core/columns/text.cjs.map +1 -1
  160. package/gel-core/columns/text.d.cts +1 -0
  161. package/gel-core/columns/text.d.ts +1 -0
  162. package/gel-core/columns/text.js.map +1 -1
  163. package/gel-core/columns/timestamp.cjs.map +1 -1
  164. package/gel-core/columns/timestamp.d.cts +1 -0
  165. package/gel-core/columns/timestamp.d.ts +1 -0
  166. package/gel-core/columns/timestamp.js.map +1 -1
  167. package/gel-core/columns/timestamptz.cjs.map +1 -1
  168. package/gel-core/columns/timestamptz.d.cts +1 -0
  169. package/gel-core/columns/timestamptz.d.ts +1 -0
  170. package/gel-core/columns/timestamptz.js.map +1 -1
  171. package/gel-core/columns/uuid.cjs.map +1 -1
  172. package/gel-core/columns/uuid.d.cts +1 -0
  173. package/gel-core/columns/uuid.d.ts +1 -0
  174. package/gel-core/columns/uuid.js.map +1 -1
  175. package/gel-core/query-builders/count.cjs.map +1 -1
  176. package/gel-core/query-builders/count.d.cts +3 -4
  177. package/gel-core/query-builders/count.d.ts +3 -4
  178. package/gel-core/query-builders/count.js.map +1 -1
  179. package/gel-core/query-builders/insert.cjs.map +1 -1
  180. package/gel-core/query-builders/insert.d.cts +9 -6
  181. package/gel-core/query-builders/insert.d.ts +9 -6
  182. package/gel-core/query-builders/insert.js.map +1 -1
  183. package/gel-core/query-builders/select.cjs +9 -8
  184. package/gel-core/query-builders/select.cjs.map +1 -1
  185. package/gel-core/query-builders/select.js +4 -4
  186. package/gel-core/query-builders/select.js.map +1 -1
  187. package/gel-core/query-builders/update.cjs +2 -2
  188. package/gel-core/query-builders/update.cjs.map +1 -1
  189. package/gel-core/query-builders/update.d.cts +1 -1
  190. package/gel-core/query-builders/update.d.ts +1 -1
  191. package/gel-core/query-builders/update.js +2 -2
  192. package/gel-core/query-builders/update.js.map +1 -1
  193. package/gel-core/schema.cjs +4 -4
  194. package/gel-core/schema.cjs.map +1 -1
  195. package/gel-core/schema.js +4 -4
  196. package/gel-core/schema.js.map +1 -1
  197. package/gel-core/utils.cjs +2 -1
  198. package/gel-core/utils.cjs.map +1 -1
  199. package/gel-core/utils.d.cts +1 -1
  200. package/gel-core/utils.d.ts +1 -1
  201. package/gel-core/utils.js +2 -1
  202. package/gel-core/utils.js.map +1 -1
  203. package/gel-core/view-common.cjs +0 -3
  204. package/gel-core/view-common.cjs.map +1 -1
  205. package/gel-core/view-common.d.cts +0 -1
  206. package/gel-core/view-common.d.ts +0 -1
  207. package/gel-core/view-common.js +0 -2
  208. package/gel-core/view-common.js.map +1 -1
  209. package/gel-core/view.cjs +5 -2
  210. package/gel-core/view.cjs.map +1 -1
  211. package/gel-core/view.d.cts +2 -1
  212. package/gel-core/view.d.ts +2 -1
  213. package/gel-core/view.js +3 -1
  214. package/gel-core/view.js.map +1 -1
  215. package/libsql/driver.cjs +10 -6
  216. package/libsql/driver.cjs.map +1 -1
  217. package/libsql/driver.d.cts +3 -3
  218. package/libsql/driver.d.ts +3 -3
  219. package/libsql/driver.js +10 -6
  220. package/libsql/driver.js.map +1 -1
  221. package/libsql/http/index.cjs +10 -6
  222. package/libsql/http/index.cjs.map +1 -1
  223. package/libsql/http/index.d.cts +3 -3
  224. package/libsql/http/index.d.ts +3 -3
  225. package/libsql/http/index.js +10 -6
  226. package/libsql/http/index.js.map +1 -1
  227. package/libsql/node/index.cjs +10 -6
  228. package/libsql/node/index.cjs.map +1 -1
  229. package/libsql/node/index.d.cts +3 -3
  230. package/libsql/node/index.d.ts +3 -3
  231. package/libsql/node/index.js +10 -6
  232. package/libsql/node/index.js.map +1 -1
  233. package/libsql/session.cjs +2 -0
  234. package/libsql/session.cjs.map +1 -1
  235. package/libsql/session.d.cts +1 -1
  236. package/libsql/session.d.ts +1 -1
  237. package/libsql/session.js +2 -0
  238. package/libsql/session.js.map +1 -1
  239. package/libsql/sqlite3/index.cjs +10 -6
  240. package/libsql/sqlite3/index.cjs.map +1 -1
  241. package/libsql/sqlite3/index.d.cts +3 -3
  242. package/libsql/sqlite3/index.d.ts +3 -3
  243. package/libsql/sqlite3/index.js +10 -6
  244. package/libsql/sqlite3/index.js.map +1 -1
  245. package/libsql/wasm/index.cjs +10 -6
  246. package/libsql/wasm/index.cjs.map +1 -1
  247. package/libsql/wasm/index.d.cts +3 -3
  248. package/libsql/wasm/index.d.ts +3 -3
  249. package/libsql/wasm/index.js +10 -6
  250. package/libsql/wasm/index.js.map +1 -1
  251. package/libsql/web/index.cjs +10 -6
  252. package/libsql/web/index.cjs.map +1 -1
  253. package/libsql/web/index.d.cts +3 -3
  254. package/libsql/web/index.d.ts +3 -3
  255. package/libsql/web/index.js +10 -6
  256. package/libsql/web/index.js.map +1 -1
  257. package/libsql/ws/index.cjs +10 -6
  258. package/libsql/ws/index.cjs.map +1 -1
  259. package/libsql/ws/index.d.cts +3 -3
  260. package/libsql/ws/index.d.ts +3 -3
  261. package/libsql/ws/index.js +10 -6
  262. package/libsql/ws/index.js.map +1 -1
  263. package/migrator.cjs +5 -42
  264. package/migrator.cjs.map +1 -1
  265. package/migrator.d.cts +0 -1
  266. package/migrator.d.ts +0 -1
  267. package/migrator.js +6 -42
  268. package/migrator.js.map +1 -1
  269. package/mysql-core/columns/all.cjs +1 -6
  270. package/mysql-core/columns/all.cjs.map +1 -1
  271. package/mysql-core/columns/all.d.cts +0 -5
  272. package/mysql-core/columns/all.d.ts +0 -5
  273. package/mysql-core/columns/all.js +1 -6
  274. package/mysql-core/columns/all.js.map +1 -1
  275. package/mysql-core/columns/bigint.cjs.map +1 -1
  276. package/mysql-core/columns/bigint.d.cts +2 -0
  277. package/mysql-core/columns/bigint.d.ts +2 -0
  278. package/mysql-core/columns/bigint.js.map +1 -1
  279. package/mysql-core/columns/binary.cjs +1 -0
  280. package/mysql-core/columns/binary.cjs.map +1 -1
  281. package/mysql-core/columns/binary.d.cts +2 -0
  282. package/mysql-core/columns/binary.d.ts +2 -0
  283. package/mysql-core/columns/binary.js +1 -0
  284. package/mysql-core/columns/binary.js.map +1 -1
  285. package/mysql-core/columns/boolean.cjs.map +1 -1
  286. package/mysql-core/columns/boolean.d.cts +1 -0
  287. package/mysql-core/columns/boolean.d.ts +1 -0
  288. package/mysql-core/columns/boolean.js.map +1 -1
  289. package/mysql-core/columns/char.cjs +4 -3
  290. package/mysql-core/columns/char.cjs.map +1 -1
  291. package/mysql-core/columns/char.d.cts +5 -3
  292. package/mysql-core/columns/char.d.ts +5 -3
  293. package/mysql-core/columns/char.js +4 -3
  294. package/mysql-core/columns/char.js.map +1 -1
  295. package/mysql-core/columns/common.cjs +4 -0
  296. package/mysql-core/columns/common.cjs.map +1 -1
  297. package/mysql-core/columns/common.d.cts +1 -1
  298. package/mysql-core/columns/common.d.ts +1 -1
  299. package/mysql-core/columns/common.js +4 -0
  300. package/mysql-core/columns/common.js.map +1 -1
  301. package/mysql-core/columns/custom.cjs.map +1 -1
  302. package/mysql-core/columns/custom.d.cts +1 -0
  303. package/mysql-core/columns/custom.d.ts +1 -0
  304. package/mysql-core/columns/custom.js.map +1 -1
  305. package/mysql-core/columns/date.cjs.map +1 -1
  306. package/mysql-core/columns/date.common.cjs +1 -3
  307. package/mysql-core/columns/date.common.cjs.map +1 -1
  308. package/mysql-core/columns/date.common.d.cts +1 -6
  309. package/mysql-core/columns/date.common.d.ts +1 -6
  310. package/mysql-core/columns/date.common.js +1 -3
  311. package/mysql-core/columns/date.common.js.map +1 -1
  312. package/mysql-core/columns/date.d.cts +2 -0
  313. package/mysql-core/columns/date.d.ts +2 -0
  314. package/mysql-core/columns/date.js.map +1 -1
  315. package/mysql-core/columns/datetime.cjs.map +1 -1
  316. package/mysql-core/columns/datetime.d.cts +2 -0
  317. package/mysql-core/columns/datetime.d.ts +2 -0
  318. package/mysql-core/columns/datetime.js.map +1 -1
  319. package/mysql-core/columns/decimal.cjs.map +1 -1
  320. package/mysql-core/columns/decimal.d.cts +3 -0
  321. package/mysql-core/columns/decimal.d.ts +3 -0
  322. package/mysql-core/columns/decimal.js.map +1 -1
  323. package/mysql-core/columns/double.cjs.map +1 -1
  324. package/mysql-core/columns/double.d.cts +1 -0
  325. package/mysql-core/columns/double.d.ts +1 -0
  326. package/mysql-core/columns/double.js.map +1 -1
  327. package/mysql-core/columns/enum.cjs +5 -5
  328. package/mysql-core/columns/enum.cjs.map +1 -1
  329. package/mysql-core/columns/enum.d.cts +7 -5
  330. package/mysql-core/columns/enum.d.ts +7 -5
  331. package/mysql-core/columns/enum.js +5 -5
  332. package/mysql-core/columns/enum.js.map +1 -1
  333. package/mysql-core/columns/float.cjs.map +1 -1
  334. package/mysql-core/columns/float.d.cts +1 -0
  335. package/mysql-core/columns/float.d.ts +1 -0
  336. package/mysql-core/columns/float.js.map +1 -1
  337. package/mysql-core/columns/index.cjs +0 -2
  338. package/mysql-core/columns/index.cjs.map +1 -1
  339. package/mysql-core/columns/index.d.cts +0 -1
  340. package/mysql-core/columns/index.d.ts +0 -1
  341. package/mysql-core/columns/index.js +0 -1
  342. package/mysql-core/columns/index.js.map +1 -1
  343. package/mysql-core/columns/int.cjs.map +1 -1
  344. package/mysql-core/columns/int.d.cts +1 -0
  345. package/mysql-core/columns/int.d.ts +1 -0
  346. package/mysql-core/columns/int.js.map +1 -1
  347. package/mysql-core/columns/json.cjs.map +1 -1
  348. package/mysql-core/columns/json.d.cts +1 -0
  349. package/mysql-core/columns/json.d.ts +1 -0
  350. package/mysql-core/columns/json.js.map +1 -1
  351. package/mysql-core/columns/mediumint.cjs.map +1 -1
  352. package/mysql-core/columns/mediumint.d.cts +1 -0
  353. package/mysql-core/columns/mediumint.d.ts +1 -0
  354. package/mysql-core/columns/mediumint.js.map +1 -1
  355. package/mysql-core/columns/real.cjs.map +1 -1
  356. package/mysql-core/columns/real.d.cts +1 -0
  357. package/mysql-core/columns/real.d.ts +1 -0
  358. package/mysql-core/columns/real.js.map +1 -1
  359. package/mysql-core/columns/serial.cjs.map +1 -1
  360. package/mysql-core/columns/serial.d.cts +1 -0
  361. package/mysql-core/columns/serial.d.ts +1 -0
  362. package/mysql-core/columns/serial.js.map +1 -1
  363. package/mysql-core/columns/smallint.cjs.map +1 -1
  364. package/mysql-core/columns/smallint.d.cts +1 -0
  365. package/mysql-core/columns/smallint.d.ts +1 -0
  366. package/mysql-core/columns/smallint.js.map +1 -1
  367. package/mysql-core/columns/text.cjs +3 -3
  368. package/mysql-core/columns/text.cjs.map +1 -1
  369. package/mysql-core/columns/text.d.cts +4 -3
  370. package/mysql-core/columns/text.d.ts +4 -3
  371. package/mysql-core/columns/text.js +3 -3
  372. package/mysql-core/columns/text.js.map +1 -1
  373. package/mysql-core/columns/time.cjs.map +1 -1
  374. package/mysql-core/columns/time.d.cts +1 -0
  375. package/mysql-core/columns/time.d.ts +1 -0
  376. package/mysql-core/columns/time.js.map +1 -1
  377. package/mysql-core/columns/timestamp.cjs.map +1 -1
  378. package/mysql-core/columns/timestamp.d.cts +2 -0
  379. package/mysql-core/columns/timestamp.d.ts +2 -0
  380. package/mysql-core/columns/timestamp.js.map +1 -1
  381. package/mysql-core/columns/tinyint.cjs.map +1 -1
  382. package/mysql-core/columns/tinyint.d.cts +1 -0
  383. package/mysql-core/columns/tinyint.d.ts +1 -0
  384. package/mysql-core/columns/tinyint.js.map +1 -1
  385. package/mysql-core/columns/varbinary.cjs.map +1 -1
  386. package/mysql-core/columns/varbinary.d.cts +1 -0
  387. package/mysql-core/columns/varbinary.d.ts +1 -0
  388. package/mysql-core/columns/varbinary.js.map +1 -1
  389. package/mysql-core/columns/varchar.cjs +4 -4
  390. package/mysql-core/columns/varchar.cjs.map +1 -1
  391. package/mysql-core/columns/varchar.d.cts +5 -4
  392. package/mysql-core/columns/varchar.d.ts +5 -4
  393. package/mysql-core/columns/varchar.js +4 -4
  394. package/mysql-core/columns/varchar.js.map +1 -1
  395. package/mysql-core/columns/year.cjs.map +1 -1
  396. package/mysql-core/columns/year.d.cts +1 -0
  397. package/mysql-core/columns/year.d.ts +1 -0
  398. package/mysql-core/columns/year.js.map +1 -1
  399. package/mysql-core/dialect.cjs +0 -3
  400. package/mysql-core/dialect.cjs.map +1 -1
  401. package/mysql-core/dialect.d.cts +0 -1
  402. package/mysql-core/dialect.d.ts +0 -1
  403. package/mysql-core/dialect.js +0 -3
  404. package/mysql-core/dialect.js.map +1 -1
  405. package/mysql-core/foreign-keys.cjs +0 -3
  406. package/mysql-core/foreign-keys.cjs.map +1 -1
  407. package/mysql-core/foreign-keys.d.cts +0 -1
  408. package/mysql-core/foreign-keys.d.ts +0 -1
  409. package/mysql-core/foreign-keys.js +0 -3
  410. package/mysql-core/foreign-keys.js.map +1 -1
  411. package/mysql-core/indexes.cjs +0 -2
  412. package/mysql-core/indexes.cjs.map +1 -1
  413. package/mysql-core/indexes.d.cts +0 -1
  414. package/mysql-core/indexes.d.ts +0 -1
  415. package/mysql-core/indexes.js +0 -2
  416. package/mysql-core/indexes.js.map +1 -1
  417. package/mysql-core/primary-keys.cjs +13 -4
  418. package/mysql-core/primary-keys.cjs.map +1 -1
  419. package/mysql-core/primary-keys.d.cts +6 -3
  420. package/mysql-core/primary-keys.d.ts +6 -3
  421. package/mysql-core/primary-keys.js +13 -4
  422. package/mysql-core/primary-keys.js.map +1 -1
  423. package/mysql-core/query-builders/count.cjs.map +1 -1
  424. package/mysql-core/query-builders/count.d.cts +1 -1
  425. package/mysql-core/query-builders/count.d.ts +1 -1
  426. package/mysql-core/query-builders/count.js.map +1 -1
  427. package/mysql-core/query-builders/insert.cjs.map +1 -1
  428. package/mysql-core/query-builders/insert.d.cts +2 -2
  429. package/mysql-core/query-builders/insert.d.ts +2 -2
  430. package/mysql-core/query-builders/insert.js.map +1 -1
  431. package/mysql-core/query-builders/select.cjs +2 -2
  432. package/mysql-core/query-builders/select.cjs.map +1 -1
  433. package/mysql-core/query-builders/select.js +2 -2
  434. package/mysql-core/query-builders/select.js.map +1 -1
  435. package/mysql-core/query-builders/update.cjs.map +1 -1
  436. package/mysql-core/query-builders/update.d.cts +1 -1
  437. package/mysql-core/query-builders/update.d.ts +1 -1
  438. package/mysql-core/query-builders/update.js.map +1 -1
  439. package/mysql-core/schema.cjs +2 -2
  440. package/mysql-core/schema.cjs.map +1 -1
  441. package/mysql-core/schema.js +2 -2
  442. package/mysql-core/schema.js.map +1 -1
  443. package/mysql-core/unique-constraint.cjs +0 -2
  444. package/mysql-core/unique-constraint.cjs.map +1 -1
  445. package/mysql-core/unique-constraint.d.cts +2 -3
  446. package/mysql-core/unique-constraint.d.ts +2 -3
  447. package/mysql-core/unique-constraint.js +0 -2
  448. package/mysql-core/unique-constraint.js.map +1 -1
  449. package/mysql-proxy/driver.cjs +2 -2
  450. package/mysql-proxy/driver.cjs.map +1 -1
  451. package/mysql-proxy/driver.d.cts +1 -2
  452. package/mysql-proxy/driver.d.ts +1 -2
  453. package/mysql-proxy/driver.js +2 -2
  454. package/mysql-proxy/driver.js.map +1 -1
  455. package/mysql2/driver.cjs +14 -10
  456. package/mysql2/driver.cjs.map +1 -1
  457. package/mysql2/driver.d.cts +3 -3
  458. package/mysql2/driver.d.ts +3 -3
  459. package/mysql2/driver.js +14 -10
  460. package/mysql2/driver.js.map +1 -1
  461. package/mysql2/session.cjs.map +1 -1
  462. package/mysql2/session.js.map +1 -1
  463. package/neon-http/driver.cjs +14 -10
  464. package/neon-http/driver.cjs.map +1 -1
  465. package/neon-http/driver.d.cts +3 -3
  466. package/neon-http/driver.d.ts +3 -3
  467. package/neon-http/driver.js +14 -10
  468. package/neon-http/driver.js.map +1 -1
  469. package/neon-http/session.cjs.map +1 -1
  470. package/neon-http/session.d.cts +1 -1
  471. package/neon-http/session.d.ts +1 -1
  472. package/neon-http/session.js.map +1 -1
  473. package/neon-serverless/driver.cjs +14 -10
  474. package/neon-serverless/driver.cjs.map +1 -1
  475. package/neon-serverless/driver.d.cts +3 -3
  476. package/neon-serverless/driver.d.ts +3 -3
  477. package/neon-serverless/driver.js +14 -10
  478. package/neon-serverless/driver.js.map +1 -1
  479. package/neon-serverless/session.cjs.map +1 -1
  480. package/neon-serverless/session.js.map +1 -1
  481. package/node-postgres/driver.cjs +12 -8
  482. package/node-postgres/driver.cjs.map +1 -1
  483. package/node-postgres/driver.d.cts +3 -3
  484. package/node-postgres/driver.d.ts +3 -3
  485. package/node-postgres/driver.js +12 -8
  486. package/node-postgres/driver.js.map +1 -1
  487. package/node-postgres/session.cjs.map +1 -1
  488. package/node-postgres/session.js.map +1 -1
  489. package/op-sqlite/migrator.cjs +7 -10
  490. package/op-sqlite/migrator.cjs.map +1 -1
  491. package/op-sqlite/migrator.d.cts +16 -0
  492. package/op-sqlite/migrator.d.ts +16 -0
  493. package/op-sqlite/migrator.js +7 -10
  494. package/op-sqlite/migrator.js.map +1 -1
  495. package/package.json +75 -1488
  496. package/pg-core/columns/bigint.cjs.map +1 -1
  497. package/pg-core/columns/bigint.d.cts +2 -0
  498. package/pg-core/columns/bigint.d.ts +2 -0
  499. package/pg-core/columns/bigint.js.map +1 -1
  500. package/pg-core/columns/bigserial.cjs +0 -1
  501. package/pg-core/columns/bigserial.cjs.map +1 -1
  502. package/pg-core/columns/bigserial.d.cts +2 -0
  503. package/pg-core/columns/bigserial.d.ts +2 -0
  504. package/pg-core/columns/bigserial.js +0 -1
  505. package/pg-core/columns/bigserial.js.map +1 -1
  506. package/pg-core/columns/boolean.cjs.map +1 -1
  507. package/pg-core/columns/boolean.d.cts +1 -0
  508. package/pg-core/columns/boolean.d.ts +1 -0
  509. package/pg-core/columns/boolean.js.map +1 -1
  510. package/pg-core/columns/bytea.cjs.map +1 -1
  511. package/pg-core/columns/bytea.d.cts +1 -0
  512. package/pg-core/columns/bytea.d.ts +1 -0
  513. package/pg-core/columns/bytea.js.map +1 -1
  514. package/pg-core/columns/char.cjs +1 -0
  515. package/pg-core/columns/char.cjs.map +1 -1
  516. package/pg-core/columns/char.d.cts +2 -0
  517. package/pg-core/columns/char.d.ts +2 -0
  518. package/pg-core/columns/char.js +1 -0
  519. package/pg-core/columns/char.js.map +1 -1
  520. package/pg-core/columns/cidr.cjs.map +1 -1
  521. package/pg-core/columns/cidr.d.cts +1 -0
  522. package/pg-core/columns/cidr.d.ts +1 -0
  523. package/pg-core/columns/cidr.js.map +1 -1
  524. package/pg-core/columns/common.cjs +14 -10
  525. package/pg-core/columns/common.cjs.map +1 -1
  526. package/pg-core/columns/common.d.cts +3 -4
  527. package/pg-core/columns/common.d.ts +3 -4
  528. package/pg-core/columns/common.js +14 -10
  529. package/pg-core/columns/common.js.map +1 -1
  530. package/pg-core/columns/custom.cjs.map +1 -1
  531. package/pg-core/columns/custom.d.cts +1 -0
  532. package/pg-core/columns/custom.d.ts +1 -0
  533. package/pg-core/columns/custom.js.map +1 -1
  534. package/pg-core/columns/date.cjs.map +1 -1
  535. package/pg-core/columns/date.d.cts +2 -0
  536. package/pg-core/columns/date.d.ts +2 -0
  537. package/pg-core/columns/date.js.map +1 -1
  538. package/pg-core/columns/double-precision.cjs.map +1 -1
  539. package/pg-core/columns/double-precision.d.cts +1 -0
  540. package/pg-core/columns/double-precision.d.ts +1 -0
  541. package/pg-core/columns/double-precision.js.map +1 -1
  542. package/pg-core/columns/enum.cjs.map +1 -1
  543. package/pg-core/columns/enum.d.cts +2 -0
  544. package/pg-core/columns/enum.d.ts +2 -0
  545. package/pg-core/columns/enum.js.map +1 -1
  546. package/pg-core/columns/inet.cjs.map +1 -1
  547. package/pg-core/columns/inet.d.cts +1 -0
  548. package/pg-core/columns/inet.d.ts +1 -0
  549. package/pg-core/columns/inet.js.map +1 -1
  550. package/pg-core/columns/integer.cjs.map +1 -1
  551. package/pg-core/columns/integer.d.cts +1 -0
  552. package/pg-core/columns/integer.d.ts +1 -0
  553. package/pg-core/columns/integer.js.map +1 -1
  554. package/pg-core/columns/interval.cjs.map +1 -1
  555. package/pg-core/columns/interval.d.cts +1 -0
  556. package/pg-core/columns/interval.d.ts +1 -0
  557. package/pg-core/columns/interval.js.map +1 -1
  558. package/pg-core/columns/json.cjs.map +1 -1
  559. package/pg-core/columns/json.d.cts +1 -0
  560. package/pg-core/columns/json.d.ts +1 -0
  561. package/pg-core/columns/json.js.map +1 -1
  562. package/pg-core/columns/jsonb.cjs.map +1 -1
  563. package/pg-core/columns/jsonb.d.cts +1 -0
  564. package/pg-core/columns/jsonb.d.ts +1 -0
  565. package/pg-core/columns/jsonb.js.map +1 -1
  566. package/pg-core/columns/line.cjs +0 -2
  567. package/pg-core/columns/line.cjs.map +1 -1
  568. package/pg-core/columns/line.d.cts +2 -2
  569. package/pg-core/columns/line.d.ts +2 -2
  570. package/pg-core/columns/line.js +0 -2
  571. package/pg-core/columns/line.js.map +1 -1
  572. package/pg-core/columns/macaddr.cjs.map +1 -1
  573. package/pg-core/columns/macaddr.d.cts +1 -0
  574. package/pg-core/columns/macaddr.d.ts +1 -0
  575. package/pg-core/columns/macaddr.js.map +1 -1
  576. package/pg-core/columns/macaddr8.cjs.map +1 -1
  577. package/pg-core/columns/macaddr8.d.cts +1 -0
  578. package/pg-core/columns/macaddr8.d.ts +1 -0
  579. package/pg-core/columns/macaddr8.js.map +1 -1
  580. package/pg-core/columns/numeric.cjs.map +1 -1
  581. package/pg-core/columns/numeric.d.cts +3 -0
  582. package/pg-core/columns/numeric.d.ts +3 -0
  583. package/pg-core/columns/numeric.js.map +1 -1
  584. package/pg-core/columns/point.cjs +0 -2
  585. package/pg-core/columns/point.cjs.map +1 -1
  586. package/pg-core/columns/point.d.cts +2 -2
  587. package/pg-core/columns/point.d.ts +2 -2
  588. package/pg-core/columns/point.js +0 -2
  589. package/pg-core/columns/point.js.map +1 -1
  590. package/pg-core/columns/postgis_extension/geometry.cjs +8 -14
  591. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  592. package/pg-core/columns/postgis_extension/geometry.d.cts +6 -16
  593. package/pg-core/columns/postgis_extension/geometry.d.ts +6 -16
  594. package/pg-core/columns/postgis_extension/geometry.js +8 -14
  595. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  596. package/pg-core/columns/postgis_extension/utils.cjs +3 -3
  597. package/pg-core/columns/postgis_extension/utils.cjs.map +1 -1
  598. package/pg-core/columns/postgis_extension/utils.d.cts +1 -4
  599. package/pg-core/columns/postgis_extension/utils.d.ts +1 -4
  600. package/pg-core/columns/postgis_extension/utils.js +3 -3
  601. package/pg-core/columns/postgis_extension/utils.js.map +1 -1
  602. package/pg-core/columns/real.cjs.map +1 -1
  603. package/pg-core/columns/real.d.cts +1 -0
  604. package/pg-core/columns/real.d.ts +1 -0
  605. package/pg-core/columns/real.js.map +1 -1
  606. package/pg-core/columns/serial.cjs.map +1 -1
  607. package/pg-core/columns/serial.d.cts +1 -0
  608. package/pg-core/columns/serial.d.ts +1 -0
  609. package/pg-core/columns/serial.js.map +1 -1
  610. package/pg-core/columns/smallint.cjs.map +1 -1
  611. package/pg-core/columns/smallint.d.cts +1 -0
  612. package/pg-core/columns/smallint.d.ts +1 -0
  613. package/pg-core/columns/smallint.js.map +1 -1
  614. package/pg-core/columns/smallserial.cjs.map +1 -1
  615. package/pg-core/columns/smallserial.d.cts +1 -0
  616. package/pg-core/columns/smallserial.d.ts +1 -0
  617. package/pg-core/columns/smallserial.js.map +1 -1
  618. package/pg-core/columns/text.cjs.map +1 -1
  619. package/pg-core/columns/text.d.cts +1 -0
  620. package/pg-core/columns/text.d.ts +1 -0
  621. package/pg-core/columns/text.js.map +1 -1
  622. package/pg-core/columns/time.cjs.map +1 -1
  623. package/pg-core/columns/time.d.cts +1 -0
  624. package/pg-core/columns/time.d.ts +1 -0
  625. package/pg-core/columns/time.js.map +1 -1
  626. package/pg-core/columns/timestamp.cjs.map +1 -1
  627. package/pg-core/columns/timestamp.d.cts +2 -0
  628. package/pg-core/columns/timestamp.d.ts +2 -0
  629. package/pg-core/columns/timestamp.js.map +1 -1
  630. package/pg-core/columns/uuid.cjs.map +1 -1
  631. package/pg-core/columns/uuid.d.cts +1 -0
  632. package/pg-core/columns/uuid.d.ts +1 -0
  633. package/pg-core/columns/uuid.js.map +1 -1
  634. package/pg-core/columns/varchar.cjs.map +1 -1
  635. package/pg-core/columns/varchar.d.cts +1 -0
  636. package/pg-core/columns/varchar.d.ts +1 -0
  637. package/pg-core/columns/varchar.js.map +1 -1
  638. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  639. package/pg-core/columns/vector_extension/bit.d.cts +1 -0
  640. package/pg-core/columns/vector_extension/bit.d.ts +1 -0
  641. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  642. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  643. package/pg-core/columns/vector_extension/halfvec.d.cts +1 -0
  644. package/pg-core/columns/vector_extension/halfvec.d.ts +1 -0
  645. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  646. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  647. package/pg-core/columns/vector_extension/sparsevec.d.cts +1 -0
  648. package/pg-core/columns/vector_extension/sparsevec.d.ts +1 -0
  649. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  650. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  651. package/pg-core/columns/vector_extension/vector.d.cts +1 -0
  652. package/pg-core/columns/vector_extension/vector.d.ts +1 -0
  653. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  654. package/pg-core/db.cjs +3 -2
  655. package/pg-core/db.cjs.map +1 -1
  656. package/pg-core/db.d.cts +1 -1
  657. package/pg-core/db.d.ts +1 -1
  658. package/pg-core/db.js +3 -2
  659. package/pg-core/db.js.map +1 -1
  660. package/pg-core/foreign-keys.cjs +0 -4
  661. package/pg-core/foreign-keys.cjs.map +1 -1
  662. package/pg-core/foreign-keys.d.cts +0 -2
  663. package/pg-core/foreign-keys.d.ts +0 -2
  664. package/pg-core/foreign-keys.js +0 -4
  665. package/pg-core/foreign-keys.js.map +1 -1
  666. package/pg-core/indexes.cjs +0 -2
  667. package/pg-core/indexes.cjs.map +1 -1
  668. package/pg-core/indexes.d.cts +0 -1
  669. package/pg-core/indexes.d.ts +0 -1
  670. package/pg-core/indexes.js +0 -2
  671. package/pg-core/indexes.js.map +1 -1
  672. package/pg-core/primary-keys.cjs +0 -2
  673. package/pg-core/primary-keys.cjs.map +1 -1
  674. package/pg-core/primary-keys.d.cts +0 -1
  675. package/pg-core/primary-keys.d.ts +0 -1
  676. package/pg-core/primary-keys.js +0 -2
  677. package/pg-core/primary-keys.js.map +1 -1
  678. package/pg-core/query-builders/count.cjs.map +1 -1
  679. package/pg-core/query-builders/count.d.cts +3 -4
  680. package/pg-core/query-builders/count.d.ts +3 -4
  681. package/pg-core/query-builders/count.js.map +1 -1
  682. package/pg-core/query-builders/insert.cjs.map +1 -1
  683. package/pg-core/query-builders/insert.d.cts +9 -6
  684. package/pg-core/query-builders/insert.d.ts +9 -6
  685. package/pg-core/query-builders/insert.js.map +1 -1
  686. package/pg-core/query-builders/query.cjs +9 -5
  687. package/pg-core/query-builders/query.cjs.map +1 -1
  688. package/pg-core/query-builders/query.d.cts +4 -2
  689. package/pg-core/query-builders/query.d.ts +4 -2
  690. package/pg-core/query-builders/query.js +9 -5
  691. package/pg-core/query-builders/query.js.map +1 -1
  692. package/pg-core/query-builders/select.cjs +9 -8
  693. package/pg-core/query-builders/select.cjs.map +1 -1
  694. package/pg-core/query-builders/select.js +4 -4
  695. package/pg-core/query-builders/select.js.map +1 -1
  696. package/pg-core/query-builders/update.cjs +2 -2
  697. package/pg-core/query-builders/update.cjs.map +1 -1
  698. package/pg-core/query-builders/update.d.cts +1 -1
  699. package/pg-core/query-builders/update.d.ts +1 -1
  700. package/pg-core/query-builders/update.js +2 -2
  701. package/pg-core/query-builders/update.js.map +1 -1
  702. package/pg-core/schema.cjs +8 -20
  703. package/pg-core/schema.cjs.map +1 -1
  704. package/pg-core/schema.d.cts +0 -2
  705. package/pg-core/schema.d.ts +0 -2
  706. package/pg-core/schema.js +9 -21
  707. package/pg-core/schema.js.map +1 -1
  708. package/pg-core/session.cjs +2 -2
  709. package/pg-core/session.cjs.map +1 -1
  710. package/pg-core/session.d.cts +1 -1
  711. package/pg-core/session.d.ts +1 -1
  712. package/pg-core/session.js +2 -2
  713. package/pg-core/session.js.map +1 -1
  714. package/pg-core/table.cjs +8 -16
  715. package/pg-core/table.cjs.map +1 -1
  716. package/pg-core/table.d.cts +4 -5
  717. package/pg-core/table.d.ts +4 -5
  718. package/pg-core/table.js +8 -16
  719. package/pg-core/table.js.map +1 -1
  720. package/pg-core/unique-constraint.cjs +0 -2
  721. package/pg-core/unique-constraint.cjs.map +1 -1
  722. package/pg-core/unique-constraint.d.cts +0 -1
  723. package/pg-core/unique-constraint.d.ts +0 -1
  724. package/pg-core/unique-constraint.js +0 -2
  725. package/pg-core/unique-constraint.js.map +1 -1
  726. package/pg-core/utils.cjs +2 -1
  727. package/pg-core/utils.cjs.map +1 -1
  728. package/pg-core/utils.d.cts +1 -1
  729. package/pg-core/utils.d.ts +1 -1
  730. package/pg-core/utils.js +2 -1
  731. package/pg-core/utils.js.map +1 -1
  732. package/pg-core/view-common.cjs +0 -3
  733. package/pg-core/view-common.cjs.map +1 -1
  734. package/pg-core/view-common.d.cts +0 -1
  735. package/pg-core/view-common.d.ts +0 -1
  736. package/pg-core/view-common.js +0 -2
  737. package/pg-core/view-common.js.map +1 -1
  738. package/pg-core/view.cjs +5 -2
  739. package/pg-core/view.cjs.map +1 -1
  740. package/pg-core/view.d.cts +2 -1
  741. package/pg-core/view.d.ts +2 -1
  742. package/pg-core/view.js +3 -1
  743. package/pg-core/view.js.map +1 -1
  744. package/pglite/driver.cjs +14 -10
  745. package/pglite/driver.cjs.map +1 -1
  746. package/pglite/driver.d.cts +3 -3
  747. package/pglite/driver.d.ts +3 -3
  748. package/pglite/driver.js +14 -10
  749. package/pglite/driver.js.map +1 -1
  750. package/planetscale-serverless/driver.cjs +15 -11
  751. package/planetscale-serverless/driver.cjs.map +1 -1
  752. package/planetscale-serverless/driver.d.cts +3 -3
  753. package/planetscale-serverless/driver.d.ts +3 -3
  754. package/planetscale-serverless/driver.js +15 -11
  755. package/planetscale-serverless/driver.js.map +1 -1
  756. package/postgres-js/driver.cjs +14 -10
  757. package/postgres-js/driver.cjs.map +1 -1
  758. package/postgres-js/driver.d.cts +3 -3
  759. package/postgres-js/driver.d.ts +3 -3
  760. package/postgres-js/driver.js +14 -10
  761. package/postgres-js/driver.js.map +1 -1
  762. package/relations.cjs +0 -2
  763. package/relations.cjs.map +1 -1
  764. package/relations.d.cts +3 -3
  765. package/relations.d.ts +3 -3
  766. package/relations.js +1 -3
  767. package/relations.js.map +1 -1
  768. package/singlestore/driver.cjs +26 -19
  769. package/singlestore/driver.cjs.map +1 -1
  770. package/singlestore/driver.d.cts +3 -3
  771. package/singlestore/driver.d.ts +3 -3
  772. package/singlestore/driver.js +26 -19
  773. package/singlestore/driver.js.map +1 -1
  774. package/singlestore/session.cjs.map +1 -1
  775. package/singlestore/session.js.map +1 -1
  776. package/singlestore-core/columns/bigint.cjs.map +1 -1
  777. package/singlestore-core/columns/bigint.d.cts +2 -0
  778. package/singlestore-core/columns/bigint.d.ts +2 -0
  779. package/singlestore-core/columns/bigint.js.map +1 -1
  780. package/singlestore-core/columns/binary.cjs +1 -0
  781. package/singlestore-core/columns/binary.cjs.map +1 -1
  782. package/singlestore-core/columns/binary.d.cts +2 -0
  783. package/singlestore-core/columns/binary.d.ts +2 -0
  784. package/singlestore-core/columns/binary.js +1 -0
  785. package/singlestore-core/columns/binary.js.map +1 -1
  786. package/singlestore-core/columns/boolean.cjs.map +1 -1
  787. package/singlestore-core/columns/boolean.d.cts +1 -0
  788. package/singlestore-core/columns/boolean.d.ts +1 -0
  789. package/singlestore-core/columns/boolean.js.map +1 -1
  790. package/singlestore-core/columns/char.cjs +1 -0
  791. package/singlestore-core/columns/char.cjs.map +1 -1
  792. package/singlestore-core/columns/char.d.cts +2 -0
  793. package/singlestore-core/columns/char.d.ts +2 -0
  794. package/singlestore-core/columns/char.js +1 -0
  795. package/singlestore-core/columns/char.js.map +1 -1
  796. package/singlestore-core/columns/common.cjs +4 -0
  797. package/singlestore-core/columns/common.cjs.map +1 -1
  798. package/singlestore-core/columns/common.d.cts +1 -1
  799. package/singlestore-core/columns/common.d.ts +1 -1
  800. package/singlestore-core/columns/common.js +4 -0
  801. package/singlestore-core/columns/common.js.map +1 -1
  802. package/singlestore-core/columns/custom.cjs.map +1 -1
  803. package/singlestore-core/columns/custom.d.cts +1 -0
  804. package/singlestore-core/columns/custom.d.ts +1 -0
  805. package/singlestore-core/columns/custom.js.map +1 -1
  806. package/singlestore-core/columns/date.cjs.map +1 -1
  807. package/singlestore-core/columns/date.d.cts +2 -0
  808. package/singlestore-core/columns/date.d.ts +2 -0
  809. package/singlestore-core/columns/date.js.map +1 -1
  810. package/singlestore-core/columns/datetime.cjs.map +1 -1
  811. package/singlestore-core/columns/datetime.d.cts +2 -0
  812. package/singlestore-core/columns/datetime.d.ts +2 -0
  813. package/singlestore-core/columns/datetime.js.map +1 -1
  814. package/singlestore-core/columns/decimal.cjs.map +1 -1
  815. package/singlestore-core/columns/decimal.d.cts +3 -0
  816. package/singlestore-core/columns/decimal.d.ts +3 -0
  817. package/singlestore-core/columns/decimal.js.map +1 -1
  818. package/singlestore-core/columns/double.cjs.map +1 -1
  819. package/singlestore-core/columns/double.d.cts +1 -0
  820. package/singlestore-core/columns/double.d.ts +1 -0
  821. package/singlestore-core/columns/double.js.map +1 -1
  822. package/singlestore-core/columns/enum.cjs.map +1 -1
  823. package/singlestore-core/columns/enum.d.cts +1 -0
  824. package/singlestore-core/columns/enum.d.ts +1 -0
  825. package/singlestore-core/columns/enum.js.map +1 -1
  826. package/singlestore-core/columns/float.cjs.map +1 -1
  827. package/singlestore-core/columns/float.d.cts +1 -0
  828. package/singlestore-core/columns/float.d.ts +1 -0
  829. package/singlestore-core/columns/float.js.map +1 -1
  830. package/singlestore-core/columns/int.cjs.map +1 -1
  831. package/singlestore-core/columns/int.d.cts +1 -0
  832. package/singlestore-core/columns/int.d.ts +1 -0
  833. package/singlestore-core/columns/int.js.map +1 -1
  834. package/singlestore-core/columns/json.cjs.map +1 -1
  835. package/singlestore-core/columns/json.d.cts +1 -0
  836. package/singlestore-core/columns/json.d.ts +1 -0
  837. package/singlestore-core/columns/json.js.map +1 -1
  838. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  839. package/singlestore-core/columns/mediumint.d.cts +1 -0
  840. package/singlestore-core/columns/mediumint.d.ts +1 -0
  841. package/singlestore-core/columns/mediumint.js.map +1 -1
  842. package/singlestore-core/columns/real.cjs.map +1 -1
  843. package/singlestore-core/columns/real.d.cts +1 -0
  844. package/singlestore-core/columns/real.d.ts +1 -0
  845. package/singlestore-core/columns/real.js.map +1 -1
  846. package/singlestore-core/columns/serial.cjs.map +1 -1
  847. package/singlestore-core/columns/serial.d.cts +1 -0
  848. package/singlestore-core/columns/serial.d.ts +1 -0
  849. package/singlestore-core/columns/serial.js.map +1 -1
  850. package/singlestore-core/columns/smallint.cjs.map +1 -1
  851. package/singlestore-core/columns/smallint.d.cts +1 -0
  852. package/singlestore-core/columns/smallint.d.ts +1 -0
  853. package/singlestore-core/columns/smallint.js.map +1 -1
  854. package/singlestore-core/columns/text.cjs.map +1 -1
  855. package/singlestore-core/columns/text.d.cts +1 -0
  856. package/singlestore-core/columns/text.d.ts +1 -0
  857. package/singlestore-core/columns/text.js.map +1 -1
  858. package/singlestore-core/columns/time.cjs.map +1 -1
  859. package/singlestore-core/columns/time.d.cts +1 -0
  860. package/singlestore-core/columns/time.d.ts +1 -0
  861. package/singlestore-core/columns/time.js.map +1 -1
  862. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  863. package/singlestore-core/columns/timestamp.d.cts +2 -0
  864. package/singlestore-core/columns/timestamp.d.ts +2 -0
  865. package/singlestore-core/columns/timestamp.js.map +1 -1
  866. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  867. package/singlestore-core/columns/tinyint.d.cts +1 -0
  868. package/singlestore-core/columns/tinyint.d.ts +1 -0
  869. package/singlestore-core/columns/tinyint.js.map +1 -1
  870. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  871. package/singlestore-core/columns/varbinary.d.cts +1 -0
  872. package/singlestore-core/columns/varbinary.d.ts +1 -0
  873. package/singlestore-core/columns/varbinary.js.map +1 -1
  874. package/singlestore-core/columns/varchar.cjs.map +1 -1
  875. package/singlestore-core/columns/varchar.d.cts +1 -0
  876. package/singlestore-core/columns/varchar.d.ts +1 -0
  877. package/singlestore-core/columns/varchar.js.map +1 -1
  878. package/singlestore-core/columns/vector.cjs.map +1 -1
  879. package/singlestore-core/columns/vector.d.cts +2 -0
  880. package/singlestore-core/columns/vector.d.ts +2 -0
  881. package/singlestore-core/columns/vector.js.map +1 -1
  882. package/singlestore-core/columns/year.cjs.map +1 -1
  883. package/singlestore-core/columns/year.d.cts +1 -0
  884. package/singlestore-core/columns/year.d.ts +1 -0
  885. package/singlestore-core/columns/year.js.map +1 -1
  886. package/singlestore-core/indexes.cjs +0 -2
  887. package/singlestore-core/indexes.cjs.map +1 -1
  888. package/singlestore-core/indexes.d.cts +0 -1
  889. package/singlestore-core/indexes.d.ts +0 -1
  890. package/singlestore-core/indexes.js +0 -2
  891. package/singlestore-core/indexes.js.map +1 -1
  892. package/singlestore-core/primary-keys.cjs +0 -2
  893. package/singlestore-core/primary-keys.cjs.map +1 -1
  894. package/singlestore-core/primary-keys.d.cts +0 -1
  895. package/singlestore-core/primary-keys.d.ts +0 -1
  896. package/singlestore-core/primary-keys.js +0 -2
  897. package/singlestore-core/primary-keys.js.map +1 -1
  898. package/singlestore-core/query-builders/count.cjs.map +1 -1
  899. package/singlestore-core/query-builders/count.d.cts +1 -1
  900. package/singlestore-core/query-builders/count.d.ts +1 -1
  901. package/singlestore-core/query-builders/count.js.map +1 -1
  902. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  903. package/singlestore-core/query-builders/insert.d.cts +1 -1
  904. package/singlestore-core/query-builders/insert.d.ts +1 -1
  905. package/singlestore-core/query-builders/insert.js.map +1 -1
  906. package/singlestore-core/query-builders/select.cjs +2 -2
  907. package/singlestore-core/query-builders/select.cjs.map +1 -1
  908. package/singlestore-core/query-builders/select.js +2 -2
  909. package/singlestore-core/query-builders/select.js.map +1 -1
  910. package/singlestore-core/query-builders/update.cjs.map +1 -1
  911. package/singlestore-core/query-builders/update.d.cts +1 -1
  912. package/singlestore-core/query-builders/update.d.ts +1 -1
  913. package/singlestore-core/query-builders/update.js.map +1 -1
  914. package/singlestore-core/unique-constraint.cjs +0 -2
  915. package/singlestore-core/unique-constraint.cjs.map +1 -1
  916. package/singlestore-core/unique-constraint.d.cts +2 -3
  917. package/singlestore-core/unique-constraint.d.ts +2 -3
  918. package/singlestore-core/unique-constraint.js +0 -2
  919. package/singlestore-core/unique-constraint.js.map +1 -1
  920. package/sql/sql.cjs +9 -10
  921. package/sql/sql.cjs.map +1 -1
  922. package/sql/sql.d.cts +3 -3
  923. package/sql/sql.d.ts +3 -3
  924. package/sql/sql.js +9 -10
  925. package/sql/sql.js.map +1 -1
  926. package/sql-js/session.cjs.map +1 -1
  927. package/sql-js/session.js.map +1 -1
  928. package/{cockroach → sqlite-cloud}/driver.cjs +39 -34
  929. package/sqlite-cloud/driver.cjs.map +1 -0
  930. package/sqlite-cloud/driver.d.cts +33 -0
  931. package/sqlite-cloud/driver.d.ts +33 -0
  932. package/sqlite-cloud/driver.js +78 -0
  933. package/sqlite-cloud/driver.js.map +1 -0
  934. package/{node-mssql → sqlite-cloud}/index.cjs +4 -4
  935. package/sqlite-cloud/index.cjs.map +1 -0
  936. package/sqlite-cloud/index.js.map +1 -0
  937. package/sqlite-cloud/migrator.cjs +69 -0
  938. package/sqlite-cloud/migrator.cjs.map +1 -0
  939. package/sqlite-cloud/migrator.d.cts +4 -0
  940. package/sqlite-cloud/migrator.d.ts +4 -0
  941. package/sqlite-cloud/migrator.js +45 -0
  942. package/sqlite-cloud/migrator.js.map +1 -0
  943. package/sqlite-cloud/session.cjs +254 -0
  944. package/sqlite-cloud/session.cjs.map +1 -0
  945. package/sqlite-cloud/session.d.cts +70 -0
  946. package/sqlite-cloud/session.d.ts +70 -0
  947. package/sqlite-cloud/session.js +228 -0
  948. package/sqlite-cloud/session.js.map +1 -0
  949. package/sqlite-core/columns/blob.cjs.map +1 -1
  950. package/sqlite-core/columns/blob.d.cts +3 -0
  951. package/sqlite-core/columns/blob.d.ts +3 -0
  952. package/sqlite-core/columns/blob.js.map +1 -1
  953. package/sqlite-core/columns/common.cjs +4 -0
  954. package/sqlite-core/columns/common.cjs.map +1 -1
  955. package/sqlite-core/columns/common.js +4 -0
  956. package/sqlite-core/columns/common.js.map +1 -1
  957. package/sqlite-core/columns/custom.cjs.map +1 -1
  958. package/sqlite-core/columns/custom.d.cts +1 -0
  959. package/sqlite-core/columns/custom.d.ts +1 -0
  960. package/sqlite-core/columns/custom.js.map +1 -1
  961. package/sqlite-core/columns/integer.cjs.map +1 -1
  962. package/sqlite-core/columns/integer.d.cts +3 -0
  963. package/sqlite-core/columns/integer.d.ts +3 -0
  964. package/sqlite-core/columns/integer.js.map +1 -1
  965. package/sqlite-core/columns/numeric.cjs.map +1 -1
  966. package/sqlite-core/columns/numeric.d.cts +3 -0
  967. package/sqlite-core/columns/numeric.d.ts +3 -0
  968. package/sqlite-core/columns/numeric.js.map +1 -1
  969. package/sqlite-core/columns/real.cjs.map +1 -1
  970. package/sqlite-core/columns/real.d.cts +1 -0
  971. package/sqlite-core/columns/real.d.ts +1 -0
  972. package/sqlite-core/columns/real.js.map +1 -1
  973. package/sqlite-core/columns/text.cjs.map +1 -1
  974. package/sqlite-core/columns/text.d.cts +2 -0
  975. package/sqlite-core/columns/text.d.ts +2 -0
  976. package/sqlite-core/columns/text.js.map +1 -1
  977. package/sqlite-core/foreign-keys.cjs +0 -3
  978. package/sqlite-core/foreign-keys.cjs.map +1 -1
  979. package/sqlite-core/foreign-keys.d.cts +14 -1
  980. package/sqlite-core/foreign-keys.d.ts +14 -1
  981. package/sqlite-core/foreign-keys.js +0 -3
  982. package/sqlite-core/foreign-keys.js.map +1 -1
  983. package/sqlite-core/indexes.cjs +0 -2
  984. package/sqlite-core/indexes.cjs.map +1 -1
  985. package/sqlite-core/indexes.d.cts +0 -1
  986. package/sqlite-core/indexes.d.ts +0 -1
  987. package/sqlite-core/indexes.js +0 -2
  988. package/sqlite-core/indexes.js.map +1 -1
  989. package/sqlite-core/primary-keys.cjs +0 -2
  990. package/sqlite-core/primary-keys.cjs.map +1 -1
  991. package/sqlite-core/primary-keys.d.cts +0 -1
  992. package/sqlite-core/primary-keys.d.ts +0 -1
  993. package/sqlite-core/primary-keys.js +0 -2
  994. package/sqlite-core/primary-keys.js.map +1 -1
  995. package/sqlite-core/query-builders/count.cjs.map +1 -1
  996. package/sqlite-core/query-builders/count.d.cts +1 -1
  997. package/sqlite-core/query-builders/count.d.ts +1 -1
  998. package/sqlite-core/query-builders/count.js.map +1 -1
  999. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  1000. package/sqlite-core/query-builders/insert.d.cts +2 -2
  1001. package/sqlite-core/query-builders/insert.d.ts +2 -2
  1002. package/sqlite-core/query-builders/insert.js.map +1 -1
  1003. package/sqlite-core/query-builders/update.cjs +2 -2
  1004. package/sqlite-core/query-builders/update.cjs.map +1 -1
  1005. package/sqlite-core/query-builders/update.d.cts +1 -1
  1006. package/sqlite-core/query-builders/update.d.ts +1 -1
  1007. package/sqlite-core/query-builders/update.js +2 -2
  1008. package/sqlite-core/query-builders/update.js.map +1 -1
  1009. package/sqlite-core/unique-constraint.cjs +0 -2
  1010. package/sqlite-core/unique-constraint.cjs.map +1 -1
  1011. package/sqlite-core/unique-constraint.d.cts +2 -3
  1012. package/sqlite-core/unique-constraint.d.ts +2 -3
  1013. package/sqlite-core/unique-constraint.js +0 -2
  1014. package/sqlite-core/unique-constraint.js.map +1 -1
  1015. package/sqlite-proxy/session.cjs +1 -0
  1016. package/sqlite-proxy/session.cjs.map +1 -1
  1017. package/sqlite-proxy/session.js +1 -0
  1018. package/sqlite-proxy/session.js.map +1 -1
  1019. package/table.cjs +1 -0
  1020. package/table.cjs.map +1 -1
  1021. package/table.d.cts +3 -2
  1022. package/table.d.ts +3 -2
  1023. package/table.js +1 -0
  1024. package/table.js.map +1 -1
  1025. package/tidb-serverless/driver.cjs +12 -8
  1026. package/tidb-serverless/driver.cjs.map +1 -1
  1027. package/tidb-serverless/driver.d.cts +3 -3
  1028. package/tidb-serverless/driver.d.ts +3 -3
  1029. package/tidb-serverless/driver.js +12 -8
  1030. package/tidb-serverless/driver.js.map +1 -1
  1031. package/tracing.cjs +3 -3
  1032. package/tracing.cjs.map +1 -1
  1033. package/tracing.js +3 -3
  1034. package/tracing.js.map +1 -1
  1035. package/tursodatabase/database.cjs +10 -6
  1036. package/tursodatabase/database.cjs.map +1 -1
  1037. package/tursodatabase/database.d.cts +3 -3
  1038. package/tursodatabase/database.d.ts +3 -3
  1039. package/tursodatabase/database.js +10 -6
  1040. package/tursodatabase/database.js.map +1 -1
  1041. package/tursodatabase/session.cjs +2 -0
  1042. package/tursodatabase/session.cjs.map +1 -1
  1043. package/tursodatabase/session.js +2 -0
  1044. package/tursodatabase/session.js.map +1 -1
  1045. package/tursodatabase/wasm.cjs +10 -6
  1046. package/tursodatabase/wasm.cjs.map +1 -1
  1047. package/tursodatabase/wasm.d.cts +3 -3
  1048. package/tursodatabase/wasm.d.ts +3 -3
  1049. package/tursodatabase/wasm.js +10 -6
  1050. package/tursodatabase/wasm.js.map +1 -1
  1051. package/vercel-postgres/session.cjs.map +1 -1
  1052. package/vercel-postgres/session.js.map +1 -1
  1053. package/version.cjs +2 -2
  1054. package/version.cjs.map +1 -1
  1055. package/version.d.cts +2 -2
  1056. package/version.d.ts +2 -2
  1057. package/version.js +2 -2
  1058. package/version.js.map +1 -1
  1059. package/cockroach/driver.cjs.map +0 -1
  1060. package/cockroach/driver.d.cts +0 -42
  1061. package/cockroach/driver.d.ts +0 -42
  1062. package/cockroach/driver.js +0 -73
  1063. package/cockroach/driver.js.map +0 -1
  1064. package/cockroach/index.cjs +0 -25
  1065. package/cockroach/index.cjs.map +0 -1
  1066. package/cockroach/index.js.map +0 -1
  1067. package/cockroach/migrator.cjs +0 -33
  1068. package/cockroach/migrator.cjs.map +0 -1
  1069. package/cockroach/migrator.d.cts +0 -3
  1070. package/cockroach/migrator.d.ts +0 -3
  1071. package/cockroach/migrator.js +0 -9
  1072. package/cockroach/migrator.js.map +0 -1
  1073. package/cockroach/session.cjs +0 -253
  1074. package/cockroach/session.cjs.map +0 -1
  1075. package/cockroach/session.d.cts +0 -48
  1076. package/cockroach/session.d.ts +0 -48
  1077. package/cockroach/session.js +0 -217
  1078. package/cockroach/session.js.map +0 -1
  1079. package/cockroach-core/alias.cjs +0 -32
  1080. package/cockroach-core/alias.cjs.map +0 -1
  1081. package/cockroach-core/alias.d.cts +0 -4
  1082. package/cockroach-core/alias.d.ts +0 -4
  1083. package/cockroach-core/alias.js +0 -8
  1084. package/cockroach-core/alias.js.map +0 -1
  1085. package/cockroach-core/checks.cjs +0 -58
  1086. package/cockroach-core/checks.cjs.map +0 -1
  1087. package/cockroach-core/checks.d.cts +0 -18
  1088. package/cockroach-core/checks.d.ts +0 -18
  1089. package/cockroach-core/checks.js +0 -32
  1090. package/cockroach-core/checks.js.map +0 -1
  1091. package/cockroach-core/columns/all.cjs +0 -81
  1092. package/cockroach-core/columns/all.cjs.map +0 -1
  1093. package/cockroach-core/columns/all.d.cts +0 -52
  1094. package/cockroach-core/columns/all.d.ts +0 -52
  1095. package/cockroach-core/columns/all.js +0 -57
  1096. package/cockroach-core/columns/all.js.map +0 -1
  1097. package/cockroach-core/columns/bigint.cjs +0 -104
  1098. package/cockroach-core/columns/bigint.cjs.map +0 -1
  1099. package/cockroach-core/columns/bigint.d.cts +0 -37
  1100. package/cockroach-core/columns/bigint.d.ts +0 -37
  1101. package/cockroach-core/columns/bigint.js +0 -75
  1102. package/cockroach-core/columns/bigint.js.map +0 -1
  1103. package/cockroach-core/columns/bit.cjs +0 -61
  1104. package/cockroach-core/columns/bit.cjs.map +0 -1
  1105. package/cockroach-core/columns/bit.d.cts +0 -29
  1106. package/cockroach-core/columns/bit.d.ts +0 -29
  1107. package/cockroach-core/columns/bit.js +0 -35
  1108. package/cockroach-core/columns/bit.js.map +0 -1
  1109. package/cockroach-core/columns/bool.cjs +0 -59
  1110. package/cockroach-core/columns/bool.cjs.map +0 -1
  1111. package/cockroach-core/columns/bool.d.cts +0 -17
  1112. package/cockroach-core/columns/bool.d.ts +0 -17
  1113. package/cockroach-core/columns/bool.js +0 -32
  1114. package/cockroach-core/columns/bool.js.map +0 -1
  1115. package/cockroach-core/columns/char.cjs +0 -62
  1116. package/cockroach-core/columns/char.cjs.map +0 -1
  1117. package/cockroach-core/columns/char.d.cts +0 -31
  1118. package/cockroach-core/columns/char.d.ts +0 -31
  1119. package/cockroach-core/columns/char.js +0 -36
  1120. package/cockroach-core/columns/char.js.map +0 -1
  1121. package/cockroach-core/columns/common.cjs +0 -198
  1122. package/cockroach-core/columns/common.cjs.map +0 -1
  1123. package/cockroach-core/columns/common.d.cts +0 -98
  1124. package/cockroach-core/columns/common.d.ts +0 -98
  1125. package/cockroach-core/columns/common.js +0 -168
  1126. package/cockroach-core/columns/common.js.map +0 -1
  1127. package/cockroach-core/columns/custom.cjs +0 -102
  1128. package/cockroach-core/columns/custom.cjs.map +0 -1
  1129. package/cockroach-core/columns/custom.d.cts +0 -261
  1130. package/cockroach-core/columns/custom.d.ts +0 -261
  1131. package/cockroach-core/columns/custom.js +0 -76
  1132. package/cockroach-core/columns/custom.js.map +0 -1
  1133. package/cockroach-core/columns/date.cjs +0 -91
  1134. package/cockroach-core/columns/date.cjs.map +0 -1
  1135. package/cockroach-core/columns/date.common.cjs +0 -37
  1136. package/cockroach-core/columns/date.common.cjs.map +0 -1
  1137. package/cockroach-core/columns/date.common.d.cts +0 -7
  1138. package/cockroach-core/columns/date.common.d.ts +0 -7
  1139. package/cockroach-core/columns/date.common.js +0 -13
  1140. package/cockroach-core/columns/date.common.js.map +0 -1
  1141. package/cockroach-core/columns/date.d.cts +0 -36
  1142. package/cockroach-core/columns/date.d.ts +0 -36
  1143. package/cockroach-core/columns/date.js +0 -63
  1144. package/cockroach-core/columns/date.js.map +0 -1
  1145. package/cockroach-core/columns/decimal.cjs +0 -164
  1146. package/cockroach-core/columns/decimal.cjs.map +0 -1
  1147. package/cockroach-core/columns/decimal.d.cts +0 -80
  1148. package/cockroach-core/columns/decimal.d.ts +0 -80
  1149. package/cockroach-core/columns/decimal.js +0 -133
  1150. package/cockroach-core/columns/decimal.js.map +0 -1
  1151. package/cockroach-core/columns/enum.cjs +0 -127
  1152. package/cockroach-core/columns/enum.cjs.map +0 -1
  1153. package/cockroach-core/columns/enum.d.cts +0 -64
  1154. package/cockroach-core/columns/enum.d.ts +0 -64
  1155. package/cockroach-core/columns/enum.js +0 -96
  1156. package/cockroach-core/columns/enum.js.map +0 -1
  1157. package/cockroach-core/columns/float.cjs +0 -65
  1158. package/cockroach-core/columns/float.cjs.map +0 -1
  1159. package/cockroach-core/columns/float.d.cts +0 -18
  1160. package/cockroach-core/columns/float.d.ts +0 -18
  1161. package/cockroach-core/columns/float.js +0 -38
  1162. package/cockroach-core/columns/float.js.map +0 -1
  1163. package/cockroach-core/columns/geometry.cjs +0 -105
  1164. package/cockroach-core/columns/geometry.cjs.map +0 -1
  1165. package/cockroach-core/columns/geometry.d.cts +0 -60
  1166. package/cockroach-core/columns/geometry.d.ts +0 -60
  1167. package/cockroach-core/columns/geometry.js +0 -77
  1168. package/cockroach-core/columns/geometry.js.map +0 -1
  1169. package/cockroach-core/columns/index.cjs +0 -71
  1170. package/cockroach-core/columns/index.cjs.map +0 -1
  1171. package/cockroach-core/columns/index.d.cts +0 -25
  1172. package/cockroach-core/columns/index.d.ts +0 -25
  1173. package/cockroach-core/columns/index.js +0 -26
  1174. package/cockroach-core/columns/index.js.map +0 -1
  1175. package/cockroach-core/columns/inet.cjs +0 -56
  1176. package/cockroach-core/columns/inet.cjs.map +0 -1
  1177. package/cockroach-core/columns/inet.d.cts +0 -16
  1178. package/cockroach-core/columns/inet.d.ts +0 -16
  1179. package/cockroach-core/columns/inet.js +0 -30
  1180. package/cockroach-core/columns/inet.js.map +0 -1
  1181. package/cockroach-core/columns/int.common.cjs +0 -55
  1182. package/cockroach-core/columns/int.common.cjs.map +0 -1
  1183. package/cockroach-core/columns/int.common.d.cts +0 -11
  1184. package/cockroach-core/columns/int.common.d.ts +0 -11
  1185. package/cockroach-core/columns/int.common.js +0 -31
  1186. package/cockroach-core/columns/int.common.js.map +0 -1
  1187. package/cockroach-core/columns/integer.cjs +0 -63
  1188. package/cockroach-core/columns/integer.cjs.map +0 -1
  1189. package/cockroach-core/columns/integer.d.cts +0 -18
  1190. package/cockroach-core/columns/integer.d.ts +0 -18
  1191. package/cockroach-core/columns/integer.js +0 -37
  1192. package/cockroach-core/columns/integer.js.map +0 -1
  1193. package/cockroach-core/columns/interval.cjs +0 -63
  1194. package/cockroach-core/columns/interval.cjs.map +0 -1
  1195. package/cockroach-core/columns/interval.d.cts +0 -28
  1196. package/cockroach-core/columns/interval.d.ts +0 -28
  1197. package/cockroach-core/columns/interval.js +0 -37
  1198. package/cockroach-core/columns/interval.js.map +0 -1
  1199. package/cockroach-core/columns/jsonb.cjs +0 -72
  1200. package/cockroach-core/columns/jsonb.cjs.map +0 -1
  1201. package/cockroach-core/columns/jsonb.d.cts +0 -20
  1202. package/cockroach-core/columns/jsonb.d.ts +0 -20
  1203. package/cockroach-core/columns/jsonb.js +0 -46
  1204. package/cockroach-core/columns/jsonb.js.map +0 -1
  1205. package/cockroach-core/columns/real.cjs +0 -66
  1206. package/cockroach-core/columns/real.cjs.map +0 -1
  1207. package/cockroach-core/columns/real.d.cts +0 -21
  1208. package/cockroach-core/columns/real.d.ts +0 -21
  1209. package/cockroach-core/columns/real.js +0 -40
  1210. package/cockroach-core/columns/real.js.map +0 -1
  1211. package/cockroach-core/columns/smallint.cjs +0 -68
  1212. package/cockroach-core/columns/smallint.cjs.map +0 -1
  1213. package/cockroach-core/columns/smallint.d.cts +0 -19
  1214. package/cockroach-core/columns/smallint.d.ts +0 -19
  1215. package/cockroach-core/columns/smallint.js +0 -41
  1216. package/cockroach-core/columns/smallint.js.map +0 -1
  1217. package/cockroach-core/columns/string.cjs +0 -67
  1218. package/cockroach-core/columns/string.cjs.map +0 -1
  1219. package/cockroach-core/columns/string.d.cts +0 -36
  1220. package/cockroach-core/columns/string.d.ts +0 -36
  1221. package/cockroach-core/columns/string.js +0 -40
  1222. package/cockroach-core/columns/string.js.map +0 -1
  1223. package/cockroach-core/columns/time.cjs +0 -70
  1224. package/cockroach-core/columns/time.cjs.map +0 -1
  1225. package/cockroach-core/columns/time.d.cts +0 -31
  1226. package/cockroach-core/columns/time.d.ts +0 -31
  1227. package/cockroach-core/columns/time.js +0 -44
  1228. package/cockroach-core/columns/time.js.map +0 -1
  1229. package/cockroach-core/columns/timestamp.cjs +0 -111
  1230. package/cockroach-core/columns/timestamp.cjs.map +0 -1
  1231. package/cockroach-core/columns/timestamp.d.cts +0 -52
  1232. package/cockroach-core/columns/timestamp.d.ts +0 -52
  1233. package/cockroach-core/columns/timestamp.js +0 -83
  1234. package/cockroach-core/columns/timestamp.js.map +0 -1
  1235. package/cockroach-core/columns/utils.cjs +0 -65
  1236. package/cockroach-core/columns/utils.cjs.map +0 -1
  1237. package/cockroach-core/columns/utils.d.cts +0 -4
  1238. package/cockroach-core/columns/utils.d.ts +0 -4
  1239. package/cockroach-core/columns/utils.js +0 -41
  1240. package/cockroach-core/columns/utils.js.map +0 -1
  1241. package/cockroach-core/columns/uuid.cjs +0 -63
  1242. package/cockroach-core/columns/uuid.cjs.map +0 -1
  1243. package/cockroach-core/columns/uuid.d.cts +0 -20
  1244. package/cockroach-core/columns/uuid.d.ts +0 -20
  1245. package/cockroach-core/columns/uuid.js +0 -37
  1246. package/cockroach-core/columns/uuid.js.map +0 -1
  1247. package/cockroach-core/columns/varbit.cjs +0 -59
  1248. package/cockroach-core/columns/varbit.cjs.map +0 -1
  1249. package/cockroach-core/columns/varbit.d.cts +0 -24
  1250. package/cockroach-core/columns/varbit.d.ts +0 -24
  1251. package/cockroach-core/columns/varbit.js +0 -33
  1252. package/cockroach-core/columns/varbit.js.map +0 -1
  1253. package/cockroach-core/columns/varchar.cjs +0 -61
  1254. package/cockroach-core/columns/varchar.cjs.map +0 -1
  1255. package/cockroach-core/columns/varchar.d.cts +0 -30
  1256. package/cockroach-core/columns/varchar.d.ts +0 -30
  1257. package/cockroach-core/columns/varchar.js +0 -35
  1258. package/cockroach-core/columns/varchar.js.map +0 -1
  1259. package/cockroach-core/columns/vector.cjs +0 -65
  1260. package/cockroach-core/columns/vector.cjs.map +0 -1
  1261. package/cockroach-core/columns/vector.d.cts +0 -26
  1262. package/cockroach-core/columns/vector.d.ts +0 -26
  1263. package/cockroach-core/columns/vector.js +0 -39
  1264. package/cockroach-core/columns/vector.js.map +0 -1
  1265. package/cockroach-core/db.cjs +0 -346
  1266. package/cockroach-core/db.cjs.map +0 -1
  1267. package/cockroach-core/db.d.cts +0 -282
  1268. package/cockroach-core/db.d.ts +0 -282
  1269. package/cockroach-core/db.js +0 -327
  1270. package/cockroach-core/db.js.map +0 -1
  1271. package/cockroach-core/dialect.cjs +0 -1146
  1272. package/cockroach-core/dialect.cjs.map +0 -1
  1273. package/cockroach-core/dialect.d.cts +0 -65
  1274. package/cockroach-core/dialect.d.ts +0 -65
  1275. package/cockroach-core/dialect.js +0 -1126
  1276. package/cockroach-core/dialect.js.map +0 -1
  1277. package/cockroach-core/expressions.cjs +0 -49
  1278. package/cockroach-core/expressions.cjs.map +0 -1
  1279. package/cockroach-core/expressions.d.cts +0 -8
  1280. package/cockroach-core/expressions.d.ts +0 -8
  1281. package/cockroach-core/expressions.js +0 -22
  1282. package/cockroach-core/expressions.js.map +0 -1
  1283. package/cockroach-core/foreign-keys.cjs +0 -95
  1284. package/cockroach-core/foreign-keys.cjs.map +0 -1
  1285. package/cockroach-core/foreign-keys.d.cts +0 -53
  1286. package/cockroach-core/foreign-keys.d.ts +0 -53
  1287. package/cockroach-core/foreign-keys.js +0 -69
  1288. package/cockroach-core/foreign-keys.js.map +0 -1
  1289. package/cockroach-core/index.cjs +0 -61
  1290. package/cockroach-core/index.cjs.map +0 -1
  1291. package/cockroach-core/index.d.cts +0 -20
  1292. package/cockroach-core/index.d.ts +0 -20
  1293. package/cockroach-core/index.js +0 -21
  1294. package/cockroach-core/index.js.map +0 -1
  1295. package/cockroach-core/indexes.cjs +0 -139
  1296. package/cockroach-core/indexes.cjs.map +0 -1
  1297. package/cockroach-core/indexes.d.cts +0 -65
  1298. package/cockroach-core/indexes.d.ts +0 -65
  1299. package/cockroach-core/indexes.js +0 -111
  1300. package/cockroach-core/indexes.js.map +0 -1
  1301. package/cockroach-core/policies.cjs +0 -58
  1302. package/cockroach-core/policies.cjs.map +0 -1
  1303. package/cockroach-core/policies.d.cts +0 -24
  1304. package/cockroach-core/policies.d.ts +0 -24
  1305. package/cockroach-core/policies.js +0 -33
  1306. package/cockroach-core/policies.js.map +0 -1
  1307. package/cockroach-core/primary-keys.cjs +0 -66
  1308. package/cockroach-core/primary-keys.cjs.map +0 -1
  1309. package/cockroach-core/primary-keys.d.cts +0 -24
  1310. package/cockroach-core/primary-keys.d.ts +0 -24
  1311. package/cockroach-core/primary-keys.js +0 -40
  1312. package/cockroach-core/primary-keys.js.map +0 -1
  1313. package/cockroach-core/query-builders/count.cjs +0 -79
  1314. package/cockroach-core/query-builders/count.cjs.map +0 -1
  1315. package/cockroach-core/query-builders/count.d.cts +0 -30
  1316. package/cockroach-core/query-builders/count.d.ts +0 -30
  1317. package/cockroach-core/query-builders/count.js +0 -55
  1318. package/cockroach-core/query-builders/count.js.map +0 -1
  1319. package/cockroach-core/query-builders/delete.cjs +0 -124
  1320. package/cockroach-core/query-builders/delete.cjs.map +0 -1
  1321. package/cockroach-core/query-builders/delete.d.cts +0 -103
  1322. package/cockroach-core/query-builders/delete.d.ts +0 -103
  1323. package/cockroach-core/query-builders/delete.js +0 -100
  1324. package/cockroach-core/query-builders/delete.js.map +0 -1
  1325. package/cockroach-core/query-builders/index.cjs +0 -35
  1326. package/cockroach-core/query-builders/index.cjs.map +0 -1
  1327. package/cockroach-core/query-builders/index.d.cts +0 -7
  1328. package/cockroach-core/query-builders/index.d.ts +0 -7
  1329. package/cockroach-core/query-builders/index.js +0 -8
  1330. package/cockroach-core/query-builders/index.js.map +0 -1
  1331. package/cockroach-core/query-builders/insert.cjs +0 -213
  1332. package/cockroach-core/query-builders/insert.cjs.map +0 -1
  1333. package/cockroach-core/query-builders/insert.d.cts +0 -168
  1334. package/cockroach-core/query-builders/insert.d.ts +0 -168
  1335. package/cockroach-core/query-builders/insert.js +0 -188
  1336. package/cockroach-core/query-builders/insert.js.map +0 -1
  1337. package/cockroach-core/query-builders/query-builder.cjs +0 -118
  1338. package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
  1339. package/cockroach-core/query-builders/query-builder.d.cts +0 -37
  1340. package/cockroach-core/query-builders/query-builder.d.ts +0 -37
  1341. package/cockroach-core/query-builders/query-builder.js +0 -94
  1342. package/cockroach-core/query-builders/query-builder.js.map +0 -1
  1343. package/cockroach-core/query-builders/query.cjs +0 -145
  1344. package/cockroach-core/query-builders/query.cjs.map +0 -1
  1345. package/cockroach-core/query-builders/query.d.cts +0 -47
  1346. package/cockroach-core/query-builders/query.d.ts +0 -47
  1347. package/cockroach-core/query-builders/query.js +0 -122
  1348. package/cockroach-core/query-builders/query.js.map +0 -1
  1349. package/cockroach-core/query-builders/raw.cjs +0 -57
  1350. package/cockroach-core/query-builders/raw.cjs.map +0 -1
  1351. package/cockroach-core/query-builders/raw.d.cts +0 -22
  1352. package/cockroach-core/query-builders/raw.d.ts +0 -22
  1353. package/cockroach-core/query-builders/raw.js +0 -33
  1354. package/cockroach-core/query-builders/raw.js.map +0 -1
  1355. package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
  1356. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
  1357. package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
  1358. package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
  1359. package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
  1360. package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
  1361. package/cockroach-core/query-builders/select.cjs +0 -847
  1362. package/cockroach-core/query-builders/select.cjs.map +0 -1
  1363. package/cockroach-core/query-builders/select.d.cts +0 -787
  1364. package/cockroach-core/query-builders/select.d.ts +0 -787
  1365. package/cockroach-core/query-builders/select.js +0 -821
  1366. package/cockroach-core/query-builders/select.js.map +0 -1
  1367. package/cockroach-core/query-builders/select.types.cjs +0 -17
  1368. package/cockroach-core/query-builders/select.types.cjs.map +0 -1
  1369. package/cockroach-core/query-builders/select.types.d.cts +0 -140
  1370. package/cockroach-core/query-builders/select.types.d.ts +0 -140
  1371. package/cockroach-core/query-builders/select.types.js +0 -1
  1372. package/cockroach-core/query-builders/select.types.js.map +0 -1
  1373. package/cockroach-core/query-builders/update.cjs +0 -240
  1374. package/cockroach-core/query-builders/update.cjs.map +0 -1
  1375. package/cockroach-core/query-builders/update.d.cts +0 -170
  1376. package/cockroach-core/query-builders/update.d.ts +0 -170
  1377. package/cockroach-core/query-builders/update.js +0 -219
  1378. package/cockroach-core/query-builders/update.js.map +0 -1
  1379. package/cockroach-core/roles.cjs +0 -54
  1380. package/cockroach-core/roles.cjs.map +0 -1
  1381. package/cockroach-core/roles.d.cts +0 -12
  1382. package/cockroach-core/roles.d.ts +0 -12
  1383. package/cockroach-core/roles.js +0 -29
  1384. package/cockroach-core/roles.js.map +0 -1
  1385. package/cockroach-core/schema.cjs +0 -92
  1386. package/cockroach-core/schema.cjs.map +0 -1
  1387. package/cockroach-core/schema.d.cts +0 -24
  1388. package/cockroach-core/schema.d.ts +0 -24
  1389. package/cockroach-core/schema.js +0 -72
  1390. package/cockroach-core/schema.js.map +0 -1
  1391. package/cockroach-core/sequence.cjs +0 -52
  1392. package/cockroach-core/sequence.cjs.map +0 -1
  1393. package/cockroach-core/sequence.d.cts +0 -17
  1394. package/cockroach-core/sequence.d.ts +0 -17
  1395. package/cockroach-core/sequence.js +0 -25
  1396. package/cockroach-core/sequence.js.map +0 -1
  1397. package/cockroach-core/session.cjs +0 -120
  1398. package/cockroach-core/session.cjs.map +0 -1
  1399. package/cockroach-core/session.d.cts +0 -62
  1400. package/cockroach-core/session.d.ts +0 -62
  1401. package/cockroach-core/session.js +0 -94
  1402. package/cockroach-core/session.js.map +0 -1
  1403. package/cockroach-core/subquery.cjs +0 -17
  1404. package/cockroach-core/subquery.cjs.map +0 -1
  1405. package/cockroach-core/subquery.d.cts +0 -18
  1406. package/cockroach-core/subquery.d.ts +0 -18
  1407. package/cockroach-core/subquery.js +0 -1
  1408. package/cockroach-core/subquery.js.map +0 -1
  1409. package/cockroach-core/table.cjs +0 -121
  1410. package/cockroach-core/table.cjs.map +0 -1
  1411. package/cockroach-core/table.d.cts +0 -40
  1412. package/cockroach-core/table.d.ts +0 -40
  1413. package/cockroach-core/table.js +0 -94
  1414. package/cockroach-core/table.js.map +0 -1
  1415. package/cockroach-core/unique-constraint.cjs +0 -77
  1416. package/cockroach-core/unique-constraint.cjs.map +0 -1
  1417. package/cockroach-core/unique-constraint.d.cts +0 -23
  1418. package/cockroach-core/unique-constraint.d.ts +0 -23
  1419. package/cockroach-core/unique-constraint.js +0 -50
  1420. package/cockroach-core/unique-constraint.js.map +0 -1
  1421. package/cockroach-core/utils/array.cjs +0 -106
  1422. package/cockroach-core/utils/array.cjs.map +0 -1
  1423. package/cockroach-core/utils/array.d.cts +0 -3
  1424. package/cockroach-core/utils/array.d.ts +0 -3
  1425. package/cockroach-core/utils/array.js +0 -80
  1426. package/cockroach-core/utils/array.js.map +0 -1
  1427. package/cockroach-core/utils/index.cjs +0 -23
  1428. package/cockroach-core/utils/index.cjs.map +0 -1
  1429. package/cockroach-core/utils/index.d.cts +0 -1
  1430. package/cockroach-core/utils/index.d.ts +0 -1
  1431. package/cockroach-core/utils/index.js +0 -2
  1432. package/cockroach-core/utils/index.js.map +0 -1
  1433. package/cockroach-core/utils.cjs +0 -98
  1434. package/cockroach-core/utils.cjs.map +0 -1
  1435. package/cockroach-core/utils.d.cts +0 -47
  1436. package/cockroach-core/utils.d.ts +0 -47
  1437. package/cockroach-core/utils.js +0 -72
  1438. package/cockroach-core/utils.js.map +0 -1
  1439. package/cockroach-core/view-base.cjs +0 -33
  1440. package/cockroach-core/view-base.cjs.map +0 -1
  1441. package/cockroach-core/view-base.d.cts +0 -8
  1442. package/cockroach-core/view-base.d.ts +0 -8
  1443. package/cockroach-core/view-base.js +0 -9
  1444. package/cockroach-core/view-base.js.map +0 -1
  1445. package/cockroach-core/view.cjs +0 -271
  1446. package/cockroach-core/view.cjs.map +0 -1
  1447. package/cockroach-core/view.d.cts +0 -106
  1448. package/cockroach-core/view.d.ts +0 -106
  1449. package/cockroach-core/view.js +0 -233
  1450. package/cockroach-core/view.js.map +0 -1
  1451. package/mssql-core/alias.cjs +0 -32
  1452. package/mssql-core/alias.cjs.map +0 -1
  1453. package/mssql-core/alias.d.cts +0 -4
  1454. package/mssql-core/alias.d.ts +0 -4
  1455. package/mssql-core/alias.js +0 -8
  1456. package/mssql-core/alias.js.map +0 -1
  1457. package/mssql-core/checks.cjs +0 -58
  1458. package/mssql-core/checks.cjs.map +0 -1
  1459. package/mssql-core/checks.d.cts +0 -18
  1460. package/mssql-core/checks.d.ts +0 -18
  1461. package/mssql-core/checks.js +0 -32
  1462. package/mssql-core/checks.js.map +0 -1
  1463. package/mssql-core/columns/all.cjs +0 -74
  1464. package/mssql-core/columns/all.cjs.map +0 -1
  1465. package/mssql-core/columns/all.d.cts +0 -45
  1466. package/mssql-core/columns/all.d.ts +0 -45
  1467. package/mssql-core/columns/all.js +0 -50
  1468. package/mssql-core/columns/all.js.map +0 -1
  1469. package/mssql-core/columns/bigint.cjs +0 -72
  1470. package/mssql-core/columns/bigint.cjs.map +0 -1
  1471. package/mssql-core/columns/bigint.d.cts +0 -25
  1472. package/mssql-core/columns/bigint.d.ts +0 -25
  1473. package/mssql-core/columns/bigint.js +0 -46
  1474. package/mssql-core/columns/bigint.js.map +0 -1
  1475. package/mssql-core/columns/binary.cjs +0 -57
  1476. package/mssql-core/columns/binary.cjs.map +0 -1
  1477. package/mssql-core/columns/binary.d.cts +0 -24
  1478. package/mssql-core/columns/binary.d.ts +0 -24
  1479. package/mssql-core/columns/binary.js +0 -31
  1480. package/mssql-core/columns/binary.js.map +0 -1
  1481. package/mssql-core/columns/bit.cjs +0 -54
  1482. package/mssql-core/columns/bit.cjs.map +0 -1
  1483. package/mssql-core/columns/bit.d.cts +0 -17
  1484. package/mssql-core/columns/bit.d.ts +0 -17
  1485. package/mssql-core/columns/bit.js +0 -28
  1486. package/mssql-core/columns/bit.js.map +0 -1
  1487. package/mssql-core/columns/char.cjs +0 -73
  1488. package/mssql-core/columns/char.cjs.map +0 -1
  1489. package/mssql-core/columns/char.d.cts +0 -29
  1490. package/mssql-core/columns/char.d.ts +0 -29
  1491. package/mssql-core/columns/char.js +0 -46
  1492. package/mssql-core/columns/char.js.map +0 -1
  1493. package/mssql-core/columns/common.cjs +0 -112
  1494. package/mssql-core/columns/common.cjs.map +0 -1
  1495. package/mssql-core/columns/common.d.cts +0 -57
  1496. package/mssql-core/columns/common.d.ts +0 -57
  1497. package/mssql-core/columns/common.js +0 -85
  1498. package/mssql-core/columns/common.js.map +0 -1
  1499. package/mssql-core/columns/custom.cjs +0 -105
  1500. package/mssql-core/columns/custom.cjs.map +0 -1
  1501. package/mssql-core/columns/custom.d.cts +0 -261
  1502. package/mssql-core/columns/custom.d.ts +0 -261
  1503. package/mssql-core/columns/custom.js +0 -79
  1504. package/mssql-core/columns/custom.js.map +0 -1
  1505. package/mssql-core/columns/date.cjs +0 -94
  1506. package/mssql-core/columns/date.cjs.map +0 -1
  1507. package/mssql-core/columns/date.common.cjs +0 -37
  1508. package/mssql-core/columns/date.common.cjs.map +0 -1
  1509. package/mssql-core/columns/date.common.d.cts +0 -12
  1510. package/mssql-core/columns/date.common.d.ts +0 -12
  1511. package/mssql-core/columns/date.common.js +0 -13
  1512. package/mssql-core/columns/date.common.js.map +0 -1
  1513. package/mssql-core/columns/date.d.cts +0 -39
  1514. package/mssql-core/columns/date.d.ts +0 -39
  1515. package/mssql-core/columns/date.js +0 -66
  1516. package/mssql-core/columns/date.js.map +0 -1
  1517. package/mssql-core/columns/datetime.cjs +0 -94
  1518. package/mssql-core/columns/datetime.cjs.map +0 -1
  1519. package/mssql-core/columns/datetime.d.cts +0 -38
  1520. package/mssql-core/columns/datetime.d.ts +0 -38
  1521. package/mssql-core/columns/datetime.js +0 -66
  1522. package/mssql-core/columns/datetime.js.map +0 -1
  1523. package/mssql-core/columns/datetime2.cjs +0 -102
  1524. package/mssql-core/columns/datetime2.cjs.map +0 -1
  1525. package/mssql-core/columns/datetime2.d.cts +0 -38
  1526. package/mssql-core/columns/datetime2.d.ts +0 -38
  1527. package/mssql-core/columns/datetime2.js +0 -74
  1528. package/mssql-core/columns/datetime2.js.map +0 -1
  1529. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  1530. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  1531. package/mssql-core/columns/datetimeoffset.d.cts +0 -39
  1532. package/mssql-core/columns/datetimeoffset.d.ts +0 -39
  1533. package/mssql-core/columns/datetimeoffset.js +0 -74
  1534. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  1535. package/mssql-core/columns/decimal.cjs +0 -146
  1536. package/mssql-core/columns/decimal.cjs.map +0 -1
  1537. package/mssql-core/columns/decimal.d.cts +0 -58
  1538. package/mssql-core/columns/decimal.d.ts +0 -58
  1539. package/mssql-core/columns/decimal.js +0 -116
  1540. package/mssql-core/columns/decimal.js.map +0 -1
  1541. package/mssql-core/columns/float.cjs +0 -58
  1542. package/mssql-core/columns/float.cjs.map +0 -1
  1543. package/mssql-core/columns/float.d.cts +0 -21
  1544. package/mssql-core/columns/float.d.ts +0 -21
  1545. package/mssql-core/columns/float.js +0 -32
  1546. package/mssql-core/columns/float.js.map +0 -1
  1547. package/mssql-core/columns/index.cjs +0 -63
  1548. package/mssql-core/columns/index.cjs.map +0 -1
  1549. package/mssql-core/columns/index.d.cts +0 -21
  1550. package/mssql-core/columns/index.d.ts +0 -21
  1551. package/mssql-core/columns/index.js +0 -22
  1552. package/mssql-core/columns/index.js.map +0 -1
  1553. package/mssql-core/columns/int.cjs +0 -53
  1554. package/mssql-core/columns/int.cjs.map +0 -1
  1555. package/mssql-core/columns/int.d.cts +0 -16
  1556. package/mssql-core/columns/int.d.ts +0 -16
  1557. package/mssql-core/columns/int.js +0 -27
  1558. package/mssql-core/columns/int.js.map +0 -1
  1559. package/mssql-core/columns/numeric.cjs +0 -146
  1560. package/mssql-core/columns/numeric.cjs.map +0 -1
  1561. package/mssql-core/columns/numeric.d.cts +0 -58
  1562. package/mssql-core/columns/numeric.d.ts +0 -58
  1563. package/mssql-core/columns/numeric.js +0 -116
  1564. package/mssql-core/columns/numeric.js.map +0 -1
  1565. package/mssql-core/columns/real.cjs +0 -53
  1566. package/mssql-core/columns/real.cjs.map +0 -1
  1567. package/mssql-core/columns/real.d.cts +0 -16
  1568. package/mssql-core/columns/real.d.ts +0 -16
  1569. package/mssql-core/columns/real.js +0 -27
  1570. package/mssql-core/columns/real.js.map +0 -1
  1571. package/mssql-core/columns/smallint.cjs +0 -62
  1572. package/mssql-core/columns/smallint.cjs.map +0 -1
  1573. package/mssql-core/columns/smallint.d.cts +0 -17
  1574. package/mssql-core/columns/smallint.d.ts +0 -17
  1575. package/mssql-core/columns/smallint.js +0 -36
  1576. package/mssql-core/columns/smallint.js.map +0 -1
  1577. package/mssql-core/columns/text.cjs +0 -68
  1578. package/mssql-core/columns/text.cjs.map +0 -1
  1579. package/mssql-core/columns/text.d.cts +0 -36
  1580. package/mssql-core/columns/text.d.ts +0 -36
  1581. package/mssql-core/columns/text.js +0 -41
  1582. package/mssql-core/columns/text.js.map +0 -1
  1583. package/mssql-core/columns/time.cjs +0 -90
  1584. package/mssql-core/columns/time.cjs.map +0 -1
  1585. package/mssql-core/columns/time.d.cts +0 -37
  1586. package/mssql-core/columns/time.d.ts +0 -37
  1587. package/mssql-core/columns/time.js +0 -62
  1588. package/mssql-core/columns/time.js.map +0 -1
  1589. package/mssql-core/columns/tinyint.cjs +0 -62
  1590. package/mssql-core/columns/tinyint.cjs.map +0 -1
  1591. package/mssql-core/columns/tinyint.d.cts +0 -17
  1592. package/mssql-core/columns/tinyint.d.ts +0 -17
  1593. package/mssql-core/columns/tinyint.js +0 -36
  1594. package/mssql-core/columns/tinyint.js.map +0 -1
  1595. package/mssql-core/columns/varbinary.cjs +0 -61
  1596. package/mssql-core/columns/varbinary.cjs.map +0 -1
  1597. package/mssql-core/columns/varbinary.d.cts +0 -23
  1598. package/mssql-core/columns/varbinary.d.ts +0 -23
  1599. package/mssql-core/columns/varbinary.js +0 -35
  1600. package/mssql-core/columns/varbinary.js.map +0 -1
  1601. package/mssql-core/columns/varchar.cjs +0 -117
  1602. package/mssql-core/columns/varchar.cjs.map +0 -1
  1603. package/mssql-core/columns/varchar.d.cts +0 -59
  1604. package/mssql-core/columns/varchar.d.ts +0 -59
  1605. package/mssql-core/columns/varchar.js +0 -88
  1606. package/mssql-core/columns/varchar.js.map +0 -1
  1607. package/mssql-core/db.cjs +0 -254
  1608. package/mssql-core/db.cjs.map +0 -1
  1609. package/mssql-core/db.d.cts +0 -228
  1610. package/mssql-core/db.d.ts +0 -228
  1611. package/mssql-core/db.js +0 -235
  1612. package/mssql-core/db.js.map +0 -1
  1613. package/mssql-core/dialect.cjs +0 -633
  1614. package/mssql-core/dialect.cjs.map +0 -1
  1615. package/mssql-core/dialect.d.cts +0 -58
  1616. package/mssql-core/dialect.d.ts +0 -58
  1617. package/mssql-core/dialect.js +0 -599
  1618. package/mssql-core/dialect.js.map +0 -1
  1619. package/mssql-core/expressions.cjs +0 -49
  1620. package/mssql-core/expressions.cjs.map +0 -1
  1621. package/mssql-core/expressions.d.cts +0 -8
  1622. package/mssql-core/expressions.d.ts +0 -8
  1623. package/mssql-core/expressions.js +0 -22
  1624. package/mssql-core/expressions.js.map +0 -1
  1625. package/mssql-core/foreign-keys.cjs +0 -94
  1626. package/mssql-core/foreign-keys.cjs.map +0 -1
  1627. package/mssql-core/foreign-keys.d.cts +0 -52
  1628. package/mssql-core/foreign-keys.d.ts +0 -52
  1629. package/mssql-core/foreign-keys.js +0 -68
  1630. package/mssql-core/foreign-keys.js.map +0 -1
  1631. package/mssql-core/index.cjs +0 -55
  1632. package/mssql-core/index.cjs.map +0 -1
  1633. package/mssql-core/index.d.cts +0 -17
  1634. package/mssql-core/index.d.ts +0 -17
  1635. package/mssql-core/index.js +0 -18
  1636. package/mssql-core/index.js.map +0 -1
  1637. package/mssql-core/indexes.cjs +0 -82
  1638. package/mssql-core/indexes.cjs.map +0 -1
  1639. package/mssql-core/indexes.d.cts +0 -50
  1640. package/mssql-core/indexes.d.ts +0 -50
  1641. package/mssql-core/indexes.js +0 -54
  1642. package/mssql-core/indexes.js.map +0 -1
  1643. package/mssql-core/primary-keys.cjs +0 -66
  1644. package/mssql-core/primary-keys.cjs.map +0 -1
  1645. package/mssql-core/primary-keys.d.cts +0 -24
  1646. package/mssql-core/primary-keys.d.ts +0 -24
  1647. package/mssql-core/primary-keys.js +0 -40
  1648. package/mssql-core/primary-keys.js.map +0 -1
  1649. package/mssql-core/query-builders/delete.cjs +0 -107
  1650. package/mssql-core/query-builders/delete.cjs.map +0 -1
  1651. package/mssql-core/query-builders/delete.d.cts +0 -98
  1652. package/mssql-core/query-builders/delete.d.ts +0 -98
  1653. package/mssql-core/query-builders/delete.js +0 -83
  1654. package/mssql-core/query-builders/delete.js.map +0 -1
  1655. package/mssql-core/query-builders/index.cjs +0 -33
  1656. package/mssql-core/query-builders/index.cjs.map +0 -1
  1657. package/mssql-core/query-builders/index.d.cts +0 -6
  1658. package/mssql-core/query-builders/index.d.ts +0 -6
  1659. package/mssql-core/query-builders/index.js +0 -7
  1660. package/mssql-core/query-builders/index.js.map +0 -1
  1661. package/mssql-core/query-builders/insert.cjs +0 -105
  1662. package/mssql-core/query-builders/insert.cjs.map +0 -1
  1663. package/mssql-core/query-builders/insert.d.cts +0 -79
  1664. package/mssql-core/query-builders/insert.d.ts +0 -79
  1665. package/mssql-core/query-builders/insert.js +0 -80
  1666. package/mssql-core/query-builders/insert.js.map +0 -1
  1667. package/mssql-core/query-builders/query-builder.cjs +0 -95
  1668. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  1669. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  1670. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  1671. package/mssql-core/query-builders/query-builder.js +0 -71
  1672. package/mssql-core/query-builders/query-builder.js.map +0 -1
  1673. package/mssql-core/query-builders/query.cjs +0 -126
  1674. package/mssql-core/query-builders/query.cjs.map +0 -1
  1675. package/mssql-core/query-builders/query.d.cts +0 -42
  1676. package/mssql-core/query-builders/query.d.ts +0 -42
  1677. package/mssql-core/query-builders/query.js +0 -103
  1678. package/mssql-core/query-builders/query.js.map +0 -1
  1679. package/mssql-core/query-builders/select.cjs +0 -678
  1680. package/mssql-core/query-builders/select.cjs.map +0 -1
  1681. package/mssql-core/query-builders/select.d.cts +0 -549
  1682. package/mssql-core/query-builders/select.d.ts +0 -549
  1683. package/mssql-core/query-builders/select.js +0 -654
  1684. package/mssql-core/query-builders/select.js.map +0 -1
  1685. package/mssql-core/query-builders/select.types.cjs +0 -17
  1686. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  1687. package/mssql-core/query-builders/select.types.d.cts +0 -142
  1688. package/mssql-core/query-builders/select.types.d.ts +0 -142
  1689. package/mssql-core/query-builders/select.types.js +0 -1
  1690. package/mssql-core/query-builders/select.types.js.map +0 -1
  1691. package/mssql-core/query-builders/update.cjs +0 -138
  1692. package/mssql-core/query-builders/update.cjs.map +0 -1
  1693. package/mssql-core/query-builders/update.d.cts +0 -142
  1694. package/mssql-core/query-builders/update.d.ts +0 -142
  1695. package/mssql-core/query-builders/update.js +0 -113
  1696. package/mssql-core/query-builders/update.js.map +0 -1
  1697. package/mssql-core/schema.cjs +0 -53
  1698. package/mssql-core/schema.cjs.map +0 -1
  1699. package/mssql-core/schema.d.cts +0 -13
  1700. package/mssql-core/schema.d.ts +0 -13
  1701. package/mssql-core/schema.js +0 -28
  1702. package/mssql-core/schema.js.map +0 -1
  1703. package/mssql-core/session.cjs +0 -74
  1704. package/mssql-core/session.cjs.map +0 -1
  1705. package/mssql-core/session.d.cts +0 -63
  1706. package/mssql-core/session.d.ts +0 -63
  1707. package/mssql-core/session.js +0 -48
  1708. package/mssql-core/session.js.map +0 -1
  1709. package/mssql-core/subquery.cjs +0 -17
  1710. package/mssql-core/subquery.cjs.map +0 -1
  1711. package/mssql-core/subquery.d.cts +0 -18
  1712. package/mssql-core/subquery.d.ts +0 -18
  1713. package/mssql-core/subquery.js +0 -1
  1714. package/mssql-core/subquery.js.map +0 -1
  1715. package/mssql-core/table.cjs +0 -81
  1716. package/mssql-core/table.cjs.map +0 -1
  1717. package/mssql-core/table.d.cts +0 -40
  1718. package/mssql-core/table.d.ts +0 -40
  1719. package/mssql-core/table.js +0 -55
  1720. package/mssql-core/table.js.map +0 -1
  1721. package/mssql-core/unique-constraint.cjs +0 -78
  1722. package/mssql-core/unique-constraint.cjs.map +0 -1
  1723. package/mssql-core/unique-constraint.d.cts +0 -24
  1724. package/mssql-core/unique-constraint.d.ts +0 -24
  1725. package/mssql-core/unique-constraint.js +0 -51
  1726. package/mssql-core/unique-constraint.js.map +0 -1
  1727. package/mssql-core/utils.cjs +0 -85
  1728. package/mssql-core/utils.cjs.map +0 -1
  1729. package/mssql-core/utils.d.cts +0 -31
  1730. package/mssql-core/utils.d.ts +0 -31
  1731. package/mssql-core/utils.js +0 -60
  1732. package/mssql-core/utils.js.map +0 -1
  1733. package/mssql-core/view-base.cjs +0 -33
  1734. package/mssql-core/view-base.cjs.map +0 -1
  1735. package/mssql-core/view-base.d.cts +0 -9
  1736. package/mssql-core/view-base.d.ts +0 -9
  1737. package/mssql-core/view-base.js +0 -9
  1738. package/mssql-core/view-base.js.map +0 -1
  1739. package/mssql-core/view-common.cjs +0 -29
  1740. package/mssql-core/view-common.cjs.map +0 -1
  1741. package/mssql-core/view-common.d.cts +0 -1
  1742. package/mssql-core/view-common.d.ts +0 -1
  1743. package/mssql-core/view-common.js +0 -5
  1744. package/mssql-core/view-common.js.map +0 -1
  1745. package/mssql-core/view.cjs +0 -154
  1746. package/mssql-core/view.cjs.map +0 -1
  1747. package/mssql-core/view.d.cts +0 -63
  1748. package/mssql-core/view.d.ts +0 -63
  1749. package/mssql-core/view.js +0 -125
  1750. package/mssql-core/view.js.map +0 -1
  1751. package/mysql-core/columns/blob.cjs +0 -158
  1752. package/mysql-core/columns/blob.cjs.map +0 -1
  1753. package/mysql-core/columns/blob.d.cts +0 -54
  1754. package/mysql-core/columns/blob.d.ts +0 -54
  1755. package/mysql-core/columns/blob.js +0 -127
  1756. package/mysql-core/columns/blob.js.map +0 -1
  1757. package/mysql-core/columns/string.common.cjs +0 -48
  1758. package/mysql-core/columns/string.common.cjs.map +0 -1
  1759. package/mysql-core/columns/string.common.d.cts +0 -21
  1760. package/mysql-core/columns/string.common.d.ts +0 -21
  1761. package/mysql-core/columns/string.common.js +0 -23
  1762. package/mysql-core/columns/string.common.js.map +0 -1
  1763. package/node-mssql/driver.cjs +0 -113
  1764. package/node-mssql/driver.cjs.map +0 -1
  1765. package/node-mssql/driver.d.cts +0 -46
  1766. package/node-mssql/driver.d.ts +0 -46
  1767. package/node-mssql/driver.js +0 -77
  1768. package/node-mssql/driver.js.map +0 -1
  1769. package/node-mssql/index.cjs.map +0 -1
  1770. package/node-mssql/index.d.cts +0 -2
  1771. package/node-mssql/index.d.ts +0 -2
  1772. package/node-mssql/index.js +0 -3
  1773. package/node-mssql/index.js.map +0 -1
  1774. package/node-mssql/migrator.cjs +0 -33
  1775. package/node-mssql/migrator.cjs.map +0 -1
  1776. package/node-mssql/migrator.d.cts +0 -3
  1777. package/node-mssql/migrator.d.ts +0 -3
  1778. package/node-mssql/migrator.js +0 -9
  1779. package/node-mssql/migrator.js.map +0 -1
  1780. package/node-mssql/pool.cjs +0 -54
  1781. package/node-mssql/pool.cjs.map +0 -1
  1782. package/node-mssql/pool.d.cts +0 -8
  1783. package/node-mssql/pool.d.ts +0 -8
  1784. package/node-mssql/pool.js +0 -20
  1785. package/node-mssql/pool.js.map +0 -1
  1786. package/node-mssql/session.cjs +0 -256
  1787. package/node-mssql/session.cjs.map +0 -1
  1788. package/node-mssql/session.d.cts +0 -48
  1789. package/node-mssql/session.d.ts +0 -48
  1790. package/node-mssql/session.js +0 -224
  1791. package/node-mssql/session.js.map +0 -1
  1792. /package/{cockroach → sqlite-cloud}/index.d.cts +0 -0
  1793. /package/{cockroach → sqlite-cloud}/index.d.ts +0 -0
  1794. /package/{cockroach → sqlite-cloud}/index.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/pg-core/query-builders/update.ts"],"sourcesContent":["import type { WithCacheConfig } from '~/cache/core/types.ts';\nimport type { GetColumnData } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport type {\n\tPgPreparedQuery,\n\tPgQueryResultHKT,\n\tPgQueryResultKind,\n\tPgSession,\n\tPreparedQueryConfig,\n} from '~/pg-core/session.ts';\nimport { PgTable } from '~/pg-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.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 { getTableName, type InferInsertModel, Table } from '~/table.ts';\nimport {\n\ttype Assume,\n\ttype DrizzleTypeError,\n\ttype Equal,\n\tgetTableLikeName,\n\tmapUpdateSet,\n\ttype NeonAuthToken,\n\torderSelectedFields,\n\ttype Simplify,\n\ttype UpdateSet,\n} from '~/utils.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport type { PgColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type {\n\tPgSelectJoinConfig,\n\tSelectedFields,\n\tSelectedFieldsOrdered,\n\tTableLikeHasEmptySelection,\n} from './select.types.ts';\n\nexport interface PgUpdateConfig {\n\twhere?: SQL | undefined;\n\tset: UpdateSet;\n\ttable: PgTable;\n\tfrom?: PgTable | Subquery | PgViewBase | SQL;\n\tjoins: PgSelectJoinConfig[];\n\treturningFields?: SelectedFields;\n\treturning?: SelectedFieldsOrdered;\n\twithList?: Subquery[];\n}\n\nexport type PgUpdateSetSource<\n\tTTable extends PgTable,\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| PgColumn\n\t\t\t| undefined;\n\t}\n\t& {};\n\nexport class PgUpdateBuilder<TTable extends PgTable, TQueryResult extends PgQueryResultHKT> {\n\tstatic readonly [entityKind]: string = 'PgUpdateBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly table: TTable;\n\t};\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: PgSession,\n\t\tprivate dialect: PgDialect,\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: PgUpdateSetSource<TTable>,\n\t): PgUpdateWithout<PgUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'> {\n\t\treturn new PgUpdateBase<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).setToken(this.authToken);\n\t}\n}\n\nexport type PgUpdateWithout<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tK extends keyof T & string,\n> = TDynamic extends true ? T : Omit<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tT['_']['selectedFields'],\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 PgUpdateWithJoins<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL,\n> = TDynamic extends true ? T : Omit<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tTFrom,\n\t\tT['_']['selectedFields'],\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 PgUpdateJoinFn<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n> = <\n\tTJoinedTable extends PgTable | Subquery | PgViewBase | SQL,\n>(\n\ttable: TableLikeHasEmptySelection<TJoinedTable> extends true ? DrizzleTypeError<\n\t\t\t\"Cannot reference a data-modifying statement subquery if it doesn't contain a `returning` clause\"\n\t\t>\n\t\t: 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 PgTable ? T['_']['from']['_']['columns']\n\t\t\t\t\t: T['_']['from'] extends Subquery | PgViewBase ? 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) => PgUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;\n\nexport type PgUpdateJoin<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n\tTJoinedTable extends PgTable | Subquery | PgViewBase | SQL,\n> = TDynamic extends true ? T : PgUpdateBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['selectedFields'],\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: PgTable | Subquery | PgViewBase | SQL;\n};\n\ntype AccumulateToResult<\n\tT extends AnyPgUpdate,\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 PgUpdateReturningAll<T extends AnyPgUpdate, TDynamic extends boolean> = PgUpdateWithout<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tEqual<T['_']['joins'], []> extends true ? T['_']['table']['_']['columns'] : Simplify<\n\t\t\t& Record<T['_']['table']['_']['name'], T['_']['table']['_']['columns']>\n\t\t\t& {\n\t\t\t\t[K in keyof T['_']['joins'] as T['_']['joins'][K]['table']['_']['name']]:\n\t\t\t\t\tT['_']['joins'][K]['table']['_']['columns'];\n\t\t\t}\n\t\t>,\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 PgUpdateReturning<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFields,\n> = PgUpdateWithout<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tTSelectedFields,\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 PgUpdatePrepare<T extends AnyPgUpdate> = PgPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgUpdateDynamic<T extends AnyPgUpdate> = PgUpdate<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tT['_']['nullabilityMap']\n>;\n\nexport type PgUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | 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> = PgUpdateBase<TTable, TQueryResult, TFrom, TSelectedFields, TReturning, TNullabilityMap, TJoins, true, never>;\n\nexport type AnyPgUpdate = PgUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | 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\tTypedQueryBuilder<\n\t\tTSelectedFields,\n\t\tTReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]\n\t>,\n\tQueryPromise<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'pg';\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 selectedFields: TSelectedFields;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class PgUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | 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 ? PgQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'PgUpdate';\n\n\tprivate config: PgUpdateConfig;\n\tprivate tableName: string | undefined;\n\tprivate joinsNotNullableMap: Record<string, boolean>;\n\tprotected cacheConfig?: WithCacheConfig;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tset: UpdateSet,\n\t\tprivate session: PgSession,\n\t\tprivate dialect: PgDialect,\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 PgTable | Subquery | PgViewBase | SQL>(\n\t\tsource: TableLikeHasEmptySelection<TFrom> extends true ? DrizzleTypeError<\n\t\t\t\t\"Cannot reference a data-modifying statement subquery if it doesn't contain a `returning` clause\"\n\t\t\t>\n\t\t\t: TFrom,\n\t): PgUpdateWithJoins<this, TDynamic, TFrom> {\n\t\tconst src = source as TFrom;\n\t\tconst tableName = getTableLikeName(src);\n\t\tif (typeof tableName === 'string') {\n\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t}\n\t\tthis.config.from = src;\n\t\treturn this as any;\n\t}\n\n\tprivate getTableLikeFields(table: PgTable | Subquery | PgViewBase): Record<string, unknown> {\n\t\tif (is(table, PgTable)) {\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): PgUpdateJoinFn<this, TDynamic, TJoinType> {\n\t\treturn ((\n\t\t\ttable: PgTable | Subquery | PgViewBase | 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): PgUpdateWithout<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(): PgUpdateReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFields>(\n\t\tfields: TSelectedFields,\n\t): PgUpdateReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields?: SelectedFields,\n\t): PgUpdateWithout<AnyPgUpdate, 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.returningFields = fields;\n\t\tthis.config.returning = orderSelectedFields<PgColumn>(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): PgUpdatePrepare<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: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgUpdatePrepare<this> {\n\t\treturn this._prepare(name);\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\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this._prepare().execute(placeholderValues, this.authToken);\n\t};\n\n\t/** @internal */\n\tgetSelectedFields(): this['_']['selectedFields'] {\n\t\treturn (\n\t\t\tthis.config.returningFields\n\t\t\t\t? new Proxy(\n\t\t\t\t\tthis.config.returningFields,\n\t\t\t\t\tnew SelectionProxyHandler({\n\t\t\t\t\t\talias: getTableName(this.config.table),\n\t\t\t\t\t\tsqlAliasedBehavior: 'alias',\n\t\t\t\t\t\tsqlBehavior: 'error',\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t\t: undefined\n\t\t) as this['_']['selectedFields'];\n\t}\n\n\t$dynamic(): PgUpdateDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["tableName"]}
1
+ {"version":3,"sources":["../../../src/pg-core/query-builders/update.ts"],"sourcesContent":["import type { WithCacheConfig } from '~/cache/core/types.ts';\nimport type { GetColumnData } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport type {\n\tPgPreparedQuery,\n\tPgQueryResultHKT,\n\tPgQueryResultKind,\n\tPgSession,\n\tPreparedQueryConfig,\n} from '~/pg-core/session.ts';\nimport { PgTable } from '~/pg-core/table.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.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 { getTableName, type InferInsertModel, Table } from '~/table.ts';\nimport {\n\ttype Assume,\n\ttype DrizzleTypeError,\n\ttype Equal,\n\tgetTableLikeName,\n\tmapUpdateSet,\n\ttype NeonAuthToken,\n\torderSelectedFields,\n\ttype Simplify,\n\ttype UpdateSet,\n} from '~/utils.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport type { PgColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type {\n\tPgSelectJoinConfig,\n\tSelectedFields,\n\tSelectedFieldsOrdered,\n\tTableLikeHasEmptySelection,\n} from './select.types.ts';\n\nexport interface PgUpdateConfig {\n\twhere?: SQL | undefined;\n\tset: UpdateSet;\n\ttable: PgTable;\n\tfrom?: PgTable | Subquery | PgViewBase | SQL;\n\tjoins: PgSelectJoinConfig[];\n\treturningFields?: SelectedFields;\n\treturning?: SelectedFieldsOrdered;\n\twithList?: Subquery[];\n}\n\nexport type PgUpdateSetSource<\n\tTTable extends PgTable,\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| PgColumn\n\t\t\t| undefined;\n\t}\n\t& {};\n\nexport class PgUpdateBuilder<TTable extends PgTable, TQueryResult extends PgQueryResultHKT> {\n\tstatic readonly [entityKind]: string = 'PgUpdateBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly table: TTable;\n\t};\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: PgSession,\n\t\tprivate dialect: PgDialect,\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: PgUpdateSetSource<TTable>,\n\t): PgUpdateWithout<PgUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'> {\n\t\treturn new PgUpdateBase<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).setToken(this.authToken);\n\t}\n}\n\nexport type PgUpdateWithout<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tK extends keyof T & string,\n> = TDynamic extends true ? T : Omit<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tT['_']['selectedFields'],\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 PgUpdateWithJoins<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL,\n> = TDynamic extends true ? T : Omit<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tTFrom,\n\t\tT['_']['selectedFields'],\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 PgUpdateJoinFn<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n> = <\n\tTJoinedTable extends PgTable | Subquery | PgViewBase | SQL,\n>(\n\ttable: TableLikeHasEmptySelection<TJoinedTable> extends true ? DrizzleTypeError<\n\t\t\t\"Cannot reference a data-modifying statement subquery if it doesn't contain a `returning` clause\"\n\t\t>\n\t\t: 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 PgTable ? T['_']['from']['_']['columns']\n\t\t\t\t\t: T['_']['from'] extends Subquery | PgViewBase ? 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) => PgUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;\n\nexport type PgUpdateJoin<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n\tTJoinedTable extends PgTable | Subquery | PgViewBase | SQL,\n> = TDynamic extends true ? T : PgUpdateBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['selectedFields'],\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: PgTable | Subquery | PgViewBase | SQL;\n};\n\ntype AccumulateToResult<\n\tT extends AnyPgUpdate,\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 PgUpdateReturningAll<T extends AnyPgUpdate, TDynamic extends boolean> = PgUpdateWithout<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tEqual<T['_']['joins'], []> extends true ? T['_']['table']['_']['columns'] : Simplify<\n\t\t\t& Record<T['_']['table']['_']['name'], T['_']['table']['_']['columns']>\n\t\t\t& {\n\t\t\t\t[K in keyof T['_']['joins'] as T['_']['joins'][K]['table']['_']['name']]:\n\t\t\t\t\tT['_']['joins'][K]['table']['_']['columns'];\n\t\t\t}\n\t\t>,\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 PgUpdateReturning<\n\tT extends AnyPgUpdate,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFields,\n> = PgUpdateWithout<\n\tPgUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tTSelectedFields,\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 PgUpdatePrepare<T extends AnyPgUpdate> = PgPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgUpdateDynamic<T extends AnyPgUpdate> = PgUpdate<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tT['_']['nullabilityMap']\n>;\n\nexport type PgUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | 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> = PgUpdateBase<TTable, TQueryResult, TFrom, TSelectedFields, TReturning, TNullabilityMap, TJoins, true, never>;\n\nexport type AnyPgUpdate = PgUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | 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\tTypedQueryBuilder<\n\t\tTSelectedFields,\n\t\tTReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]\n\t>,\n\tQueryPromise<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'pg';\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 selectedFields: TSelectedFields;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class PgUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | 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 ? PgQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'PgUpdate';\n\n\tprivate config: PgUpdateConfig;\n\tprivate tableName: string | undefined;\n\tprivate joinsNotNullableMap: Record<string, boolean>;\n\tprotected cacheConfig?: WithCacheConfig;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tset: UpdateSet,\n\t\tprivate session: PgSession,\n\t\tprivate dialect: PgDialect,\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 PgTable | Subquery | PgViewBase | SQL>(\n\t\tsource: TableLikeHasEmptySelection<TFrom> extends true ? DrizzleTypeError<\n\t\t\t\t\"Cannot reference a data-modifying statement subquery if it doesn't contain a `returning` clause\"\n\t\t\t>\n\t\t\t: TFrom,\n\t): PgUpdateWithJoins<this, TDynamic, TFrom> {\n\t\tconst src = source as TFrom;\n\t\tconst tableName = getTableLikeName(src);\n\t\tif (typeof tableName === 'string') {\n\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t}\n\t\tthis.config.from = src;\n\t\treturn this as any;\n\t}\n\n\tprivate getTableLikeFields(table: PgTable | Subquery | PgViewBase): Record<string, unknown> {\n\t\tif (is(table, PgTable)) {\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): PgUpdateJoinFn<this, TDynamic, TJoinType> {\n\t\treturn ((\n\t\t\ttable: PgTable | Subquery | PgViewBase | 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): PgUpdateWithout<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(): PgUpdateReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFields>(\n\t\tfields: TSelectedFields,\n\t): PgUpdateReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields?: SelectedFields,\n\t): PgUpdateWithout<AnyPgUpdate, 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.returningFields = fields;\n\t\tthis.config.returning = orderSelectedFields<PgColumn>(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): PgUpdatePrepare<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: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgUpdatePrepare<this> {\n\t\treturn this._prepare(name);\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\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this._prepare().execute(placeholderValues, this.authToken);\n\t};\n\n\t/** @internal */\n\tgetSelectedFields(): this['_']['selectedFields'] {\n\t\treturn (\n\t\t\tthis.config.returningFields\n\t\t\t\t? new Proxy(\n\t\t\t\t\tthis.config.returningFields,\n\t\t\t\t\tnew SelectionProxyHandler({\n\t\t\t\t\t\talias: getTableName(this.config.table),\n\t\t\t\t\t\tsqlAliasedBehavior: 'alias',\n\t\t\t\t\t\tsqlBehavior: 'error',\n\t\t\t\t\t}),\n\t\t\t\t)\n\t\t\t\t: undefined\n\t\t) as this['_']['selectedFields'];\n\t}\n\n\t$dynamic(): PgUpdateDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["tableName"]}
@@ -32,25 +32,17 @@ var import_view = require("./view.cjs");
32
32
  class PgSchema {
33
33
  constructor(schemaName) {
34
34
  this.schemaName = schemaName;
35
- this.table = Object.assign(this.table, {
36
- withRLS: ((name, columns, extraConfig) => {
37
- const table = (0, import_table.pgTableWithSchema)(name, columns, extraConfig, this.schemaName);
38
- table[import_table.EnableRLS] = true;
39
- return table;
40
- })
41
- });
42
35
  }
43
36
  static [import_entity.entityKind] = "PgSchema";
44
- isExisting = false;
45
- table = ((name, columns, extraConfig) => {
37
+ table = (name, columns, extraConfig) => {
46
38
  return (0, import_table.pgTableWithSchema)(name, columns, extraConfig, this.schemaName);
47
- });
48
- view = ((name, columns) => {
39
+ };
40
+ view = (name, columns) => {
49
41
  return (0, import_view.pgViewWithSchema)(name, columns, this.schemaName);
50
- });
51
- materializedView = ((name, columns) => {
42
+ };
43
+ materializedView = (name, columns) => {
52
44
  return (0, import_view.pgMaterializedViewWithSchema)(name, columns, this.schemaName);
53
- });
45
+ };
54
46
  enum(enumName, input) {
55
47
  return Array.isArray(input) ? (0, import_enum.pgEnumWithSchema)(
56
48
  enumName,
@@ -58,19 +50,15 @@ class PgSchema {
58
50
  this.schemaName
59
51
  ) : (0, import_enum.pgEnumObjectWithSchema)(enumName, input, this.schemaName);
60
52
  }
61
- sequence = ((name, options) => {
53
+ sequence = (name, options) => {
62
54
  return (0, import_sequence.pgSequenceWithSchema)(name, options, this.schemaName);
63
- });
55
+ };
64
56
  getSQL() {
65
57
  return new import_sql.SQL([import_sql.sql.identifier(this.schemaName)]);
66
58
  }
67
59
  shouldOmitSQLParens() {
68
60
  return true;
69
61
  }
70
- existing() {
71
- this.isExisting = true;
72
- return this;
73
- }
74
62
  }
75
63
  function isPgSchema(obj) {
76
64
  return (0, import_entity.is)(obj, PgSchema);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/schema.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport { SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport type { NonArray, Writable } from '~/utils.ts';\nimport { type PgEnum, type PgEnumObject, pgEnumObjectWithSchema, pgEnumWithSchema } from './columns/enum.ts';\nimport { type pgSequence, pgSequenceWithSchema } from './sequence.ts';\nimport { EnableRLS, type PgTableFn, type PgTableFnInternal, pgTableWithSchema } from './table.ts';\nimport { type pgMaterializedView, pgMaterializedViewWithSchema, type pgView, pgViewWithSchema } from './view.ts';\n\nexport class PgSchema<TName extends string = string> implements SQLWrapper {\n\tstatic readonly [entityKind]: string = 'PgSchema';\n\n\tisExisting: boolean = false;\n\tconstructor(\n\t\tpublic readonly schemaName: TName,\n\t) {\n\t\tthis.table = Object.assign(this.table, {\n\t\t\twithRLS: ((name, columns, extraConfig) => {\n\t\t\t\tconst table = pgTableWithSchema(name, columns, extraConfig, this.schemaName);\n\t\t\t\ttable[EnableRLS] = true;\n\n\t\t\t\treturn table;\n\t\t\t}) as PgTableFnInternal<TName>,\n\t\t});\n\t}\n\n\ttable: PgTableFn<TName> = ((name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(name, columns, extraConfig, this.schemaName);\n\t}) as PgTableFn<TName>;\n\n\tview = ((name, columns) => {\n\t\treturn pgViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgView;\n\n\tmaterializedView = ((name, columns) => {\n\t\treturn pgMaterializedViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgMaterializedView;\n\n\tpublic enum<U extends string, T extends Readonly<[U, ...U[]]>>(\n\t\tenumName: string,\n\t\tvalues: T | Writable<T>,\n\t): PgEnum<Writable<T>>;\n\n\tpublic enum<E extends Record<string, string>>(\n\t\tenumName: string,\n\t\tenumObj: NonArray<E>,\n\t): PgEnumObject<E>;\n\n\tpublic enum(enumName: any, input: any): any {\n\t\treturn Array.isArray(input)\n\t\t\t? pgEnumWithSchema(\n\t\t\t\tenumName,\n\t\t\t\t[...input] as [string, ...string[]],\n\t\t\t\tthis.schemaName,\n\t\t\t)\n\t\t\t: pgEnumObjectWithSchema(enumName, input, this.schemaName);\n\t}\n\n\tsequence: typeof pgSequence = ((name, options) => {\n\t\treturn pgSequenceWithSchema(name, options, this.schemaName);\n\t});\n\n\tgetSQL(): SQL {\n\t\treturn new SQL([sql.identifier(this.schemaName)]);\n\t}\n\n\tshouldOmitSQLParens(): boolean {\n\t\treturn true;\n\t}\n\n\texisting(): this {\n\t\tthis.isExisting = true;\n\t\treturn this;\n\t}\n}\n\nexport function isPgSchema(obj: unknown): obj is PgSchema {\n\treturn is(obj, PgSchema);\n}\n\nexport function pgSchema<T extends string>(name: T) {\n\tif (name === 'public') {\n\t\tthrow new Error(\n\t\t\t`You can't specify 'public' as schema name. Postgres is using public schema by default. If you want to use 'public' schema, just use pgTable() instead of creating a schema`,\n\t\t);\n\t}\n\n\treturn new PgSchema(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA+B;AAC/B,iBAA0C;AAE1C,kBAAyF;AACzF,sBAAsD;AACtD,mBAAqF;AACrF,kBAAqG;AAE9F,MAAM,SAA8D;AAAA,EAI1E,YACiB,YACf;AADe;AAEhB,SAAK,QAAQ,OAAO,OAAO,KAAK,OAAO;AAAA,MACtC,UAAU,CAAC,MAAM,SAAS,gBAAgB;AACzC,cAAM,YAAQ,gCAAkB,MAAM,SAAS,aAAa,KAAK,UAAU;AAC3E,cAAM,sBAAS,IAAI;AAEnB,eAAO;AAAA,MACR;AAAA,IACD,CAAC;AAAA,EACF;AAAA,EAdA,QAAiB,wBAAU,IAAY;AAAA,EAEvC,aAAsB;AAAA,EActB,SAA2B,CAAC,MAAM,SAAS,gBAAgB;AAC1D,eAAO,gCAAkB,MAAM,SAAS,aAAa,KAAK,UAAU;AAAA,EACrE;AAAA,EAEA,QAAQ,CAAC,MAAM,YAAY;AAC1B,eAAO,8BAAiB,MAAM,SAAS,KAAK,UAAU;AAAA,EACvD;AAAA,EAEA,oBAAoB,CAAC,MAAM,YAAY;AACtC,eAAO,0CAA6B,MAAM,SAAS,KAAK,UAAU;AAAA,EACnE;AAAA,EAYO,KAAK,UAAe,OAAiB;AAC3C,WAAO,MAAM,QAAQ,KAAK,QACvB;AAAA,MACD;AAAA,MACA,CAAC,GAAG,KAAK;AAAA,MACT,KAAK;AAAA,IACN,QACE,oCAAuB,UAAU,OAAO,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,YAA+B,CAAC,MAAM,YAAY;AACjD,eAAO,sCAAqB,MAAM,SAAS,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,SAAc;AACb,WAAO,IAAI,eAAI,CAAC,eAAI,WAAW,KAAK,UAAU,CAAC,CAAC;AAAA,EACjD;AAAA,EAEA,sBAA+B;AAC9B,WAAO;AAAA,EACR;AAAA,EAEA,WAAiB;AAChB,SAAK,aAAa;AAClB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,WAAW,KAA+B;AACzD,aAAO,kBAAG,KAAK,QAAQ;AACxB;AAEO,SAAS,SAA2B,MAAS;AACnD,MAAI,SAAS,UAAU;AACtB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO,IAAI,SAAS,IAAI;AACzB;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/schema.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport { SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport type { NonArray, Writable } from '~/utils.ts';\nimport { type PgEnum, type PgEnumObject, pgEnumObjectWithSchema, pgEnumWithSchema } from './columns/enum.ts';\nimport { type pgSequence, pgSequenceWithSchema } from './sequence.ts';\nimport { type PgTableFn, pgTableWithSchema } from './table.ts';\nimport { type pgMaterializedView, pgMaterializedViewWithSchema, type pgView, pgViewWithSchema } from './view.ts';\n\nexport class PgSchema<TName extends string = string> implements SQLWrapper {\n\tstatic readonly [entityKind]: string = 'PgSchema';\n\tconstructor(\n\t\tpublic readonly schemaName: TName,\n\t) {}\n\n\ttable: PgTableFn<TName> = ((name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(name, columns, extraConfig, this.schemaName);\n\t});\n\n\tview = ((name, columns) => {\n\t\treturn pgViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgView;\n\n\tmaterializedView = ((name, columns) => {\n\t\treturn pgMaterializedViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgMaterializedView;\n\n\tpublic enum<U extends string, T extends Readonly<[U, ...U[]]>>(\n\t\tenumName: string,\n\t\tvalues: T | Writable<T>,\n\t): PgEnum<Writable<T>>;\n\n\tpublic enum<E extends Record<string, string>>(\n\t\tenumName: string,\n\t\tenumObj: NonArray<E>,\n\t): PgEnumObject<E>;\n\n\tpublic enum(enumName: any, input: any): any {\n\t\treturn Array.isArray(input)\n\t\t\t? pgEnumWithSchema(\n\t\t\t\tenumName,\n\t\t\t\t[...input] as [string, ...string[]],\n\t\t\t\tthis.schemaName,\n\t\t\t)\n\t\t\t: pgEnumObjectWithSchema(enumName, input, this.schemaName);\n\t}\n\n\tsequence: typeof pgSequence = ((name, options) => {\n\t\treturn pgSequenceWithSchema(name, options, this.schemaName);\n\t});\n\n\tgetSQL(): SQL {\n\t\treturn new SQL([sql.identifier(this.schemaName)]);\n\t}\n\n\tshouldOmitSQLParens(): boolean {\n\t\treturn true;\n\t}\n}\n\nexport function isPgSchema(obj: unknown): obj is PgSchema {\n\treturn is(obj, PgSchema);\n}\n\nexport function pgSchema<T extends string>(name: T) {\n\tif (name === 'public') {\n\t\tthrow new Error(\n\t\t\t`You can't specify 'public' as schema name. Postgres is using public schema by default. If you want to use 'public' schema, just use pgTable() instead of creating a schema`,\n\t\t);\n\t}\n\n\treturn new PgSchema(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA+B;AAC/B,iBAA0C;AAE1C,kBAAyF;AACzF,sBAAsD;AACtD,mBAAkD;AAClD,kBAAqG;AAE9F,MAAM,SAA8D;AAAA,EAE1E,YACiB,YACf;AADe;AAAA,EACd;AAAA,EAHH,QAAiB,wBAAU,IAAY;AAAA,EAKvC,QAA2B,CAAC,MAAM,SAAS,gBAAgB;AAC1D,eAAO,gCAAkB,MAAM,SAAS,aAAa,KAAK,UAAU;AAAA,EACrE;AAAA,EAEA,OAAQ,CAAC,MAAM,YAAY;AAC1B,eAAO,8BAAiB,MAAM,SAAS,KAAK,UAAU;AAAA,EACvD;AAAA,EAEA,mBAAoB,CAAC,MAAM,YAAY;AACtC,eAAO,0CAA6B,MAAM,SAAS,KAAK,UAAU;AAAA,EACnE;AAAA,EAYO,KAAK,UAAe,OAAiB;AAC3C,WAAO,MAAM,QAAQ,KAAK,QACvB;AAAA,MACD;AAAA,MACA,CAAC,GAAG,KAAK;AAAA,MACT,KAAK;AAAA,IACN,QACE,oCAAuB,UAAU,OAAO,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,WAA+B,CAAC,MAAM,YAAY;AACjD,eAAO,sCAAqB,MAAM,SAAS,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,SAAc;AACb,WAAO,IAAI,eAAI,CAAC,eAAI,WAAW,KAAK,UAAU,CAAC,CAAC;AAAA,EACjD;AAAA,EAEA,sBAA+B;AAC9B,WAAO;AAAA,EACR;AACD;AAEO,SAAS,WAAW,KAA+B;AACzD,aAAO,kBAAG,KAAK,QAAQ;AACxB;AAEO,SAAS,SAA2B,MAAS;AACnD,MAAI,SAAS,UAAU;AACtB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO,IAAI,SAAS,IAAI;AACzB;","names":[]}
@@ -8,7 +8,6 @@ import { type pgMaterializedView, type pgView } from "./view.cjs";
8
8
  export declare class PgSchema<TName extends string = string> implements SQLWrapper {
9
9
  readonly schemaName: TName;
10
10
  static readonly [entityKind]: string;
11
- isExisting: boolean;
12
11
  constructor(schemaName: TName);
13
12
  table: PgTableFn<TName>;
14
13
  view: typeof pgView;
@@ -18,7 +17,6 @@ export declare class PgSchema<TName extends string = string> implements SQLWrapp
18
17
  sequence: typeof pgSequence;
19
18
  getSQL(): SQL;
20
19
  shouldOmitSQLParens(): boolean;
21
- existing(): this;
22
20
  }
23
21
  export declare function isPgSchema(obj: unknown): obj is PgSchema;
24
22
  export declare function pgSchema<T extends string>(name: T): PgSchema<T>;
@@ -8,7 +8,6 @@ import { type pgMaterializedView, type pgView } from "./view.js";
8
8
  export declare class PgSchema<TName extends string = string> implements SQLWrapper {
9
9
  readonly schemaName: TName;
10
10
  static readonly [entityKind]: string;
11
- isExisting: boolean;
12
11
  constructor(schemaName: TName);
13
12
  table: PgTableFn<TName>;
14
13
  view: typeof pgView;
@@ -18,7 +17,6 @@ export declare class PgSchema<TName extends string = string> implements SQLWrapp
18
17
  sequence: typeof pgSequence;
19
18
  getSQL(): SQL;
20
19
  shouldOmitSQLParens(): boolean;
21
- existing(): this;
22
20
  }
23
21
  export declare function isPgSchema(obj: unknown): obj is PgSchema;
24
22
  export declare function pgSchema<T extends string>(name: T): PgSchema<T>;
package/pg-core/schema.js CHANGED
@@ -2,30 +2,22 @@ import { entityKind, is } from "../entity.js";
2
2
  import { SQL, sql } from "../sql/sql.js";
3
3
  import { pgEnumObjectWithSchema, pgEnumWithSchema } from "./columns/enum.js";
4
4
  import { pgSequenceWithSchema } from "./sequence.js";
5
- import { EnableRLS, pgTableWithSchema } from "./table.js";
5
+ import { pgTableWithSchema } from "./table.js";
6
6
  import { pgMaterializedViewWithSchema, pgViewWithSchema } from "./view.js";
7
7
  class PgSchema {
8
8
  constructor(schemaName) {
9
9
  this.schemaName = schemaName;
10
- this.table = Object.assign(this.table, {
11
- withRLS: ((name, columns, extraConfig) => {
12
- const table = pgTableWithSchema(name, columns, extraConfig, this.schemaName);
13
- table[EnableRLS] = true;
14
- return table;
15
- })
16
- });
17
10
  }
18
11
  static [entityKind] = "PgSchema";
19
- isExisting = false;
20
- table = ((name, columns, extraConfig) => {
12
+ table = (name, columns, extraConfig) => {
21
13
  return pgTableWithSchema(name, columns, extraConfig, this.schemaName);
22
- });
23
- view = ((name, columns) => {
14
+ };
15
+ view = (name, columns) => {
24
16
  return pgViewWithSchema(name, columns, this.schemaName);
25
- });
26
- materializedView = ((name, columns) => {
17
+ };
18
+ materializedView = (name, columns) => {
27
19
  return pgMaterializedViewWithSchema(name, columns, this.schemaName);
28
- });
20
+ };
29
21
  enum(enumName, input) {
30
22
  return Array.isArray(input) ? pgEnumWithSchema(
31
23
  enumName,
@@ -33,19 +25,15 @@ class PgSchema {
33
25
  this.schemaName
34
26
  ) : pgEnumObjectWithSchema(enumName, input, this.schemaName);
35
27
  }
36
- sequence = ((name, options) => {
28
+ sequence = (name, options) => {
37
29
  return pgSequenceWithSchema(name, options, this.schemaName);
38
- });
30
+ };
39
31
  getSQL() {
40
32
  return new SQL([sql.identifier(this.schemaName)]);
41
33
  }
42
34
  shouldOmitSQLParens() {
43
35
  return true;
44
36
  }
45
- existing() {
46
- this.isExisting = true;
47
- return this;
48
- }
49
37
  }
50
38
  function isPgSchema(obj) {
51
39
  return is(obj, PgSchema);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/schema.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport { SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport type { NonArray, Writable } from '~/utils.ts';\nimport { type PgEnum, type PgEnumObject, pgEnumObjectWithSchema, pgEnumWithSchema } from './columns/enum.ts';\nimport { type pgSequence, pgSequenceWithSchema } from './sequence.ts';\nimport { EnableRLS, type PgTableFn, type PgTableFnInternal, pgTableWithSchema } from './table.ts';\nimport { type pgMaterializedView, pgMaterializedViewWithSchema, type pgView, pgViewWithSchema } from './view.ts';\n\nexport class PgSchema<TName extends string = string> implements SQLWrapper {\n\tstatic readonly [entityKind]: string = 'PgSchema';\n\n\tisExisting: boolean = false;\n\tconstructor(\n\t\tpublic readonly schemaName: TName,\n\t) {\n\t\tthis.table = Object.assign(this.table, {\n\t\t\twithRLS: ((name, columns, extraConfig) => {\n\t\t\t\tconst table = pgTableWithSchema(name, columns, extraConfig, this.schemaName);\n\t\t\t\ttable[EnableRLS] = true;\n\n\t\t\t\treturn table;\n\t\t\t}) as PgTableFnInternal<TName>,\n\t\t});\n\t}\n\n\ttable: PgTableFn<TName> = ((name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(name, columns, extraConfig, this.schemaName);\n\t}) as PgTableFn<TName>;\n\n\tview = ((name, columns) => {\n\t\treturn pgViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgView;\n\n\tmaterializedView = ((name, columns) => {\n\t\treturn pgMaterializedViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgMaterializedView;\n\n\tpublic enum<U extends string, T extends Readonly<[U, ...U[]]>>(\n\t\tenumName: string,\n\t\tvalues: T | Writable<T>,\n\t): PgEnum<Writable<T>>;\n\n\tpublic enum<E extends Record<string, string>>(\n\t\tenumName: string,\n\t\tenumObj: NonArray<E>,\n\t): PgEnumObject<E>;\n\n\tpublic enum(enumName: any, input: any): any {\n\t\treturn Array.isArray(input)\n\t\t\t? pgEnumWithSchema(\n\t\t\t\tenumName,\n\t\t\t\t[...input] as [string, ...string[]],\n\t\t\t\tthis.schemaName,\n\t\t\t)\n\t\t\t: pgEnumObjectWithSchema(enumName, input, this.schemaName);\n\t}\n\n\tsequence: typeof pgSequence = ((name, options) => {\n\t\treturn pgSequenceWithSchema(name, options, this.schemaName);\n\t});\n\n\tgetSQL(): SQL {\n\t\treturn new SQL([sql.identifier(this.schemaName)]);\n\t}\n\n\tshouldOmitSQLParens(): boolean {\n\t\treturn true;\n\t}\n\n\texisting(): this {\n\t\tthis.isExisting = true;\n\t\treturn this;\n\t}\n}\n\nexport function isPgSchema(obj: unknown): obj is PgSchema {\n\treturn is(obj, PgSchema);\n}\n\nexport function pgSchema<T extends string>(name: T) {\n\tif (name === 'public') {\n\t\tthrow new Error(\n\t\t\t`You can't specify 'public' as schema name. Postgres is using public schema by default. If you want to use 'public' schema, just use pgTable() instead of creating a schema`,\n\t\t);\n\t}\n\n\treturn new PgSchema(name);\n}\n"],"mappings":"AAAA,SAAS,YAAY,UAAU;AAC/B,SAAS,KAAK,WAA4B;AAE1C,SAAyC,wBAAwB,wBAAwB;AACzF,SAA0B,4BAA4B;AACtD,SAAS,WAAmD,yBAAyB;AACrF,SAAkC,8BAA2C,wBAAwB;AAE9F,MAAM,SAA8D;AAAA,EAI1E,YACiB,YACf;AADe;AAEhB,SAAK,QAAQ,OAAO,OAAO,KAAK,OAAO;AAAA,MACtC,UAAU,CAAC,MAAM,SAAS,gBAAgB;AACzC,cAAM,QAAQ,kBAAkB,MAAM,SAAS,aAAa,KAAK,UAAU;AAC3E,cAAM,SAAS,IAAI;AAEnB,eAAO;AAAA,MACR;AAAA,IACD,CAAC;AAAA,EACF;AAAA,EAdA,QAAiB,UAAU,IAAY;AAAA,EAEvC,aAAsB;AAAA,EActB,SAA2B,CAAC,MAAM,SAAS,gBAAgB;AAC1D,WAAO,kBAAkB,MAAM,SAAS,aAAa,KAAK,UAAU;AAAA,EACrE;AAAA,EAEA,QAAQ,CAAC,MAAM,YAAY;AAC1B,WAAO,iBAAiB,MAAM,SAAS,KAAK,UAAU;AAAA,EACvD;AAAA,EAEA,oBAAoB,CAAC,MAAM,YAAY;AACtC,WAAO,6BAA6B,MAAM,SAAS,KAAK,UAAU;AAAA,EACnE;AAAA,EAYO,KAAK,UAAe,OAAiB;AAC3C,WAAO,MAAM,QAAQ,KAAK,IACvB;AAAA,MACD;AAAA,MACA,CAAC,GAAG,KAAK;AAAA,MACT,KAAK;AAAA,IACN,IACE,uBAAuB,UAAU,OAAO,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,YAA+B,CAAC,MAAM,YAAY;AACjD,WAAO,qBAAqB,MAAM,SAAS,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,SAAc;AACb,WAAO,IAAI,IAAI,CAAC,IAAI,WAAW,KAAK,UAAU,CAAC,CAAC;AAAA,EACjD;AAAA,EAEA,sBAA+B;AAC9B,WAAO;AAAA,EACR;AAAA,EAEA,WAAiB;AAChB,SAAK,aAAa;AAClB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,WAAW,KAA+B;AACzD,SAAO,GAAG,KAAK,QAAQ;AACxB;AAEO,SAAS,SAA2B,MAAS;AACnD,MAAI,SAAS,UAAU;AACtB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO,IAAI,SAAS,IAAI;AACzB;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/schema.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport { SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport type { NonArray, Writable } from '~/utils.ts';\nimport { type PgEnum, type PgEnumObject, pgEnumObjectWithSchema, pgEnumWithSchema } from './columns/enum.ts';\nimport { type pgSequence, pgSequenceWithSchema } from './sequence.ts';\nimport { type PgTableFn, pgTableWithSchema } from './table.ts';\nimport { type pgMaterializedView, pgMaterializedViewWithSchema, type pgView, pgViewWithSchema } from './view.ts';\n\nexport class PgSchema<TName extends string = string> implements SQLWrapper {\n\tstatic readonly [entityKind]: string = 'PgSchema';\n\tconstructor(\n\t\tpublic readonly schemaName: TName,\n\t) {}\n\n\ttable: PgTableFn<TName> = ((name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(name, columns, extraConfig, this.schemaName);\n\t});\n\n\tview = ((name, columns) => {\n\t\treturn pgViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgView;\n\n\tmaterializedView = ((name, columns) => {\n\t\treturn pgMaterializedViewWithSchema(name, columns, this.schemaName);\n\t}) as typeof pgMaterializedView;\n\n\tpublic enum<U extends string, T extends Readonly<[U, ...U[]]>>(\n\t\tenumName: string,\n\t\tvalues: T | Writable<T>,\n\t): PgEnum<Writable<T>>;\n\n\tpublic enum<E extends Record<string, string>>(\n\t\tenumName: string,\n\t\tenumObj: NonArray<E>,\n\t): PgEnumObject<E>;\n\n\tpublic enum(enumName: any, input: any): any {\n\t\treturn Array.isArray(input)\n\t\t\t? pgEnumWithSchema(\n\t\t\t\tenumName,\n\t\t\t\t[...input] as [string, ...string[]],\n\t\t\t\tthis.schemaName,\n\t\t\t)\n\t\t\t: pgEnumObjectWithSchema(enumName, input, this.schemaName);\n\t}\n\n\tsequence: typeof pgSequence = ((name, options) => {\n\t\treturn pgSequenceWithSchema(name, options, this.schemaName);\n\t});\n\n\tgetSQL(): SQL {\n\t\treturn new SQL([sql.identifier(this.schemaName)]);\n\t}\n\n\tshouldOmitSQLParens(): boolean {\n\t\treturn true;\n\t}\n}\n\nexport function isPgSchema(obj: unknown): obj is PgSchema {\n\treturn is(obj, PgSchema);\n}\n\nexport function pgSchema<T extends string>(name: T) {\n\tif (name === 'public') {\n\t\tthrow new Error(\n\t\t\t`You can't specify 'public' as schema name. Postgres is using public schema by default. If you want to use 'public' schema, just use pgTable() instead of creating a schema`,\n\t\t);\n\t}\n\n\treturn new PgSchema(name);\n}\n"],"mappings":"AAAA,SAAS,YAAY,UAAU;AAC/B,SAAS,KAAK,WAA4B;AAE1C,SAAyC,wBAAwB,wBAAwB;AACzF,SAA0B,4BAA4B;AACtD,SAAyB,yBAAyB;AAClD,SAAkC,8BAA2C,wBAAwB;AAE9F,MAAM,SAA8D;AAAA,EAE1E,YACiB,YACf;AADe;AAAA,EACd;AAAA,EAHH,QAAiB,UAAU,IAAY;AAAA,EAKvC,QAA2B,CAAC,MAAM,SAAS,gBAAgB;AAC1D,WAAO,kBAAkB,MAAM,SAAS,aAAa,KAAK,UAAU;AAAA,EACrE;AAAA,EAEA,OAAQ,CAAC,MAAM,YAAY;AAC1B,WAAO,iBAAiB,MAAM,SAAS,KAAK,UAAU;AAAA,EACvD;AAAA,EAEA,mBAAoB,CAAC,MAAM,YAAY;AACtC,WAAO,6BAA6B,MAAM,SAAS,KAAK,UAAU;AAAA,EACnE;AAAA,EAYO,KAAK,UAAe,OAAiB;AAC3C,WAAO,MAAM,QAAQ,KAAK,IACvB;AAAA,MACD;AAAA,MACA,CAAC,GAAG,KAAK;AAAA,MACT,KAAK;AAAA,IACN,IACE,uBAAuB,UAAU,OAAO,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,WAA+B,CAAC,MAAM,YAAY;AACjD,WAAO,qBAAqB,MAAM,SAAS,KAAK,UAAU;AAAA,EAC3D;AAAA,EAEA,SAAc;AACb,WAAO,IAAI,IAAI,CAAC,IAAI,WAAW,KAAK,UAAU,CAAC,CAAC;AAAA,EACjD;AAAA,EAEA,sBAA+B;AAC9B,WAAO;AAAA,EACR;AACD;AAEO,SAAS,WAAW,KAA+B;AACzD,SAAO,GAAG,KAAK,QAAQ;AACxB;AAEO,SAAS,SAA2B,MAAS;AACnD,MAAI,SAAS,UAAU;AACtB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO,IAAI,SAAS,IAAI;AACzB;","names":[]}
@@ -160,8 +160,8 @@ class PgSession {
160
160
  }
161
161
  }
162
162
  class PgTransaction extends import_db.PgDatabase {
163
- constructor(dialect, session, relations, schema, nestedIndex = 0) {
164
- super(dialect, session, relations, schema);
163
+ constructor(dialect, session, relations, schema, nestedIndex = 0, parseRqbJson) {
164
+ super(dialect, session, relations, schema, parseRqbJson);
165
165
  this.relations = relations;
166
166
  this.schema = schema;
167
167
  this.nestedIndex = nestedIndex;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { PreparedQuery } from '~/session.ts';\nimport { type Query, type SQL, sql } from '~/sql/index.ts';\nimport { tracer } from '~/tracing.ts';\nimport type { NeonAuthToken } from '~/utils.ts';\nimport { PgDatabase } from './db.ts';\nimport type { PgDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface PreparedQueryConfig {\n\texecute: unknown;\n\tall: unknown;\n\tvalues: unknown;\n}\n\nexport abstract class PgPreparedQuery<T extends PreparedQueryConfig> implements PreparedQuery {\n\tconstructor(\n\t\tprotected query: Query,\n\t\t// cache instance\n\t\tprivate cache: Cache | undefined,\n\t\t// per query related metadata\n\t\tprivate queryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enable: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enable) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\tprotected authToken?: NeonAuthToken;\n\n\tgetQuery(): Query {\n\t\treturn this.query;\n\t}\n\n\tmapResult(response: unknown, _isFromBatch?: boolean): unknown {\n\t\treturn response;\n\t}\n\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tstatic readonly [entityKind]: string = 'PgPreparedQuery';\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enable) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\n\t/** @internal */\n\tabstract all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;\n\n\t/** @internal */\n\tabstract isResponseInArrayMode(): boolean;\n}\n\nexport interface PgTransactionConfig {\n\tisolationLevel?: 'read uncommitted' | 'read committed' | 'repeatable read' | 'serializable';\n\taccessMode?: 'read only' | 'read write';\n\tdeferrable?: boolean;\n}\n\nexport abstract class PgSession<\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> {\n\tstatic readonly [entityKind]: string = 'PgSession';\n\n\tconstructor(protected dialect: PgDialect) {}\n\n\tabstract prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T>;\n\n\tabstract prepareRelationalQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tcustomResultMapper: (\n\t\t\trows: Record<string, unknown>[],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => T['execute'],\n\t): PgPreparedQuery<T>;\n\n\texecute<T>(query: SQL): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T> {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\tconst prepared = tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\t\treturn this.prepareQuery<PreparedQueryConfig & { execute: T }>(\n\t\t\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\t\t\tundefined,\n\t\t\t\t\tundefined,\n\t\t\t\t\tfalse,\n\t\t\t\t);\n\t\t\t});\n\n\t\t\treturn prepared.setToken(token).execute(undefined, token);\n\t\t});\n\t}\n\n\tall<T = unknown>(query: SQL): Promise<T[]> {\n\t\treturn this.prepareQuery<PreparedQueryConfig & { all: T[] }>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfalse,\n\t\t).all();\n\t}\n\n\tasync count(sql: SQL): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number> {\n\t\tconst res = await this.execute<[{ count: string }]>(sql, token);\n\n\t\treturn Number(\n\t\t\tres[0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig,\n\t): Promise<T>;\n}\n\nexport abstract class PgTransaction<\n\tTQueryResult extends PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> extends PgDatabase<TQueryResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PgTransaction';\n\n\tconstructor(\n\t\tdialect: PgDialect,\n\t\tsession: PgSession<any, any, any, any>,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: {\n\t\t\tfullSchema: Record<string, unknown>;\n\t\t\tschema: TSchema;\n\t\t\ttableNamesMap: Record<string, string>;\n\t\t} | undefined,\n\t\tprotected readonly nestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, relations, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** @internal */\n\tgetTransactionConfigSQL(config: PgTransactionConfig): SQL {\n\t\tconst chunks: string[] = [];\n\t\tif (config.isolationLevel) {\n\t\t\tchunks.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\t\tif (config.accessMode) {\n\t\t\tchunks.push(config.accessMode);\n\t\t}\n\t\tif (typeof config.deferrable === 'boolean') {\n\t\t\tchunks.push(config.deferrable ? 'deferrable' : 'not deferrable');\n\t\t}\n\t\treturn sql.raw(chunks.join(' '));\n\t}\n\n\tsetTransaction(config: PgTransactionConfig): Promise<void> {\n\t\treturn this.session.execute(sql`set transaction ${this.getTransactionConfigSQL(config)}`);\n\t}\n\n\tabstract override transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PgQueryResultHKT {\n\treadonly $brand: 'PgQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport type PgQueryResultKind<TKind extends PgQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n"],"mappings":"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","names":["sql"]}
1
+ {"version":3,"sources":["../../src/pg-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { PreparedQuery } from '~/session.ts';\nimport { type Query, type SQL, sql } from '~/sql/index.ts';\nimport { tracer } from '~/tracing.ts';\nimport type { NeonAuthToken } from '~/utils.ts';\nimport { PgDatabase } from './db.ts';\nimport type { PgDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface PreparedQueryConfig {\n\texecute: unknown;\n\tall: unknown;\n\tvalues: unknown;\n}\n\nexport abstract class PgPreparedQuery<T extends PreparedQueryConfig> implements PreparedQuery {\n\tconstructor(\n\t\tprotected query: Query,\n\t\t// cache instance\n\t\tprivate cache: Cache | undefined,\n\t\t// per query related metadata\n\t\tprivate queryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enable: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enable) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\tprotected authToken?: NeonAuthToken;\n\n\tgetQuery(): Query {\n\t\treturn this.query;\n\t}\n\n\tmapResult(response: unknown, _isFromBatch?: boolean): unknown {\n\t\treturn response;\n\t}\n\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tstatic readonly [entityKind]: string = 'PgPreparedQuery';\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enable) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\n\t/** @internal */\n\tabstract all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;\n\n\t/** @internal */\n\tabstract isResponseInArrayMode(): boolean;\n}\n\nexport interface PgTransactionConfig {\n\tisolationLevel?: 'read uncommitted' | 'read committed' | 'repeatable read' | 'serializable';\n\taccessMode?: 'read only' | 'read write';\n\tdeferrable?: boolean;\n}\n\nexport abstract class PgSession<\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> {\n\tstatic readonly [entityKind]: string = 'PgSession';\n\n\tconstructor(protected dialect: PgDialect) {}\n\n\tabstract prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T>;\n\n\tabstract prepareRelationalQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tcustomResultMapper: (\n\t\t\trows: Record<string, unknown>[],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => T['execute'],\n\t): PgPreparedQuery<T>;\n\n\texecute<T>(query: SQL): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T> {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\tconst prepared = tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\t\treturn this.prepareQuery<PreparedQueryConfig & { execute: T }>(\n\t\t\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\t\t\tundefined,\n\t\t\t\t\tundefined,\n\t\t\t\t\tfalse,\n\t\t\t\t);\n\t\t\t});\n\n\t\t\treturn prepared.setToken(token).execute(undefined, token);\n\t\t});\n\t}\n\n\tall<T = unknown>(query: SQL): Promise<T[]> {\n\t\treturn this.prepareQuery<PreparedQueryConfig & { all: T[] }>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfalse,\n\t\t).all();\n\t}\n\n\tasync count(sql: SQL): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number> {\n\t\tconst res = await this.execute<[{ count: string }]>(sql, token);\n\n\t\treturn Number(\n\t\t\tres[0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig,\n\t): Promise<T>;\n}\n\nexport abstract class PgTransaction<\n\tTQueryResult extends PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> extends PgDatabase<TQueryResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PgTransaction';\n\n\tconstructor(\n\t\tdialect: PgDialect,\n\t\tsession: PgSession<any, any, any, any>,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: {\n\t\t\tfullSchema: Record<string, unknown>;\n\t\t\tschema: TSchema;\n\t\t\ttableNamesMap: Record<string, string>;\n\t\t} | undefined,\n\t\tprotected readonly nestedIndex = 0,\n\t\tparseRqbJson?: boolean,\n\t) {\n\t\tsuper(dialect, session, relations, schema, parseRqbJson);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** @internal */\n\tgetTransactionConfigSQL(config: PgTransactionConfig): SQL {\n\t\tconst chunks: string[] = [];\n\t\tif (config.isolationLevel) {\n\t\t\tchunks.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\t\tif (config.accessMode) {\n\t\t\tchunks.push(config.accessMode);\n\t\t}\n\t\tif (typeof config.deferrable === 'boolean') {\n\t\t\tchunks.push(config.deferrable ? 'deferrable' : 'not deferrable');\n\t\t}\n\t\treturn sql.raw(chunks.join(' '));\n\t}\n\n\tsetTransaction(config: PgTransactionConfig): Promise<void> {\n\t\treturn this.session.execute(sql`set transaction ${this.getTransactionConfigSQL(config)}`);\n\t}\n\n\tabstract override transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PgQueryResultHKT {\n\treadonly $brand: 'PgQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport type PgQueryResultKind<TKind extends PgQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n"],"mappings":"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","names":["sql"]}
@@ -61,7 +61,7 @@ export declare abstract class PgTransaction<TQueryResult extends PgQueryResultHK
61
61
  fullSchema: Record<string, unknown>;
62
62
  schema: TSchema;
63
63
  tableNamesMap: Record<string, string>;
64
- } | undefined, nestedIndex?: number);
64
+ } | undefined, nestedIndex?: number, parseRqbJson?: boolean);
65
65
  rollback(): never;
66
66
  setTransaction(config: PgTransactionConfig): Promise<void>;
67
67
  abstract transaction<T>(transaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>): Promise<T>;
@@ -61,7 +61,7 @@ export declare abstract class PgTransaction<TQueryResult extends PgQueryResultHK
61
61
  fullSchema: Record<string, unknown>;
62
62
  schema: TSchema;
63
63
  tableNamesMap: Record<string, string>;
64
- } | undefined, nestedIndex?: number);
64
+ } | undefined, nestedIndex?: number, parseRqbJson?: boolean);
65
65
  rollback(): never;
66
66
  setTransaction(config: PgTransactionConfig): Promise<void>;
67
67
  abstract transaction<T>(transaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>): Promise<T>;
@@ -135,8 +135,8 @@ class PgSession {
135
135
  }
136
136
  }
137
137
  class PgTransaction extends PgDatabase {
138
- constructor(dialect, session, relations, schema, nestedIndex = 0) {
139
- super(dialect, session, relations, schema);
138
+ constructor(dialect, session, relations, schema, nestedIndex = 0, parseRqbJson) {
139
+ super(dialect, session, relations, schema, parseRqbJson);
140
140
  this.relations = relations;
141
141
  this.schema = schema;
142
142
  this.nestedIndex = nestedIndex;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { PreparedQuery } from '~/session.ts';\nimport { type Query, type SQL, sql } from '~/sql/index.ts';\nimport { tracer } from '~/tracing.ts';\nimport type { NeonAuthToken } from '~/utils.ts';\nimport { PgDatabase } from './db.ts';\nimport type { PgDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface PreparedQueryConfig {\n\texecute: unknown;\n\tall: unknown;\n\tvalues: unknown;\n}\n\nexport abstract class PgPreparedQuery<T extends PreparedQueryConfig> implements PreparedQuery {\n\tconstructor(\n\t\tprotected query: Query,\n\t\t// cache instance\n\t\tprivate cache: Cache | undefined,\n\t\t// per query related metadata\n\t\tprivate queryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enable: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enable) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\tprotected authToken?: NeonAuthToken;\n\n\tgetQuery(): Query {\n\t\treturn this.query;\n\t}\n\n\tmapResult(response: unknown, _isFromBatch?: boolean): unknown {\n\t\treturn response;\n\t}\n\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tstatic readonly [entityKind]: string = 'PgPreparedQuery';\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enable) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\n\t/** @internal */\n\tabstract all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;\n\n\t/** @internal */\n\tabstract isResponseInArrayMode(): boolean;\n}\n\nexport interface PgTransactionConfig {\n\tisolationLevel?: 'read uncommitted' | 'read committed' | 'repeatable read' | 'serializable';\n\taccessMode?: 'read only' | 'read write';\n\tdeferrable?: boolean;\n}\n\nexport abstract class PgSession<\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> {\n\tstatic readonly [entityKind]: string = 'PgSession';\n\n\tconstructor(protected dialect: PgDialect) {}\n\n\tabstract prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T>;\n\n\tabstract prepareRelationalQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tcustomResultMapper: (\n\t\t\trows: Record<string, unknown>[],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => T['execute'],\n\t): PgPreparedQuery<T>;\n\n\texecute<T>(query: SQL): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T> {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\tconst prepared = tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\t\treturn this.prepareQuery<PreparedQueryConfig & { execute: T }>(\n\t\t\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\t\t\tundefined,\n\t\t\t\t\tundefined,\n\t\t\t\t\tfalse,\n\t\t\t\t);\n\t\t\t});\n\n\t\t\treturn prepared.setToken(token).execute(undefined, token);\n\t\t});\n\t}\n\n\tall<T = unknown>(query: SQL): Promise<T[]> {\n\t\treturn this.prepareQuery<PreparedQueryConfig & { all: T[] }>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfalse,\n\t\t).all();\n\t}\n\n\tasync count(sql: SQL): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number> {\n\t\tconst res = await this.execute<[{ count: string }]>(sql, token);\n\n\t\treturn Number(\n\t\t\tres[0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig,\n\t): Promise<T>;\n}\n\nexport abstract class PgTransaction<\n\tTQueryResult extends PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> extends PgDatabase<TQueryResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PgTransaction';\n\n\tconstructor(\n\t\tdialect: PgDialect,\n\t\tsession: PgSession<any, any, any, any>,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: {\n\t\t\tfullSchema: Record<string, unknown>;\n\t\t\tschema: TSchema;\n\t\t\ttableNamesMap: Record<string, string>;\n\t\t} | undefined,\n\t\tprotected readonly nestedIndex = 0,\n\t) {\n\t\tsuper(dialect, session, relations, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** @internal */\n\tgetTransactionConfigSQL(config: PgTransactionConfig): SQL {\n\t\tconst chunks: string[] = [];\n\t\tif (config.isolationLevel) {\n\t\t\tchunks.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\t\tif (config.accessMode) {\n\t\t\tchunks.push(config.accessMode);\n\t\t}\n\t\tif (typeof config.deferrable === 'boolean') {\n\t\t\tchunks.push(config.deferrable ? 'deferrable' : 'not deferrable');\n\t\t}\n\t\treturn sql.raw(chunks.join(' '));\n\t}\n\n\tsetTransaction(config: PgTransactionConfig): Promise<void> {\n\t\treturn this.session.execute(sql`set transaction ${this.getTransactionConfigSQL(config)}`);\n\t}\n\n\tabstract override transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PgQueryResultHKT {\n\treadonly $brand: 'PgQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport type PgQueryResultKind<TKind extends PgQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n"],"mappings":"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","names":["sql"]}
1
+ {"version":3,"sources":["../../src/pg-core/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { type Cache, hashQuery, NoopCache } from '~/cache/core/cache.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport { DrizzleQueryError, TransactionRollbackError } from '~/errors.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { PreparedQuery } from '~/session.ts';\nimport { type Query, type SQL, sql } from '~/sql/index.ts';\nimport { tracer } from '~/tracing.ts';\nimport type { NeonAuthToken } from '~/utils.ts';\nimport { PgDatabase } from './db.ts';\nimport type { PgDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface PreparedQueryConfig {\n\texecute: unknown;\n\tall: unknown;\n\tvalues: unknown;\n}\n\nexport abstract class PgPreparedQuery<T extends PreparedQueryConfig> implements PreparedQuery {\n\tconstructor(\n\t\tprotected query: Query,\n\t\t// cache instance\n\t\tprivate cache: Cache | undefined,\n\t\t// per query related metadata\n\t\tprivate queryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\t// config that was passed through $withCache\n\t\tprivate cacheConfig?: WithCacheConfig,\n\t) {\n\t\t// it means that no $withCache options were passed and it should be just enabled\n\t\tif (cache && cache.strategy() === 'all' && cacheConfig === undefined) {\n\t\t\tthis.cacheConfig = { enable: true, autoInvalidate: true };\n\t\t}\n\t\tif (!this.cacheConfig?.enable) {\n\t\t\tthis.cacheConfig = undefined;\n\t\t}\n\t}\n\n\tprotected authToken?: NeonAuthToken;\n\n\tgetQuery(): Query {\n\t\treturn this.query;\n\t}\n\n\tmapResult(response: unknown, _isFromBatch?: boolean): unknown {\n\t\treturn response;\n\t}\n\n\t/** @internal */\n\tsetToken(token?: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tstatic readonly [entityKind]: string = 'PgPreparedQuery';\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\t/** @internal */\n\tprotected async queryWithCache<T>(\n\t\tqueryString: string,\n\t\tparams: any[],\n\t\tquery: () => Promise<T>,\n\t): Promise<T> {\n\t\tif (this.cache === undefined || is(this.cache, NoopCache) || this.queryMetadata === undefined) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any mutations, if globally is false\n\t\tif (this.cacheConfig && !this.cacheConfig.enable) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// For mutate queries, we should query the database, wait for a response, and then perform invalidation\n\t\tif (\n\t\t\t(\n\t\t\t\tthis.queryMetadata.type === 'insert' || this.queryMetadata.type === 'update'\n\t\t\t\t|| this.queryMetadata.type === 'delete'\n\t\t\t) && this.queryMetadata.tables.length > 0\n\t\t) {\n\t\t\ttry {\n\t\t\t\tconst [res] = await Promise.all([\n\t\t\t\t\tquery(),\n\t\t\t\t\tthis.cache.onMutate({ tables: this.queryMetadata.tables }),\n\t\t\t\t]);\n\t\t\t\treturn res;\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\t// don't do any reads if globally disabled\n\t\tif (!this.cacheConfig) {\n\t\t\ttry {\n\t\t\t\treturn await query();\n\t\t\t} catch (e) {\n\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t}\n\t\t}\n\n\t\tif (this.queryMetadata.type === 'select') {\n\t\t\tconst fromCache = await this.cache.get(\n\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\tthis.queryMetadata.tables,\n\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\tthis.cacheConfig.autoInvalidate,\n\t\t\t);\n\t\t\tif (fromCache === undefined) {\n\t\t\t\tlet result;\n\t\t\t\ttry {\n\t\t\t\t\tresult = await query();\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t\t\t}\n\t\t\t\t// put actual key\n\t\t\t\tawait this.cache.put(\n\t\t\t\t\tthis.cacheConfig.tag ?? await hashQuery(queryString, params),\n\t\t\t\t\tresult,\n\t\t\t\t\t// make sure we send tables that were used in a query only if user wants to invalidate it on each write\n\t\t\t\t\tthis.cacheConfig.autoInvalidate ? this.queryMetadata.tables : [],\n\t\t\t\t\tthis.cacheConfig.tag !== undefined,\n\t\t\t\t\tthis.cacheConfig.config,\n\t\t\t\t);\n\t\t\t\t// put flag if we should invalidate or not\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\treturn fromCache as unknown as T;\n\t\t}\n\t\ttry {\n\t\t\treturn await query();\n\t\t} catch (e) {\n\t\t\tthrow new DrizzleQueryError(queryString, params, e as Error);\n\t\t}\n\t}\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\t/** @internal */\n\tabstract execute(placeholderValues?: Record<string, unknown>, token?: NeonAuthToken): Promise<T['execute']>;\n\n\t/** @internal */\n\tabstract all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;\n\n\t/** @internal */\n\tabstract isResponseInArrayMode(): boolean;\n}\n\nexport interface PgTransactionConfig {\n\tisolationLevel?: 'read uncommitted' | 'read committed' | 'repeatable read' | 'serializable';\n\taccessMode?: 'read only' | 'read write';\n\tdeferrable?: boolean;\n}\n\nexport abstract class PgSession<\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> {\n\tstatic readonly [entityKind]: string = 'PgSession';\n\n\tconstructor(protected dialect: PgDialect) {}\n\n\tabstract prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T>;\n\n\tabstract prepareRelationalQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tcustomResultMapper: (\n\t\t\trows: Record<string, unknown>[],\n\t\t\tmapColumnValue?: (value: unknown) => unknown,\n\t\t) => T['execute'],\n\t): PgPreparedQuery<T>;\n\n\texecute<T>(query: SQL): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T>;\n\t/** @internal */\n\texecute<T>(query: SQL, token?: NeonAuthToken): Promise<T> {\n\t\treturn tracer.startActiveSpan('drizzle.operation', () => {\n\t\t\tconst prepared = tracer.startActiveSpan('drizzle.prepareQuery', () => {\n\t\t\t\treturn this.prepareQuery<PreparedQueryConfig & { execute: T }>(\n\t\t\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\t\t\tundefined,\n\t\t\t\t\tundefined,\n\t\t\t\t\tfalse,\n\t\t\t\t);\n\t\t\t});\n\n\t\t\treturn prepared.setToken(token).execute(undefined, token);\n\t\t});\n\t}\n\n\tall<T = unknown>(query: SQL): Promise<T[]> {\n\t\treturn this.prepareQuery<PreparedQueryConfig & { all: T[] }>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfalse,\n\t\t).all();\n\t}\n\n\tasync count(sql: SQL): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number>;\n\t/** @internal */\n\tasync count(sql: SQL, token?: NeonAuthToken): Promise<number> {\n\t\tconst res = await this.execute<[{ count: string }]>(sql, token);\n\n\t\treturn Number(\n\t\t\tres[0]['count'],\n\t\t);\n\t}\n\n\tabstract transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig,\n\t): Promise<T>;\n}\n\nexport abstract class PgTransaction<\n\tTQueryResult extends PgQueryResultHKT,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTSchema extends V1.TablesRelationalConfig = V1.ExtractTablesWithRelations<TFullSchema>,\n> extends PgDatabase<TQueryResult, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'PgTransaction';\n\n\tconstructor(\n\t\tdialect: PgDialect,\n\t\tsession: PgSession<any, any, any, any>,\n\t\tprotected relations: TRelations,\n\t\tprotected schema: {\n\t\t\tfullSchema: Record<string, unknown>;\n\t\t\tschema: TSchema;\n\t\t\ttableNamesMap: Record<string, string>;\n\t\t} | undefined,\n\t\tprotected readonly nestedIndex = 0,\n\t\tparseRqbJson?: boolean,\n\t) {\n\t\tsuper(dialect, session, relations, schema, parseRqbJson);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** @internal */\n\tgetTransactionConfigSQL(config: PgTransactionConfig): SQL {\n\t\tconst chunks: string[] = [];\n\t\tif (config.isolationLevel) {\n\t\t\tchunks.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\t\tif (config.accessMode) {\n\t\t\tchunks.push(config.accessMode);\n\t\t}\n\t\tif (typeof config.deferrable === 'boolean') {\n\t\t\tchunks.push(config.deferrable ? 'deferrable' : 'not deferrable');\n\t\t}\n\t\treturn sql.raw(chunks.join(' '));\n\t}\n\n\tsetTransaction(config: PgTransactionConfig): Promise<void> {\n\t\treturn this.session.execute(sql`set transaction ${this.getTransactionConfigSQL(config)}`);\n\t}\n\n\tabstract override transaction<T>(\n\t\ttransaction: (tx: PgTransaction<TQueryResult, TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PgQueryResultHKT {\n\treadonly $brand: 'PgQueryResultHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport type PgQueryResultKind<TKind extends PgQueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n"],"mappings":"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","names":["sql"]}
package/pg-core/table.cjs CHANGED
@@ -73,28 +73,20 @@ function pgTableWithSchema(name, columns, extraConfig, schema, baseName = name)
73
73
  if (extraConfig) {
74
74
  table[PgTable.Symbol.ExtraConfigBuilder] = extraConfig;
75
75
  }
76
- return table;
76
+ return Object.assign(table, {
77
+ enableRLS: () => {
78
+ table[PgTable.Symbol.EnableRLS] = true;
79
+ return table;
80
+ }
81
+ });
77
82
  }
78
- const pgTableInternal = (name, columns, extraConfig) => {
83
+ const pgTable = (name, columns, extraConfig) => {
79
84
  return pgTableWithSchema(name, columns, extraConfig, void 0);
80
85
  };
81
- const pgTableWithRLS = (name, columns, extraConfig) => {
82
- const table = pgTableWithSchema(name, columns, extraConfig, void 0);
83
- table[EnableRLS] = true;
84
- return table;
85
- };
86
- const pgTable = Object.assign(pgTableInternal, { withRLS: pgTableWithRLS });
87
86
  function pgTableCreator(customizeTableName) {
88
- const fn = (name, columns, extraConfig) => {
87
+ return (name, columns, extraConfig) => {
89
88
  return pgTableWithSchema(customizeTableName(name), columns, extraConfig, void 0, name);
90
89
  };
91
- return Object.assign(fn, {
92
- withRLS: ((name, columns, extraConfig) => {
93
- const table = pgTableWithSchema(customizeTableName(name), columns, extraConfig, void 0, name);
94
- table[EnableRLS] = true;
95
- return table;
96
- })
97
- });
98
90
  }
99
91
  // Annotate the CommonJS export names for ESM import in node:
100
92
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns, ColumnBuilderBase } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport {\n\ttype InferTableColumnsModels,\n\tTable,\n\ttype TableConfig as TableConfigBase,\n\ttype UpdateTableConfig,\n} from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport { getPgColumnBuilders, type PgColumnsBuilders } from './columns/all.ts';\nimport type { ExtraConfigColumn, PgColumn, PgColumnBuilder, PgColumns } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PgPolicy } from './policies.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type PgTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder\n\t| PgPolicy;\n\nexport type PgTableExtraConfig = Record<\n\tstring,\n\tPgTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<PgColumns>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:PgInlineForeignKeys');\n/** @internal */\nexport const EnableRLS = Symbol.for('drizzle:EnableRLS');\n\nexport class PgTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'PgTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t\tEnableRLS: EnableRLS as typeof EnableRLS,\n\t});\n\n\t/**@internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\t[EnableRLS]: boolean = false;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]: ((self: Record<string, PgColumn>) => PgTableExtraConfig) | undefined =\n\t\tundefined;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigColumns]: Record<string, ExtraConfigColumn> = {};\n}\n\nexport type AnyPgTable<TPartial extends Partial<TableConfig> = {}> = PgTable<UpdateTableConfig<TableConfig, TPartial>>;\n\nexport type PgTableWithColumns<\n\tT extends TableConfig,\n> =\n\t& PgTable<T>\n\t& T['columns']\n\t& InferTableColumnsModels<T['columns']>;\n\n/** @internal */\nexport function pgTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: PgColumnsBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig | PgTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): PgTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\tdialect: 'pg';\n}> {\n\tconst rawTable = new PgTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getPgColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst builtColumnsForExtraConfig = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.buildExtraConfigColumn(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumnsForExtraConfig;\n\n\tif (extraConfig) {\n\t\ttable[PgTable.Symbol.ExtraConfigBuilder] = extraConfig as any;\n\t}\n\n\treturn table as any;\n}\n\nexport interface PgTableFnInternal<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (\n\t\t\tself: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>,\n\t\t) => PgTableExtraConfigValue[],\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: PgColumnsBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfigValue[],\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\t/**\n\t * @deprecated The third parameter of pgTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig: (\n\t\t\tself: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>,\n\t\t) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\n\t/**\n\t * @deprecated The third parameter of pgTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: PgColumnsBuilders) => TColumnsMap,\n\t\textraConfig: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n}\n\nexport interface PgTableFn<TSchema extends string | undefined = undefined> extends PgTableFnInternal<TSchema> {\n\twithRLS: PgTableFnInternal<TSchema>;\n}\n\nconst pgTableInternal: PgTableFnInternal = (name, columns, extraConfig) => {\n\treturn pgTableWithSchema(name, columns, extraConfig, undefined);\n};\n\nconst pgTableWithRLS: PgTableFn['withRLS'] = (name, columns, extraConfig) => {\n\tconst table = pgTableWithSchema(name, columns, extraConfig, undefined);\n\ttable[EnableRLS] = true;\n\n\treturn table;\n};\n\nexport const pgTable: PgTableFn = Object.assign(pgTableInternal, { withRLS: pgTableWithRLS });\n\nexport function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn {\n\tconst fn: PgTableFnInternal = (name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n\n\treturn Object.assign(fn, {\n\t\twithRLS: ((name, columns, extraConfig) => {\n\t\t\tconst table = pgTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t\t\ttable[EnableRLS] = true;\n\n\t\t\treturn table;\n\t\t}) as PgTableFnInternal,\n\t});\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAC3B,mBAKO;AAEP,iBAA4D;AAwBrD,MAAM,oBAAoB,OAAO,IAAI,6BAA6B;AAElE,MAAM,YAAY,OAAO,IAAI,mBAAmB;AAEhD,MAAM,gBAAqD,mBAAS;AAAA,EAC1E,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAGhD,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,mBAAM,QAAQ;AAAA,IACjE;AAAA,IACA;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAC,SAAS,IAAa;AAAA;AAAA,EAGvB,CAAU,mBAAM,OAAO,kBAAkB,IACxC;AAAA;AAAA,EAGD,CAAU,mBAAM,OAAO,kBAAkB,IAAuC,CAAC;AAClF;AAYO,SAAS,kBAKf,MACA,SACA,aAGA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,QAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,gBAA6B,OAAO,YAAY,aAAa,YAAQ,gCAAoB,CAAC,IAAI;AAEpG,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,6BAA6B,OAAO;AAAA,IACzC,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,uBAAuB,QAAQ;AACzD,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,mBAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,mBAAM,OAAO,kBAAkB,IAAI;AAEzC,MAAI,aAAa;AAChB,UAAM,QAAQ,OAAO,kBAAkB,IAAI;AAAA,EAC5C;AAEA,SAAO;AACR;AA+GA,MAAM,kBAAqC,CAAC,MAAM,SAAS,gBAAgB;AAC1E,SAAO,kBAAkB,MAAM,SAAS,aAAa,MAAS;AAC/D;AAEA,MAAM,iBAAuC,CAAC,MAAM,SAAS,gBAAgB;AAC5E,QAAM,QAAQ,kBAAkB,MAAM,SAAS,aAAa,MAAS;AACrE,QAAM,SAAS,IAAI;AAEnB,SAAO;AACR;AAEO,MAAM,UAAqB,OAAO,OAAO,iBAAiB,EAAE,SAAS,eAAe,CAAC;AAErF,SAAS,eAAe,oBAAyD;AACvF,QAAM,KAAwB,CAAC,MAAM,SAAS,gBAAgB;AAC7D,WAAO,kBAAkB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EACxG;AAEA,SAAO,OAAO,OAAO,IAAI;AAAA,IACxB,UAAU,CAAC,MAAM,SAAS,gBAAgB;AACzC,YAAM,QAAQ,kBAAkB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAC9G,YAAM,SAAS,IAAI;AAEnB,aAAO;AAAA,IACR;AAAA,EACD,CAAC;AACF;","names":["name"]}
1
+ {"version":3,"sources":["../../src/pg-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns, ColumnBuilderBase } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport {\n\ttype InferTableColumnsModels,\n\tTable,\n\ttype TableConfig as TableConfigBase,\n\ttype UpdateTableConfig,\n} from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport { getPgColumnBuilders, type PgColumnsBuilders } from './columns/all.ts';\nimport type { ExtraConfigColumn, PgColumn, PgColumnBuilder, PgColumns } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PgPolicy } from './policies.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type PgTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder\n\t| PgPolicy;\n\nexport type PgTableExtraConfig = Record<\n\tstring,\n\tPgTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<PgColumns>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:PgInlineForeignKeys');\n/** @internal */\nexport const EnableRLS = Symbol.for('drizzle:EnableRLS');\n\nexport class PgTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'PgTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t\tEnableRLS: EnableRLS as typeof EnableRLS,\n\t});\n\n\t/**@internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\t[EnableRLS]: boolean = false;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]: ((self: Record<string, PgColumn>) => PgTableExtraConfig) | undefined =\n\t\tundefined;\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigColumns]: Record<string, ExtraConfigColumn> = {};\n}\n\nexport type AnyPgTable<TPartial extends Partial<TableConfig> = {}> = PgTable<UpdateTableConfig<TableConfig, TPartial>>;\n\nexport type PgTableWithColumns<\n\tT extends TableConfig,\n> =\n\t& PgTable<T>\n\t& T['columns']\n\t& InferTableColumnsModels<T['columns']>\n\t& {\n\t\tenableRLS: () => Omit<\n\t\t\tPgTableWithColumns<T>,\n\t\t\t'enableRLS'\n\t\t>;\n\t};\n\n/** @internal */\nexport function pgTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: PgColumnsBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig | PgTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): PgTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\tdialect: 'pg';\n}> {\n\tconst rawTable = new PgTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getPgColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst builtColumnsForExtraConfig = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.buildExtraConfigColumn(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumnsForExtraConfig;\n\n\tif (extraConfig) {\n\t\ttable[PgTable.Symbol.ExtraConfigBuilder] = extraConfig as any;\n\t}\n\n\treturn Object.assign(table, {\n\t\tenableRLS: () => {\n\t\t\ttable[PgTable.Symbol.EnableRLS] = true;\n\t\t\treturn table as PgTableWithColumns<{\n\t\t\t\tname: TTableName;\n\t\t\t\tschema: TSchemaName;\n\t\t\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\t\t\tdialect: 'pg';\n\t\t\t}>;\n\t\t},\n\t}) as any;\n}\n\nexport interface PgTableFn<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (\n\t\t\tself: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>,\n\t\t) => PgTableExtraConfigValue[],\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: PgColumnsBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfigValue[],\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\t/**\n\t * @deprecated The third parameter of pgTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig: (\n\t\t\tself: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>,\n\t\t) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\n\t/**\n\t * @deprecated The third parameter of pgTable is changing and will only accept an array instead of an object\n\t *\n\t * @example\n\t * Deprecated version:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => ({\n\t * \tidx: index('custom_name').on(t.id)\n\t * }));\n\t * ```\n\t *\n\t * New API:\n\t * ```ts\n\t * export const users = pgTable(\"users\", {\n\t * \tid: integer(),\n\t * }, (t) => [\n\t * \tindex('custom_name').on(t.id)\n\t * ]);\n\t * ```\n\t */\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, ColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: PgColumnsBuilders) => TColumnsMap,\n\t\textraConfig: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n}\n\nexport const pgTable: PgTableFn = (name, columns, extraConfig) => {\n\treturn pgTableWithSchema(name, columns, extraConfig, undefined);\n};\n\nexport function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAC3B,mBAKO;AAEP,iBAA4D;AAwBrD,MAAM,oBAAoB,OAAO,IAAI,6BAA6B;AAElE,MAAM,YAAY,OAAO,IAAI,mBAAmB;AAEhD,MAAM,gBAAqD,mBAAS;AAAA,EAC1E,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAGhD,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,mBAAM,QAAQ;AAAA,IACjE;AAAA,IACA;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAC,SAAS,IAAa;AAAA;AAAA,EAGvB,CAAU,mBAAM,OAAO,kBAAkB,IACxC;AAAA;AAAA,EAGD,CAAU,mBAAM,OAAO,kBAAkB,IAAuC,CAAC;AAClF;AAkBO,SAAS,kBAKf,MACA,SACA,aAGA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,QAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,gBAA6B,OAAO,YAAY,aAAa,YAAQ,gCAAoB,CAAC,IAAI;AAEpG,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,6BAA6B,OAAO;AAAA,IACzC,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,uBAAuB,QAAQ;AACzD,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,mBAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,mBAAM,OAAO,kBAAkB,IAAI;AAEzC,MAAI,aAAa;AAChB,UAAM,QAAQ,OAAO,kBAAkB,IAAI;AAAA,EAC5C;AAEA,SAAO,OAAO,OAAO,OAAO;AAAA,IAC3B,WAAW,MAAM;AAChB,YAAM,QAAQ,OAAO,SAAS,IAAI;AAClC,aAAO;AAAA,IAMR;AAAA,EACD,CAAC;AACF;AA2GO,MAAM,UAAqB,CAAC,MAAM,SAAS,gBAAgB;AACjE,SAAO,kBAAkB,MAAM,SAAS,aAAa,MAAS;AAC/D;AAEO,SAAS,eAAe,oBAAyD;AACvF,SAAO,CAAC,MAAM,SAAS,gBAAgB;AACtC,WAAO,kBAAkB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EACxG;AACD;","names":["name"]}