drizzle-orm 0.44.3-f0d7da2 → 0.44.4-5f2d36c

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 (829) hide show
  1. package/column-builder.cjs.map +1 -1
  2. package/column-builder.d.cts +5 -8
  3. package/column-builder.d.ts +5 -8
  4. package/column-builder.js.map +1 -1
  5. package/column.cjs +0 -2
  6. package/column.cjs.map +1 -1
  7. package/column.d.cts +0 -1
  8. package/column.d.ts +0 -1
  9. package/column.js +0 -2
  10. package/column.js.map +1 -1
  11. package/errors.cjs +13 -0
  12. package/errors.cjs.map +1 -1
  13. package/errors.d.cts +6 -0
  14. package/errors.d.ts +6 -0
  15. package/errors.js +12 -0
  16. package/errors.js.map +1 -1
  17. package/gel-core/session.cjs +6 -7
  18. package/gel-core/session.cjs.map +1 -1
  19. package/gel-core/session.js +1 -2
  20. package/gel-core/session.js.map +1 -1
  21. package/mysql-core/dialect.cjs +0 -3
  22. package/mysql-core/dialect.cjs.map +1 -1
  23. package/mysql-core/dialect.d.cts +0 -1
  24. package/mysql-core/dialect.d.ts +0 -1
  25. package/mysql-core/dialect.js +0 -3
  26. package/mysql-core/dialect.js.map +1 -1
  27. package/mysql-core/session.cjs +6 -7
  28. package/mysql-core/session.cjs.map +1 -1
  29. package/mysql-core/session.js +1 -2
  30. package/mysql-core/session.js.map +1 -1
  31. package/mysql-proxy/driver.cjs +2 -2
  32. package/mysql-proxy/driver.cjs.map +1 -1
  33. package/mysql-proxy/driver.d.cts +1 -2
  34. package/mysql-proxy/driver.d.ts +1 -2
  35. package/mysql-proxy/driver.js +2 -2
  36. package/mysql-proxy/driver.js.map +1 -1
  37. package/node-postgres/session.cjs.map +1 -1
  38. package/node-postgres/session.js.map +1 -1
  39. package/package.json +28 -1458
  40. package/pg-core/columns/common.cjs +10 -11
  41. package/pg-core/columns/common.cjs.map +1 -1
  42. package/pg-core/columns/common.d.cts +2 -3
  43. package/pg-core/columns/common.d.ts +2 -3
  44. package/pg-core/columns/common.js +10 -11
  45. package/pg-core/columns/common.js.map +1 -1
  46. package/pg-core/foreign-keys.cjs +0 -4
  47. package/pg-core/foreign-keys.cjs.map +1 -1
  48. package/pg-core/foreign-keys.d.cts +0 -2
  49. package/pg-core/foreign-keys.d.ts +0 -2
  50. package/pg-core/foreign-keys.js +0 -4
  51. package/pg-core/foreign-keys.js.map +1 -1
  52. package/pg-core/primary-keys.cjs +0 -3
  53. package/pg-core/primary-keys.cjs.map +1 -1
  54. package/pg-core/primary-keys.d.cts +0 -1
  55. package/pg-core/primary-keys.d.ts +0 -1
  56. package/pg-core/primary-keys.js +0 -3
  57. package/pg-core/primary-keys.js.map +1 -1
  58. package/pg-core/session.cjs +6 -7
  59. package/pg-core/session.cjs.map +1 -1
  60. package/pg-core/session.js +1 -2
  61. package/pg-core/session.js.map +1 -1
  62. package/pg-core/unique-constraint.cjs +0 -5
  63. package/pg-core/unique-constraint.cjs.map +1 -1
  64. package/pg-core/unique-constraint.d.cts +0 -2
  65. package/pg-core/unique-constraint.d.ts +0 -2
  66. package/pg-core/unique-constraint.js +0 -5
  67. package/pg-core/unique-constraint.js.map +1 -1
  68. package/relations.cjs +0 -48
  69. package/relations.cjs.map +1 -1
  70. package/relations.d.cts +0 -1
  71. package/relations.d.ts +0 -1
  72. package/relations.js +0 -47
  73. package/relations.js.map +1 -1
  74. package/singlestore-core/session.cjs +6 -7
  75. package/singlestore-core/session.cjs.map +1 -1
  76. package/singlestore-core/session.js +1 -2
  77. package/singlestore-core/session.js.map +1 -1
  78. package/sql/sql.cjs +3 -10
  79. package/sql/sql.cjs.map +1 -1
  80. package/sql/sql.d.cts +1 -1
  81. package/sql/sql.d.ts +1 -1
  82. package/sql/sql.js +3 -10
  83. package/sql/sql.js.map +1 -1
  84. package/sqlite-core/columns/blob.cjs +8 -14
  85. package/sqlite-core/columns/blob.cjs.map +1 -1
  86. package/sqlite-core/columns/blob.js +9 -15
  87. package/sqlite-core/columns/blob.js.map +1 -1
  88. package/sqlite-core/session.cjs +6 -7
  89. package/sqlite-core/session.cjs.map +1 -1
  90. package/sqlite-core/session.js +1 -2
  91. package/sqlite-core/session.js.map +1 -1
  92. package/utils.cjs +5 -2
  93. package/utils.cjs.map +1 -1
  94. package/utils.d.cts +1 -0
  95. package/utils.d.ts +1 -0
  96. package/utils.js +3 -1
  97. package/utils.js.map +1 -1
  98. package/version.cjs +2 -2
  99. package/version.cjs.map +1 -1
  100. package/version.d.cts +2 -2
  101. package/version.d.ts +2 -2
  102. package/version.js +2 -2
  103. package/version.js.map +1 -1
  104. package/cockroach/driver.cjs +0 -113
  105. package/cockroach/driver.cjs.map +0 -1
  106. package/cockroach/driver.d.cts +0 -42
  107. package/cockroach/driver.d.ts +0 -42
  108. package/cockroach/driver.js +0 -80
  109. package/cockroach/driver.js.map +0 -1
  110. package/cockroach/index.cjs +0 -25
  111. package/cockroach/index.cjs.map +0 -1
  112. package/cockroach/index.d.cts +0 -2
  113. package/cockroach/index.d.ts +0 -2
  114. package/cockroach/index.js +0 -3
  115. package/cockroach/index.js.map +0 -1
  116. package/cockroach/migrator.cjs +0 -33
  117. package/cockroach/migrator.cjs.map +0 -1
  118. package/cockroach/migrator.d.cts +0 -3
  119. package/cockroach/migrator.d.ts +0 -3
  120. package/cockroach/migrator.js +0 -9
  121. package/cockroach/migrator.js.map +0 -1
  122. package/cockroach/session.cjs +0 -253
  123. package/cockroach/session.cjs.map +0 -1
  124. package/cockroach/session.d.cts +0 -48
  125. package/cockroach/session.d.ts +0 -48
  126. package/cockroach/session.js +0 -217
  127. package/cockroach/session.js.map +0 -1
  128. package/cockroach-core/alias.cjs +0 -32
  129. package/cockroach-core/alias.cjs.map +0 -1
  130. package/cockroach-core/alias.d.cts +0 -4
  131. package/cockroach-core/alias.d.ts +0 -4
  132. package/cockroach-core/alias.js +0 -8
  133. package/cockroach-core/alias.js.map +0 -1
  134. package/cockroach-core/checks.cjs +0 -58
  135. package/cockroach-core/checks.cjs.map +0 -1
  136. package/cockroach-core/checks.d.cts +0 -18
  137. package/cockroach-core/checks.d.ts +0 -18
  138. package/cockroach-core/checks.js +0 -32
  139. package/cockroach-core/checks.js.map +0 -1
  140. package/cockroach-core/columns/all.cjs +0 -79
  141. package/cockroach-core/columns/all.cjs.map +0 -1
  142. package/cockroach-core/columns/all.d.cts +0 -50
  143. package/cockroach-core/columns/all.d.ts +0 -50
  144. package/cockroach-core/columns/all.js +0 -55
  145. package/cockroach-core/columns/all.js.map +0 -1
  146. package/cockroach-core/columns/bigint.cjs +0 -104
  147. package/cockroach-core/columns/bigint.cjs.map +0 -1
  148. package/cockroach-core/columns/bigint.d.cts +0 -46
  149. package/cockroach-core/columns/bigint.d.ts +0 -46
  150. package/cockroach-core/columns/bigint.js +0 -75
  151. package/cockroach-core/columns/bigint.js.map +0 -1
  152. package/cockroach-core/columns/bit.cjs +0 -60
  153. package/cockroach-core/columns/bit.cjs.map +0 -1
  154. package/cockroach-core/columns/bit.d.cts +0 -37
  155. package/cockroach-core/columns/bit.d.ts +0 -37
  156. package/cockroach-core/columns/bit.js +0 -34
  157. package/cockroach-core/columns/bit.js.map +0 -1
  158. package/cockroach-core/columns/boolean.cjs +0 -56
  159. package/cockroach-core/columns/boolean.cjs.map +0 -1
  160. package/cockroach-core/columns/boolean.d.cts +0 -22
  161. package/cockroach-core/columns/boolean.d.ts +0 -22
  162. package/cockroach-core/columns/boolean.js +0 -30
  163. package/cockroach-core/columns/boolean.js.map +0 -1
  164. package/cockroach-core/columns/char.cjs +0 -62
  165. package/cockroach-core/columns/char.cjs.map +0 -1
  166. package/cockroach-core/columns/char.d.cts +0 -45
  167. package/cockroach-core/columns/char.d.ts +0 -45
  168. package/cockroach-core/columns/char.js +0 -36
  169. package/cockroach-core/columns/char.js.map +0 -1
  170. package/cockroach-core/columns/common.cjs +0 -191
  171. package/cockroach-core/columns/common.cjs.map +0 -1
  172. package/cockroach-core/columns/common.d.cts +0 -118
  173. package/cockroach-core/columns/common.d.ts +0 -118
  174. package/cockroach-core/columns/common.js +0 -161
  175. package/cockroach-core/columns/common.js.map +0 -1
  176. package/cockroach-core/columns/custom.cjs +0 -77
  177. package/cockroach-core/columns/custom.cjs.map +0 -1
  178. package/cockroach-core/columns/custom.d.cts +0 -155
  179. package/cockroach-core/columns/custom.d.ts +0 -155
  180. package/cockroach-core/columns/custom.js +0 -51
  181. package/cockroach-core/columns/custom.js.map +0 -1
  182. package/cockroach-core/columns/date.cjs +0 -91
  183. package/cockroach-core/columns/date.cjs.map +0 -1
  184. package/cockroach-core/columns/date.common.cjs +0 -37
  185. package/cockroach-core/columns/date.common.cjs.map +0 -1
  186. package/cockroach-core/columns/date.common.d.cts +0 -7
  187. package/cockroach-core/columns/date.common.d.ts +0 -7
  188. package/cockroach-core/columns/date.common.js +0 -13
  189. package/cockroach-core/columns/date.common.js.map +0 -1
  190. package/cockroach-core/columns/date.d.cts +0 -46
  191. package/cockroach-core/columns/date.d.ts +0 -46
  192. package/cockroach-core/columns/date.js +0 -63
  193. package/cockroach-core/columns/date.js.map +0 -1
  194. package/cockroach-core/columns/decimal.cjs +0 -164
  195. package/cockroach-core/columns/decimal.cjs.map +0 -1
  196. package/cockroach-core/columns/decimal.d.cts +0 -99
  197. package/cockroach-core/columns/decimal.d.ts +0 -99
  198. package/cockroach-core/columns/decimal.js +0 -133
  199. package/cockroach-core/columns/decimal.js.map +0 -1
  200. package/cockroach-core/columns/enum.cjs +0 -127
  201. package/cockroach-core/columns/enum.cjs.map +0 -1
  202. package/cockroach-core/columns/enum.d.cts +0 -83
  203. package/cockroach-core/columns/enum.d.ts +0 -83
  204. package/cockroach-core/columns/enum.js +0 -96
  205. package/cockroach-core/columns/enum.js.map +0 -1
  206. package/cockroach-core/columns/float.cjs +0 -65
  207. package/cockroach-core/columns/float.cjs.map +0 -1
  208. package/cockroach-core/columns/float.d.cts +0 -24
  209. package/cockroach-core/columns/float.d.ts +0 -24
  210. package/cockroach-core/columns/float.js +0 -38
  211. package/cockroach-core/columns/float.js.map +0 -1
  212. package/cockroach-core/columns/geometry.cjs +0 -98
  213. package/cockroach-core/columns/geometry.cjs.map +0 -1
  214. package/cockroach-core/columns/geometry.d.cts +0 -58
  215. package/cockroach-core/columns/geometry.d.ts +0 -58
  216. package/cockroach-core/columns/geometry.js +0 -70
  217. package/cockroach-core/columns/geometry.js.map +0 -1
  218. package/cockroach-core/columns/index.cjs +0 -69
  219. package/cockroach-core/columns/index.cjs.map +0 -1
  220. package/cockroach-core/columns/index.d.cts +0 -24
  221. package/cockroach-core/columns/index.d.ts +0 -24
  222. package/cockroach-core/columns/index.js +0 -25
  223. package/cockroach-core/columns/index.js.map +0 -1
  224. package/cockroach-core/columns/inet.cjs +0 -56
  225. package/cockroach-core/columns/inet.cjs.map +0 -1
  226. package/cockroach-core/columns/inet.d.cts +0 -22
  227. package/cockroach-core/columns/inet.d.ts +0 -22
  228. package/cockroach-core/columns/inet.js +0 -30
  229. package/cockroach-core/columns/inet.js.map +0 -1
  230. package/cockroach-core/columns/int.common.cjs +0 -55
  231. package/cockroach-core/columns/int.common.cjs.map +0 -1
  232. package/cockroach-core/columns/int.common.d.cts +0 -11
  233. package/cockroach-core/columns/int.common.d.ts +0 -11
  234. package/cockroach-core/columns/int.common.js +0 -31
  235. package/cockroach-core/columns/int.common.js.map +0 -1
  236. package/cockroach-core/columns/integer.cjs +0 -63
  237. package/cockroach-core/columns/integer.cjs.map +0 -1
  238. package/cockroach-core/columns/integer.d.cts +0 -24
  239. package/cockroach-core/columns/integer.d.ts +0 -24
  240. package/cockroach-core/columns/integer.js +0 -37
  241. package/cockroach-core/columns/integer.js.map +0 -1
  242. package/cockroach-core/columns/interval.cjs +0 -63
  243. package/cockroach-core/columns/interval.cjs.map +0 -1
  244. package/cockroach-core/columns/interval.d.cts +0 -34
  245. package/cockroach-core/columns/interval.d.ts +0 -34
  246. package/cockroach-core/columns/interval.js +0 -37
  247. package/cockroach-core/columns/interval.js.map +0 -1
  248. package/cockroach-core/columns/jsonb.cjs +0 -72
  249. package/cockroach-core/columns/jsonb.cjs.map +0 -1
  250. package/cockroach-core/columns/jsonb.d.cts +0 -28
  251. package/cockroach-core/columns/jsonb.d.ts +0 -28
  252. package/cockroach-core/columns/jsonb.js +0 -46
  253. package/cockroach-core/columns/jsonb.js.map +0 -1
  254. package/cockroach-core/columns/real.cjs +0 -66
  255. package/cockroach-core/columns/real.cjs.map +0 -1
  256. package/cockroach-core/columns/real.d.cts +0 -29
  257. package/cockroach-core/columns/real.d.ts +0 -29
  258. package/cockroach-core/columns/real.js +0 -40
  259. package/cockroach-core/columns/real.js.map +0 -1
  260. package/cockroach-core/columns/smallint.cjs +0 -68
  261. package/cockroach-core/columns/smallint.cjs.map +0 -1
  262. package/cockroach-core/columns/smallint.d.cts +0 -26
  263. package/cockroach-core/columns/smallint.d.ts +0 -26
  264. package/cockroach-core/columns/smallint.js +0 -41
  265. package/cockroach-core/columns/smallint.js.map +0 -1
  266. package/cockroach-core/columns/string.cjs +0 -68
  267. package/cockroach-core/columns/string.cjs.map +0 -1
  268. package/cockroach-core/columns/string.d.cts +0 -51
  269. package/cockroach-core/columns/string.d.ts +0 -51
  270. package/cockroach-core/columns/string.js +0 -41
  271. package/cockroach-core/columns/string.js.map +0 -1
  272. package/cockroach-core/columns/time.cjs +0 -70
  273. package/cockroach-core/columns/time.cjs.map +0 -1
  274. package/cockroach-core/columns/time.d.cts +0 -39
  275. package/cockroach-core/columns/time.d.ts +0 -39
  276. package/cockroach-core/columns/time.js +0 -44
  277. package/cockroach-core/columns/time.js.map +0 -1
  278. package/cockroach-core/columns/timestamp.cjs +0 -111
  279. package/cockroach-core/columns/timestamp.cjs.map +0 -1
  280. package/cockroach-core/columns/timestamp.d.cts +0 -66
  281. package/cockroach-core/columns/timestamp.d.ts +0 -66
  282. package/cockroach-core/columns/timestamp.js +0 -83
  283. package/cockroach-core/columns/timestamp.js.map +0 -1
  284. package/cockroach-core/columns/utils.cjs +0 -65
  285. package/cockroach-core/columns/utils.cjs.map +0 -1
  286. package/cockroach-core/columns/utils.d.cts +0 -1
  287. package/cockroach-core/columns/utils.d.ts +0 -1
  288. package/cockroach-core/columns/utils.js +0 -41
  289. package/cockroach-core/columns/utils.js.map +0 -1
  290. package/cockroach-core/columns/uuid.cjs +0 -63
  291. package/cockroach-core/columns/uuid.cjs.map +0 -1
  292. package/cockroach-core/columns/uuid.d.cts +0 -26
  293. package/cockroach-core/columns/uuid.d.ts +0 -26
  294. package/cockroach-core/columns/uuid.js +0 -37
  295. package/cockroach-core/columns/uuid.js.map +0 -1
  296. package/cockroach-core/columns/varchar.cjs +0 -62
  297. package/cockroach-core/columns/varchar.cjs.map +0 -1
  298. package/cockroach-core/columns/varchar.d.cts +0 -45
  299. package/cockroach-core/columns/varchar.d.ts +0 -45
  300. package/cockroach-core/columns/varchar.js +0 -36
  301. package/cockroach-core/columns/varchar.js.map +0 -1
  302. package/cockroach-core/columns/vector.cjs +0 -66
  303. package/cockroach-core/columns/vector.cjs.map +0 -1
  304. package/cockroach-core/columns/vector.d.cts +0 -41
  305. package/cockroach-core/columns/vector.d.ts +0 -41
  306. package/cockroach-core/columns/vector.js +0 -40
  307. package/cockroach-core/columns/vector.js.map +0 -1
  308. package/cockroach-core/db.cjs +0 -346
  309. package/cockroach-core/db.cjs.map +0 -1
  310. package/cockroach-core/db.d.cts +0 -282
  311. package/cockroach-core/db.d.ts +0 -282
  312. package/cockroach-core/db.js +0 -327
  313. package/cockroach-core/db.js.map +0 -1
  314. package/cockroach-core/dialect.cjs +0 -1136
  315. package/cockroach-core/dialect.cjs.map +0 -1
  316. package/cockroach-core/dialect.d.cts +0 -65
  317. package/cockroach-core/dialect.d.ts +0 -65
  318. package/cockroach-core/dialect.js +0 -1132
  319. package/cockroach-core/dialect.js.map +0 -1
  320. package/cockroach-core/expressions.cjs +0 -49
  321. package/cockroach-core/expressions.cjs.map +0 -1
  322. package/cockroach-core/expressions.d.cts +0 -8
  323. package/cockroach-core/expressions.d.ts +0 -8
  324. package/cockroach-core/expressions.js +0 -22
  325. package/cockroach-core/expressions.js.map +0 -1
  326. package/cockroach-core/foreign-keys.cjs +0 -92
  327. package/cockroach-core/foreign-keys.cjs.map +0 -1
  328. package/cockroach-core/foreign-keys.d.cts +0 -52
  329. package/cockroach-core/foreign-keys.d.ts +0 -52
  330. package/cockroach-core/foreign-keys.js +0 -66
  331. package/cockroach-core/foreign-keys.js.map +0 -1
  332. package/cockroach-core/index.cjs +0 -61
  333. package/cockroach-core/index.cjs.map +0 -1
  334. package/cockroach-core/index.d.cts +0 -20
  335. package/cockroach-core/index.d.ts +0 -20
  336. package/cockroach-core/index.js +0 -21
  337. package/cockroach-core/index.js.map +0 -1
  338. package/cockroach-core/indexes.cjs +0 -137
  339. package/cockroach-core/indexes.cjs.map +0 -1
  340. package/cockroach-core/indexes.d.cts +0 -64
  341. package/cockroach-core/indexes.d.ts +0 -64
  342. package/cockroach-core/indexes.js +0 -109
  343. package/cockroach-core/indexes.js.map +0 -1
  344. package/cockroach-core/policies.cjs +0 -58
  345. package/cockroach-core/policies.cjs.map +0 -1
  346. package/cockroach-core/policies.d.cts +0 -24
  347. package/cockroach-core/policies.d.ts +0 -24
  348. package/cockroach-core/policies.js +0 -33
  349. package/cockroach-core/policies.js.map +0 -1
  350. package/cockroach-core/primary-keys.cjs +0 -64
  351. package/cockroach-core/primary-keys.cjs.map +0 -1
  352. package/cockroach-core/primary-keys.d.cts +0 -23
  353. package/cockroach-core/primary-keys.d.ts +0 -23
  354. package/cockroach-core/primary-keys.js +0 -38
  355. package/cockroach-core/primary-keys.js.map +0 -1
  356. package/cockroach-core/query-builders/count.cjs +0 -79
  357. package/cockroach-core/query-builders/count.cjs.map +0 -1
  358. package/cockroach-core/query-builders/count.d.cts +0 -29
  359. package/cockroach-core/query-builders/count.d.ts +0 -29
  360. package/cockroach-core/query-builders/count.js +0 -55
  361. package/cockroach-core/query-builders/count.js.map +0 -1
  362. package/cockroach-core/query-builders/delete.cjs +0 -124
  363. package/cockroach-core/query-builders/delete.cjs.map +0 -1
  364. package/cockroach-core/query-builders/delete.d.cts +0 -103
  365. package/cockroach-core/query-builders/delete.d.ts +0 -103
  366. package/cockroach-core/query-builders/delete.js +0 -100
  367. package/cockroach-core/query-builders/delete.js.map +0 -1
  368. package/cockroach-core/query-builders/index.cjs +0 -35
  369. package/cockroach-core/query-builders/index.cjs.map +0 -1
  370. package/cockroach-core/query-builders/index.d.cts +0 -7
  371. package/cockroach-core/query-builders/index.d.ts +0 -7
  372. package/cockroach-core/query-builders/index.js +0 -8
  373. package/cockroach-core/query-builders/index.js.map +0 -1
  374. package/cockroach-core/query-builders/insert.cjs +0 -213
  375. package/cockroach-core/query-builders/insert.cjs.map +0 -1
  376. package/cockroach-core/query-builders/insert.d.cts +0 -171
  377. package/cockroach-core/query-builders/insert.d.ts +0 -171
  378. package/cockroach-core/query-builders/insert.js +0 -188
  379. package/cockroach-core/query-builders/insert.js.map +0 -1
  380. package/cockroach-core/query-builders/query-builder.cjs +0 -118
  381. package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
  382. package/cockroach-core/query-builders/query-builder.d.cts +0 -37
  383. package/cockroach-core/query-builders/query-builder.d.ts +0 -37
  384. package/cockroach-core/query-builders/query-builder.js +0 -94
  385. package/cockroach-core/query-builders/query-builder.js.map +0 -1
  386. package/cockroach-core/query-builders/query.cjs +0 -145
  387. package/cockroach-core/query-builders/query.cjs.map +0 -1
  388. package/cockroach-core/query-builders/query.d.cts +0 -47
  389. package/cockroach-core/query-builders/query.d.ts +0 -47
  390. package/cockroach-core/query-builders/query.js +0 -122
  391. package/cockroach-core/query-builders/query.js.map +0 -1
  392. package/cockroach-core/query-builders/raw.cjs +0 -57
  393. package/cockroach-core/query-builders/raw.cjs.map +0 -1
  394. package/cockroach-core/query-builders/raw.d.cts +0 -22
  395. package/cockroach-core/query-builders/raw.d.ts +0 -22
  396. package/cockroach-core/query-builders/raw.js +0 -33
  397. package/cockroach-core/query-builders/raw.js.map +0 -1
  398. package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
  399. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
  400. package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
  401. package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
  402. package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
  403. package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
  404. package/cockroach-core/query-builders/select.cjs +0 -848
  405. package/cockroach-core/query-builders/select.cjs.map +0 -1
  406. package/cockroach-core/query-builders/select.d.cts +0 -787
  407. package/cockroach-core/query-builders/select.d.ts +0 -787
  408. package/cockroach-core/query-builders/select.js +0 -821
  409. package/cockroach-core/query-builders/select.js.map +0 -1
  410. package/cockroach-core/query-builders/select.types.cjs +0 -17
  411. package/cockroach-core/query-builders/select.types.cjs.map +0 -1
  412. package/cockroach-core/query-builders/select.types.d.cts +0 -139
  413. package/cockroach-core/query-builders/select.types.d.ts +0 -139
  414. package/cockroach-core/query-builders/select.types.js +0 -1
  415. package/cockroach-core/query-builders/select.types.js.map +0 -1
  416. package/cockroach-core/query-builders/update.cjs +0 -240
  417. package/cockroach-core/query-builders/update.cjs.map +0 -1
  418. package/cockroach-core/query-builders/update.d.cts +0 -170
  419. package/cockroach-core/query-builders/update.d.ts +0 -170
  420. package/cockroach-core/query-builders/update.js +0 -219
  421. package/cockroach-core/query-builders/update.js.map +0 -1
  422. package/cockroach-core/roles.cjs +0 -54
  423. package/cockroach-core/roles.cjs.map +0 -1
  424. package/cockroach-core/roles.d.cts +0 -12
  425. package/cockroach-core/roles.d.ts +0 -12
  426. package/cockroach-core/roles.js +0 -29
  427. package/cockroach-core/roles.js.map +0 -1
  428. package/cockroach-core/schema.cjs +0 -80
  429. package/cockroach-core/schema.cjs.map +0 -1
  430. package/cockroach-core/schema.d.cts +0 -22
  431. package/cockroach-core/schema.d.ts +0 -22
  432. package/cockroach-core/schema.js +0 -60
  433. package/cockroach-core/schema.js.map +0 -1
  434. package/cockroach-core/sequence.cjs +0 -52
  435. package/cockroach-core/sequence.cjs.map +0 -1
  436. package/cockroach-core/sequence.d.cts +0 -17
  437. package/cockroach-core/sequence.d.ts +0 -17
  438. package/cockroach-core/sequence.js +0 -25
  439. package/cockroach-core/sequence.js.map +0 -1
  440. package/cockroach-core/session.cjs +0 -120
  441. package/cockroach-core/session.cjs.map +0 -1
  442. package/cockroach-core/session.d.cts +0 -62
  443. package/cockroach-core/session.d.ts +0 -62
  444. package/cockroach-core/session.js +0 -94
  445. package/cockroach-core/session.js.map +0 -1
  446. package/cockroach-core/subquery.cjs +0 -17
  447. package/cockroach-core/subquery.cjs.map +0 -1
  448. package/cockroach-core/subquery.d.cts +0 -18
  449. package/cockroach-core/subquery.d.ts +0 -18
  450. package/cockroach-core/subquery.js +0 -1
  451. package/cockroach-core/subquery.js.map +0 -1
  452. package/cockroach-core/table.cjs +0 -100
  453. package/cockroach-core/table.cjs.map +0 -1
  454. package/cockroach-core/table.d.cts +0 -39
  455. package/cockroach-core/table.d.ts +0 -39
  456. package/cockroach-core/table.js +0 -71
  457. package/cockroach-core/table.js.map +0 -1
  458. package/cockroach-core/unique-constraint.cjs +0 -77
  459. package/cockroach-core/unique-constraint.cjs.map +0 -1
  460. package/cockroach-core/unique-constraint.d.cts +0 -23
  461. package/cockroach-core/unique-constraint.d.ts +0 -23
  462. package/cockroach-core/unique-constraint.js +0 -50
  463. package/cockroach-core/unique-constraint.js.map +0 -1
  464. package/cockroach-core/utils/array.cjs +0 -106
  465. package/cockroach-core/utils/array.cjs.map +0 -1
  466. package/cockroach-core/utils/array.d.cts +0 -3
  467. package/cockroach-core/utils/array.d.ts +0 -3
  468. package/cockroach-core/utils/array.js +0 -80
  469. package/cockroach-core/utils/array.js.map +0 -1
  470. package/cockroach-core/utils/index.cjs +0 -23
  471. package/cockroach-core/utils/index.cjs.map +0 -1
  472. package/cockroach-core/utils/index.d.cts +0 -1
  473. package/cockroach-core/utils/index.d.ts +0 -1
  474. package/cockroach-core/utils/index.js +0 -2
  475. package/cockroach-core/utils/index.js.map +0 -1
  476. package/cockroach-core/utils.cjs +0 -98
  477. package/cockroach-core/utils.cjs.map +0 -1
  478. package/cockroach-core/utils.d.cts +0 -47
  479. package/cockroach-core/utils.d.ts +0 -47
  480. package/cockroach-core/utils.js +0 -72
  481. package/cockroach-core/utils.js.map +0 -1
  482. package/cockroach-core/view-base.cjs +0 -33
  483. package/cockroach-core/view-base.cjs.map +0 -1
  484. package/cockroach-core/view-base.d.cts +0 -8
  485. package/cockroach-core/view-base.d.ts +0 -8
  486. package/cockroach-core/view-base.js +0 -9
  487. package/cockroach-core/view-base.js.map +0 -1
  488. package/cockroach-core/view.cjs +0 -271
  489. package/cockroach-core/view.cjs.map +0 -1
  490. package/cockroach-core/view.d.cts +0 -107
  491. package/cockroach-core/view.d.ts +0 -107
  492. package/cockroach-core/view.js +0 -233
  493. package/cockroach-core/view.js.map +0 -1
  494. package/errors/index.cjs +0 -39
  495. package/errors/index.cjs.map +0 -1
  496. package/errors/index.d.cts +0 -6
  497. package/errors/index.d.ts +0 -6
  498. package/errors/index.js +0 -15
  499. package/errors/index.js.map +0 -1
  500. package/mssql-core/alias.cjs +0 -32
  501. package/mssql-core/alias.cjs.map +0 -1
  502. package/mssql-core/alias.d.cts +0 -4
  503. package/mssql-core/alias.d.ts +0 -4
  504. package/mssql-core/alias.js +0 -8
  505. package/mssql-core/alias.js.map +0 -1
  506. package/mssql-core/checks.cjs +0 -58
  507. package/mssql-core/checks.cjs.map +0 -1
  508. package/mssql-core/checks.d.cts +0 -18
  509. package/mssql-core/checks.d.ts +0 -18
  510. package/mssql-core/checks.js +0 -32
  511. package/mssql-core/checks.js.map +0 -1
  512. package/mssql-core/columns/all.cjs +0 -74
  513. package/mssql-core/columns/all.cjs.map +0 -1
  514. package/mssql-core/columns/all.d.cts +0 -45
  515. package/mssql-core/columns/all.d.ts +0 -45
  516. package/mssql-core/columns/all.js +0 -50
  517. package/mssql-core/columns/all.js.map +0 -1
  518. package/mssql-core/columns/bigint.cjs +0 -67
  519. package/mssql-core/columns/bigint.cjs.map +0 -1
  520. package/mssql-core/columns/bigint.d.cts +0 -33
  521. package/mssql-core/columns/bigint.d.ts +0 -33
  522. package/mssql-core/columns/bigint.js +0 -41
  523. package/mssql-core/columns/bigint.js.map +0 -1
  524. package/mssql-core/columns/binary.cjs +0 -57
  525. package/mssql-core/columns/binary.cjs.map +0 -1
  526. package/mssql-core/columns/binary.d.cts +0 -28
  527. package/mssql-core/columns/binary.d.ts +0 -28
  528. package/mssql-core/columns/binary.js +0 -31
  529. package/mssql-core/columns/binary.js.map +0 -1
  530. package/mssql-core/columns/bit.cjs +0 -54
  531. package/mssql-core/columns/bit.cjs.map +0 -1
  532. package/mssql-core/columns/bit.d.cts +0 -24
  533. package/mssql-core/columns/bit.d.ts +0 -24
  534. package/mssql-core/columns/bit.js +0 -28
  535. package/mssql-core/columns/bit.js.map +0 -1
  536. package/mssql-core/columns/char.cjs +0 -74
  537. package/mssql-core/columns/char.cjs.map +0 -1
  538. package/mssql-core/columns/char.d.cts +0 -37
  539. package/mssql-core/columns/char.d.ts +0 -37
  540. package/mssql-core/columns/char.js +0 -47
  541. package/mssql-core/columns/char.js.map +0 -1
  542. package/mssql-core/columns/common.cjs +0 -110
  543. package/mssql-core/columns/common.cjs.map +0 -1
  544. package/mssql-core/columns/common.d.cts +0 -67
  545. package/mssql-core/columns/common.d.ts +0 -67
  546. package/mssql-core/columns/common.js +0 -83
  547. package/mssql-core/columns/common.js.map +0 -1
  548. package/mssql-core/columns/custom.cjs +0 -77
  549. package/mssql-core/columns/custom.cjs.map +0 -1
  550. package/mssql-core/columns/custom.d.cts +0 -156
  551. package/mssql-core/columns/custom.d.ts +0 -156
  552. package/mssql-core/columns/custom.js +0 -51
  553. package/mssql-core/columns/custom.js.map +0 -1
  554. package/mssql-core/columns/date.cjs +0 -94
  555. package/mssql-core/columns/date.cjs.map +0 -1
  556. package/mssql-core/columns/date.common.cjs +0 -37
  557. package/mssql-core/columns/date.common.cjs.map +0 -1
  558. package/mssql-core/columns/date.common.d.cts +0 -12
  559. package/mssql-core/columns/date.common.d.ts +0 -12
  560. package/mssql-core/columns/date.common.js +0 -13
  561. package/mssql-core/columns/date.common.js.map +0 -1
  562. package/mssql-core/columns/date.d.cts +0 -55
  563. package/mssql-core/columns/date.d.ts +0 -55
  564. package/mssql-core/columns/date.js +0 -66
  565. package/mssql-core/columns/date.js.map +0 -1
  566. package/mssql-core/columns/datetime.cjs +0 -94
  567. package/mssql-core/columns/datetime.cjs.map +0 -1
  568. package/mssql-core/columns/datetime.d.cts +0 -54
  569. package/mssql-core/columns/datetime.d.ts +0 -54
  570. package/mssql-core/columns/datetime.js +0 -66
  571. package/mssql-core/columns/datetime.js.map +0 -1
  572. package/mssql-core/columns/datetime2.cjs +0 -102
  573. package/mssql-core/columns/datetime2.cjs.map +0 -1
  574. package/mssql-core/columns/datetime2.d.cts +0 -54
  575. package/mssql-core/columns/datetime2.d.ts +0 -54
  576. package/mssql-core/columns/datetime2.js +0 -74
  577. package/mssql-core/columns/datetime2.js.map +0 -1
  578. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  579. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  580. package/mssql-core/columns/datetimeoffset.d.cts +0 -54
  581. package/mssql-core/columns/datetimeoffset.d.ts +0 -54
  582. package/mssql-core/columns/datetimeoffset.js +0 -74
  583. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  584. package/mssql-core/columns/decimal.cjs +0 -146
  585. package/mssql-core/columns/decimal.cjs.map +0 -1
  586. package/mssql-core/columns/decimal.d.cts +0 -72
  587. package/mssql-core/columns/decimal.d.ts +0 -72
  588. package/mssql-core/columns/decimal.js +0 -116
  589. package/mssql-core/columns/decimal.js.map +0 -1
  590. package/mssql-core/columns/float.cjs +0 -58
  591. package/mssql-core/columns/float.cjs.map +0 -1
  592. package/mssql-core/columns/float.d.cts +0 -28
  593. package/mssql-core/columns/float.d.ts +0 -28
  594. package/mssql-core/columns/float.js +0 -32
  595. package/mssql-core/columns/float.js.map +0 -1
  596. package/mssql-core/columns/index.cjs +0 -63
  597. package/mssql-core/columns/index.cjs.map +0 -1
  598. package/mssql-core/columns/index.d.cts +0 -21
  599. package/mssql-core/columns/index.d.ts +0 -21
  600. package/mssql-core/columns/index.js +0 -22
  601. package/mssql-core/columns/index.js.map +0 -1
  602. package/mssql-core/columns/int.cjs +0 -53
  603. package/mssql-core/columns/int.cjs.map +0 -1
  604. package/mssql-core/columns/int.d.cts +0 -23
  605. package/mssql-core/columns/int.d.ts +0 -23
  606. package/mssql-core/columns/int.js +0 -27
  607. package/mssql-core/columns/int.js.map +0 -1
  608. package/mssql-core/columns/numeric.cjs +0 -146
  609. package/mssql-core/columns/numeric.cjs.map +0 -1
  610. package/mssql-core/columns/numeric.d.cts +0 -72
  611. package/mssql-core/columns/numeric.d.ts +0 -72
  612. package/mssql-core/columns/numeric.js +0 -116
  613. package/mssql-core/columns/numeric.js.map +0 -1
  614. package/mssql-core/columns/real.cjs +0 -53
  615. package/mssql-core/columns/real.cjs.map +0 -1
  616. package/mssql-core/columns/real.d.cts +0 -23
  617. package/mssql-core/columns/real.d.ts +0 -23
  618. package/mssql-core/columns/real.js +0 -27
  619. package/mssql-core/columns/real.js.map +0 -1
  620. package/mssql-core/columns/smallint.cjs +0 -62
  621. package/mssql-core/columns/smallint.cjs.map +0 -1
  622. package/mssql-core/columns/smallint.d.cts +0 -24
  623. package/mssql-core/columns/smallint.d.ts +0 -24
  624. package/mssql-core/columns/smallint.js +0 -36
  625. package/mssql-core/columns/smallint.js.map +0 -1
  626. package/mssql-core/columns/text.cjs +0 -68
  627. package/mssql-core/columns/text.cjs.map +0 -1
  628. package/mssql-core/columns/text.d.cts +0 -45
  629. package/mssql-core/columns/text.d.ts +0 -45
  630. package/mssql-core/columns/text.js +0 -41
  631. package/mssql-core/columns/text.js.map +0 -1
  632. package/mssql-core/columns/time.cjs +0 -90
  633. package/mssql-core/columns/time.cjs.map +0 -1
  634. package/mssql-core/columns/time.d.cts +0 -49
  635. package/mssql-core/columns/time.d.ts +0 -49
  636. package/mssql-core/columns/time.js +0 -62
  637. package/mssql-core/columns/time.js.map +0 -1
  638. package/mssql-core/columns/tinyint.cjs +0 -62
  639. package/mssql-core/columns/tinyint.cjs.map +0 -1
  640. package/mssql-core/columns/tinyint.d.cts +0 -24
  641. package/mssql-core/columns/tinyint.d.ts +0 -24
  642. package/mssql-core/columns/tinyint.js +0 -36
  643. package/mssql-core/columns/tinyint.js.map +0 -1
  644. package/mssql-core/columns/varbinary.cjs +0 -61
  645. package/mssql-core/columns/varbinary.cjs.map +0 -1
  646. package/mssql-core/columns/varbinary.d.cts +0 -27
  647. package/mssql-core/columns/varbinary.d.ts +0 -27
  648. package/mssql-core/columns/varbinary.js +0 -35
  649. package/mssql-core/columns/varbinary.js.map +0 -1
  650. package/mssql-core/columns/varchar.cjs +0 -117
  651. package/mssql-core/columns/varchar.cjs.map +0 -1
  652. package/mssql-core/columns/varchar.d.cts +0 -66
  653. package/mssql-core/columns/varchar.d.ts +0 -66
  654. package/mssql-core/columns/varchar.js +0 -88
  655. package/mssql-core/columns/varchar.js.map +0 -1
  656. package/mssql-core/db.cjs +0 -254
  657. package/mssql-core/db.cjs.map +0 -1
  658. package/mssql-core/db.d.cts +0 -228
  659. package/mssql-core/db.d.ts +0 -228
  660. package/mssql-core/db.js +0 -235
  661. package/mssql-core/db.js.map +0 -1
  662. package/mssql-core/dialect.cjs +0 -623
  663. package/mssql-core/dialect.cjs.map +0 -1
  664. package/mssql-core/dialect.d.cts +0 -58
  665. package/mssql-core/dialect.d.ts +0 -58
  666. package/mssql-core/dialect.js +0 -605
  667. package/mssql-core/dialect.js.map +0 -1
  668. package/mssql-core/expressions.cjs +0 -49
  669. package/mssql-core/expressions.cjs.map +0 -1
  670. package/mssql-core/expressions.d.cts +0 -8
  671. package/mssql-core/expressions.d.ts +0 -8
  672. package/mssql-core/expressions.js +0 -22
  673. package/mssql-core/expressions.js.map +0 -1
  674. package/mssql-core/foreign-keys.cjs +0 -91
  675. package/mssql-core/foreign-keys.cjs.map +0 -1
  676. package/mssql-core/foreign-keys.d.cts +0 -51
  677. package/mssql-core/foreign-keys.d.ts +0 -51
  678. package/mssql-core/foreign-keys.js +0 -65
  679. package/mssql-core/foreign-keys.js.map +0 -1
  680. package/mssql-core/index.cjs +0 -55
  681. package/mssql-core/index.cjs.map +0 -1
  682. package/mssql-core/index.d.cts +0 -17
  683. package/mssql-core/index.d.ts +0 -17
  684. package/mssql-core/index.js +0 -18
  685. package/mssql-core/index.js.map +0 -1
  686. package/mssql-core/indexes.cjs +0 -80
  687. package/mssql-core/indexes.cjs.map +0 -1
  688. package/mssql-core/indexes.d.cts +0 -49
  689. package/mssql-core/indexes.d.ts +0 -49
  690. package/mssql-core/indexes.js +0 -52
  691. package/mssql-core/indexes.js.map +0 -1
  692. package/mssql-core/primary-keys.cjs +0 -64
  693. package/mssql-core/primary-keys.cjs.map +0 -1
  694. package/mssql-core/primary-keys.d.cts +0 -23
  695. package/mssql-core/primary-keys.d.ts +0 -23
  696. package/mssql-core/primary-keys.js +0 -38
  697. package/mssql-core/primary-keys.js.map +0 -1
  698. package/mssql-core/query-builders/delete.cjs +0 -107
  699. package/mssql-core/query-builders/delete.cjs.map +0 -1
  700. package/mssql-core/query-builders/delete.d.cts +0 -98
  701. package/mssql-core/query-builders/delete.d.ts +0 -98
  702. package/mssql-core/query-builders/delete.js +0 -83
  703. package/mssql-core/query-builders/delete.js.map +0 -1
  704. package/mssql-core/query-builders/index.cjs +0 -33
  705. package/mssql-core/query-builders/index.cjs.map +0 -1
  706. package/mssql-core/query-builders/index.d.cts +0 -6
  707. package/mssql-core/query-builders/index.d.ts +0 -6
  708. package/mssql-core/query-builders/index.js +0 -7
  709. package/mssql-core/query-builders/index.js.map +0 -1
  710. package/mssql-core/query-builders/insert.cjs +0 -105
  711. package/mssql-core/query-builders/insert.cjs.map +0 -1
  712. package/mssql-core/query-builders/insert.d.cts +0 -78
  713. package/mssql-core/query-builders/insert.d.ts +0 -78
  714. package/mssql-core/query-builders/insert.js +0 -80
  715. package/mssql-core/query-builders/insert.js.map +0 -1
  716. package/mssql-core/query-builders/query-builder.cjs +0 -95
  717. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  718. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  719. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  720. package/mssql-core/query-builders/query-builder.js +0 -71
  721. package/mssql-core/query-builders/query-builder.js.map +0 -1
  722. package/mssql-core/query-builders/query.cjs +0 -126
  723. package/mssql-core/query-builders/query.cjs.map +0 -1
  724. package/mssql-core/query-builders/query.d.cts +0 -42
  725. package/mssql-core/query-builders/query.d.ts +0 -42
  726. package/mssql-core/query-builders/query.js +0 -103
  727. package/mssql-core/query-builders/query.js.map +0 -1
  728. package/mssql-core/query-builders/select.cjs +0 -679
  729. package/mssql-core/query-builders/select.cjs.map +0 -1
  730. package/mssql-core/query-builders/select.d.cts +0 -549
  731. package/mssql-core/query-builders/select.d.ts +0 -549
  732. package/mssql-core/query-builders/select.js +0 -649
  733. package/mssql-core/query-builders/select.js.map +0 -1
  734. package/mssql-core/query-builders/select.types.cjs +0 -17
  735. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  736. package/mssql-core/query-builders/select.types.d.cts +0 -142
  737. package/mssql-core/query-builders/select.types.d.ts +0 -142
  738. package/mssql-core/query-builders/select.types.js +0 -1
  739. package/mssql-core/query-builders/select.types.js.map +0 -1
  740. package/mssql-core/query-builders/update.cjs +0 -138
  741. package/mssql-core/query-builders/update.cjs.map +0 -1
  742. package/mssql-core/query-builders/update.d.cts +0 -141
  743. package/mssql-core/query-builders/update.d.ts +0 -141
  744. package/mssql-core/query-builders/update.js +0 -113
  745. package/mssql-core/query-builders/update.js.map +0 -1
  746. package/mssql-core/schema.cjs +0 -51
  747. package/mssql-core/schema.cjs.map +0 -1
  748. package/mssql-core/schema.d.cts +0 -22
  749. package/mssql-core/schema.d.ts +0 -22
  750. package/mssql-core/schema.js +0 -25
  751. package/mssql-core/schema.js.map +0 -1
  752. package/mssql-core/session.cjs +0 -74
  753. package/mssql-core/session.cjs.map +0 -1
  754. package/mssql-core/session.d.cts +0 -63
  755. package/mssql-core/session.d.ts +0 -63
  756. package/mssql-core/session.js +0 -48
  757. package/mssql-core/session.js.map +0 -1
  758. package/mssql-core/subquery.cjs +0 -17
  759. package/mssql-core/subquery.cjs.map +0 -1
  760. package/mssql-core/subquery.d.cts +0 -18
  761. package/mssql-core/subquery.d.ts +0 -18
  762. package/mssql-core/subquery.js +0 -1
  763. package/mssql-core/subquery.js.map +0 -1
  764. package/mssql-core/table.cjs +0 -81
  765. package/mssql-core/table.cjs.map +0 -1
  766. package/mssql-core/table.d.cts +0 -43
  767. package/mssql-core/table.d.ts +0 -43
  768. package/mssql-core/table.js +0 -53
  769. package/mssql-core/table.js.map +0 -1
  770. package/mssql-core/unique-constraint.cjs +0 -76
  771. package/mssql-core/unique-constraint.cjs.map +0 -1
  772. package/mssql-core/unique-constraint.d.cts +0 -23
  773. package/mssql-core/unique-constraint.d.ts +0 -23
  774. package/mssql-core/unique-constraint.js +0 -49
  775. package/mssql-core/unique-constraint.js.map +0 -1
  776. package/mssql-core/utils.cjs +0 -85
  777. package/mssql-core/utils.cjs.map +0 -1
  778. package/mssql-core/utils.d.cts +0 -31
  779. package/mssql-core/utils.d.ts +0 -31
  780. package/mssql-core/utils.js +0 -60
  781. package/mssql-core/utils.js.map +0 -1
  782. package/mssql-core/view-base.cjs +0 -33
  783. package/mssql-core/view-base.cjs.map +0 -1
  784. package/mssql-core/view-base.d.cts +0 -9
  785. package/mssql-core/view-base.d.ts +0 -9
  786. package/mssql-core/view-base.js +0 -9
  787. package/mssql-core/view-base.js.map +0 -1
  788. package/mssql-core/view-common.cjs +0 -29
  789. package/mssql-core/view-common.cjs.map +0 -1
  790. package/mssql-core/view-common.d.cts +0 -1
  791. package/mssql-core/view-common.d.ts +0 -1
  792. package/mssql-core/view-common.js +0 -5
  793. package/mssql-core/view-common.js.map +0 -1
  794. package/mssql-core/view.cjs +0 -154
  795. package/mssql-core/view.cjs.map +0 -1
  796. package/mssql-core/view.d.cts +0 -64
  797. package/mssql-core/view.d.ts +0 -64
  798. package/mssql-core/view.js +0 -125
  799. package/mssql-core/view.js.map +0 -1
  800. package/node-mssql/driver.cjs +0 -107
  801. package/node-mssql/driver.cjs.map +0 -1
  802. package/node-mssql/driver.d.cts +0 -46
  803. package/node-mssql/driver.d.ts +0 -46
  804. package/node-mssql/driver.js +0 -84
  805. package/node-mssql/driver.js.map +0 -1
  806. package/node-mssql/index.cjs +0 -25
  807. package/node-mssql/index.cjs.map +0 -1
  808. package/node-mssql/index.d.cts +0 -2
  809. package/node-mssql/index.d.ts +0 -2
  810. package/node-mssql/index.js +0 -3
  811. package/node-mssql/index.js.map +0 -1
  812. package/node-mssql/migrator.cjs +0 -33
  813. package/node-mssql/migrator.cjs.map +0 -1
  814. package/node-mssql/migrator.d.cts +0 -3
  815. package/node-mssql/migrator.d.ts +0 -3
  816. package/node-mssql/migrator.js +0 -9
  817. package/node-mssql/migrator.js.map +0 -1
  818. package/node-mssql/pool.cjs +0 -54
  819. package/node-mssql/pool.cjs.map +0 -1
  820. package/node-mssql/pool.d.cts +0 -8
  821. package/node-mssql/pool.d.ts +0 -8
  822. package/node-mssql/pool.js +0 -20
  823. package/node-mssql/pool.js.map +0 -1
  824. package/node-mssql/session.cjs +0 -256
  825. package/node-mssql/session.cjs.map +0 -1
  826. package/node-mssql/session.d.cts +0 -48
  827. package/node-mssql/session.d.ts +0 -48
  828. package/node-mssql/session.js +0 -224
  829. package/node-mssql/session.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/column-builder.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { CockroachColumn, ExtraConfigColumn as CockroachExtraConfigColumn } from './cockroach-core/index.ts';\nimport type { Column } from './column.ts';\nimport type { GelColumn, GelExtraConfigColumn } from './gel-core/index.ts';\nimport type { MsSqlColumn } from './mssql-core/index.ts';\nimport type { MySqlColumn } from './mysql-core/index.ts';\nimport type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from './pg-core/index.ts';\nimport type { SingleStoreColumn } from './singlestore-core/index.ts';\nimport type { SQL } from './sql/sql.ts';\nimport type { SQLiteColumn } from './sqlite-core/index.ts';\nimport type { Assume, Simplify } from './utils.ts';\n\nexport type ColumnDataType =\n\t| 'string'\n\t| 'number'\n\t| 'boolean'\n\t| 'array'\n\t| 'json'\n\t| 'date'\n\t| 'bigint'\n\t| 'custom'\n\t| 'buffer'\n\t| 'dateDuration'\n\t| 'duration'\n\t| 'relDuration'\n\t| 'localTime'\n\t| 'localDate'\n\t| 'localDateTime';\n\nexport type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'mssql' | 'common' | 'gel' | 'cockroach';\n\n// TODO update description\n// 'virtual' | 'stored' for postgres\n// 'stored' for mysql\n// 'virtual' | 'persisted' for mssql\n// We should remove this option from common Column and store it per dialect common\n// Was discussed with Andrew\nexport type GeneratedStorageMode = 'virtual' | 'stored' | 'persisted';\n\nexport type GeneratedType = 'always' | 'byDefault';\n\nexport type GeneratedColumnConfig<TDataType> = {\n\tas: TDataType | SQL | (() => SQL);\n\ttype?: GeneratedType;\n\tmode?: GeneratedStorageMode;\n};\n\nexport type GeneratedIdentityConfig = {\n\tsequenceName?: string;\n\tsequenceOptions?: PgSequenceOptions;\n\ttype: 'always' | 'byDefault';\n};\n\nexport interface ColumnBuilderBaseConfig<TDataType extends ColumnDataType, TColumnType extends string> {\n\tname: string;\n\tdataType: TDataType;\n\tcolumnType: TColumnType;\n\tdata: unknown;\n\tdriverParam: unknown;\n\tenumValues: string[] | undefined;\n}\n\nexport type MakeColumnConfig<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTableName extends string,\n\tTData = T extends { $type: infer U } ? U : T['data'],\n> = {\n\tname: T['name'];\n\ttableName: TTableName;\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: TData;\n\tdriverParam: T['driverParam'];\n\tnotNull: T extends { notNull: true } ? true : false;\n\thasDefault: T extends { hasDefault: true } ? true : false;\n\tisPrimaryKey: T extends { isPrimaryKey: true } ? true : false;\n\tisAutoincrement: T extends { isAutoincrement: true } ? true : false;\n\thasRuntimeDefault: T extends { hasRuntimeDefault: true } ? true : false;\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseBuilder: infer U extends ColumnBuilderBase } ? BuildColumn<TTableName, U, 'common'>\n\t\t: never;\n\tidentity: T extends { identity: 'always' } ? 'always' : T extends { identity: 'byDefault' } ? 'byDefault' : undefined;\n\tgenerated: T extends { generated: infer G } ? unknown extends G ? undefined\n\t\t: G extends undefined ? undefined\n\t\t: G\n\t\t: undefined;\n} & {};\n\nexport type ColumnBuilderTypeConfig<\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> = Simplify<\n\t& {\n\t\tbrand: 'ColumnBuilder';\n\t\tname: T['name'];\n\t\tdataType: T['dataType'];\n\t\tcolumnType: T['columnType'];\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverParam'];\n\t\tnotNull: T extends { notNull: infer U } ? U : boolean;\n\t\thasDefault: T extends { hasDefault: infer U } ? U : boolean;\n\t\tenumValues: T['enumValues'];\n\t\tidentity: T extends { identity: infer U } ? U : unknown;\n\t\tgenerated: T extends { generated: infer G } ? G extends undefined ? unknown : G : unknown;\n\t}\n\t& TTypeConfig\n>;\n\nexport type ColumnBuilderRuntimeConfig<TData, TRuntimeConfig extends object = object> =\n\t& {\n\t\tname: string;\n\t\tkeyAsName: boolean;\n\t\tnotNull: boolean;\n\t\tdefault: TData | SQL | undefined;\n\t\tdefaultFn: (() => TData | SQL) | undefined;\n\t\tonUpdateFn: (() => TData | SQL) | undefined;\n\t\thasDefault: boolean;\n\t\tprimaryKey: boolean;\n\t\tisUnique: boolean;\n\t\tuniqueName: string | undefined;\n\t\tuniqueType: string | undefined;\n\t\tuniqueNameExplicit: boolean | undefined;\n\t\tdataType: string;\n\t\tcolumnType: string;\n\t\tgenerated: GeneratedColumnConfig<TData> | undefined;\n\t\tgeneratedIdentity: GeneratedIdentityConfig | undefined;\n\t}\n\t& TRuntimeConfig;\n\nexport interface ColumnBuilderExtraConfig {\n\tprimaryKeyHasDefault?: boolean;\n}\n\nexport type NotNull<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tnotNull: true;\n\t};\n};\n\nexport type HasDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasDefault: true;\n\t};\n};\n\nexport type IsPrimaryKey<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisPrimaryKey: true;\n\t};\n};\n\nexport type IsAutoincrement<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisAutoincrement: true;\n\t};\n};\n\nexport type HasRuntimeDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasRuntimeDefault: true;\n\t};\n};\n\nexport type $Type<T extends ColumnBuilderBase, TType> = T & {\n\t_: {\n\t\t$type: TType;\n\t};\n};\n\nexport type HasGenerated<T extends ColumnBuilderBase, TGenerated extends {} = {}> = T & {\n\t_: {\n\t\thasDefault: true;\n\t\tgenerated: TGenerated;\n\t};\n};\n\nexport type IsIdentity<\n\tT extends ColumnBuilderBase,\n\tTType extends 'always' | 'byDefault',\n> = T & {\n\t_: {\n\t\tnotNull: true;\n\t\thasDefault: true;\n\t\tidentity: TType;\n\t};\n};\nexport interface ColumnBuilderBase<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> {\n\t_: ColumnBuilderTypeConfig<T, TTypeConfig>;\n}\n\n// To understand how to use `ColumnBuilder` and `AnyColumnBuilder`, see `Column` and `AnyColumn` documentation.\nexport abstract class ColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> implements ColumnBuilderBase<T, TTypeConfig> {\n\tstatic readonly [entityKind]: string = 'ColumnBuilder';\n\n\tdeclare _: ColumnBuilderTypeConfig<T, TTypeConfig>;\n\n\tprotected config: ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(name: T['name'], dataType: T['dataType'], columnType: T['columnType']) {\n\t\tthis.config = {\n\t\t\tname,\n\t\t\tkeyAsName: name === '',\n\t\t\tnotNull: false,\n\t\t\tdefault: undefined,\n\t\t\thasDefault: false,\n\t\t\tprimaryKey: false,\n\t\t\tisUnique: false,\n\t\t\tuniqueName: undefined,\n\t\t\tuniqueType: undefined,\n\t\t\tdataType,\n\t\t\tcolumnType,\n\t\t\tgenerated: undefined,\n\t\t} as ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\t}\n\n\t/**\n\t * Changes the data type of the column. Commonly used with `json` columns. Also, useful for branded types.\n\t *\n\t * @example\n\t * ```ts\n\t * const users = pgTable('users', {\n\t * \tid: integer('id').$type<UserId>().primaryKey(),\n\t * \tdetails: json('details').$type<UserDetails>().notNull(),\n\t * });\n\t * ```\n\t */\n\t$type<TType>(): $Type<this, TType> {\n\t\treturn this as $Type<this, TType>;\n\t}\n\n\t/**\n\t * Adds a `not null` clause to the column definition.\n\t *\n\t * Affects the `select` model of the table - columns *without* `not null` will be nullable on select.\n\t */\n\tnotNull(): NotNull<this> {\n\t\tthis.config.notNull = true;\n\t\treturn this as NotNull<this>;\n\t}\n\n\t/**\n\t * Adds a `default <value>` clause to the column definition.\n\t *\n\t * Affects the `insert` model of the table - columns *with* `default` are optional on insert.\n\t *\n\t * If you need to set a dynamic default value, use {@link $defaultFn} instead.\n\t */\n\tdefault(value: (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL): HasDefault<this> {\n\t\tthis.config.default = value;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Adds a dynamic default value to the column.\n\t * The function will be called when the row is inserted, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$defaultFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasRuntimeDefault<HasDefault<this>> {\n\t\tthis.config.defaultFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasRuntimeDefault<HasDefault<this>>;\n\t}\n\n\t/**\n\t * Alias for {@link $defaultFn}.\n\t */\n\t$default = this.$defaultFn;\n\n\t/**\n\t * Adds a dynamic update value to the column.\n\t * The function will be called when the row is updated, and the returned value will be used as the column value if none is provided.\n\t * If no `default` (or `$defaultFn`) value is provided, the function will be called when the row is inserted as well, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$onUpdateFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasDefault<this> {\n\t\tthis.config.onUpdateFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Alias for {@link $onUpdateFn}.\n\t */\n\t$onUpdate = this.$onUpdateFn;\n\n\t/**\n\t * Adds a `primary key` clause to the column definition. This implicitly makes the column `not null`.\n\t *\n\t * In SQLite, `integer primary key` implicitly makes the column auto-incrementing.\n\t */\n\tprimaryKey(): TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t: IsPrimaryKey<NotNull<this>>\n\t{\n\t\tthis.config.primaryKey = true;\n\t\tthis.config.notNull = true;\n\t\treturn this as TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t\t: IsPrimaryKey<NotNull<this>>;\n\t}\n\n\tabstract generatedAlwaysAs(\n\t\tas: SQL | T['data'] | (() => SQL),\n\t\tconfig?: Partial<GeneratedColumnConfig<unknown>>,\n\t): HasGenerated<this, {\n\t\ttype: 'always';\n\t}>;\n\n\t/** @internal Sets the name of the column to the key within the table definition if a name was not given. */\n\tsetName(name: string) {\n\t\tif (this.config.name !== '') return;\n\t\tthis.config.name = name;\n\t}\n}\n\nexport type BuildColumn<\n\tTTableName extends string,\n\tTBuilder extends ColumnBuilderBase,\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? PgColumn<\n\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t{},\n\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t>\n\t: TDialect extends 'cockroach' ? CockroachColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'mysql' ? MySqlColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'mysqlColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'mssql' ? MsSqlColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'mssqlColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'common' ? Column<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'singlestoreColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'gel' ? GelColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: never;\n\nexport type BuildIndexColumn<\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? ExtraConfigColumn\n\t: TDialect extends 'cockroach' ? CockroachExtraConfigColumn\n\t: TDialect extends 'gel' ? GelExtraConfigColumn\n\t: never;\n\n// TODO\n// try to make sql as well + indexRaw\n\n// optional after everything will be working as expected\n// also try to leave only needed methods for extraConfig\n// make an error if I pass .asc() to fk and so on\n\nexport type BuildColumns<\n\tTTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildColumn<TTableName, {\n\t\t\t_:\n\t\t\t\t& Omit<TConfigMap[Key]['_'], 'name'>\n\t\t\t\t& { name: TConfigMap[Key]['_']['name'] extends '' ? Assume<Key, string> : TConfigMap[Key]['_']['name'] };\n\t\t}, TDialect>;\n\t}\n\t& {};\n\nexport type BuildExtraConfigColumns<\n\t_TTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;\n\t}\n\t& {};\n\nexport type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> =\n\tTDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: never;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAmMpB,MAAe,cAKyB;AAAA,EAC9C,QAAiB,wBAAU,IAAY;AAAA,EAI7B;AAAA,EAEV,YAAY,MAAiB,UAAyB,YAA6B;AAClF,SAAK,SAAS;AAAA,MACb;AAAA,MACA,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,MACT,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IACZ;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,QAAmC;AAClC,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAyB;AACxB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,OAA+F;AACtG,SAAK,OAAO,UAAU;AACtB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WACC,IACsC;AACtC,SAAK,OAAO,YAAY;AACxB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAShB,YACC,IACmB;AACnB,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjB,aAEA;AACC,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EAER;AAAA;AAAA,EAUA,QAAQ,MAAc;AACrB,QAAI,KAAK,OAAO,SAAS,GAAI;AAC7B,SAAK,OAAO,OAAO;AAAA,EACpB;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/column-builder.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { Column } from './column.ts';\nimport type { GelColumn, GelExtraConfigColumn } from './gel-core/index.ts';\nimport type { MySqlColumn } from './mysql-core/index.ts';\nimport type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from './pg-core/index.ts';\nimport type { SingleStoreColumn } from './singlestore-core/index.ts';\nimport type { SQL } from './sql/sql.ts';\nimport type { SQLiteColumn } from './sqlite-core/index.ts';\nimport type { Assume, Simplify } from './utils.ts';\n\nexport type ColumnDataType =\n\t| 'string'\n\t| 'number'\n\t| 'boolean'\n\t| 'array'\n\t| 'json'\n\t| 'date'\n\t| 'bigint'\n\t| 'custom'\n\t| 'buffer'\n\t| 'dateDuration'\n\t| 'duration'\n\t| 'relDuration'\n\t| 'localTime'\n\t| 'localDate'\n\t| 'localDateTime';\n\nexport type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'common' | 'gel';\n\nexport type GeneratedStorageMode = 'virtual' | 'stored';\n\nexport type GeneratedType = 'always' | 'byDefault';\n\nexport type GeneratedColumnConfig<TDataType> = {\n\tas: TDataType | SQL | (() => SQL);\n\ttype?: GeneratedType;\n\tmode?: GeneratedStorageMode;\n};\n\nexport type GeneratedIdentityConfig = {\n\tsequenceName?: string;\n\tsequenceOptions?: PgSequenceOptions;\n\ttype: 'always' | 'byDefault';\n};\n\nexport interface ColumnBuilderBaseConfig<TDataType extends ColumnDataType, TColumnType extends string> {\n\tname: string;\n\tdataType: TDataType;\n\tcolumnType: TColumnType;\n\tdata: unknown;\n\tdriverParam: unknown;\n\tenumValues: string[] | undefined;\n}\n\nexport type MakeColumnConfig<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTableName extends string,\n\tTData = T extends { $type: infer U } ? U : T['data'],\n> = {\n\tname: T['name'];\n\ttableName: TTableName;\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: TData;\n\tdriverParam: T['driverParam'];\n\tnotNull: T extends { notNull: true } ? true : false;\n\thasDefault: T extends { hasDefault: true } ? true : false;\n\tisPrimaryKey: T extends { isPrimaryKey: true } ? true : false;\n\tisAutoincrement: T extends { isAutoincrement: true } ? true : false;\n\thasRuntimeDefault: T extends { hasRuntimeDefault: true } ? true : false;\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseBuilder: infer U extends ColumnBuilderBase } ? BuildColumn<TTableName, U, 'common'>\n\t\t: never;\n\tidentity: T extends { identity: 'always' } ? 'always' : T extends { identity: 'byDefault' } ? 'byDefault' : undefined;\n\tgenerated: T extends { generated: infer G } ? unknown extends G ? undefined\n\t\t: G extends undefined ? undefined\n\t\t: G\n\t\t: undefined;\n} & {};\n\nexport type ColumnBuilderTypeConfig<\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> = Simplify<\n\t& {\n\t\tbrand: 'ColumnBuilder';\n\t\tname: T['name'];\n\t\tdataType: T['dataType'];\n\t\tcolumnType: T['columnType'];\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverParam'];\n\t\tnotNull: T extends { notNull: infer U } ? U : boolean;\n\t\thasDefault: T extends { hasDefault: infer U } ? U : boolean;\n\t\tenumValues: T['enumValues'];\n\t\tidentity: T extends { identity: infer U } ? U : unknown;\n\t\tgenerated: T extends { generated: infer G } ? G extends undefined ? unknown : G : unknown;\n\t}\n\t& TTypeConfig\n>;\n\nexport type ColumnBuilderRuntimeConfig<TData, TRuntimeConfig extends object = object> = {\n\tname: string;\n\tkeyAsName: boolean;\n\tnotNull: boolean;\n\tdefault: TData | SQL | undefined;\n\tdefaultFn: (() => TData | SQL) | undefined;\n\tonUpdateFn: (() => TData | SQL) | undefined;\n\thasDefault: boolean;\n\tprimaryKey: boolean;\n\tisUnique: boolean;\n\tuniqueName: string | undefined;\n\tuniqueType: string | undefined;\n\tdataType: string;\n\tcolumnType: string;\n\tgenerated: GeneratedColumnConfig<TData> | undefined;\n\tgeneratedIdentity: GeneratedIdentityConfig | undefined;\n} & TRuntimeConfig;\n\nexport interface ColumnBuilderExtraConfig {\n\tprimaryKeyHasDefault?: boolean;\n}\n\nexport type NotNull<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tnotNull: true;\n\t};\n};\n\nexport type HasDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasDefault: true;\n\t};\n};\n\nexport type IsPrimaryKey<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisPrimaryKey: true;\n\t};\n};\n\nexport type IsAutoincrement<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisAutoincrement: true;\n\t};\n};\n\nexport type HasRuntimeDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasRuntimeDefault: true;\n\t};\n};\n\nexport type $Type<T extends ColumnBuilderBase, TType> = T & {\n\t_: {\n\t\t$type: TType;\n\t};\n};\n\nexport type HasGenerated<T extends ColumnBuilderBase, TGenerated extends {} = {}> = T & {\n\t_: {\n\t\thasDefault: true;\n\t\tgenerated: TGenerated;\n\t};\n};\n\nexport type IsIdentity<\n\tT extends ColumnBuilderBase,\n\tTType extends 'always' | 'byDefault',\n> = T & {\n\t_: {\n\t\tnotNull: true;\n\t\thasDefault: true;\n\t\tidentity: TType;\n\t};\n};\nexport interface ColumnBuilderBase<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> {\n\t_: ColumnBuilderTypeConfig<T, TTypeConfig>;\n}\n\n// To understand how to use `ColumnBuilder` and `AnyColumnBuilder`, see `Column` and `AnyColumn` documentation.\nexport abstract class ColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> implements ColumnBuilderBase<T, TTypeConfig> {\n\tstatic readonly [entityKind]: string = 'ColumnBuilder';\n\n\tdeclare _: ColumnBuilderTypeConfig<T, TTypeConfig>;\n\n\tprotected config: ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(name: T['name'], dataType: T['dataType'], columnType: T['columnType']) {\n\t\tthis.config = {\n\t\t\tname,\n\t\t\tkeyAsName: name === '',\n\t\t\tnotNull: false,\n\t\t\tdefault: undefined,\n\t\t\thasDefault: false,\n\t\t\tprimaryKey: false,\n\t\t\tisUnique: false,\n\t\t\tuniqueName: undefined,\n\t\t\tuniqueType: undefined,\n\t\t\tdataType,\n\t\t\tcolumnType,\n\t\t\tgenerated: undefined,\n\t\t} as ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\t}\n\n\t/**\n\t * Changes the data type of the column. Commonly used with `json` columns. Also, useful for branded types.\n\t *\n\t * @example\n\t * ```ts\n\t * const users = pgTable('users', {\n\t * \tid: integer('id').$type<UserId>().primaryKey(),\n\t * \tdetails: json('details').$type<UserDetails>().notNull(),\n\t * });\n\t * ```\n\t */\n\t$type<TType>(): $Type<this, TType> {\n\t\treturn this as $Type<this, TType>;\n\t}\n\n\t/**\n\t * Adds a `not null` clause to the column definition.\n\t *\n\t * Affects the `select` model of the table - columns *without* `not null` will be nullable on select.\n\t */\n\tnotNull(): NotNull<this> {\n\t\tthis.config.notNull = true;\n\t\treturn this as NotNull<this>;\n\t}\n\n\t/**\n\t * Adds a `default <value>` clause to the column definition.\n\t *\n\t * Affects the `insert` model of the table - columns *with* `default` are optional on insert.\n\t *\n\t * If you need to set a dynamic default value, use {@link $defaultFn} instead.\n\t */\n\tdefault(value: (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL): HasDefault<this> {\n\t\tthis.config.default = value;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Adds a dynamic default value to the column.\n\t * The function will be called when the row is inserted, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$defaultFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasRuntimeDefault<HasDefault<this>> {\n\t\tthis.config.defaultFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasRuntimeDefault<HasDefault<this>>;\n\t}\n\n\t/**\n\t * Alias for {@link $defaultFn}.\n\t */\n\t$default = this.$defaultFn;\n\n\t/**\n\t * Adds a dynamic update value to the column.\n\t * The function will be called when the row is updated, and the returned value will be used as the column value if none is provided.\n\t * If no `default` (or `$defaultFn`) value is provided, the function will be called when the row is inserted as well, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$onUpdateFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasDefault<this> {\n\t\tthis.config.onUpdateFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Alias for {@link $onUpdateFn}.\n\t */\n\t$onUpdate = this.$onUpdateFn;\n\n\t/**\n\t * Adds a `primary key` clause to the column definition. This implicitly makes the column `not null`.\n\t *\n\t * In SQLite, `integer primary key` implicitly makes the column auto-incrementing.\n\t */\n\tprimaryKey(): TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t: IsPrimaryKey<NotNull<this>>\n\t{\n\t\tthis.config.primaryKey = true;\n\t\tthis.config.notNull = true;\n\t\treturn this as TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t\t: IsPrimaryKey<NotNull<this>>;\n\t}\n\n\tabstract generatedAlwaysAs(\n\t\tas: SQL | T['data'] | (() => SQL),\n\t\tconfig?: Partial<GeneratedColumnConfig<unknown>>,\n\t): HasGenerated<this, {\n\t\ttype: 'always';\n\t}>;\n\n\t/** @internal Sets the name of the column to the key within the table definition if a name was not given. */\n\tsetName(name: string) {\n\t\tif (this.config.name !== '') return;\n\t\tthis.config.name = name;\n\t}\n}\n\nexport type BuildColumn<\n\tTTableName extends string,\n\tTBuilder extends ColumnBuilderBase,\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? PgColumn<\n\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t{},\n\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t>\n\t: TDialect extends 'mysql' ? MySqlColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'mysqlColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'common' ? Column<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'singlestoreColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'gel' ? GelColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: never;\n\nexport type BuildIndexColumn<\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? ExtraConfigColumn\n\t: TDialect extends 'gel' ? GelExtraConfigColumn\n\t: never;\n\n// TODO\n// try to make sql as well + indexRaw\n\n// optional after everything will be working as expected\n// also try to leave only needed methods for extraConfig\n// make an error if I pass .asc() to fk and so on\n\nexport type BuildColumns<\n\tTTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildColumn<TTableName, {\n\t\t\t_:\n\t\t\t\t& Omit<TConfigMap[Key]['_'], 'name'>\n\t\t\t\t& { name: TConfigMap[Key]['_']['name'] extends '' ? Assume<Key, string> : TConfigMap[Key]['_']['name'] };\n\t\t}, TDialect>;\n\t}\n\t& {};\n\nexport type BuildExtraConfigColumns<\n\t_TTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;\n\t}\n\t& {};\n\nexport type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> =\n\tTDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: never;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAwLpB,MAAe,cAKyB;AAAA,EAC9C,QAAiB,wBAAU,IAAY;AAAA,EAI7B;AAAA,EAEV,YAAY,MAAiB,UAAyB,YAA6B;AAClF,SAAK,SAAS;AAAA,MACb;AAAA,MACA,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,MACT,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IACZ;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,QAAmC;AAClC,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAyB;AACxB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,OAA+F;AACtG,SAAK,OAAO,UAAU;AACtB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WACC,IACsC;AACtC,SAAK,OAAO,YAAY;AACxB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAShB,YACC,IACmB;AACnB,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjB,aAEA;AACC,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EAER;AAAA;AAAA,EAUA,QAAQ,MAAc;AACrB,QAAI,KAAK,OAAO,SAAS,GAAI;AAC7B,SAAK,OAAO,OAAO;AAAA,EACpB;AACD;","names":[]}
@@ -1,8 +1,6 @@
1
1
  import { entityKind } from "./entity.cjs";
2
- import type { CockroachColumn, ExtraConfigColumn as CockroachExtraConfigColumn } from "./cockroach-core/index.cjs";
3
2
  import type { Column } from "./column.cjs";
4
3
  import type { GelColumn, GelExtraConfigColumn } from "./gel-core/index.cjs";
5
- import type { MsSqlColumn } from "./mssql-core/index.cjs";
6
4
  import type { MySqlColumn } from "./mysql-core/index.cjs";
7
5
  import type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from "./pg-core/index.cjs";
8
6
  import type { SingleStoreColumn } from "./singlestore-core/index.cjs";
@@ -10,8 +8,8 @@ import type { SQL } from "./sql/sql.cjs";
10
8
  import type { SQLiteColumn } from "./sqlite-core/index.cjs";
11
9
  import type { Assume, Simplify } from "./utils.cjs";
12
10
  export type ColumnDataType = 'string' | 'number' | 'boolean' | 'array' | 'json' | 'date' | 'bigint' | 'custom' | 'buffer' | 'dateDuration' | 'duration' | 'relDuration' | 'localTime' | 'localDate' | 'localDateTime';
13
- export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'mssql' | 'common' | 'gel' | 'cockroach';
14
- export type GeneratedStorageMode = 'virtual' | 'stored' | 'persisted';
11
+ export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'common' | 'gel';
12
+ export type GeneratedStorageMode = 'virtual' | 'stored';
15
13
  export type GeneratedType = 'always' | 'byDefault';
16
14
  export type GeneratedColumnConfig<TDataType> = {
17
15
  as: TDataType | SQL | (() => SQL);
@@ -101,7 +99,6 @@ export type ColumnBuilderRuntimeConfig<TData, TRuntimeConfig extends object = ob
101
99
  isUnique: boolean;
102
100
  uniqueName: string | undefined;
103
101
  uniqueType: string | undefined;
104
- uniqueNameExplicit: boolean | undefined;
105
102
  dataType: string;
106
103
  columnType: string;
107
104
  generated: GeneratedColumnConfig<TData> | undefined;
@@ -230,8 +227,8 @@ export declare abstract class ColumnBuilder<T extends ColumnBuilderBaseConfig<Co
230
227
  type: 'always';
231
228
  }>;
232
229
  }
233
- export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'mysqlColumnBuilderBrand'>>> : TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TBuilder['_'], TTableName>, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'mssqlColumnBuilderBrand'>>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'common' ? Column<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'singlestoreColumnBuilderBrand'>>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : never;
234
- export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'cockroach' ? CockroachExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
230
+ export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'mysqlColumnBuilderBrand'>>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'common' ? Column<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'singlestoreColumnBuilderBrand'>>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : never;
231
+ export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
235
232
  export type BuildColumns<TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
236
233
  [Key in keyof TConfigMap]: BuildColumn<TTableName, {
237
234
  _: Omit<TConfigMap[Key]['_'], 'name'> & {
@@ -242,4 +239,4 @@ export type BuildColumns<TTableName extends string, TConfigMap extends Record<st
242
239
  export type BuildExtraConfigColumns<_TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
243
240
  [Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;
244
241
  } & {};
245
- export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
242
+ export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
@@ -1,8 +1,6 @@
1
1
  import { entityKind } from "./entity.js";
2
- import type { CockroachColumn, ExtraConfigColumn as CockroachExtraConfigColumn } from "./cockroach-core/index.js";
3
2
  import type { Column } from "./column.js";
4
3
  import type { GelColumn, GelExtraConfigColumn } from "./gel-core/index.js";
5
- import type { MsSqlColumn } from "./mssql-core/index.js";
6
4
  import type { MySqlColumn } from "./mysql-core/index.js";
7
5
  import type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from "./pg-core/index.js";
8
6
  import type { SingleStoreColumn } from "./singlestore-core/index.js";
@@ -10,8 +8,8 @@ import type { SQL } from "./sql/sql.js";
10
8
  import type { SQLiteColumn } from "./sqlite-core/index.js";
11
9
  import type { Assume, Simplify } from "./utils.js";
12
10
  export type ColumnDataType = 'string' | 'number' | 'boolean' | 'array' | 'json' | 'date' | 'bigint' | 'custom' | 'buffer' | 'dateDuration' | 'duration' | 'relDuration' | 'localTime' | 'localDate' | 'localDateTime';
13
- export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'mssql' | 'common' | 'gel' | 'cockroach';
14
- export type GeneratedStorageMode = 'virtual' | 'stored' | 'persisted';
11
+ export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'common' | 'gel';
12
+ export type GeneratedStorageMode = 'virtual' | 'stored';
15
13
  export type GeneratedType = 'always' | 'byDefault';
16
14
  export type GeneratedColumnConfig<TDataType> = {
17
15
  as: TDataType | SQL | (() => SQL);
@@ -101,7 +99,6 @@ export type ColumnBuilderRuntimeConfig<TData, TRuntimeConfig extends object = ob
101
99
  isUnique: boolean;
102
100
  uniqueName: string | undefined;
103
101
  uniqueType: string | undefined;
104
- uniqueNameExplicit: boolean | undefined;
105
102
  dataType: string;
106
103
  columnType: string;
107
104
  generated: GeneratedColumnConfig<TData> | undefined;
@@ -230,8 +227,8 @@ export declare abstract class ColumnBuilder<T extends ColumnBuilderBaseConfig<Co
230
227
  type: 'always';
231
228
  }>;
232
229
  }
233
- export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'mysqlColumnBuilderBrand'>>> : TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TBuilder['_'], TTableName>, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'mssqlColumnBuilderBrand'>>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'common' ? Column<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'singlestoreColumnBuilderBrand'>>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : never;
234
- export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'cockroach' ? CockroachExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
230
+ export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'mysqlColumnBuilderBrand'>>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'common' ? Column<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect' | 'primaryKeyHasDefault' | 'singlestoreColumnBuilderBrand'>>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TBuilder['_'], TTableName>, {}, Simplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>> : never;
231
+ export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
235
232
  export type BuildColumns<TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
236
233
  [Key in keyof TConfigMap]: BuildColumn<TTableName, {
237
234
  _: Omit<TConfigMap[Key]['_'], 'name'> & {
@@ -242,4 +239,4 @@ export type BuildColumns<TTableName extends string, TConfigMap extends Record<st
242
239
  export type BuildExtraConfigColumns<_TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
243
240
  [Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;
244
241
  } & {};
245
- export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
242
+ export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/column-builder.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { CockroachColumn, ExtraConfigColumn as CockroachExtraConfigColumn } from './cockroach-core/index.ts';\nimport type { Column } from './column.ts';\nimport type { GelColumn, GelExtraConfigColumn } from './gel-core/index.ts';\nimport type { MsSqlColumn } from './mssql-core/index.ts';\nimport type { MySqlColumn } from './mysql-core/index.ts';\nimport type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from './pg-core/index.ts';\nimport type { SingleStoreColumn } from './singlestore-core/index.ts';\nimport type { SQL } from './sql/sql.ts';\nimport type { SQLiteColumn } from './sqlite-core/index.ts';\nimport type { Assume, Simplify } from './utils.ts';\n\nexport type ColumnDataType =\n\t| 'string'\n\t| 'number'\n\t| 'boolean'\n\t| 'array'\n\t| 'json'\n\t| 'date'\n\t| 'bigint'\n\t| 'custom'\n\t| 'buffer'\n\t| 'dateDuration'\n\t| 'duration'\n\t| 'relDuration'\n\t| 'localTime'\n\t| 'localDate'\n\t| 'localDateTime';\n\nexport type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'mssql' | 'common' | 'gel' | 'cockroach';\n\n// TODO update description\n// 'virtual' | 'stored' for postgres\n// 'stored' for mysql\n// 'virtual' | 'persisted' for mssql\n// We should remove this option from common Column and store it per dialect common\n// Was discussed with Andrew\nexport type GeneratedStorageMode = 'virtual' | 'stored' | 'persisted';\n\nexport type GeneratedType = 'always' | 'byDefault';\n\nexport type GeneratedColumnConfig<TDataType> = {\n\tas: TDataType | SQL | (() => SQL);\n\ttype?: GeneratedType;\n\tmode?: GeneratedStorageMode;\n};\n\nexport type GeneratedIdentityConfig = {\n\tsequenceName?: string;\n\tsequenceOptions?: PgSequenceOptions;\n\ttype: 'always' | 'byDefault';\n};\n\nexport interface ColumnBuilderBaseConfig<TDataType extends ColumnDataType, TColumnType extends string> {\n\tname: string;\n\tdataType: TDataType;\n\tcolumnType: TColumnType;\n\tdata: unknown;\n\tdriverParam: unknown;\n\tenumValues: string[] | undefined;\n}\n\nexport type MakeColumnConfig<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTableName extends string,\n\tTData = T extends { $type: infer U } ? U : T['data'],\n> = {\n\tname: T['name'];\n\ttableName: TTableName;\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: TData;\n\tdriverParam: T['driverParam'];\n\tnotNull: T extends { notNull: true } ? true : false;\n\thasDefault: T extends { hasDefault: true } ? true : false;\n\tisPrimaryKey: T extends { isPrimaryKey: true } ? true : false;\n\tisAutoincrement: T extends { isAutoincrement: true } ? true : false;\n\thasRuntimeDefault: T extends { hasRuntimeDefault: true } ? true : false;\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseBuilder: infer U extends ColumnBuilderBase } ? BuildColumn<TTableName, U, 'common'>\n\t\t: never;\n\tidentity: T extends { identity: 'always' } ? 'always' : T extends { identity: 'byDefault' } ? 'byDefault' : undefined;\n\tgenerated: T extends { generated: infer G } ? unknown extends G ? undefined\n\t\t: G extends undefined ? undefined\n\t\t: G\n\t\t: undefined;\n} & {};\n\nexport type ColumnBuilderTypeConfig<\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> = Simplify<\n\t& {\n\t\tbrand: 'ColumnBuilder';\n\t\tname: T['name'];\n\t\tdataType: T['dataType'];\n\t\tcolumnType: T['columnType'];\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverParam'];\n\t\tnotNull: T extends { notNull: infer U } ? U : boolean;\n\t\thasDefault: T extends { hasDefault: infer U } ? U : boolean;\n\t\tenumValues: T['enumValues'];\n\t\tidentity: T extends { identity: infer U } ? U : unknown;\n\t\tgenerated: T extends { generated: infer G } ? G extends undefined ? unknown : G : unknown;\n\t}\n\t& TTypeConfig\n>;\n\nexport type ColumnBuilderRuntimeConfig<TData, TRuntimeConfig extends object = object> =\n\t& {\n\t\tname: string;\n\t\tkeyAsName: boolean;\n\t\tnotNull: boolean;\n\t\tdefault: TData | SQL | undefined;\n\t\tdefaultFn: (() => TData | SQL) | undefined;\n\t\tonUpdateFn: (() => TData | SQL) | undefined;\n\t\thasDefault: boolean;\n\t\tprimaryKey: boolean;\n\t\tisUnique: boolean;\n\t\tuniqueName: string | undefined;\n\t\tuniqueType: string | undefined;\n\t\tuniqueNameExplicit: boolean | undefined;\n\t\tdataType: string;\n\t\tcolumnType: string;\n\t\tgenerated: GeneratedColumnConfig<TData> | undefined;\n\t\tgeneratedIdentity: GeneratedIdentityConfig | undefined;\n\t}\n\t& TRuntimeConfig;\n\nexport interface ColumnBuilderExtraConfig {\n\tprimaryKeyHasDefault?: boolean;\n}\n\nexport type NotNull<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tnotNull: true;\n\t};\n};\n\nexport type HasDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasDefault: true;\n\t};\n};\n\nexport type IsPrimaryKey<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisPrimaryKey: true;\n\t};\n};\n\nexport type IsAutoincrement<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisAutoincrement: true;\n\t};\n};\n\nexport type HasRuntimeDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasRuntimeDefault: true;\n\t};\n};\n\nexport type $Type<T extends ColumnBuilderBase, TType> = T & {\n\t_: {\n\t\t$type: TType;\n\t};\n};\n\nexport type HasGenerated<T extends ColumnBuilderBase, TGenerated extends {} = {}> = T & {\n\t_: {\n\t\thasDefault: true;\n\t\tgenerated: TGenerated;\n\t};\n};\n\nexport type IsIdentity<\n\tT extends ColumnBuilderBase,\n\tTType extends 'always' | 'byDefault',\n> = T & {\n\t_: {\n\t\tnotNull: true;\n\t\thasDefault: true;\n\t\tidentity: TType;\n\t};\n};\nexport interface ColumnBuilderBase<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> {\n\t_: ColumnBuilderTypeConfig<T, TTypeConfig>;\n}\n\n// To understand how to use `ColumnBuilder` and `AnyColumnBuilder`, see `Column` and `AnyColumn` documentation.\nexport abstract class ColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> implements ColumnBuilderBase<T, TTypeConfig> {\n\tstatic readonly [entityKind]: string = 'ColumnBuilder';\n\n\tdeclare _: ColumnBuilderTypeConfig<T, TTypeConfig>;\n\n\tprotected config: ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(name: T['name'], dataType: T['dataType'], columnType: T['columnType']) {\n\t\tthis.config = {\n\t\t\tname,\n\t\t\tkeyAsName: name === '',\n\t\t\tnotNull: false,\n\t\t\tdefault: undefined,\n\t\t\thasDefault: false,\n\t\t\tprimaryKey: false,\n\t\t\tisUnique: false,\n\t\t\tuniqueName: undefined,\n\t\t\tuniqueType: undefined,\n\t\t\tdataType,\n\t\t\tcolumnType,\n\t\t\tgenerated: undefined,\n\t\t} as ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\t}\n\n\t/**\n\t * Changes the data type of the column. Commonly used with `json` columns. Also, useful for branded types.\n\t *\n\t * @example\n\t * ```ts\n\t * const users = pgTable('users', {\n\t * \tid: integer('id').$type<UserId>().primaryKey(),\n\t * \tdetails: json('details').$type<UserDetails>().notNull(),\n\t * });\n\t * ```\n\t */\n\t$type<TType>(): $Type<this, TType> {\n\t\treturn this as $Type<this, TType>;\n\t}\n\n\t/**\n\t * Adds a `not null` clause to the column definition.\n\t *\n\t * Affects the `select` model of the table - columns *without* `not null` will be nullable on select.\n\t */\n\tnotNull(): NotNull<this> {\n\t\tthis.config.notNull = true;\n\t\treturn this as NotNull<this>;\n\t}\n\n\t/**\n\t * Adds a `default <value>` clause to the column definition.\n\t *\n\t * Affects the `insert` model of the table - columns *with* `default` are optional on insert.\n\t *\n\t * If you need to set a dynamic default value, use {@link $defaultFn} instead.\n\t */\n\tdefault(value: (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL): HasDefault<this> {\n\t\tthis.config.default = value;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Adds a dynamic default value to the column.\n\t * The function will be called when the row is inserted, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$defaultFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasRuntimeDefault<HasDefault<this>> {\n\t\tthis.config.defaultFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasRuntimeDefault<HasDefault<this>>;\n\t}\n\n\t/**\n\t * Alias for {@link $defaultFn}.\n\t */\n\t$default = this.$defaultFn;\n\n\t/**\n\t * Adds a dynamic update value to the column.\n\t * The function will be called when the row is updated, and the returned value will be used as the column value if none is provided.\n\t * If no `default` (or `$defaultFn`) value is provided, the function will be called when the row is inserted as well, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$onUpdateFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasDefault<this> {\n\t\tthis.config.onUpdateFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Alias for {@link $onUpdateFn}.\n\t */\n\t$onUpdate = this.$onUpdateFn;\n\n\t/**\n\t * Adds a `primary key` clause to the column definition. This implicitly makes the column `not null`.\n\t *\n\t * In SQLite, `integer primary key` implicitly makes the column auto-incrementing.\n\t */\n\tprimaryKey(): TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t: IsPrimaryKey<NotNull<this>>\n\t{\n\t\tthis.config.primaryKey = true;\n\t\tthis.config.notNull = true;\n\t\treturn this as TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t\t: IsPrimaryKey<NotNull<this>>;\n\t}\n\n\tabstract generatedAlwaysAs(\n\t\tas: SQL | T['data'] | (() => SQL),\n\t\tconfig?: Partial<GeneratedColumnConfig<unknown>>,\n\t): HasGenerated<this, {\n\t\ttype: 'always';\n\t}>;\n\n\t/** @internal Sets the name of the column to the key within the table definition if a name was not given. */\n\tsetName(name: string) {\n\t\tif (this.config.name !== '') return;\n\t\tthis.config.name = name;\n\t}\n}\n\nexport type BuildColumn<\n\tTTableName extends string,\n\tTBuilder extends ColumnBuilderBase,\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? PgColumn<\n\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t{},\n\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t>\n\t: TDialect extends 'cockroach' ? CockroachColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'mysql' ? MySqlColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'mysqlColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'mssql' ? MsSqlColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'mssqlColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'common' ? Column<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'singlestoreColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'gel' ? GelColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: never;\n\nexport type BuildIndexColumn<\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? ExtraConfigColumn\n\t: TDialect extends 'cockroach' ? CockroachExtraConfigColumn\n\t: TDialect extends 'gel' ? GelExtraConfigColumn\n\t: never;\n\n// TODO\n// try to make sql as well + indexRaw\n\n// optional after everything will be working as expected\n// also try to leave only needed methods for extraConfig\n// make an error if I pass .asc() to fk and so on\n\nexport type BuildColumns<\n\tTTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildColumn<TTableName, {\n\t\t\t_:\n\t\t\t\t& Omit<TConfigMap[Key]['_'], 'name'>\n\t\t\t\t& { name: TConfigMap[Key]['_']['name'] extends '' ? Assume<Key, string> : TConfigMap[Key]['_']['name'] };\n\t\t}, TDialect>;\n\t}\n\t& {};\n\nexport type BuildExtraConfigColumns<\n\t_TTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;\n\t}\n\t& {};\n\nexport type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> =\n\tTDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: never;\n"],"mappings":"AAAA,SAAS,kBAAkB;AAmMpB,MAAe,cAKyB;AAAA,EAC9C,QAAiB,UAAU,IAAY;AAAA,EAI7B;AAAA,EAEV,YAAY,MAAiB,UAAyB,YAA6B;AAClF,SAAK,SAAS;AAAA,MACb;AAAA,MACA,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,MACT,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IACZ;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,QAAmC;AAClC,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAyB;AACxB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,OAA+F;AACtG,SAAK,OAAO,UAAU;AACtB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WACC,IACsC;AACtC,SAAK,OAAO,YAAY;AACxB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAShB,YACC,IACmB;AACnB,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjB,aAEA;AACC,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EAER;AAAA;AAAA,EAUA,QAAQ,MAAc;AACrB,QAAI,KAAK,OAAO,SAAS,GAAI;AAC7B,SAAK,OAAO,OAAO;AAAA,EACpB;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/column-builder.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { Column } from './column.ts';\nimport type { GelColumn, GelExtraConfigColumn } from './gel-core/index.ts';\nimport type { MySqlColumn } from './mysql-core/index.ts';\nimport type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from './pg-core/index.ts';\nimport type { SingleStoreColumn } from './singlestore-core/index.ts';\nimport type { SQL } from './sql/sql.ts';\nimport type { SQLiteColumn } from './sqlite-core/index.ts';\nimport type { Assume, Simplify } from './utils.ts';\n\nexport type ColumnDataType =\n\t| 'string'\n\t| 'number'\n\t| 'boolean'\n\t| 'array'\n\t| 'json'\n\t| 'date'\n\t| 'bigint'\n\t| 'custom'\n\t| 'buffer'\n\t| 'dateDuration'\n\t| 'duration'\n\t| 'relDuration'\n\t| 'localTime'\n\t| 'localDate'\n\t| 'localDateTime';\n\nexport type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'common' | 'gel';\n\nexport type GeneratedStorageMode = 'virtual' | 'stored';\n\nexport type GeneratedType = 'always' | 'byDefault';\n\nexport type GeneratedColumnConfig<TDataType> = {\n\tas: TDataType | SQL | (() => SQL);\n\ttype?: GeneratedType;\n\tmode?: GeneratedStorageMode;\n};\n\nexport type GeneratedIdentityConfig = {\n\tsequenceName?: string;\n\tsequenceOptions?: PgSequenceOptions;\n\ttype: 'always' | 'byDefault';\n};\n\nexport interface ColumnBuilderBaseConfig<TDataType extends ColumnDataType, TColumnType extends string> {\n\tname: string;\n\tdataType: TDataType;\n\tcolumnType: TColumnType;\n\tdata: unknown;\n\tdriverParam: unknown;\n\tenumValues: string[] | undefined;\n}\n\nexport type MakeColumnConfig<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTableName extends string,\n\tTData = T extends { $type: infer U } ? U : T['data'],\n> = {\n\tname: T['name'];\n\ttableName: TTableName;\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: TData;\n\tdriverParam: T['driverParam'];\n\tnotNull: T extends { notNull: true } ? true : false;\n\thasDefault: T extends { hasDefault: true } ? true : false;\n\tisPrimaryKey: T extends { isPrimaryKey: true } ? true : false;\n\tisAutoincrement: T extends { isAutoincrement: true } ? true : false;\n\thasRuntimeDefault: T extends { hasRuntimeDefault: true } ? true : false;\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseBuilder: infer U extends ColumnBuilderBase } ? BuildColumn<TTableName, U, 'common'>\n\t\t: never;\n\tidentity: T extends { identity: 'always' } ? 'always' : T extends { identity: 'byDefault' } ? 'byDefault' : undefined;\n\tgenerated: T extends { generated: infer G } ? unknown extends G ? undefined\n\t\t: G extends undefined ? undefined\n\t\t: G\n\t\t: undefined;\n} & {};\n\nexport type ColumnBuilderTypeConfig<\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> = Simplify<\n\t& {\n\t\tbrand: 'ColumnBuilder';\n\t\tname: T['name'];\n\t\tdataType: T['dataType'];\n\t\tcolumnType: T['columnType'];\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverParam'];\n\t\tnotNull: T extends { notNull: infer U } ? U : boolean;\n\t\thasDefault: T extends { hasDefault: infer U } ? U : boolean;\n\t\tenumValues: T['enumValues'];\n\t\tidentity: T extends { identity: infer U } ? U : unknown;\n\t\tgenerated: T extends { generated: infer G } ? G extends undefined ? unknown : G : unknown;\n\t}\n\t& TTypeConfig\n>;\n\nexport type ColumnBuilderRuntimeConfig<TData, TRuntimeConfig extends object = object> = {\n\tname: string;\n\tkeyAsName: boolean;\n\tnotNull: boolean;\n\tdefault: TData | SQL | undefined;\n\tdefaultFn: (() => TData | SQL) | undefined;\n\tonUpdateFn: (() => TData | SQL) | undefined;\n\thasDefault: boolean;\n\tprimaryKey: boolean;\n\tisUnique: boolean;\n\tuniqueName: string | undefined;\n\tuniqueType: string | undefined;\n\tdataType: string;\n\tcolumnType: string;\n\tgenerated: GeneratedColumnConfig<TData> | undefined;\n\tgeneratedIdentity: GeneratedIdentityConfig | undefined;\n} & TRuntimeConfig;\n\nexport interface ColumnBuilderExtraConfig {\n\tprimaryKeyHasDefault?: boolean;\n}\n\nexport type NotNull<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tnotNull: true;\n\t};\n};\n\nexport type HasDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasDefault: true;\n\t};\n};\n\nexport type IsPrimaryKey<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisPrimaryKey: true;\n\t};\n};\n\nexport type IsAutoincrement<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\tisAutoincrement: true;\n\t};\n};\n\nexport type HasRuntimeDefault<T extends ColumnBuilderBase> = T & {\n\t_: {\n\t\thasRuntimeDefault: true;\n\t};\n};\n\nexport type $Type<T extends ColumnBuilderBase, TType> = T & {\n\t_: {\n\t\t$type: TType;\n\t};\n};\n\nexport type HasGenerated<T extends ColumnBuilderBase, TGenerated extends {} = {}> = T & {\n\t_: {\n\t\thasDefault: true;\n\t\tgenerated: TGenerated;\n\t};\n};\n\nexport type IsIdentity<\n\tT extends ColumnBuilderBase,\n\tTType extends 'always' | 'byDefault',\n> = T & {\n\t_: {\n\t\tnotNull: true;\n\t\thasDefault: true;\n\t\tidentity: TType;\n\t};\n};\nexport interface ColumnBuilderBase<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTTypeConfig extends object = object,\n> {\n\t_: ColumnBuilderTypeConfig<T, TTypeConfig>;\n}\n\n// To understand how to use `ColumnBuilder` and `AnyColumnBuilder`, see `Column` and `AnyColumn` documentation.\nexport abstract class ColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string> = ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> implements ColumnBuilderBase<T, TTypeConfig> {\n\tstatic readonly [entityKind]: string = 'ColumnBuilder';\n\n\tdeclare _: ColumnBuilderTypeConfig<T, TTypeConfig>;\n\n\tprotected config: ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(name: T['name'], dataType: T['dataType'], columnType: T['columnType']) {\n\t\tthis.config = {\n\t\t\tname,\n\t\t\tkeyAsName: name === '',\n\t\t\tnotNull: false,\n\t\t\tdefault: undefined,\n\t\t\thasDefault: false,\n\t\t\tprimaryKey: false,\n\t\t\tisUnique: false,\n\t\t\tuniqueName: undefined,\n\t\t\tuniqueType: undefined,\n\t\t\tdataType,\n\t\t\tcolumnType,\n\t\t\tgenerated: undefined,\n\t\t} as ColumnBuilderRuntimeConfig<T['data'], TRuntimeConfig>;\n\t}\n\n\t/**\n\t * Changes the data type of the column. Commonly used with `json` columns. Also, useful for branded types.\n\t *\n\t * @example\n\t * ```ts\n\t * const users = pgTable('users', {\n\t * \tid: integer('id').$type<UserId>().primaryKey(),\n\t * \tdetails: json('details').$type<UserDetails>().notNull(),\n\t * });\n\t * ```\n\t */\n\t$type<TType>(): $Type<this, TType> {\n\t\treturn this as $Type<this, TType>;\n\t}\n\n\t/**\n\t * Adds a `not null` clause to the column definition.\n\t *\n\t * Affects the `select` model of the table - columns *without* `not null` will be nullable on select.\n\t */\n\tnotNull(): NotNull<this> {\n\t\tthis.config.notNull = true;\n\t\treturn this as NotNull<this>;\n\t}\n\n\t/**\n\t * Adds a `default <value>` clause to the column definition.\n\t *\n\t * Affects the `insert` model of the table - columns *with* `default` are optional on insert.\n\t *\n\t * If you need to set a dynamic default value, use {@link $defaultFn} instead.\n\t */\n\tdefault(value: (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL): HasDefault<this> {\n\t\tthis.config.default = value;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Adds a dynamic default value to the column.\n\t * The function will be called when the row is inserted, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$defaultFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasRuntimeDefault<HasDefault<this>> {\n\t\tthis.config.defaultFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasRuntimeDefault<HasDefault<this>>;\n\t}\n\n\t/**\n\t * Alias for {@link $defaultFn}.\n\t */\n\t$default = this.$defaultFn;\n\n\t/**\n\t * Adds a dynamic update value to the column.\n\t * The function will be called when the row is updated, and the returned value will be used as the column value if none is provided.\n\t * If no `default` (or `$defaultFn`) value is provided, the function will be called when the row is inserted as well, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$onUpdateFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasDefault<this> {\n\t\tthis.config.onUpdateFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Alias for {@link $onUpdateFn}.\n\t */\n\t$onUpdate = this.$onUpdateFn;\n\n\t/**\n\t * Adds a `primary key` clause to the column definition. This implicitly makes the column `not null`.\n\t *\n\t * In SQLite, `integer primary key` implicitly makes the column auto-incrementing.\n\t */\n\tprimaryKey(): TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t: IsPrimaryKey<NotNull<this>>\n\t{\n\t\tthis.config.primaryKey = true;\n\t\tthis.config.notNull = true;\n\t\treturn this as TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<NotNull<this>>>\n\t\t\t: IsPrimaryKey<NotNull<this>>;\n\t}\n\n\tabstract generatedAlwaysAs(\n\t\tas: SQL | T['data'] | (() => SQL),\n\t\tconfig?: Partial<GeneratedColumnConfig<unknown>>,\n\t): HasGenerated<this, {\n\t\ttype: 'always';\n\t}>;\n\n\t/** @internal Sets the name of the column to the key within the table definition if a name was not given. */\n\tsetName(name: string) {\n\t\tif (this.config.name !== '') return;\n\t\tthis.config.name = name;\n\t}\n}\n\nexport type BuildColumn<\n\tTTableName extends string,\n\tTBuilder extends ColumnBuilderBase,\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? PgColumn<\n\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t{},\n\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t>\n\t: TDialect extends 'mysql' ? MySqlColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'mysqlColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'common' ? Column<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<\n\t\t\t\tOmit<\n\t\t\t\t\tTBuilder['_'],\n\t\t\t\t\t| keyof MakeColumnConfig<TBuilder['_'], TTableName>\n\t\t\t\t\t| 'brand'\n\t\t\t\t\t| 'dialect'\n\t\t\t\t\t| 'primaryKeyHasDefault'\n\t\t\t\t\t| 'singlestoreColumnBuilderBrand'\n\t\t\t\t>\n\t\t\t>\n\t\t>\n\t: TDialect extends 'gel' ? GelColumn<\n\t\t\tMakeColumnConfig<TBuilder['_'], TTableName>,\n\t\t\t{},\n\t\t\tSimplify<Omit<TBuilder['_'], keyof MakeColumnConfig<TBuilder['_'], TTableName> | 'brand' | 'dialect'>>\n\t\t>\n\t: never;\n\nexport type BuildIndexColumn<\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? ExtraConfigColumn\n\t: TDialect extends 'gel' ? GelExtraConfigColumn\n\t: never;\n\n// TODO\n// try to make sql as well + indexRaw\n\n// optional after everything will be working as expected\n// also try to leave only needed methods for extraConfig\n// make an error if I pass .asc() to fk and so on\n\nexport type BuildColumns<\n\tTTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildColumn<TTableName, {\n\t\t\t_:\n\t\t\t\t& Omit<TConfigMap[Key]['_'], 'name'>\n\t\t\t\t& { name: TConfigMap[Key]['_']['name'] extends '' ? Assume<Key, string> : TConfigMap[Key]['_']['name'] };\n\t\t}, TDialect>;\n\t}\n\t& {};\n\nexport type BuildExtraConfigColumns<\n\t_TTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;\n\t}\n\t& {};\n\nexport type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> =\n\tTDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t\t: never;\n"],"mappings":"AAAA,SAAS,kBAAkB;AAwLpB,MAAe,cAKyB;AAAA,EAC9C,QAAiB,UAAU,IAAY;AAAA,EAI7B;AAAA,EAEV,YAAY,MAAiB,UAAyB,YAA6B;AAClF,SAAK,SAAS;AAAA,MACb;AAAA,MACA,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,MACT,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IACZ;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,QAAmC;AAClC,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAyB;AACxB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,OAA+F;AACtG,SAAK,OAAO,UAAU;AACtB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WACC,IACsC;AACtC,SAAK,OAAO,YAAY;AACxB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAShB,YACC,IACmB;AACnB,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjB,aAEA;AACC,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EAER;AAAA;AAAA,EAUA,QAAQ,MAAc;AACrB,QAAI,KAAK,OAAO,SAAS,GAAI;AAC7B,SAAK,OAAO,OAAO;AAAA,EACpB;AACD;","names":[]}
package/column.cjs CHANGED
@@ -37,7 +37,6 @@ class Column {
37
37
  this.isUnique = config.isUnique;
38
38
  this.uniqueName = config.uniqueName;
39
39
  this.uniqueType = config.uniqueType;
40
- this.uniqueNameExplicit = config.uniqueNameExplicit;
41
40
  this.dataType = config.dataType;
42
41
  this.columnType = config.columnType;
43
42
  this.generated = config.generated;
@@ -55,7 +54,6 @@ class Column {
55
54
  isUnique;
56
55
  uniqueName;
57
56
  uniqueType;
58
- uniqueNameExplicit;
59
57
  dataType;
60
58
  columnType;
61
59
  enumValues = void 0;
package/column.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/column.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnDataType,\n\tGeneratedColumnConfig,\n\tGeneratedIdentityConfig,\n} from './column-builder.ts';\nimport { entityKind } from './entity.ts';\nimport type { DriverValueMapper, SQL, SQLWrapper } from './sql/sql.ts';\nimport type { Table } from './table.ts';\nimport type { Update } from './utils.ts';\n\nexport interface ColumnBaseConfig<\n\tTDataType extends ColumnDataType,\n\tTColumnType extends string,\n> extends ColumnBuilderBaseConfig<TDataType, TColumnType> {\n\ttableName: string;\n\tnotNull: boolean;\n\thasDefault: boolean;\n\tisPrimaryKey: boolean;\n\tisAutoincrement: boolean;\n\thasRuntimeDefault: boolean;\n}\n\nexport type ColumnTypeConfig<T extends ColumnBaseConfig<ColumnDataType, string>, TTypeConfig extends object> = T & {\n\tbrand: 'Column';\n\ttableName: T['tableName'];\n\tname: T['name'];\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: T['data'];\n\tdriverParam: T['driverParam'];\n\tnotNull: T['notNull'];\n\thasDefault: T['hasDefault'];\n\tisPrimaryKey: T['isPrimaryKey'];\n\tisAutoincrement: T['isAutoincrement'];\n\thasRuntimeDefault: T['hasRuntimeDefault'];\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseColumn: infer U } ? U : unknown;\n\tgenerated: GeneratedColumnConfig<T['data']> | undefined;\n\tidentity: undefined | 'always' | 'byDefault';\n} & TTypeConfig;\n\nexport type ColumnRuntimeConfig<TData, TRuntimeConfig extends object> = ColumnBuilderRuntimeConfig<\n\tTData,\n\tTRuntimeConfig\n>;\n\nexport interface Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTRuntimeConfig extends object = object,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTTypeConfig extends object = object,\n> extends DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\t// SQLWrapper runtime implementation is defined in 'sql/sql.ts'\n}\n/*\n\t`Column` only accepts a full `ColumnConfig` as its generic.\n\tTo infer parts of the config, use `AnyColumn` that accepts a partial config.\n\tSee `GetColumnData` for example usage of inferring.\n*/\nexport abstract class Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n> implements DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\tstatic readonly [entityKind]: string = 'Column';\n\n\tdeclare readonly _: ColumnTypeConfig<T, TTypeConfig>;\n\n\treadonly name: string;\n\treadonly keyAsName: boolean;\n\treadonly primary: boolean;\n\treadonly notNull: boolean;\n\treadonly default: T['data'] | SQL | undefined;\n\treadonly defaultFn: (() => T['data'] | SQL) | undefined;\n\treadonly onUpdateFn: (() => T['data'] | SQL) | undefined;\n\treadonly hasDefault: boolean;\n\treadonly isUnique: boolean;\n\treadonly uniqueName: string | undefined;\n\treadonly uniqueType: string | undefined;\n\treadonly uniqueNameExplicit: boolean | undefined;\n\treadonly dataType: T['dataType'];\n\treadonly columnType: T['columnType'];\n\treadonly enumValues: T['enumValues'] = undefined;\n\treadonly generated: GeneratedColumnConfig<T['data']> | undefined = undefined;\n\treadonly generatedIdentity: GeneratedIdentityConfig | undefined = undefined;\n\n\tprotected config: ColumnRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(\n\t\treadonly table: Table,\n\t\tconfig: ColumnRuntimeConfig<T['data'], TRuntimeConfig>,\n\t) {\n\t\tthis.config = config;\n\t\tthis.name = config.name;\n\t\tthis.keyAsName = config.keyAsName;\n\t\tthis.notNull = config.notNull;\n\t\tthis.default = config.default;\n\t\tthis.defaultFn = config.defaultFn;\n\t\tthis.onUpdateFn = config.onUpdateFn;\n\t\tthis.hasDefault = config.hasDefault;\n\t\tthis.primary = config.primaryKey;\n\t\tthis.isUnique = config.isUnique;\n\t\tthis.uniqueName = config.uniqueName;\n\t\tthis.uniqueType = config.uniqueType;\n\t\tthis.uniqueNameExplicit = config.uniqueNameExplicit;\n\t\tthis.dataType = config.dataType as T['dataType'];\n\t\tthis.columnType = config.columnType;\n\t\tthis.generated = config.generated;\n\t\tthis.generatedIdentity = config.generatedIdentity;\n\t}\n\n\tabstract getSQLType(): string;\n\n\tmapFromDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\tmapToDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\t// ** @internal */\n\tshouldDisableInsert(): boolean {\n\t\treturn this.config.generated !== undefined && this.config.generated.type !== 'byDefault';\n\t}\n}\n\nexport type UpdateColConfig<\n\tT extends ColumnBaseConfig<ColumnDataType, string>,\n\tTUpdate extends Partial<ColumnBaseConfig<ColumnDataType, string>>,\n> = Update<T, TUpdate>;\n\nexport type AnyColumn<TPartial extends Partial<ColumnBaseConfig<ColumnDataType, string>> = {}> = Column<\n\tRequired<Update<ColumnBaseConfig<ColumnDataType, string>, TPartial>>\n>;\n\nexport type GetColumnData<TColumn extends Column, TInferMode extends 'query' | 'raw' = 'query'> =\n\t// dprint-ignore\n\tTInferMode extends 'raw' // Raw mode\n\t\t? TColumn['_']['data'] // Just return the underlying type\n\t\t: TColumn['_']['notNull'] extends true // Query mode\n\t\t? TColumn['_']['data'] // Query mode, not null\n\t\t: TColumn['_']['data'] | null; // Query mode, nullable\n\nexport type InferColumnsDataTypes<TColumns extends Record<string, Column>> = {\n\t[Key in keyof TColumns]: GetColumnData<TColumns[Key], 'query'>;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,oBAA2B;AAuDpB,MAAe,OAIkD;AAAA,EAyBvE,YACU,OACT,QACC;AAFQ;AAGT,SAAK,SAAS;AACd,SAAK,OAAO,OAAO;AACnB,SAAK,YAAY,OAAO;AACxB,SAAK,UAAU,OAAO;AACtB,SAAK,UAAU,OAAO;AACtB,SAAK,YAAY,OAAO;AACxB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,UAAU,OAAO;AACtB,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,qBAAqB,OAAO;AACjC,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,YAAY,OAAO;AACxB,SAAK,oBAAoB,OAAO;AAAA,EACjC;AAAA,EA7CA,QAAiB,wBAAU,IAAY;AAAA,EAI9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAA8B;AAAA,EAC9B,YAA0D;AAAA,EAC1D,oBAAyD;AAAA,EAExD;AAAA,EA2BV,mBAAmB,OAAyB;AAC3C,WAAO;AAAA,EACR;AAAA,EAEA,iBAAiB,OAAyB;AACzC,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,sBAA+B;AAC9B,WAAO,KAAK,OAAO,cAAc,UAAa,KAAK,OAAO,UAAU,SAAS;AAAA,EAC9E;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/column.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnDataType,\n\tGeneratedColumnConfig,\n\tGeneratedIdentityConfig,\n} from './column-builder.ts';\nimport { entityKind } from './entity.ts';\nimport type { DriverValueMapper, SQL, SQLWrapper } from './sql/sql.ts';\nimport type { Table } from './table.ts';\nimport type { Update } from './utils.ts';\n\nexport interface ColumnBaseConfig<\n\tTDataType extends ColumnDataType,\n\tTColumnType extends string,\n> extends ColumnBuilderBaseConfig<TDataType, TColumnType> {\n\ttableName: string;\n\tnotNull: boolean;\n\thasDefault: boolean;\n\tisPrimaryKey: boolean;\n\tisAutoincrement: boolean;\n\thasRuntimeDefault: boolean;\n}\n\nexport type ColumnTypeConfig<T extends ColumnBaseConfig<ColumnDataType, string>, TTypeConfig extends object> = T & {\n\tbrand: 'Column';\n\ttableName: T['tableName'];\n\tname: T['name'];\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: T['data'];\n\tdriverParam: T['driverParam'];\n\tnotNull: T['notNull'];\n\thasDefault: T['hasDefault'];\n\tisPrimaryKey: T['isPrimaryKey'];\n\tisAutoincrement: T['isAutoincrement'];\n\thasRuntimeDefault: T['hasRuntimeDefault'];\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseColumn: infer U } ? U : unknown;\n\tgenerated: GeneratedColumnConfig<T['data']> | undefined;\n\tidentity: undefined | 'always' | 'byDefault';\n} & TTypeConfig;\n\nexport type ColumnRuntimeConfig<TData, TRuntimeConfig extends object> = ColumnBuilderRuntimeConfig<\n\tTData,\n\tTRuntimeConfig\n>;\n\nexport interface Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTRuntimeConfig extends object = object,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTTypeConfig extends object = object,\n> extends DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\t// SQLWrapper runtime implementation is defined in 'sql/sql.ts'\n}\n/*\n\t`Column` only accepts a full `ColumnConfig` as its generic.\n\tTo infer parts of the config, use `AnyColumn` that accepts a partial config.\n\tSee `GetColumnData` for example usage of inferring.\n*/\nexport abstract class Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n> implements DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\tstatic readonly [entityKind]: string = 'Column';\n\n\tdeclare readonly _: ColumnTypeConfig<T, TTypeConfig>;\n\n\treadonly name: string;\n\treadonly keyAsName: boolean;\n\treadonly primary: boolean;\n\treadonly notNull: boolean;\n\treadonly default: T['data'] | SQL | undefined;\n\treadonly defaultFn: (() => T['data'] | SQL) | undefined;\n\treadonly onUpdateFn: (() => T['data'] | SQL) | undefined;\n\treadonly hasDefault: boolean;\n\treadonly isUnique: boolean;\n\treadonly uniqueName: string | undefined;\n\treadonly uniqueType: string | undefined;\n\treadonly dataType: T['dataType'];\n\treadonly columnType: T['columnType'];\n\treadonly enumValues: T['enumValues'] = undefined;\n\treadonly generated: GeneratedColumnConfig<T['data']> | undefined = undefined;\n\treadonly generatedIdentity: GeneratedIdentityConfig | undefined = undefined;\n\n\tprotected config: ColumnRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(\n\t\treadonly table: Table,\n\t\tconfig: ColumnRuntimeConfig<T['data'], TRuntimeConfig>,\n\t) {\n\t\tthis.config = config;\n\t\tthis.name = config.name;\n\t\tthis.keyAsName = config.keyAsName;\n\t\tthis.notNull = config.notNull;\n\t\tthis.default = config.default;\n\t\tthis.defaultFn = config.defaultFn;\n\t\tthis.onUpdateFn = config.onUpdateFn;\n\t\tthis.hasDefault = config.hasDefault;\n\t\tthis.primary = config.primaryKey;\n\t\tthis.isUnique = config.isUnique;\n\t\tthis.uniqueName = config.uniqueName;\n\t\tthis.uniqueType = config.uniqueType;\n\t\tthis.dataType = config.dataType as T['dataType'];\n\t\tthis.columnType = config.columnType;\n\t\tthis.generated = config.generated;\n\t\tthis.generatedIdentity = config.generatedIdentity;\n\t}\n\n\tabstract getSQLType(): string;\n\n\tmapFromDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\tmapToDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\t// ** @internal */\n\tshouldDisableInsert(): boolean {\n\t\treturn this.config.generated !== undefined && this.config.generated.type !== 'byDefault';\n\t}\n}\n\nexport type UpdateColConfig<\n\tT extends ColumnBaseConfig<ColumnDataType, string>,\n\tTUpdate extends Partial<ColumnBaseConfig<ColumnDataType, string>>,\n> = Update<T, TUpdate>;\n\nexport type AnyColumn<TPartial extends Partial<ColumnBaseConfig<ColumnDataType, string>> = {}> = Column<\n\tRequired<Update<ColumnBaseConfig<ColumnDataType, string>, TPartial>>\n>;\n\nexport type GetColumnData<TColumn extends Column, TInferMode extends 'query' | 'raw' = 'query'> =\n\t// dprint-ignore\n\tTInferMode extends 'raw' // Raw mode\n\t\t? TColumn['_']['data'] // Just return the underlying type\n\t\t: TColumn['_']['notNull'] extends true // Query mode\n\t\t? TColumn['_']['data'] // Query mode, not null\n\t\t: TColumn['_']['data'] | null; // Query mode, nullable\n\nexport type InferColumnsDataTypes<TColumns extends Record<string, Column>> = {\n\t[Key in keyof TColumns]: GetColumnData<TColumns[Key], 'query'>;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,oBAA2B;AAuDpB,MAAe,OAIkD;AAAA,EAwBvE,YACU,OACT,QACC;AAFQ;AAGT,SAAK,SAAS;AACd,SAAK,OAAO,OAAO;AACnB,SAAK,YAAY,OAAO;AACxB,SAAK,UAAU,OAAO;AACtB,SAAK,UAAU,OAAO;AACtB,SAAK,YAAY,OAAO;AACxB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,UAAU,OAAO;AACtB,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,YAAY,OAAO;AACxB,SAAK,oBAAoB,OAAO;AAAA,EACjC;AAAA,EA3CA,QAAiB,wBAAU,IAAY;AAAA,EAI9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAA8B;AAAA,EAC9B,YAA0D;AAAA,EAC1D,oBAAyD;AAAA,EAExD;AAAA,EA0BV,mBAAmB,OAAyB;AAC3C,WAAO;AAAA,EACR;AAAA,EAEA,iBAAiB,OAAyB;AACzC,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,sBAA+B;AAC9B,WAAO,KAAK,OAAO,cAAc,UAAa,KAAK,OAAO,UAAU,SAAS;AAAA,EAC9E;AACD;","names":[]}
package/column.d.cts CHANGED
@@ -49,7 +49,6 @@ export declare abstract class Column<T extends ColumnBaseConfig<ColumnDataType,
49
49
  readonly isUnique: boolean;
50
50
  readonly uniqueName: string | undefined;
51
51
  readonly uniqueType: string | undefined;
52
- readonly uniqueNameExplicit: boolean | undefined;
53
52
  readonly dataType: T['dataType'];
54
53
  readonly columnType: T['columnType'];
55
54
  readonly enumValues: T['enumValues'];
package/column.d.ts CHANGED
@@ -49,7 +49,6 @@ export declare abstract class Column<T extends ColumnBaseConfig<ColumnDataType,
49
49
  readonly isUnique: boolean;
50
50
  readonly uniqueName: string | undefined;
51
51
  readonly uniqueType: string | undefined;
52
- readonly uniqueNameExplicit: boolean | undefined;
53
52
  readonly dataType: T['dataType'];
54
53
  readonly columnType: T['columnType'];
55
54
  readonly enumValues: T['enumValues'];
package/column.js CHANGED
@@ -14,7 +14,6 @@ class Column {
14
14
  this.isUnique = config.isUnique;
15
15
  this.uniqueName = config.uniqueName;
16
16
  this.uniqueType = config.uniqueType;
17
- this.uniqueNameExplicit = config.uniqueNameExplicit;
18
17
  this.dataType = config.dataType;
19
18
  this.columnType = config.columnType;
20
19
  this.generated = config.generated;
@@ -32,7 +31,6 @@ class Column {
32
31
  isUnique;
33
32
  uniqueName;
34
33
  uniqueType;
35
- uniqueNameExplicit;
36
34
  dataType;
37
35
  columnType;
38
36
  enumValues = void 0;
package/column.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/column.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnDataType,\n\tGeneratedColumnConfig,\n\tGeneratedIdentityConfig,\n} from './column-builder.ts';\nimport { entityKind } from './entity.ts';\nimport type { DriverValueMapper, SQL, SQLWrapper } from './sql/sql.ts';\nimport type { Table } from './table.ts';\nimport type { Update } from './utils.ts';\n\nexport interface ColumnBaseConfig<\n\tTDataType extends ColumnDataType,\n\tTColumnType extends string,\n> extends ColumnBuilderBaseConfig<TDataType, TColumnType> {\n\ttableName: string;\n\tnotNull: boolean;\n\thasDefault: boolean;\n\tisPrimaryKey: boolean;\n\tisAutoincrement: boolean;\n\thasRuntimeDefault: boolean;\n}\n\nexport type ColumnTypeConfig<T extends ColumnBaseConfig<ColumnDataType, string>, TTypeConfig extends object> = T & {\n\tbrand: 'Column';\n\ttableName: T['tableName'];\n\tname: T['name'];\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: T['data'];\n\tdriverParam: T['driverParam'];\n\tnotNull: T['notNull'];\n\thasDefault: T['hasDefault'];\n\tisPrimaryKey: T['isPrimaryKey'];\n\tisAutoincrement: T['isAutoincrement'];\n\thasRuntimeDefault: T['hasRuntimeDefault'];\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseColumn: infer U } ? U : unknown;\n\tgenerated: GeneratedColumnConfig<T['data']> | undefined;\n\tidentity: undefined | 'always' | 'byDefault';\n} & TTypeConfig;\n\nexport type ColumnRuntimeConfig<TData, TRuntimeConfig extends object> = ColumnBuilderRuntimeConfig<\n\tTData,\n\tTRuntimeConfig\n>;\n\nexport interface Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTRuntimeConfig extends object = object,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTTypeConfig extends object = object,\n> extends DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\t// SQLWrapper runtime implementation is defined in 'sql/sql.ts'\n}\n/*\n\t`Column` only accepts a full `ColumnConfig` as its generic.\n\tTo infer parts of the config, use `AnyColumn` that accepts a partial config.\n\tSee `GetColumnData` for example usage of inferring.\n*/\nexport abstract class Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n> implements DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\tstatic readonly [entityKind]: string = 'Column';\n\n\tdeclare readonly _: ColumnTypeConfig<T, TTypeConfig>;\n\n\treadonly name: string;\n\treadonly keyAsName: boolean;\n\treadonly primary: boolean;\n\treadonly notNull: boolean;\n\treadonly default: T['data'] | SQL | undefined;\n\treadonly defaultFn: (() => T['data'] | SQL) | undefined;\n\treadonly onUpdateFn: (() => T['data'] | SQL) | undefined;\n\treadonly hasDefault: boolean;\n\treadonly isUnique: boolean;\n\treadonly uniqueName: string | undefined;\n\treadonly uniqueType: string | undefined;\n\treadonly uniqueNameExplicit: boolean | undefined;\n\treadonly dataType: T['dataType'];\n\treadonly columnType: T['columnType'];\n\treadonly enumValues: T['enumValues'] = undefined;\n\treadonly generated: GeneratedColumnConfig<T['data']> | undefined = undefined;\n\treadonly generatedIdentity: GeneratedIdentityConfig | undefined = undefined;\n\n\tprotected config: ColumnRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(\n\t\treadonly table: Table,\n\t\tconfig: ColumnRuntimeConfig<T['data'], TRuntimeConfig>,\n\t) {\n\t\tthis.config = config;\n\t\tthis.name = config.name;\n\t\tthis.keyAsName = config.keyAsName;\n\t\tthis.notNull = config.notNull;\n\t\tthis.default = config.default;\n\t\tthis.defaultFn = config.defaultFn;\n\t\tthis.onUpdateFn = config.onUpdateFn;\n\t\tthis.hasDefault = config.hasDefault;\n\t\tthis.primary = config.primaryKey;\n\t\tthis.isUnique = config.isUnique;\n\t\tthis.uniqueName = config.uniqueName;\n\t\tthis.uniqueType = config.uniqueType;\n\t\tthis.uniqueNameExplicit = config.uniqueNameExplicit;\n\t\tthis.dataType = config.dataType as T['dataType'];\n\t\tthis.columnType = config.columnType;\n\t\tthis.generated = config.generated;\n\t\tthis.generatedIdentity = config.generatedIdentity;\n\t}\n\n\tabstract getSQLType(): string;\n\n\tmapFromDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\tmapToDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\t// ** @internal */\n\tshouldDisableInsert(): boolean {\n\t\treturn this.config.generated !== undefined && this.config.generated.type !== 'byDefault';\n\t}\n}\n\nexport type UpdateColConfig<\n\tT extends ColumnBaseConfig<ColumnDataType, string>,\n\tTUpdate extends Partial<ColumnBaseConfig<ColumnDataType, string>>,\n> = Update<T, TUpdate>;\n\nexport type AnyColumn<TPartial extends Partial<ColumnBaseConfig<ColumnDataType, string>> = {}> = Column<\n\tRequired<Update<ColumnBaseConfig<ColumnDataType, string>, TPartial>>\n>;\n\nexport type GetColumnData<TColumn extends Column, TInferMode extends 'query' | 'raw' = 'query'> =\n\t// dprint-ignore\n\tTInferMode extends 'raw' // Raw mode\n\t\t? TColumn['_']['data'] // Just return the underlying type\n\t\t: TColumn['_']['notNull'] extends true // Query mode\n\t\t? TColumn['_']['data'] // Query mode, not null\n\t\t: TColumn['_']['data'] | null; // Query mode, nullable\n\nexport type InferColumnsDataTypes<TColumns extends Record<string, Column>> = {\n\t[Key in keyof TColumns]: GetColumnData<TColumns[Key], 'query'>;\n};\n"],"mappings":"AAOA,SAAS,kBAAkB;AAuDpB,MAAe,OAIkD;AAAA,EAyBvE,YACU,OACT,QACC;AAFQ;AAGT,SAAK,SAAS;AACd,SAAK,OAAO,OAAO;AACnB,SAAK,YAAY,OAAO;AACxB,SAAK,UAAU,OAAO;AACtB,SAAK,UAAU,OAAO;AACtB,SAAK,YAAY,OAAO;AACxB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,UAAU,OAAO;AACtB,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,qBAAqB,OAAO;AACjC,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,YAAY,OAAO;AACxB,SAAK,oBAAoB,OAAO;AAAA,EACjC;AAAA,EA7CA,QAAiB,UAAU,IAAY;AAAA,EAI9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAA8B;AAAA,EAC9B,YAA0D;AAAA,EAC1D,oBAAyD;AAAA,EAExD;AAAA,EA2BV,mBAAmB,OAAyB;AAC3C,WAAO;AAAA,EACR;AAAA,EAEA,iBAAiB,OAAyB;AACzC,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,sBAA+B;AAC9B,WAAO,KAAK,OAAO,cAAc,UAAa,KAAK,OAAO,UAAU,SAAS;AAAA,EAC9E;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/column.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnDataType,\n\tGeneratedColumnConfig,\n\tGeneratedIdentityConfig,\n} from './column-builder.ts';\nimport { entityKind } from './entity.ts';\nimport type { DriverValueMapper, SQL, SQLWrapper } from './sql/sql.ts';\nimport type { Table } from './table.ts';\nimport type { Update } from './utils.ts';\n\nexport interface ColumnBaseConfig<\n\tTDataType extends ColumnDataType,\n\tTColumnType extends string,\n> extends ColumnBuilderBaseConfig<TDataType, TColumnType> {\n\ttableName: string;\n\tnotNull: boolean;\n\thasDefault: boolean;\n\tisPrimaryKey: boolean;\n\tisAutoincrement: boolean;\n\thasRuntimeDefault: boolean;\n}\n\nexport type ColumnTypeConfig<T extends ColumnBaseConfig<ColumnDataType, string>, TTypeConfig extends object> = T & {\n\tbrand: 'Column';\n\ttableName: T['tableName'];\n\tname: T['name'];\n\tdataType: T['dataType'];\n\tcolumnType: T['columnType'];\n\tdata: T['data'];\n\tdriverParam: T['driverParam'];\n\tnotNull: T['notNull'];\n\thasDefault: T['hasDefault'];\n\tisPrimaryKey: T['isPrimaryKey'];\n\tisAutoincrement: T['isAutoincrement'];\n\thasRuntimeDefault: T['hasRuntimeDefault'];\n\tenumValues: T['enumValues'];\n\tbaseColumn: T extends { baseColumn: infer U } ? U : unknown;\n\tgenerated: GeneratedColumnConfig<T['data']> | undefined;\n\tidentity: undefined | 'always' | 'byDefault';\n} & TTypeConfig;\n\nexport type ColumnRuntimeConfig<TData, TRuntimeConfig extends object> = ColumnBuilderRuntimeConfig<\n\tTData,\n\tTRuntimeConfig\n>;\n\nexport interface Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTRuntimeConfig extends object = object,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTTypeConfig extends object = object,\n> extends DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\t// SQLWrapper runtime implementation is defined in 'sql/sql.ts'\n}\n/*\n\t`Column` only accepts a full `ColumnConfig` as its generic.\n\tTo infer parts of the config, use `AnyColumn` that accepts a partial config.\n\tSee `GetColumnData` for example usage of inferring.\n*/\nexport abstract class Column<\n\tT extends ColumnBaseConfig<ColumnDataType, string> = ColumnBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTTypeConfig extends object = object,\n> implements DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {\n\tstatic readonly [entityKind]: string = 'Column';\n\n\tdeclare readonly _: ColumnTypeConfig<T, TTypeConfig>;\n\n\treadonly name: string;\n\treadonly keyAsName: boolean;\n\treadonly primary: boolean;\n\treadonly notNull: boolean;\n\treadonly default: T['data'] | SQL | undefined;\n\treadonly defaultFn: (() => T['data'] | SQL) | undefined;\n\treadonly onUpdateFn: (() => T['data'] | SQL) | undefined;\n\treadonly hasDefault: boolean;\n\treadonly isUnique: boolean;\n\treadonly uniqueName: string | undefined;\n\treadonly uniqueType: string | undefined;\n\treadonly dataType: T['dataType'];\n\treadonly columnType: T['columnType'];\n\treadonly enumValues: T['enumValues'] = undefined;\n\treadonly generated: GeneratedColumnConfig<T['data']> | undefined = undefined;\n\treadonly generatedIdentity: GeneratedIdentityConfig | undefined = undefined;\n\n\tprotected config: ColumnRuntimeConfig<T['data'], TRuntimeConfig>;\n\n\tconstructor(\n\t\treadonly table: Table,\n\t\tconfig: ColumnRuntimeConfig<T['data'], TRuntimeConfig>,\n\t) {\n\t\tthis.config = config;\n\t\tthis.name = config.name;\n\t\tthis.keyAsName = config.keyAsName;\n\t\tthis.notNull = config.notNull;\n\t\tthis.default = config.default;\n\t\tthis.defaultFn = config.defaultFn;\n\t\tthis.onUpdateFn = config.onUpdateFn;\n\t\tthis.hasDefault = config.hasDefault;\n\t\tthis.primary = config.primaryKey;\n\t\tthis.isUnique = config.isUnique;\n\t\tthis.uniqueName = config.uniqueName;\n\t\tthis.uniqueType = config.uniqueType;\n\t\tthis.dataType = config.dataType as T['dataType'];\n\t\tthis.columnType = config.columnType;\n\t\tthis.generated = config.generated;\n\t\tthis.generatedIdentity = config.generatedIdentity;\n\t}\n\n\tabstract getSQLType(): string;\n\n\tmapFromDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\tmapToDriverValue(value: unknown): unknown {\n\t\treturn value;\n\t}\n\n\t// ** @internal */\n\tshouldDisableInsert(): boolean {\n\t\treturn this.config.generated !== undefined && this.config.generated.type !== 'byDefault';\n\t}\n}\n\nexport type UpdateColConfig<\n\tT extends ColumnBaseConfig<ColumnDataType, string>,\n\tTUpdate extends Partial<ColumnBaseConfig<ColumnDataType, string>>,\n> = Update<T, TUpdate>;\n\nexport type AnyColumn<TPartial extends Partial<ColumnBaseConfig<ColumnDataType, string>> = {}> = Column<\n\tRequired<Update<ColumnBaseConfig<ColumnDataType, string>, TPartial>>\n>;\n\nexport type GetColumnData<TColumn extends Column, TInferMode extends 'query' | 'raw' = 'query'> =\n\t// dprint-ignore\n\tTInferMode extends 'raw' // Raw mode\n\t\t? TColumn['_']['data'] // Just return the underlying type\n\t\t: TColumn['_']['notNull'] extends true // Query mode\n\t\t? TColumn['_']['data'] // Query mode, not null\n\t\t: TColumn['_']['data'] | null; // Query mode, nullable\n\nexport type InferColumnsDataTypes<TColumns extends Record<string, Column>> = {\n\t[Key in keyof TColumns]: GetColumnData<TColumns[Key], 'query'>;\n};\n"],"mappings":"AAOA,SAAS,kBAAkB;AAuDpB,MAAe,OAIkD;AAAA,EAwBvE,YACU,OACT,QACC;AAFQ;AAGT,SAAK,SAAS;AACd,SAAK,OAAO,OAAO;AACnB,SAAK,YAAY,OAAO;AACxB,SAAK,UAAU,OAAO;AACtB,SAAK,UAAU,OAAO;AACtB,SAAK,YAAY,OAAO;AACxB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,UAAU,OAAO;AACtB,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,aAAa,OAAO;AACzB,SAAK,WAAW,OAAO;AACvB,SAAK,aAAa,OAAO;AACzB,SAAK,YAAY,OAAO;AACxB,SAAK,oBAAoB,OAAO;AAAA,EACjC;AAAA,EA3CA,QAAiB,UAAU,IAAY;AAAA,EAI9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAA8B;AAAA,EAC9B,YAA0D;AAAA,EAC1D,oBAAyD;AAAA,EAExD;AAAA,EA0BV,mBAAmB,OAAyB;AAC3C,WAAO;AAAA,EACR;AAAA,EAEA,iBAAiB,OAAyB;AACzC,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,sBAA+B;AAC9B,WAAO,KAAK,OAAO,cAAc,UAAa,KAAK,OAAO,UAAU,SAAS;AAAA,EAC9E;AACD;","names":[]}
package/errors.cjs CHANGED
@@ -19,6 +19,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var errors_exports = {};
20
20
  __export(errors_exports, {
21
21
  DrizzleError: () => DrizzleError,
22
+ DrizzleQueryError: () => DrizzleQueryError,
22
23
  TransactionRollbackError: () => TransactionRollbackError
23
24
  });
24
25
  module.exports = __toCommonJS(errors_exports);
@@ -31,6 +32,17 @@ class DrizzleError extends Error {
31
32
  this.cause = cause;
32
33
  }
33
34
  }
35
+ class DrizzleQueryError extends Error {
36
+ constructor(query, params, cause) {
37
+ super(`Failed query: ${query}
38
+ params: ${params}`);
39
+ this.query = query;
40
+ this.params = params;
41
+ this.cause = cause;
42
+ Error.captureStackTrace(this, DrizzleQueryError);
43
+ if (cause) this.cause = cause;
44
+ }
45
+ }
34
46
  class TransactionRollbackError extends DrizzleError {
35
47
  static [import_entity.entityKind] = "TransactionRollbackError";
36
48
  constructor() {
@@ -40,6 +52,7 @@ class TransactionRollbackError extends DrizzleError {
40
52
  // Annotate the CommonJS export names for ESM import in node:
41
53
  0 && (module.exports = {
42
54
  DrizzleError,
55
+ DrizzleQueryError,
43
56
  TransactionRollbackError
44
57
  });
45
58
  //# sourceMappingURL=errors.cjs.map
package/errors.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/errors.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\n\nexport class DrizzleError extends Error {\n\tstatic readonly [entityKind]: string = 'DrizzleError';\n\n\tconstructor({ message, cause }: { message?: string; cause?: unknown }) {\n\t\tsuper(message);\n\t\tthis.name = 'DrizzleError';\n\t\tthis.cause = cause;\n\t}\n}\n\nexport class TransactionRollbackError extends DrizzleError {\n\tstatic override readonly [entityKind]: string = 'TransactionRollbackError';\n\n\tconstructor() {\n\t\tsuper({ message: 'Rollback' });\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAEpB,MAAM,qBAAqB,MAAM;AAAA,EACvC,QAAiB,wBAAU,IAAY;AAAA,EAEvC,YAAY,EAAE,SAAS,MAAM,GAA0C;AACtE,UAAM,OAAO;AACb,SAAK,OAAO;AACZ,SAAK,QAAQ;AAAA,EACd;AACD;AAEO,MAAM,iCAAiC,aAAa;AAAA,EAC1D,QAA0B,wBAAU,IAAY;AAAA,EAEhD,cAAc;AACb,UAAM,EAAE,SAAS,WAAW,CAAC;AAAA,EAC9B;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/errors.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\n\nexport class DrizzleError extends Error {\n\tstatic readonly [entityKind]: string = 'DrizzleError';\n\n\tconstructor({ message, cause }: { message?: string; cause?: unknown }) {\n\t\tsuper(message);\n\t\tthis.name = 'DrizzleError';\n\t\tthis.cause = cause;\n\t}\n}\n\nexport class DrizzleQueryError extends Error {\n\tconstructor(\n\t\tpublic query: string,\n\t\tpublic params: any[],\n\t\tpublic override cause?: Error,\n\t) {\n\t\tsuper(`Failed query: ${query}\\nparams: ${params}`);\n\t\tError.captureStackTrace(this, DrizzleQueryError);\n\n\t\t// ES2022+: preserves original error on `.cause`\n\t\tif (cause) (this as any).cause = cause;\n\t}\n}\n\nexport class TransactionRollbackError extends DrizzleError {\n\tstatic override readonly [entityKind]: string = 'TransactionRollbackError';\n\n\tconstructor() {\n\t\tsuper({ message: 'Rollback' });\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAEpB,MAAM,qBAAqB,MAAM;AAAA,EACvC,QAAiB,wBAAU,IAAY;AAAA,EAEvC,YAAY,EAAE,SAAS,MAAM,GAA0C;AACtE,UAAM,OAAO;AACb,SAAK,OAAO;AACZ,SAAK,QAAQ;AAAA,EACd;AACD;AAEO,MAAM,0BAA0B,MAAM;AAAA,EAC5C,YACQ,OACA,QACS,OACf;AACD,UAAM,iBAAiB,KAAK;AAAA,UAAa,MAAM,EAAE;AAJ1C;AACA;AACS;AAGhB,UAAM,kBAAkB,MAAM,iBAAiB;AAG/C,QAAI,MAAO,CAAC,KAAa,QAAQ;AAAA,EAClC;AACD;AAEO,MAAM,iCAAiC,aAAa;AAAA,EAC1D,QAA0B,wBAAU,IAAY;AAAA,EAEhD,cAAc;AACb,UAAM,EAAE,SAAS,WAAW,CAAC;AAAA,EAC9B;AACD;","names":[]}
package/errors.d.cts CHANGED
@@ -6,6 +6,12 @@ export declare class DrizzleError extends Error {
6
6
  cause?: unknown;
7
7
  });
8
8
  }
9
+ export declare class DrizzleQueryError extends Error {
10
+ query: string;
11
+ params: any[];
12
+ cause?: Error | undefined;
13
+ constructor(query: string, params: any[], cause?: Error | undefined);
14
+ }
9
15
  export declare class TransactionRollbackError extends DrizzleError {
10
16
  static readonly [entityKind]: string;
11
17
  constructor();
package/errors.d.ts CHANGED
@@ -6,6 +6,12 @@ export declare class DrizzleError extends Error {
6
6
  cause?: unknown;
7
7
  });
8
8
  }
9
+ export declare class DrizzleQueryError extends Error {
10
+ query: string;
11
+ params: any[];
12
+ cause?: Error | undefined;
13
+ constructor(query: string, params: any[], cause?: Error | undefined);
14
+ }
9
15
  export declare class TransactionRollbackError extends DrizzleError {
10
16
  static readonly [entityKind]: string;
11
17
  constructor();
package/errors.js CHANGED
@@ -7,6 +7,17 @@ class DrizzleError extends Error {
7
7
  this.cause = cause;
8
8
  }
9
9
  }
10
+ class DrizzleQueryError extends Error {
11
+ constructor(query, params, cause) {
12
+ super(`Failed query: ${query}
13
+ params: ${params}`);
14
+ this.query = query;
15
+ this.params = params;
16
+ this.cause = cause;
17
+ Error.captureStackTrace(this, DrizzleQueryError);
18
+ if (cause) this.cause = cause;
19
+ }
20
+ }
10
21
  class TransactionRollbackError extends DrizzleError {
11
22
  static [entityKind] = "TransactionRollbackError";
12
23
  constructor() {
@@ -15,6 +26,7 @@ class TransactionRollbackError extends DrizzleError {
15
26
  }
16
27
  export {
17
28
  DrizzleError,
29
+ DrizzleQueryError,
18
30
  TransactionRollbackError
19
31
  };
20
32
  //# sourceMappingURL=errors.js.map
package/errors.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/errors.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\n\nexport class DrizzleError extends Error {\n\tstatic readonly [entityKind]: string = 'DrizzleError';\n\n\tconstructor({ message, cause }: { message?: string; cause?: unknown }) {\n\t\tsuper(message);\n\t\tthis.name = 'DrizzleError';\n\t\tthis.cause = cause;\n\t}\n}\n\nexport class TransactionRollbackError extends DrizzleError {\n\tstatic override readonly [entityKind]: string = 'TransactionRollbackError';\n\n\tconstructor() {\n\t\tsuper({ message: 'Rollback' });\n\t}\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAEpB,MAAM,qBAAqB,MAAM;AAAA,EACvC,QAAiB,UAAU,IAAY;AAAA,EAEvC,YAAY,EAAE,SAAS,MAAM,GAA0C;AACtE,UAAM,OAAO;AACb,SAAK,OAAO;AACZ,SAAK,QAAQ;AAAA,EACd;AACD;AAEO,MAAM,iCAAiC,aAAa;AAAA,EAC1D,QAA0B,UAAU,IAAY;AAAA,EAEhD,cAAc;AACb,UAAM,EAAE,SAAS,WAAW,CAAC;AAAA,EAC9B;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/errors.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\n\nexport class DrizzleError extends Error {\n\tstatic readonly [entityKind]: string = 'DrizzleError';\n\n\tconstructor({ message, cause }: { message?: string; cause?: unknown }) {\n\t\tsuper(message);\n\t\tthis.name = 'DrizzleError';\n\t\tthis.cause = cause;\n\t}\n}\n\nexport class DrizzleQueryError extends Error {\n\tconstructor(\n\t\tpublic query: string,\n\t\tpublic params: any[],\n\t\tpublic override cause?: Error,\n\t) {\n\t\tsuper(`Failed query: ${query}\\nparams: ${params}`);\n\t\tError.captureStackTrace(this, DrizzleQueryError);\n\n\t\t// ES2022+: preserves original error on `.cause`\n\t\tif (cause) (this as any).cause = cause;\n\t}\n}\n\nexport class TransactionRollbackError extends DrizzleError {\n\tstatic override readonly [entityKind]: string = 'TransactionRollbackError';\n\n\tconstructor() {\n\t\tsuper({ message: 'Rollback' });\n\t}\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAEpB,MAAM,qBAAqB,MAAM;AAAA,EACvC,QAAiB,UAAU,IAAY;AAAA,EAEvC,YAAY,EAAE,SAAS,MAAM,GAA0C;AACtE,UAAM,OAAO;AACb,SAAK,OAAO;AACZ,SAAK,QAAQ;AAAA,EACd;AACD;AAEO,MAAM,0BAA0B,MAAM;AAAA,EAC5C,YACQ,OACA,QACS,OACf;AACD,UAAM,iBAAiB,KAAK;AAAA,UAAa,MAAM,EAAE;AAJ1C;AACA;AACS;AAGhB,UAAM,kBAAkB,MAAM,iBAAiB;AAG/C,QAAI,MAAO,CAAC,KAAa,QAAQ;AAAA,EAClC;AACD;AAEO,MAAM,iCAAiC,aAAa;AAAA,EAC1D,QAA0B,UAAU,IAAY;AAAA,EAEhD,cAAc;AACb,UAAM,EAAE,SAAS,WAAW,CAAC;AAAA,EAC9B;AACD;","names":[]}
@@ -26,7 +26,6 @@ module.exports = __toCommonJS(session_exports);
26
26
  var import_cache = require("../cache/core/cache.cjs");
27
27
  var import_entity = require("../entity.cjs");
28
28
  var import_errors = require("../errors.cjs");
29
- var import_errors2 = require("../errors/index.cjs");
30
29
  var import_tracing = require("../tracing.cjs");
31
30
  var import_db = require("./db.cjs");
32
31
  class GelPreparedQuery {
@@ -48,14 +47,14 @@ class GelPreparedQuery {
48
47
  try {
49
48
  return await query();
50
49
  } catch (e) {
51
- throw new import_errors2.DrizzleQueryError(queryString, params, e);
50
+ throw new import_errors.DrizzleQueryError(queryString, params, e);
52
51
  }
53
52
  }
54
53
  if (this.cacheConfig && !this.cacheConfig.enable) {
55
54
  try {
56
55
  return await query();
57
56
  } catch (e) {
58
- throw new import_errors2.DrizzleQueryError(queryString, params, e);
57
+ throw new import_errors.DrizzleQueryError(queryString, params, e);
59
58
  }
60
59
  }
61
60
  if ((this.queryMetadata.type === "insert" || this.queryMetadata.type === "update" || this.queryMetadata.type === "delete") && this.queryMetadata.tables.length > 0) {
@@ -66,14 +65,14 @@ class GelPreparedQuery {
66
65
  ]);
67
66
  return res;
68
67
  } catch (e) {
69
- throw new import_errors2.DrizzleQueryError(queryString, params, e);
68
+ throw new import_errors.DrizzleQueryError(queryString, params, e);
70
69
  }
71
70
  }
72
71
  if (!this.cacheConfig) {
73
72
  try {
74
73
  return await query();
75
74
  } catch (e) {
76
- throw new import_errors2.DrizzleQueryError(queryString, params, e);
75
+ throw new import_errors.DrizzleQueryError(queryString, params, e);
77
76
  }
78
77
  }
79
78
  if (this.queryMetadata.type === "select") {
@@ -88,7 +87,7 @@ class GelPreparedQuery {
88
87
  try {
89
88
  result = await query();
90
89
  } catch (e) {
91
- throw new import_errors2.DrizzleQueryError(queryString, params, e);
90
+ throw new import_errors.DrizzleQueryError(queryString, params, e);
92
91
  }
93
92
  await this.cache.put(
94
93
  this.cacheConfig.tag ?? (await (0, import_cache.hashQuery)(queryString, params)),
@@ -105,7 +104,7 @@ class GelPreparedQuery {
105
104
  try {
106
105
  return await query();
107
106
  } catch (e) {
108
- throw new import_errors2.DrizzleQueryError(queryString, params, e);
107
+ throw new import_errors.DrizzleQueryError(queryString, params, e);
109
108
  }
110
109
  }
111
110
  authToken;