drizzle-orm 1.0.0-beta.1-9557d38 → 1.0.0-beta.1-c569775

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 (1305) hide show
  1. package/_relations.cjs +0 -48
  2. package/_relations.cjs.map +1 -1
  3. package/_relations.d.cts +0 -1
  4. package/_relations.d.ts +0 -1
  5. package/_relations.js +0 -47
  6. package/_relations.js.map +1 -1
  7. package/column-builder.cjs.map +1 -1
  8. package/column-builder.d.cts +8 -10
  9. package/column-builder.d.ts +8 -10
  10. package/column-builder.js.map +1 -1
  11. package/column.cjs +0 -2
  12. package/column.cjs.map +1 -1
  13. package/column.d.cts +0 -1
  14. package/column.d.ts +0 -1
  15. package/column.js +0 -2
  16. package/column.js.map +1 -1
  17. package/gel-core/columns/bigint.cjs.map +1 -1
  18. package/gel-core/columns/bigint.d.cts +1 -0
  19. package/gel-core/columns/bigint.d.ts +1 -0
  20. package/gel-core/columns/bigint.js.map +1 -1
  21. package/gel-core/columns/bigintT.cjs.map +1 -1
  22. package/gel-core/columns/bigintT.d.cts +1 -0
  23. package/gel-core/columns/bigintT.d.ts +1 -0
  24. package/gel-core/columns/bigintT.js.map +1 -1
  25. package/gel-core/columns/boolean.cjs.map +1 -1
  26. package/gel-core/columns/boolean.d.cts +1 -0
  27. package/gel-core/columns/boolean.d.ts +1 -0
  28. package/gel-core/columns/boolean.js.map +1 -1
  29. package/gel-core/columns/bytes.cjs.map +1 -1
  30. package/gel-core/columns/bytes.d.cts +1 -0
  31. package/gel-core/columns/bytes.d.ts +1 -0
  32. package/gel-core/columns/bytes.js.map +1 -1
  33. package/gel-core/columns/custom.cjs.map +1 -1
  34. package/gel-core/columns/custom.d.cts +1 -0
  35. package/gel-core/columns/custom.d.ts +1 -0
  36. package/gel-core/columns/custom.js.map +1 -1
  37. package/gel-core/columns/date-duration.cjs.map +1 -1
  38. package/gel-core/columns/date-duration.d.cts +1 -0
  39. package/gel-core/columns/date-duration.d.ts +1 -0
  40. package/gel-core/columns/date-duration.js.map +1 -1
  41. package/gel-core/columns/decimal.cjs.map +1 -1
  42. package/gel-core/columns/decimal.d.cts +1 -0
  43. package/gel-core/columns/decimal.d.ts +1 -0
  44. package/gel-core/columns/decimal.js.map +1 -1
  45. package/gel-core/columns/double-precision.cjs.map +1 -1
  46. package/gel-core/columns/double-precision.d.cts +1 -0
  47. package/gel-core/columns/double-precision.d.ts +1 -0
  48. package/gel-core/columns/double-precision.js.map +1 -1
  49. package/gel-core/columns/duration.cjs.map +1 -1
  50. package/gel-core/columns/duration.d.cts +1 -0
  51. package/gel-core/columns/duration.d.ts +1 -0
  52. package/gel-core/columns/duration.js.map +1 -1
  53. package/gel-core/columns/integer.cjs.map +1 -1
  54. package/gel-core/columns/integer.d.cts +1 -0
  55. package/gel-core/columns/integer.d.ts +1 -0
  56. package/gel-core/columns/integer.js.map +1 -1
  57. package/gel-core/columns/json.cjs.map +1 -1
  58. package/gel-core/columns/json.d.cts +1 -0
  59. package/gel-core/columns/json.d.ts +1 -0
  60. package/gel-core/columns/json.js.map +1 -1
  61. package/gel-core/columns/localdate.cjs.map +1 -1
  62. package/gel-core/columns/localdate.d.cts +1 -0
  63. package/gel-core/columns/localdate.d.ts +1 -0
  64. package/gel-core/columns/localdate.js.map +1 -1
  65. package/gel-core/columns/localtime.cjs.map +1 -1
  66. package/gel-core/columns/localtime.d.cts +1 -0
  67. package/gel-core/columns/localtime.d.ts +1 -0
  68. package/gel-core/columns/localtime.js.map +1 -1
  69. package/gel-core/columns/real.cjs.map +1 -1
  70. package/gel-core/columns/real.d.cts +1 -0
  71. package/gel-core/columns/real.d.ts +1 -0
  72. package/gel-core/columns/real.js.map +1 -1
  73. package/gel-core/columns/relative-duration.cjs.map +1 -1
  74. package/gel-core/columns/relative-duration.d.cts +1 -0
  75. package/gel-core/columns/relative-duration.d.ts +1 -0
  76. package/gel-core/columns/relative-duration.js.map +1 -1
  77. package/gel-core/columns/smallint.cjs.map +1 -1
  78. package/gel-core/columns/smallint.d.cts +1 -0
  79. package/gel-core/columns/smallint.d.ts +1 -0
  80. package/gel-core/columns/smallint.js.map +1 -1
  81. package/gel-core/columns/text.cjs.map +1 -1
  82. package/gel-core/columns/text.d.cts +1 -0
  83. package/gel-core/columns/text.d.ts +1 -0
  84. package/gel-core/columns/text.js.map +1 -1
  85. package/gel-core/columns/timestamp.cjs.map +1 -1
  86. package/gel-core/columns/timestamp.d.cts +1 -0
  87. package/gel-core/columns/timestamp.d.ts +1 -0
  88. package/gel-core/columns/timestamp.js.map +1 -1
  89. package/gel-core/columns/timestamptz.cjs.map +1 -1
  90. package/gel-core/columns/timestamptz.d.cts +1 -0
  91. package/gel-core/columns/timestamptz.d.ts +1 -0
  92. package/gel-core/columns/timestamptz.js.map +1 -1
  93. package/gel-core/columns/uuid.cjs.map +1 -1
  94. package/gel-core/columns/uuid.d.cts +1 -0
  95. package/gel-core/columns/uuid.d.ts +1 -0
  96. package/gel-core/columns/uuid.js.map +1 -1
  97. package/gel-core/query-builders/insert.cjs.map +1 -1
  98. package/gel-core/query-builders/insert.d.cts +9 -6
  99. package/gel-core/query-builders/insert.d.ts +9 -6
  100. package/gel-core/query-builders/insert.js.map +1 -1
  101. package/gel-core/query-builders/update.cjs.map +1 -1
  102. package/gel-core/query-builders/update.d.cts +1 -1
  103. package/gel-core/query-builders/update.d.ts +1 -1
  104. package/gel-core/query-builders/update.js.map +1 -1
  105. package/mysql-core/columns/bigint.cjs.map +1 -1
  106. package/mysql-core/columns/bigint.d.cts +2 -0
  107. package/mysql-core/columns/bigint.d.ts +2 -0
  108. package/mysql-core/columns/bigint.js.map +1 -1
  109. package/mysql-core/columns/binary.cjs +1 -0
  110. package/mysql-core/columns/binary.cjs.map +1 -1
  111. package/mysql-core/columns/binary.d.cts +2 -0
  112. package/mysql-core/columns/binary.d.ts +2 -0
  113. package/mysql-core/columns/binary.js +1 -0
  114. package/mysql-core/columns/binary.js.map +1 -1
  115. package/mysql-core/columns/boolean.cjs.map +1 -1
  116. package/mysql-core/columns/boolean.d.cts +1 -0
  117. package/mysql-core/columns/boolean.d.ts +1 -0
  118. package/mysql-core/columns/boolean.js.map +1 -1
  119. package/mysql-core/columns/char.cjs +1 -0
  120. package/mysql-core/columns/char.cjs.map +1 -1
  121. package/mysql-core/columns/char.d.cts +2 -0
  122. package/mysql-core/columns/char.d.ts +2 -0
  123. package/mysql-core/columns/char.js +1 -0
  124. package/mysql-core/columns/char.js.map +1 -1
  125. package/mysql-core/columns/common.cjs.map +1 -1
  126. package/mysql-core/columns/common.d.cts +1 -1
  127. package/mysql-core/columns/common.d.ts +1 -1
  128. package/mysql-core/columns/common.js.map +1 -1
  129. package/mysql-core/columns/custom.cjs.map +1 -1
  130. package/mysql-core/columns/custom.d.cts +1 -0
  131. package/mysql-core/columns/custom.d.ts +1 -0
  132. package/mysql-core/columns/custom.js.map +1 -1
  133. package/mysql-core/columns/date.cjs.map +1 -1
  134. package/mysql-core/columns/date.d.cts +2 -0
  135. package/mysql-core/columns/date.d.ts +2 -0
  136. package/mysql-core/columns/date.js.map +1 -1
  137. package/mysql-core/columns/datetime.cjs.map +1 -1
  138. package/mysql-core/columns/datetime.d.cts +2 -0
  139. package/mysql-core/columns/datetime.d.ts +2 -0
  140. package/mysql-core/columns/datetime.js.map +1 -1
  141. package/mysql-core/columns/decimal.cjs.map +1 -1
  142. package/mysql-core/columns/decimal.d.cts +3 -0
  143. package/mysql-core/columns/decimal.d.ts +3 -0
  144. package/mysql-core/columns/decimal.js.map +1 -1
  145. package/mysql-core/columns/double.cjs.map +1 -1
  146. package/mysql-core/columns/double.d.cts +1 -0
  147. package/mysql-core/columns/double.d.ts +1 -0
  148. package/mysql-core/columns/double.js.map +1 -1
  149. package/mysql-core/columns/enum.cjs.map +1 -1
  150. package/mysql-core/columns/enum.d.cts +2 -0
  151. package/mysql-core/columns/enum.d.ts +2 -0
  152. package/mysql-core/columns/enum.js.map +1 -1
  153. package/mysql-core/columns/float.cjs.map +1 -1
  154. package/mysql-core/columns/float.d.cts +1 -0
  155. package/mysql-core/columns/float.d.ts +1 -0
  156. package/mysql-core/columns/float.js.map +1 -1
  157. package/mysql-core/columns/int.cjs.map +1 -1
  158. package/mysql-core/columns/int.d.cts +1 -0
  159. package/mysql-core/columns/int.d.ts +1 -0
  160. package/mysql-core/columns/int.js.map +1 -1
  161. package/mysql-core/columns/json.cjs.map +1 -1
  162. package/mysql-core/columns/json.d.cts +1 -0
  163. package/mysql-core/columns/json.d.ts +1 -0
  164. package/mysql-core/columns/json.js.map +1 -1
  165. package/mysql-core/columns/mediumint.cjs.map +1 -1
  166. package/mysql-core/columns/mediumint.d.cts +1 -0
  167. package/mysql-core/columns/mediumint.d.ts +1 -0
  168. package/mysql-core/columns/mediumint.js.map +1 -1
  169. package/mysql-core/columns/real.cjs.map +1 -1
  170. package/mysql-core/columns/real.d.cts +1 -0
  171. package/mysql-core/columns/real.d.ts +1 -0
  172. package/mysql-core/columns/real.js.map +1 -1
  173. package/mysql-core/columns/serial.cjs.map +1 -1
  174. package/mysql-core/columns/serial.d.cts +1 -0
  175. package/mysql-core/columns/serial.d.ts +1 -0
  176. package/mysql-core/columns/serial.js.map +1 -1
  177. package/mysql-core/columns/smallint.cjs.map +1 -1
  178. package/mysql-core/columns/smallint.d.cts +1 -0
  179. package/mysql-core/columns/smallint.d.ts +1 -0
  180. package/mysql-core/columns/smallint.js.map +1 -1
  181. package/mysql-core/columns/text.cjs.map +1 -1
  182. package/mysql-core/columns/text.d.cts +1 -0
  183. package/mysql-core/columns/text.d.ts +1 -0
  184. package/mysql-core/columns/text.js.map +1 -1
  185. package/mysql-core/columns/time.cjs.map +1 -1
  186. package/mysql-core/columns/time.d.cts +1 -0
  187. package/mysql-core/columns/time.d.ts +1 -0
  188. package/mysql-core/columns/time.js.map +1 -1
  189. package/mysql-core/columns/timestamp.cjs.map +1 -1
  190. package/mysql-core/columns/timestamp.d.cts +2 -0
  191. package/mysql-core/columns/timestamp.d.ts +2 -0
  192. package/mysql-core/columns/timestamp.js.map +1 -1
  193. package/mysql-core/columns/tinyint.cjs.map +1 -1
  194. package/mysql-core/columns/tinyint.d.cts +1 -0
  195. package/mysql-core/columns/tinyint.d.ts +1 -0
  196. package/mysql-core/columns/tinyint.js.map +1 -1
  197. package/mysql-core/columns/varbinary.cjs.map +1 -1
  198. package/mysql-core/columns/varbinary.d.cts +1 -0
  199. package/mysql-core/columns/varbinary.d.ts +1 -0
  200. package/mysql-core/columns/varbinary.js.map +1 -1
  201. package/mysql-core/columns/varchar.cjs +1 -1
  202. package/mysql-core/columns/varchar.cjs.map +1 -1
  203. package/mysql-core/columns/varchar.d.cts +2 -1
  204. package/mysql-core/columns/varchar.d.ts +2 -1
  205. package/mysql-core/columns/varchar.js +1 -1
  206. package/mysql-core/columns/varchar.js.map +1 -1
  207. package/mysql-core/columns/year.cjs.map +1 -1
  208. package/mysql-core/columns/year.d.cts +1 -0
  209. package/mysql-core/columns/year.d.ts +1 -0
  210. package/mysql-core/columns/year.js.map +1 -1
  211. package/mysql-core/dialect.cjs +0 -3
  212. package/mysql-core/dialect.cjs.map +1 -1
  213. package/mysql-core/dialect.d.cts +0 -1
  214. package/mysql-core/dialect.d.ts +0 -1
  215. package/mysql-core/dialect.js +0 -3
  216. package/mysql-core/dialect.js.map +1 -1
  217. package/mysql-core/query-builders/insert.cjs.map +1 -1
  218. package/mysql-core/query-builders/insert.d.cts +2 -2
  219. package/mysql-core/query-builders/insert.d.ts +2 -2
  220. package/mysql-core/query-builders/insert.js.map +1 -1
  221. package/mysql-core/query-builders/update.cjs.map +1 -1
  222. package/mysql-core/query-builders/update.d.cts +1 -1
  223. package/mysql-core/query-builders/update.d.ts +1 -1
  224. package/mysql-core/query-builders/update.js.map +1 -1
  225. package/mysql-proxy/driver.cjs +2 -2
  226. package/mysql-proxy/driver.cjs.map +1 -1
  227. package/mysql-proxy/driver.d.cts +1 -2
  228. package/mysql-proxy/driver.d.ts +1 -2
  229. package/mysql-proxy/driver.js +2 -2
  230. package/mysql-proxy/driver.js.map +1 -1
  231. package/node-postgres/session.cjs.map +1 -1
  232. package/node-postgres/session.js.map +1 -1
  233. package/package.json +190 -1632
  234. package/pg-core/columns/bigint.cjs.map +1 -1
  235. package/pg-core/columns/bigint.d.cts +2 -0
  236. package/pg-core/columns/bigint.d.ts +2 -0
  237. package/pg-core/columns/bigint.js.map +1 -1
  238. package/pg-core/columns/bigserial.cjs +0 -1
  239. package/pg-core/columns/bigserial.cjs.map +1 -1
  240. package/pg-core/columns/bigserial.d.cts +2 -0
  241. package/pg-core/columns/bigserial.d.ts +2 -0
  242. package/pg-core/columns/bigserial.js +0 -1
  243. package/pg-core/columns/bigserial.js.map +1 -1
  244. package/pg-core/columns/boolean.cjs.map +1 -1
  245. package/pg-core/columns/boolean.d.cts +1 -0
  246. package/pg-core/columns/boolean.d.ts +1 -0
  247. package/pg-core/columns/boolean.js.map +1 -1
  248. package/pg-core/columns/bytea.cjs.map +1 -1
  249. package/pg-core/columns/bytea.d.cts +1 -0
  250. package/pg-core/columns/bytea.d.ts +1 -0
  251. package/pg-core/columns/bytea.js.map +1 -1
  252. package/pg-core/columns/char.cjs +1 -0
  253. package/pg-core/columns/char.cjs.map +1 -1
  254. package/pg-core/columns/char.d.cts +2 -0
  255. package/pg-core/columns/char.d.ts +2 -0
  256. package/pg-core/columns/char.js +1 -0
  257. package/pg-core/columns/char.js.map +1 -1
  258. package/pg-core/columns/cidr.cjs.map +1 -1
  259. package/pg-core/columns/cidr.d.cts +1 -0
  260. package/pg-core/columns/cidr.d.ts +1 -0
  261. package/pg-core/columns/cidr.js.map +1 -1
  262. package/pg-core/columns/common.cjs +10 -11
  263. package/pg-core/columns/common.cjs.map +1 -1
  264. package/pg-core/columns/common.d.cts +2 -3
  265. package/pg-core/columns/common.d.ts +2 -3
  266. package/pg-core/columns/common.js +10 -11
  267. package/pg-core/columns/common.js.map +1 -1
  268. package/pg-core/columns/custom.cjs.map +1 -1
  269. package/pg-core/columns/custom.d.cts +1 -0
  270. package/pg-core/columns/custom.d.ts +1 -0
  271. package/pg-core/columns/custom.js.map +1 -1
  272. package/pg-core/columns/date.cjs.map +1 -1
  273. package/pg-core/columns/date.d.cts +2 -0
  274. package/pg-core/columns/date.d.ts +2 -0
  275. package/pg-core/columns/date.js.map +1 -1
  276. package/pg-core/columns/double-precision.cjs.map +1 -1
  277. package/pg-core/columns/double-precision.d.cts +1 -0
  278. package/pg-core/columns/double-precision.d.ts +1 -0
  279. package/pg-core/columns/double-precision.js.map +1 -1
  280. package/pg-core/columns/enum.cjs.map +1 -1
  281. package/pg-core/columns/enum.d.cts +2 -0
  282. package/pg-core/columns/enum.d.ts +2 -0
  283. package/pg-core/columns/enum.js.map +1 -1
  284. package/pg-core/columns/inet.cjs.map +1 -1
  285. package/pg-core/columns/inet.d.cts +1 -0
  286. package/pg-core/columns/inet.d.ts +1 -0
  287. package/pg-core/columns/inet.js.map +1 -1
  288. package/pg-core/columns/integer.cjs.map +1 -1
  289. package/pg-core/columns/integer.d.cts +1 -0
  290. package/pg-core/columns/integer.d.ts +1 -0
  291. package/pg-core/columns/integer.js.map +1 -1
  292. package/pg-core/columns/interval.cjs.map +1 -1
  293. package/pg-core/columns/interval.d.cts +1 -0
  294. package/pg-core/columns/interval.d.ts +1 -0
  295. package/pg-core/columns/interval.js.map +1 -1
  296. package/pg-core/columns/json.cjs.map +1 -1
  297. package/pg-core/columns/json.d.cts +1 -0
  298. package/pg-core/columns/json.d.ts +1 -0
  299. package/pg-core/columns/json.js.map +1 -1
  300. package/pg-core/columns/jsonb.cjs.map +1 -1
  301. package/pg-core/columns/jsonb.d.cts +1 -0
  302. package/pg-core/columns/jsonb.d.ts +1 -0
  303. package/pg-core/columns/jsonb.js.map +1 -1
  304. package/pg-core/columns/line.cjs +0 -2
  305. package/pg-core/columns/line.cjs.map +1 -1
  306. package/pg-core/columns/line.d.cts +2 -2
  307. package/pg-core/columns/line.d.ts +2 -2
  308. package/pg-core/columns/line.js +0 -2
  309. package/pg-core/columns/line.js.map +1 -1
  310. package/pg-core/columns/macaddr.cjs.map +1 -1
  311. package/pg-core/columns/macaddr.d.cts +1 -0
  312. package/pg-core/columns/macaddr.d.ts +1 -0
  313. package/pg-core/columns/macaddr.js.map +1 -1
  314. package/pg-core/columns/macaddr8.cjs.map +1 -1
  315. package/pg-core/columns/macaddr8.d.cts +1 -0
  316. package/pg-core/columns/macaddr8.d.ts +1 -0
  317. package/pg-core/columns/macaddr8.js.map +1 -1
  318. package/pg-core/columns/numeric.cjs.map +1 -1
  319. package/pg-core/columns/numeric.d.cts +3 -0
  320. package/pg-core/columns/numeric.d.ts +3 -0
  321. package/pg-core/columns/numeric.js.map +1 -1
  322. package/pg-core/columns/point.cjs +0 -2
  323. package/pg-core/columns/point.cjs.map +1 -1
  324. package/pg-core/columns/point.d.cts +2 -2
  325. package/pg-core/columns/point.d.ts +2 -2
  326. package/pg-core/columns/point.js +0 -2
  327. package/pg-core/columns/point.js.map +1 -1
  328. package/pg-core/columns/postgis_extension/geometry.cjs +8 -14
  329. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  330. package/pg-core/columns/postgis_extension/geometry.d.cts +6 -16
  331. package/pg-core/columns/postgis_extension/geometry.d.ts +6 -16
  332. package/pg-core/columns/postgis_extension/geometry.js +8 -14
  333. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  334. package/pg-core/columns/postgis_extension/utils.cjs +3 -3
  335. package/pg-core/columns/postgis_extension/utils.cjs.map +1 -1
  336. package/pg-core/columns/postgis_extension/utils.d.cts +1 -4
  337. package/pg-core/columns/postgis_extension/utils.d.ts +1 -4
  338. package/pg-core/columns/postgis_extension/utils.js +3 -3
  339. package/pg-core/columns/postgis_extension/utils.js.map +1 -1
  340. package/pg-core/columns/real.cjs.map +1 -1
  341. package/pg-core/columns/real.d.cts +1 -0
  342. package/pg-core/columns/real.d.ts +1 -0
  343. package/pg-core/columns/real.js.map +1 -1
  344. package/pg-core/columns/serial.cjs.map +1 -1
  345. package/pg-core/columns/serial.d.cts +1 -0
  346. package/pg-core/columns/serial.d.ts +1 -0
  347. package/pg-core/columns/serial.js.map +1 -1
  348. package/pg-core/columns/smallint.cjs.map +1 -1
  349. package/pg-core/columns/smallint.d.cts +1 -0
  350. package/pg-core/columns/smallint.d.ts +1 -0
  351. package/pg-core/columns/smallint.js.map +1 -1
  352. package/pg-core/columns/smallserial.cjs.map +1 -1
  353. package/pg-core/columns/smallserial.d.cts +1 -0
  354. package/pg-core/columns/smallserial.d.ts +1 -0
  355. package/pg-core/columns/smallserial.js.map +1 -1
  356. package/pg-core/columns/text.cjs.map +1 -1
  357. package/pg-core/columns/text.d.cts +1 -0
  358. package/pg-core/columns/text.d.ts +1 -0
  359. package/pg-core/columns/text.js.map +1 -1
  360. package/pg-core/columns/time.cjs.map +1 -1
  361. package/pg-core/columns/time.d.cts +1 -0
  362. package/pg-core/columns/time.d.ts +1 -0
  363. package/pg-core/columns/time.js.map +1 -1
  364. package/pg-core/columns/timestamp.cjs.map +1 -1
  365. package/pg-core/columns/timestamp.d.cts +2 -0
  366. package/pg-core/columns/timestamp.d.ts +2 -0
  367. package/pg-core/columns/timestamp.js.map +1 -1
  368. package/pg-core/columns/uuid.cjs.map +1 -1
  369. package/pg-core/columns/uuid.d.cts +1 -0
  370. package/pg-core/columns/uuid.d.ts +1 -0
  371. package/pg-core/columns/uuid.js.map +1 -1
  372. package/pg-core/columns/varchar.cjs.map +1 -1
  373. package/pg-core/columns/varchar.d.cts +1 -0
  374. package/pg-core/columns/varchar.d.ts +1 -0
  375. package/pg-core/columns/varchar.js.map +1 -1
  376. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  377. package/pg-core/columns/vector_extension/bit.d.cts +1 -0
  378. package/pg-core/columns/vector_extension/bit.d.ts +1 -0
  379. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  380. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  381. package/pg-core/columns/vector_extension/halfvec.d.cts +1 -0
  382. package/pg-core/columns/vector_extension/halfvec.d.ts +1 -0
  383. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  384. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  385. package/pg-core/columns/vector_extension/sparsevec.d.cts +1 -0
  386. package/pg-core/columns/vector_extension/sparsevec.d.ts +1 -0
  387. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  388. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  389. package/pg-core/columns/vector_extension/vector.d.cts +1 -0
  390. package/pg-core/columns/vector_extension/vector.d.ts +1 -0
  391. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  392. package/pg-core/foreign-keys.cjs +0 -4
  393. package/pg-core/foreign-keys.cjs.map +1 -1
  394. package/pg-core/foreign-keys.d.cts +0 -2
  395. package/pg-core/foreign-keys.d.ts +0 -2
  396. package/pg-core/foreign-keys.js +0 -4
  397. package/pg-core/foreign-keys.js.map +1 -1
  398. package/pg-core/primary-keys.cjs +0 -3
  399. package/pg-core/primary-keys.cjs.map +1 -1
  400. package/pg-core/primary-keys.d.cts +0 -1
  401. package/pg-core/primary-keys.d.ts +0 -1
  402. package/pg-core/primary-keys.js +0 -3
  403. package/pg-core/primary-keys.js.map +1 -1
  404. package/pg-core/query-builders/insert.cjs.map +1 -1
  405. package/pg-core/query-builders/insert.d.cts +9 -6
  406. package/pg-core/query-builders/insert.d.ts +9 -6
  407. package/pg-core/query-builders/insert.js.map +1 -1
  408. package/pg-core/query-builders/update.cjs.map +1 -1
  409. package/pg-core/query-builders/update.d.cts +1 -1
  410. package/pg-core/query-builders/update.d.ts +1 -1
  411. package/pg-core/query-builders/update.js.map +1 -1
  412. package/pg-core/unique-constraint.cjs +0 -5
  413. package/pg-core/unique-constraint.cjs.map +1 -1
  414. package/pg-core/unique-constraint.d.cts +0 -2
  415. package/pg-core/unique-constraint.d.ts +0 -2
  416. package/pg-core/unique-constraint.js +0 -5
  417. package/pg-core/unique-constraint.js.map +1 -1
  418. package/relations.cjs +5 -0
  419. package/relations.cjs.map +1 -1
  420. package/relations.js +5 -0
  421. package/relations.js.map +1 -1
  422. package/singlestore-core/columns/bigint.cjs.map +1 -1
  423. package/singlestore-core/columns/bigint.d.cts +2 -0
  424. package/singlestore-core/columns/bigint.d.ts +2 -0
  425. package/singlestore-core/columns/bigint.js.map +1 -1
  426. package/singlestore-core/columns/binary.cjs +1 -0
  427. package/singlestore-core/columns/binary.cjs.map +1 -1
  428. package/singlestore-core/columns/binary.d.cts +2 -0
  429. package/singlestore-core/columns/binary.d.ts +2 -0
  430. package/singlestore-core/columns/binary.js +1 -0
  431. package/singlestore-core/columns/binary.js.map +1 -1
  432. package/singlestore-core/columns/boolean.cjs.map +1 -1
  433. package/singlestore-core/columns/boolean.d.cts +1 -0
  434. package/singlestore-core/columns/boolean.d.ts +1 -0
  435. package/singlestore-core/columns/boolean.js.map +1 -1
  436. package/singlestore-core/columns/char.cjs +1 -0
  437. package/singlestore-core/columns/char.cjs.map +1 -1
  438. package/singlestore-core/columns/char.d.cts +2 -0
  439. package/singlestore-core/columns/char.d.ts +2 -0
  440. package/singlestore-core/columns/char.js +1 -0
  441. package/singlestore-core/columns/char.js.map +1 -1
  442. package/singlestore-core/columns/common.cjs.map +1 -1
  443. package/singlestore-core/columns/common.d.cts +1 -1
  444. package/singlestore-core/columns/common.d.ts +1 -1
  445. package/singlestore-core/columns/common.js.map +1 -1
  446. package/singlestore-core/columns/custom.cjs.map +1 -1
  447. package/singlestore-core/columns/custom.d.cts +1 -0
  448. package/singlestore-core/columns/custom.d.ts +1 -0
  449. package/singlestore-core/columns/custom.js.map +1 -1
  450. package/singlestore-core/columns/date.cjs.map +1 -1
  451. package/singlestore-core/columns/date.d.cts +2 -0
  452. package/singlestore-core/columns/date.d.ts +2 -0
  453. package/singlestore-core/columns/date.js.map +1 -1
  454. package/singlestore-core/columns/datetime.cjs.map +1 -1
  455. package/singlestore-core/columns/datetime.d.cts +2 -0
  456. package/singlestore-core/columns/datetime.d.ts +2 -0
  457. package/singlestore-core/columns/datetime.js.map +1 -1
  458. package/singlestore-core/columns/decimal.cjs.map +1 -1
  459. package/singlestore-core/columns/decimal.d.cts +3 -0
  460. package/singlestore-core/columns/decimal.d.ts +3 -0
  461. package/singlestore-core/columns/decimal.js.map +1 -1
  462. package/singlestore-core/columns/double.cjs.map +1 -1
  463. package/singlestore-core/columns/double.d.cts +1 -0
  464. package/singlestore-core/columns/double.d.ts +1 -0
  465. package/singlestore-core/columns/double.js.map +1 -1
  466. package/singlestore-core/columns/enum.cjs.map +1 -1
  467. package/singlestore-core/columns/enum.d.cts +1 -0
  468. package/singlestore-core/columns/enum.d.ts +1 -0
  469. package/singlestore-core/columns/enum.js.map +1 -1
  470. package/singlestore-core/columns/float.cjs.map +1 -1
  471. package/singlestore-core/columns/float.d.cts +1 -0
  472. package/singlestore-core/columns/float.d.ts +1 -0
  473. package/singlestore-core/columns/float.js.map +1 -1
  474. package/singlestore-core/columns/int.cjs.map +1 -1
  475. package/singlestore-core/columns/int.d.cts +1 -0
  476. package/singlestore-core/columns/int.d.ts +1 -0
  477. package/singlestore-core/columns/int.js.map +1 -1
  478. package/singlestore-core/columns/json.cjs.map +1 -1
  479. package/singlestore-core/columns/json.d.cts +1 -0
  480. package/singlestore-core/columns/json.d.ts +1 -0
  481. package/singlestore-core/columns/json.js.map +1 -1
  482. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  483. package/singlestore-core/columns/mediumint.d.cts +1 -0
  484. package/singlestore-core/columns/mediumint.d.ts +1 -0
  485. package/singlestore-core/columns/mediumint.js.map +1 -1
  486. package/singlestore-core/columns/real.cjs.map +1 -1
  487. package/singlestore-core/columns/real.d.cts +1 -0
  488. package/singlestore-core/columns/real.d.ts +1 -0
  489. package/singlestore-core/columns/real.js.map +1 -1
  490. package/singlestore-core/columns/serial.cjs.map +1 -1
  491. package/singlestore-core/columns/serial.d.cts +1 -0
  492. package/singlestore-core/columns/serial.d.ts +1 -0
  493. package/singlestore-core/columns/serial.js.map +1 -1
  494. package/singlestore-core/columns/smallint.cjs.map +1 -1
  495. package/singlestore-core/columns/smallint.d.cts +1 -0
  496. package/singlestore-core/columns/smallint.d.ts +1 -0
  497. package/singlestore-core/columns/smallint.js.map +1 -1
  498. package/singlestore-core/columns/text.cjs.map +1 -1
  499. package/singlestore-core/columns/text.d.cts +1 -0
  500. package/singlestore-core/columns/text.d.ts +1 -0
  501. package/singlestore-core/columns/text.js.map +1 -1
  502. package/singlestore-core/columns/time.cjs.map +1 -1
  503. package/singlestore-core/columns/time.d.cts +1 -0
  504. package/singlestore-core/columns/time.d.ts +1 -0
  505. package/singlestore-core/columns/time.js.map +1 -1
  506. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  507. package/singlestore-core/columns/timestamp.d.cts +2 -0
  508. package/singlestore-core/columns/timestamp.d.ts +2 -0
  509. package/singlestore-core/columns/timestamp.js.map +1 -1
  510. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  511. package/singlestore-core/columns/tinyint.d.cts +1 -0
  512. package/singlestore-core/columns/tinyint.d.ts +1 -0
  513. package/singlestore-core/columns/tinyint.js.map +1 -1
  514. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  515. package/singlestore-core/columns/varbinary.d.cts +1 -0
  516. package/singlestore-core/columns/varbinary.d.ts +1 -0
  517. package/singlestore-core/columns/varbinary.js.map +1 -1
  518. package/singlestore-core/columns/varchar.cjs.map +1 -1
  519. package/singlestore-core/columns/varchar.d.cts +1 -0
  520. package/singlestore-core/columns/varchar.d.ts +1 -0
  521. package/singlestore-core/columns/varchar.js.map +1 -1
  522. package/singlestore-core/columns/vector.cjs.map +1 -1
  523. package/singlestore-core/columns/vector.d.cts +2 -0
  524. package/singlestore-core/columns/vector.d.ts +2 -0
  525. package/singlestore-core/columns/vector.js.map +1 -1
  526. package/singlestore-core/columns/year.cjs.map +1 -1
  527. package/singlestore-core/columns/year.d.cts +1 -0
  528. package/singlestore-core/columns/year.d.ts +1 -0
  529. package/singlestore-core/columns/year.js.map +1 -1
  530. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  531. package/singlestore-core/query-builders/insert.d.cts +1 -1
  532. package/singlestore-core/query-builders/insert.d.ts +1 -1
  533. package/singlestore-core/query-builders/insert.js.map +1 -1
  534. package/singlestore-core/query-builders/update.cjs.map +1 -1
  535. package/singlestore-core/query-builders/update.d.cts +1 -1
  536. package/singlestore-core/query-builders/update.d.ts +1 -1
  537. package/singlestore-core/query-builders/update.js.map +1 -1
  538. package/sql/sql.cjs +3 -10
  539. package/sql/sql.cjs.map +1 -1
  540. package/sql/sql.d.cts +1 -1
  541. package/sql/sql.d.ts +1 -1
  542. package/sql/sql.js +3 -10
  543. package/sql/sql.js.map +1 -1
  544. package/sqlite-core/columns/blob.cjs.map +1 -1
  545. package/sqlite-core/columns/blob.d.cts +3 -0
  546. package/sqlite-core/columns/blob.d.ts +3 -0
  547. package/sqlite-core/columns/blob.js.map +1 -1
  548. package/sqlite-core/columns/custom.cjs.map +1 -1
  549. package/sqlite-core/columns/custom.d.cts +1 -0
  550. package/sqlite-core/columns/custom.d.ts +1 -0
  551. package/sqlite-core/columns/custom.js.map +1 -1
  552. package/sqlite-core/columns/integer.cjs.map +1 -1
  553. package/sqlite-core/columns/integer.d.cts +3 -0
  554. package/sqlite-core/columns/integer.d.ts +3 -0
  555. package/sqlite-core/columns/integer.js.map +1 -1
  556. package/sqlite-core/columns/numeric.cjs.map +1 -1
  557. package/sqlite-core/columns/numeric.d.cts +3 -0
  558. package/sqlite-core/columns/numeric.d.ts +3 -0
  559. package/sqlite-core/columns/numeric.js.map +1 -1
  560. package/sqlite-core/columns/real.cjs.map +1 -1
  561. package/sqlite-core/columns/real.d.cts +1 -0
  562. package/sqlite-core/columns/real.d.ts +1 -0
  563. package/sqlite-core/columns/real.js.map +1 -1
  564. package/sqlite-core/columns/text.cjs.map +1 -1
  565. package/sqlite-core/columns/text.d.cts +2 -0
  566. package/sqlite-core/columns/text.d.ts +2 -0
  567. package/sqlite-core/columns/text.js.map +1 -1
  568. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  569. package/sqlite-core/query-builders/insert.d.cts +2 -2
  570. package/sqlite-core/query-builders/insert.d.ts +2 -2
  571. package/sqlite-core/query-builders/insert.js.map +1 -1
  572. package/sqlite-core/query-builders/update.cjs.map +1 -1
  573. package/sqlite-core/query-builders/update.d.cts +1 -1
  574. package/sqlite-core/query-builders/update.d.ts +1 -1
  575. package/sqlite-core/query-builders/update.js.map +1 -1
  576. package/version.cjs +1 -1
  577. package/version.d.cts +1 -1
  578. package/version.d.ts +1 -1
  579. package/version.js +1 -1
  580. package/cockroach/driver.cjs +0 -113
  581. package/cockroach/driver.cjs.map +0 -1
  582. package/cockroach/driver.d.cts +0 -42
  583. package/cockroach/driver.d.ts +0 -42
  584. package/cockroach/driver.js +0 -77
  585. package/cockroach/driver.js.map +0 -1
  586. package/cockroach/index.cjs +0 -25
  587. package/cockroach/index.cjs.map +0 -1
  588. package/cockroach/index.d.cts +0 -2
  589. package/cockroach/index.d.ts +0 -2
  590. package/cockroach/index.js +0 -3
  591. package/cockroach/index.js.map +0 -1
  592. package/cockroach/migrator.cjs +0 -33
  593. package/cockroach/migrator.cjs.map +0 -1
  594. package/cockroach/migrator.d.cts +0 -3
  595. package/cockroach/migrator.d.ts +0 -3
  596. package/cockroach/migrator.js +0 -9
  597. package/cockroach/migrator.js.map +0 -1
  598. package/cockroach/session.cjs +0 -253
  599. package/cockroach/session.cjs.map +0 -1
  600. package/cockroach/session.d.cts +0 -48
  601. package/cockroach/session.d.ts +0 -48
  602. package/cockroach/session.js +0 -217
  603. package/cockroach/session.js.map +0 -1
  604. package/cockroach-core/alias.cjs +0 -32
  605. package/cockroach-core/alias.cjs.map +0 -1
  606. package/cockroach-core/alias.d.cts +0 -4
  607. package/cockroach-core/alias.d.ts +0 -4
  608. package/cockroach-core/alias.js +0 -8
  609. package/cockroach-core/alias.js.map +0 -1
  610. package/cockroach-core/checks.cjs +0 -58
  611. package/cockroach-core/checks.cjs.map +0 -1
  612. package/cockroach-core/checks.d.cts +0 -18
  613. package/cockroach-core/checks.d.ts +0 -18
  614. package/cockroach-core/checks.js +0 -32
  615. package/cockroach-core/checks.js.map +0 -1
  616. package/cockroach-core/columns/all.cjs +0 -81
  617. package/cockroach-core/columns/all.cjs.map +0 -1
  618. package/cockroach-core/columns/all.d.cts +0 -52
  619. package/cockroach-core/columns/all.d.ts +0 -52
  620. package/cockroach-core/columns/all.js +0 -57
  621. package/cockroach-core/columns/all.js.map +0 -1
  622. package/cockroach-core/columns/bigint.cjs +0 -104
  623. package/cockroach-core/columns/bigint.cjs.map +0 -1
  624. package/cockroach-core/columns/bigint.d.cts +0 -37
  625. package/cockroach-core/columns/bigint.d.ts +0 -37
  626. package/cockroach-core/columns/bigint.js +0 -75
  627. package/cockroach-core/columns/bigint.js.map +0 -1
  628. package/cockroach-core/columns/bit.cjs +0 -61
  629. package/cockroach-core/columns/bit.cjs.map +0 -1
  630. package/cockroach-core/columns/bit.d.cts +0 -29
  631. package/cockroach-core/columns/bit.d.ts +0 -29
  632. package/cockroach-core/columns/bit.js +0 -35
  633. package/cockroach-core/columns/bit.js.map +0 -1
  634. package/cockroach-core/columns/bool.cjs +0 -59
  635. package/cockroach-core/columns/bool.cjs.map +0 -1
  636. package/cockroach-core/columns/bool.d.cts +0 -17
  637. package/cockroach-core/columns/bool.d.ts +0 -17
  638. package/cockroach-core/columns/bool.js +0 -32
  639. package/cockroach-core/columns/bool.js.map +0 -1
  640. package/cockroach-core/columns/char.cjs +0 -62
  641. package/cockroach-core/columns/char.cjs.map +0 -1
  642. package/cockroach-core/columns/char.d.cts +0 -31
  643. package/cockroach-core/columns/char.d.ts +0 -31
  644. package/cockroach-core/columns/char.js +0 -36
  645. package/cockroach-core/columns/char.js.map +0 -1
  646. package/cockroach-core/columns/common.cjs +0 -199
  647. package/cockroach-core/columns/common.cjs.map +0 -1
  648. package/cockroach-core/columns/common.d.cts +0 -98
  649. package/cockroach-core/columns/common.d.ts +0 -98
  650. package/cockroach-core/columns/common.js +0 -169
  651. package/cockroach-core/columns/common.js.map +0 -1
  652. package/cockroach-core/columns/custom.cjs +0 -102
  653. package/cockroach-core/columns/custom.cjs.map +0 -1
  654. package/cockroach-core/columns/custom.d.cts +0 -261
  655. package/cockroach-core/columns/custom.d.ts +0 -261
  656. package/cockroach-core/columns/custom.js +0 -76
  657. package/cockroach-core/columns/custom.js.map +0 -1
  658. package/cockroach-core/columns/date.cjs +0 -91
  659. package/cockroach-core/columns/date.cjs.map +0 -1
  660. package/cockroach-core/columns/date.common.cjs +0 -37
  661. package/cockroach-core/columns/date.common.cjs.map +0 -1
  662. package/cockroach-core/columns/date.common.d.cts +0 -7
  663. package/cockroach-core/columns/date.common.d.ts +0 -7
  664. package/cockroach-core/columns/date.common.js +0 -13
  665. package/cockroach-core/columns/date.common.js.map +0 -1
  666. package/cockroach-core/columns/date.d.cts +0 -36
  667. package/cockroach-core/columns/date.d.ts +0 -36
  668. package/cockroach-core/columns/date.js +0 -63
  669. package/cockroach-core/columns/date.js.map +0 -1
  670. package/cockroach-core/columns/decimal.cjs +0 -164
  671. package/cockroach-core/columns/decimal.cjs.map +0 -1
  672. package/cockroach-core/columns/decimal.d.cts +0 -80
  673. package/cockroach-core/columns/decimal.d.ts +0 -80
  674. package/cockroach-core/columns/decimal.js +0 -133
  675. package/cockroach-core/columns/decimal.js.map +0 -1
  676. package/cockroach-core/columns/enum.cjs +0 -127
  677. package/cockroach-core/columns/enum.cjs.map +0 -1
  678. package/cockroach-core/columns/enum.d.cts +0 -64
  679. package/cockroach-core/columns/enum.d.ts +0 -64
  680. package/cockroach-core/columns/enum.js +0 -96
  681. package/cockroach-core/columns/enum.js.map +0 -1
  682. package/cockroach-core/columns/float.cjs +0 -65
  683. package/cockroach-core/columns/float.cjs.map +0 -1
  684. package/cockroach-core/columns/float.d.cts +0 -18
  685. package/cockroach-core/columns/float.d.ts +0 -18
  686. package/cockroach-core/columns/float.js +0 -38
  687. package/cockroach-core/columns/float.js.map +0 -1
  688. package/cockroach-core/columns/geometry.cjs +0 -105
  689. package/cockroach-core/columns/geometry.cjs.map +0 -1
  690. package/cockroach-core/columns/geometry.d.cts +0 -60
  691. package/cockroach-core/columns/geometry.d.ts +0 -60
  692. package/cockroach-core/columns/geometry.js +0 -77
  693. package/cockroach-core/columns/geometry.js.map +0 -1
  694. package/cockroach-core/columns/index.cjs +0 -71
  695. package/cockroach-core/columns/index.cjs.map +0 -1
  696. package/cockroach-core/columns/index.d.cts +0 -25
  697. package/cockroach-core/columns/index.d.ts +0 -25
  698. package/cockroach-core/columns/index.js +0 -26
  699. package/cockroach-core/columns/index.js.map +0 -1
  700. package/cockroach-core/columns/inet.cjs +0 -56
  701. package/cockroach-core/columns/inet.cjs.map +0 -1
  702. package/cockroach-core/columns/inet.d.cts +0 -16
  703. package/cockroach-core/columns/inet.d.ts +0 -16
  704. package/cockroach-core/columns/inet.js +0 -30
  705. package/cockroach-core/columns/inet.js.map +0 -1
  706. package/cockroach-core/columns/int.common.cjs +0 -55
  707. package/cockroach-core/columns/int.common.cjs.map +0 -1
  708. package/cockroach-core/columns/int.common.d.cts +0 -11
  709. package/cockroach-core/columns/int.common.d.ts +0 -11
  710. package/cockroach-core/columns/int.common.js +0 -31
  711. package/cockroach-core/columns/int.common.js.map +0 -1
  712. package/cockroach-core/columns/integer.cjs +0 -63
  713. package/cockroach-core/columns/integer.cjs.map +0 -1
  714. package/cockroach-core/columns/integer.d.cts +0 -18
  715. package/cockroach-core/columns/integer.d.ts +0 -18
  716. package/cockroach-core/columns/integer.js +0 -37
  717. package/cockroach-core/columns/integer.js.map +0 -1
  718. package/cockroach-core/columns/interval.cjs +0 -63
  719. package/cockroach-core/columns/interval.cjs.map +0 -1
  720. package/cockroach-core/columns/interval.d.cts +0 -28
  721. package/cockroach-core/columns/interval.d.ts +0 -28
  722. package/cockroach-core/columns/interval.js +0 -37
  723. package/cockroach-core/columns/interval.js.map +0 -1
  724. package/cockroach-core/columns/jsonb.cjs +0 -72
  725. package/cockroach-core/columns/jsonb.cjs.map +0 -1
  726. package/cockroach-core/columns/jsonb.d.cts +0 -20
  727. package/cockroach-core/columns/jsonb.d.ts +0 -20
  728. package/cockroach-core/columns/jsonb.js +0 -46
  729. package/cockroach-core/columns/jsonb.js.map +0 -1
  730. package/cockroach-core/columns/real.cjs +0 -66
  731. package/cockroach-core/columns/real.cjs.map +0 -1
  732. package/cockroach-core/columns/real.d.cts +0 -21
  733. package/cockroach-core/columns/real.d.ts +0 -21
  734. package/cockroach-core/columns/real.js +0 -40
  735. package/cockroach-core/columns/real.js.map +0 -1
  736. package/cockroach-core/columns/smallint.cjs +0 -68
  737. package/cockroach-core/columns/smallint.cjs.map +0 -1
  738. package/cockroach-core/columns/smallint.d.cts +0 -19
  739. package/cockroach-core/columns/smallint.d.ts +0 -19
  740. package/cockroach-core/columns/smallint.js +0 -41
  741. package/cockroach-core/columns/smallint.js.map +0 -1
  742. package/cockroach-core/columns/string.cjs +0 -67
  743. package/cockroach-core/columns/string.cjs.map +0 -1
  744. package/cockroach-core/columns/string.d.cts +0 -36
  745. package/cockroach-core/columns/string.d.ts +0 -36
  746. package/cockroach-core/columns/string.js +0 -40
  747. package/cockroach-core/columns/string.js.map +0 -1
  748. package/cockroach-core/columns/time.cjs +0 -70
  749. package/cockroach-core/columns/time.cjs.map +0 -1
  750. package/cockroach-core/columns/time.d.cts +0 -31
  751. package/cockroach-core/columns/time.d.ts +0 -31
  752. package/cockroach-core/columns/time.js +0 -44
  753. package/cockroach-core/columns/time.js.map +0 -1
  754. package/cockroach-core/columns/timestamp.cjs +0 -111
  755. package/cockroach-core/columns/timestamp.cjs.map +0 -1
  756. package/cockroach-core/columns/timestamp.d.cts +0 -52
  757. package/cockroach-core/columns/timestamp.d.ts +0 -52
  758. package/cockroach-core/columns/timestamp.js +0 -83
  759. package/cockroach-core/columns/timestamp.js.map +0 -1
  760. package/cockroach-core/columns/utils.cjs +0 -65
  761. package/cockroach-core/columns/utils.cjs.map +0 -1
  762. package/cockroach-core/columns/utils.d.cts +0 -4
  763. package/cockroach-core/columns/utils.d.ts +0 -4
  764. package/cockroach-core/columns/utils.js +0 -41
  765. package/cockroach-core/columns/utils.js.map +0 -1
  766. package/cockroach-core/columns/uuid.cjs +0 -63
  767. package/cockroach-core/columns/uuid.cjs.map +0 -1
  768. package/cockroach-core/columns/uuid.d.cts +0 -20
  769. package/cockroach-core/columns/uuid.d.ts +0 -20
  770. package/cockroach-core/columns/uuid.js +0 -37
  771. package/cockroach-core/columns/uuid.js.map +0 -1
  772. package/cockroach-core/columns/varbit.cjs +0 -59
  773. package/cockroach-core/columns/varbit.cjs.map +0 -1
  774. package/cockroach-core/columns/varbit.d.cts +0 -24
  775. package/cockroach-core/columns/varbit.d.ts +0 -24
  776. package/cockroach-core/columns/varbit.js +0 -33
  777. package/cockroach-core/columns/varbit.js.map +0 -1
  778. package/cockroach-core/columns/varchar.cjs +0 -61
  779. package/cockroach-core/columns/varchar.cjs.map +0 -1
  780. package/cockroach-core/columns/varchar.d.cts +0 -30
  781. package/cockroach-core/columns/varchar.d.ts +0 -30
  782. package/cockroach-core/columns/varchar.js +0 -35
  783. package/cockroach-core/columns/varchar.js.map +0 -1
  784. package/cockroach-core/columns/vector.cjs +0 -65
  785. package/cockroach-core/columns/vector.cjs.map +0 -1
  786. package/cockroach-core/columns/vector.d.cts +0 -26
  787. package/cockroach-core/columns/vector.d.ts +0 -26
  788. package/cockroach-core/columns/vector.js +0 -39
  789. package/cockroach-core/columns/vector.js.map +0 -1
  790. package/cockroach-core/db.cjs +0 -346
  791. package/cockroach-core/db.cjs.map +0 -1
  792. package/cockroach-core/db.d.cts +0 -282
  793. package/cockroach-core/db.d.ts +0 -282
  794. package/cockroach-core/db.js +0 -327
  795. package/cockroach-core/db.js.map +0 -1
  796. package/cockroach-core/dialect.cjs +0 -1146
  797. package/cockroach-core/dialect.cjs.map +0 -1
  798. package/cockroach-core/dialect.d.cts +0 -65
  799. package/cockroach-core/dialect.d.ts +0 -65
  800. package/cockroach-core/dialect.js +0 -1126
  801. package/cockroach-core/dialect.js.map +0 -1
  802. package/cockroach-core/expressions.cjs +0 -49
  803. package/cockroach-core/expressions.cjs.map +0 -1
  804. package/cockroach-core/expressions.d.cts +0 -8
  805. package/cockroach-core/expressions.d.ts +0 -8
  806. package/cockroach-core/expressions.js +0 -22
  807. package/cockroach-core/expressions.js.map +0 -1
  808. package/cockroach-core/foreign-keys.cjs +0 -92
  809. package/cockroach-core/foreign-keys.cjs.map +0 -1
  810. package/cockroach-core/foreign-keys.d.cts +0 -52
  811. package/cockroach-core/foreign-keys.d.ts +0 -52
  812. package/cockroach-core/foreign-keys.js +0 -66
  813. package/cockroach-core/foreign-keys.js.map +0 -1
  814. package/cockroach-core/index.cjs +0 -61
  815. package/cockroach-core/index.cjs.map +0 -1
  816. package/cockroach-core/index.d.cts +0 -20
  817. package/cockroach-core/index.d.ts +0 -20
  818. package/cockroach-core/index.js +0 -21
  819. package/cockroach-core/index.js.map +0 -1
  820. package/cockroach-core/indexes.cjs +0 -137
  821. package/cockroach-core/indexes.cjs.map +0 -1
  822. package/cockroach-core/indexes.d.cts +0 -64
  823. package/cockroach-core/indexes.d.ts +0 -64
  824. package/cockroach-core/indexes.js +0 -109
  825. package/cockroach-core/indexes.js.map +0 -1
  826. package/cockroach-core/policies.cjs +0 -58
  827. package/cockroach-core/policies.cjs.map +0 -1
  828. package/cockroach-core/policies.d.cts +0 -24
  829. package/cockroach-core/policies.d.ts +0 -24
  830. package/cockroach-core/policies.js +0 -33
  831. package/cockroach-core/policies.js.map +0 -1
  832. package/cockroach-core/primary-keys.cjs +0 -64
  833. package/cockroach-core/primary-keys.cjs.map +0 -1
  834. package/cockroach-core/primary-keys.d.cts +0 -23
  835. package/cockroach-core/primary-keys.d.ts +0 -23
  836. package/cockroach-core/primary-keys.js +0 -38
  837. package/cockroach-core/primary-keys.js.map +0 -1
  838. package/cockroach-core/query-builders/count.cjs +0 -79
  839. package/cockroach-core/query-builders/count.cjs.map +0 -1
  840. package/cockroach-core/query-builders/count.d.cts +0 -29
  841. package/cockroach-core/query-builders/count.d.ts +0 -29
  842. package/cockroach-core/query-builders/count.js +0 -55
  843. package/cockroach-core/query-builders/count.js.map +0 -1
  844. package/cockroach-core/query-builders/delete.cjs +0 -124
  845. package/cockroach-core/query-builders/delete.cjs.map +0 -1
  846. package/cockroach-core/query-builders/delete.d.cts +0 -103
  847. package/cockroach-core/query-builders/delete.d.ts +0 -103
  848. package/cockroach-core/query-builders/delete.js +0 -100
  849. package/cockroach-core/query-builders/delete.js.map +0 -1
  850. package/cockroach-core/query-builders/index.cjs +0 -35
  851. package/cockroach-core/query-builders/index.cjs.map +0 -1
  852. package/cockroach-core/query-builders/index.d.cts +0 -7
  853. package/cockroach-core/query-builders/index.d.ts +0 -7
  854. package/cockroach-core/query-builders/index.js +0 -8
  855. package/cockroach-core/query-builders/index.js.map +0 -1
  856. package/cockroach-core/query-builders/insert.cjs +0 -213
  857. package/cockroach-core/query-builders/insert.cjs.map +0 -1
  858. package/cockroach-core/query-builders/insert.d.cts +0 -168
  859. package/cockroach-core/query-builders/insert.d.ts +0 -168
  860. package/cockroach-core/query-builders/insert.js +0 -188
  861. package/cockroach-core/query-builders/insert.js.map +0 -1
  862. package/cockroach-core/query-builders/query-builder.cjs +0 -118
  863. package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
  864. package/cockroach-core/query-builders/query-builder.d.cts +0 -37
  865. package/cockroach-core/query-builders/query-builder.d.ts +0 -37
  866. package/cockroach-core/query-builders/query-builder.js +0 -94
  867. package/cockroach-core/query-builders/query-builder.js.map +0 -1
  868. package/cockroach-core/query-builders/query.cjs +0 -145
  869. package/cockroach-core/query-builders/query.cjs.map +0 -1
  870. package/cockroach-core/query-builders/query.d.cts +0 -47
  871. package/cockroach-core/query-builders/query.d.ts +0 -47
  872. package/cockroach-core/query-builders/query.js +0 -122
  873. package/cockroach-core/query-builders/query.js.map +0 -1
  874. package/cockroach-core/query-builders/raw.cjs +0 -57
  875. package/cockroach-core/query-builders/raw.cjs.map +0 -1
  876. package/cockroach-core/query-builders/raw.d.cts +0 -22
  877. package/cockroach-core/query-builders/raw.d.ts +0 -22
  878. package/cockroach-core/query-builders/raw.js +0 -33
  879. package/cockroach-core/query-builders/raw.js.map +0 -1
  880. package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
  881. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
  882. package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
  883. package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
  884. package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
  885. package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
  886. package/cockroach-core/query-builders/select.cjs +0 -848
  887. package/cockroach-core/query-builders/select.cjs.map +0 -1
  888. package/cockroach-core/query-builders/select.d.cts +0 -787
  889. package/cockroach-core/query-builders/select.d.ts +0 -787
  890. package/cockroach-core/query-builders/select.js +0 -821
  891. package/cockroach-core/query-builders/select.js.map +0 -1
  892. package/cockroach-core/query-builders/select.types.cjs +0 -17
  893. package/cockroach-core/query-builders/select.types.cjs.map +0 -1
  894. package/cockroach-core/query-builders/select.types.d.cts +0 -140
  895. package/cockroach-core/query-builders/select.types.d.ts +0 -140
  896. package/cockroach-core/query-builders/select.types.js +0 -1
  897. package/cockroach-core/query-builders/select.types.js.map +0 -1
  898. package/cockroach-core/query-builders/update.cjs +0 -240
  899. package/cockroach-core/query-builders/update.cjs.map +0 -1
  900. package/cockroach-core/query-builders/update.d.cts +0 -170
  901. package/cockroach-core/query-builders/update.d.ts +0 -170
  902. package/cockroach-core/query-builders/update.js +0 -219
  903. package/cockroach-core/query-builders/update.js.map +0 -1
  904. package/cockroach-core/roles.cjs +0 -54
  905. package/cockroach-core/roles.cjs.map +0 -1
  906. package/cockroach-core/roles.d.cts +0 -12
  907. package/cockroach-core/roles.d.ts +0 -12
  908. package/cockroach-core/roles.js +0 -29
  909. package/cockroach-core/roles.js.map +0 -1
  910. package/cockroach-core/schema.cjs +0 -80
  911. package/cockroach-core/schema.cjs.map +0 -1
  912. package/cockroach-core/schema.d.cts +0 -22
  913. package/cockroach-core/schema.d.ts +0 -22
  914. package/cockroach-core/schema.js +0 -60
  915. package/cockroach-core/schema.js.map +0 -1
  916. package/cockroach-core/sequence.cjs +0 -52
  917. package/cockroach-core/sequence.cjs.map +0 -1
  918. package/cockroach-core/sequence.d.cts +0 -17
  919. package/cockroach-core/sequence.d.ts +0 -17
  920. package/cockroach-core/sequence.js +0 -25
  921. package/cockroach-core/sequence.js.map +0 -1
  922. package/cockroach-core/session.cjs +0 -120
  923. package/cockroach-core/session.cjs.map +0 -1
  924. package/cockroach-core/session.d.cts +0 -62
  925. package/cockroach-core/session.d.ts +0 -62
  926. package/cockroach-core/session.js +0 -94
  927. package/cockroach-core/session.js.map +0 -1
  928. package/cockroach-core/subquery.cjs +0 -17
  929. package/cockroach-core/subquery.cjs.map +0 -1
  930. package/cockroach-core/subquery.d.cts +0 -18
  931. package/cockroach-core/subquery.d.ts +0 -18
  932. package/cockroach-core/subquery.js +0 -1
  933. package/cockroach-core/subquery.js.map +0 -1
  934. package/cockroach-core/table.cjs +0 -100
  935. package/cockroach-core/table.cjs.map +0 -1
  936. package/cockroach-core/table.d.cts +0 -37
  937. package/cockroach-core/table.d.ts +0 -37
  938. package/cockroach-core/table.js +0 -73
  939. package/cockroach-core/table.js.map +0 -1
  940. package/cockroach-core/unique-constraint.cjs +0 -77
  941. package/cockroach-core/unique-constraint.cjs.map +0 -1
  942. package/cockroach-core/unique-constraint.d.cts +0 -23
  943. package/cockroach-core/unique-constraint.d.ts +0 -23
  944. package/cockroach-core/unique-constraint.js +0 -50
  945. package/cockroach-core/unique-constraint.js.map +0 -1
  946. package/cockroach-core/utils/array.cjs +0 -106
  947. package/cockroach-core/utils/array.cjs.map +0 -1
  948. package/cockroach-core/utils/array.d.cts +0 -3
  949. package/cockroach-core/utils/array.d.ts +0 -3
  950. package/cockroach-core/utils/array.js +0 -80
  951. package/cockroach-core/utils/array.js.map +0 -1
  952. package/cockroach-core/utils/index.cjs +0 -23
  953. package/cockroach-core/utils/index.cjs.map +0 -1
  954. package/cockroach-core/utils/index.d.cts +0 -1
  955. package/cockroach-core/utils/index.d.ts +0 -1
  956. package/cockroach-core/utils/index.js +0 -2
  957. package/cockroach-core/utils/index.js.map +0 -1
  958. package/cockroach-core/utils.cjs +0 -98
  959. package/cockroach-core/utils.cjs.map +0 -1
  960. package/cockroach-core/utils.d.cts +0 -47
  961. package/cockroach-core/utils.d.ts +0 -47
  962. package/cockroach-core/utils.js +0 -72
  963. package/cockroach-core/utils.js.map +0 -1
  964. package/cockroach-core/view-base.cjs +0 -33
  965. package/cockroach-core/view-base.cjs.map +0 -1
  966. package/cockroach-core/view-base.d.cts +0 -8
  967. package/cockroach-core/view-base.d.ts +0 -8
  968. package/cockroach-core/view-base.js +0 -9
  969. package/cockroach-core/view-base.js.map +0 -1
  970. package/cockroach-core/view.cjs +0 -271
  971. package/cockroach-core/view.cjs.map +0 -1
  972. package/cockroach-core/view.d.cts +0 -106
  973. package/cockroach-core/view.d.ts +0 -106
  974. package/cockroach-core/view.js +0 -233
  975. package/cockroach-core/view.js.map +0 -1
  976. package/mssql-core/alias.cjs +0 -32
  977. package/mssql-core/alias.cjs.map +0 -1
  978. package/mssql-core/alias.d.cts +0 -4
  979. package/mssql-core/alias.d.ts +0 -4
  980. package/mssql-core/alias.js +0 -8
  981. package/mssql-core/alias.js.map +0 -1
  982. package/mssql-core/checks.cjs +0 -58
  983. package/mssql-core/checks.cjs.map +0 -1
  984. package/mssql-core/checks.d.cts +0 -18
  985. package/mssql-core/checks.d.ts +0 -18
  986. package/mssql-core/checks.js +0 -32
  987. package/mssql-core/checks.js.map +0 -1
  988. package/mssql-core/columns/all.cjs +0 -74
  989. package/mssql-core/columns/all.cjs.map +0 -1
  990. package/mssql-core/columns/all.d.cts +0 -45
  991. package/mssql-core/columns/all.d.ts +0 -45
  992. package/mssql-core/columns/all.js +0 -50
  993. package/mssql-core/columns/all.js.map +0 -1
  994. package/mssql-core/columns/bigint.cjs +0 -72
  995. package/mssql-core/columns/bigint.cjs.map +0 -1
  996. package/mssql-core/columns/bigint.d.cts +0 -25
  997. package/mssql-core/columns/bigint.d.ts +0 -25
  998. package/mssql-core/columns/bigint.js +0 -46
  999. package/mssql-core/columns/bigint.js.map +0 -1
  1000. package/mssql-core/columns/binary.cjs +0 -57
  1001. package/mssql-core/columns/binary.cjs.map +0 -1
  1002. package/mssql-core/columns/binary.d.cts +0 -24
  1003. package/mssql-core/columns/binary.d.ts +0 -24
  1004. package/mssql-core/columns/binary.js +0 -31
  1005. package/mssql-core/columns/binary.js.map +0 -1
  1006. package/mssql-core/columns/bit.cjs +0 -54
  1007. package/mssql-core/columns/bit.cjs.map +0 -1
  1008. package/mssql-core/columns/bit.d.cts +0 -17
  1009. package/mssql-core/columns/bit.d.ts +0 -17
  1010. package/mssql-core/columns/bit.js +0 -28
  1011. package/mssql-core/columns/bit.js.map +0 -1
  1012. package/mssql-core/columns/char.cjs +0 -73
  1013. package/mssql-core/columns/char.cjs.map +0 -1
  1014. package/mssql-core/columns/char.d.cts +0 -29
  1015. package/mssql-core/columns/char.d.ts +0 -29
  1016. package/mssql-core/columns/char.js +0 -46
  1017. package/mssql-core/columns/char.js.map +0 -1
  1018. package/mssql-core/columns/common.cjs +0 -112
  1019. package/mssql-core/columns/common.cjs.map +0 -1
  1020. package/mssql-core/columns/common.d.cts +0 -57
  1021. package/mssql-core/columns/common.d.ts +0 -57
  1022. package/mssql-core/columns/common.js +0 -85
  1023. package/mssql-core/columns/common.js.map +0 -1
  1024. package/mssql-core/columns/custom.cjs +0 -105
  1025. package/mssql-core/columns/custom.cjs.map +0 -1
  1026. package/mssql-core/columns/custom.d.cts +0 -261
  1027. package/mssql-core/columns/custom.d.ts +0 -261
  1028. package/mssql-core/columns/custom.js +0 -79
  1029. package/mssql-core/columns/custom.js.map +0 -1
  1030. package/mssql-core/columns/date.cjs +0 -94
  1031. package/mssql-core/columns/date.cjs.map +0 -1
  1032. package/mssql-core/columns/date.common.cjs +0 -37
  1033. package/mssql-core/columns/date.common.cjs.map +0 -1
  1034. package/mssql-core/columns/date.common.d.cts +0 -12
  1035. package/mssql-core/columns/date.common.d.ts +0 -12
  1036. package/mssql-core/columns/date.common.js +0 -13
  1037. package/mssql-core/columns/date.common.js.map +0 -1
  1038. package/mssql-core/columns/date.d.cts +0 -39
  1039. package/mssql-core/columns/date.d.ts +0 -39
  1040. package/mssql-core/columns/date.js +0 -66
  1041. package/mssql-core/columns/date.js.map +0 -1
  1042. package/mssql-core/columns/datetime.cjs +0 -94
  1043. package/mssql-core/columns/datetime.cjs.map +0 -1
  1044. package/mssql-core/columns/datetime.d.cts +0 -38
  1045. package/mssql-core/columns/datetime.d.ts +0 -38
  1046. package/mssql-core/columns/datetime.js +0 -66
  1047. package/mssql-core/columns/datetime.js.map +0 -1
  1048. package/mssql-core/columns/datetime2.cjs +0 -102
  1049. package/mssql-core/columns/datetime2.cjs.map +0 -1
  1050. package/mssql-core/columns/datetime2.d.cts +0 -38
  1051. package/mssql-core/columns/datetime2.d.ts +0 -38
  1052. package/mssql-core/columns/datetime2.js +0 -74
  1053. package/mssql-core/columns/datetime2.js.map +0 -1
  1054. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  1055. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  1056. package/mssql-core/columns/datetimeoffset.d.cts +0 -39
  1057. package/mssql-core/columns/datetimeoffset.d.ts +0 -39
  1058. package/mssql-core/columns/datetimeoffset.js +0 -74
  1059. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  1060. package/mssql-core/columns/decimal.cjs +0 -146
  1061. package/mssql-core/columns/decimal.cjs.map +0 -1
  1062. package/mssql-core/columns/decimal.d.cts +0 -58
  1063. package/mssql-core/columns/decimal.d.ts +0 -58
  1064. package/mssql-core/columns/decimal.js +0 -116
  1065. package/mssql-core/columns/decimal.js.map +0 -1
  1066. package/mssql-core/columns/float.cjs +0 -58
  1067. package/mssql-core/columns/float.cjs.map +0 -1
  1068. package/mssql-core/columns/float.d.cts +0 -21
  1069. package/mssql-core/columns/float.d.ts +0 -21
  1070. package/mssql-core/columns/float.js +0 -32
  1071. package/mssql-core/columns/float.js.map +0 -1
  1072. package/mssql-core/columns/index.cjs +0 -63
  1073. package/mssql-core/columns/index.cjs.map +0 -1
  1074. package/mssql-core/columns/index.d.cts +0 -21
  1075. package/mssql-core/columns/index.d.ts +0 -21
  1076. package/mssql-core/columns/index.js +0 -22
  1077. package/mssql-core/columns/index.js.map +0 -1
  1078. package/mssql-core/columns/int.cjs +0 -53
  1079. package/mssql-core/columns/int.cjs.map +0 -1
  1080. package/mssql-core/columns/int.d.cts +0 -16
  1081. package/mssql-core/columns/int.d.ts +0 -16
  1082. package/mssql-core/columns/int.js +0 -27
  1083. package/mssql-core/columns/int.js.map +0 -1
  1084. package/mssql-core/columns/numeric.cjs +0 -146
  1085. package/mssql-core/columns/numeric.cjs.map +0 -1
  1086. package/mssql-core/columns/numeric.d.cts +0 -58
  1087. package/mssql-core/columns/numeric.d.ts +0 -58
  1088. package/mssql-core/columns/numeric.js +0 -116
  1089. package/mssql-core/columns/numeric.js.map +0 -1
  1090. package/mssql-core/columns/real.cjs +0 -53
  1091. package/mssql-core/columns/real.cjs.map +0 -1
  1092. package/mssql-core/columns/real.d.cts +0 -16
  1093. package/mssql-core/columns/real.d.ts +0 -16
  1094. package/mssql-core/columns/real.js +0 -27
  1095. package/mssql-core/columns/real.js.map +0 -1
  1096. package/mssql-core/columns/smallint.cjs +0 -62
  1097. package/mssql-core/columns/smallint.cjs.map +0 -1
  1098. package/mssql-core/columns/smallint.d.cts +0 -17
  1099. package/mssql-core/columns/smallint.d.ts +0 -17
  1100. package/mssql-core/columns/smallint.js +0 -36
  1101. package/mssql-core/columns/smallint.js.map +0 -1
  1102. package/mssql-core/columns/text.cjs +0 -68
  1103. package/mssql-core/columns/text.cjs.map +0 -1
  1104. package/mssql-core/columns/text.d.cts +0 -36
  1105. package/mssql-core/columns/text.d.ts +0 -36
  1106. package/mssql-core/columns/text.js +0 -41
  1107. package/mssql-core/columns/text.js.map +0 -1
  1108. package/mssql-core/columns/time.cjs +0 -90
  1109. package/mssql-core/columns/time.cjs.map +0 -1
  1110. package/mssql-core/columns/time.d.cts +0 -37
  1111. package/mssql-core/columns/time.d.ts +0 -37
  1112. package/mssql-core/columns/time.js +0 -62
  1113. package/mssql-core/columns/time.js.map +0 -1
  1114. package/mssql-core/columns/tinyint.cjs +0 -62
  1115. package/mssql-core/columns/tinyint.cjs.map +0 -1
  1116. package/mssql-core/columns/tinyint.d.cts +0 -17
  1117. package/mssql-core/columns/tinyint.d.ts +0 -17
  1118. package/mssql-core/columns/tinyint.js +0 -36
  1119. package/mssql-core/columns/tinyint.js.map +0 -1
  1120. package/mssql-core/columns/varbinary.cjs +0 -61
  1121. package/mssql-core/columns/varbinary.cjs.map +0 -1
  1122. package/mssql-core/columns/varbinary.d.cts +0 -23
  1123. package/mssql-core/columns/varbinary.d.ts +0 -23
  1124. package/mssql-core/columns/varbinary.js +0 -35
  1125. package/mssql-core/columns/varbinary.js.map +0 -1
  1126. package/mssql-core/columns/varchar.cjs +0 -117
  1127. package/mssql-core/columns/varchar.cjs.map +0 -1
  1128. package/mssql-core/columns/varchar.d.cts +0 -59
  1129. package/mssql-core/columns/varchar.d.ts +0 -59
  1130. package/mssql-core/columns/varchar.js +0 -88
  1131. package/mssql-core/columns/varchar.js.map +0 -1
  1132. package/mssql-core/db.cjs +0 -254
  1133. package/mssql-core/db.cjs.map +0 -1
  1134. package/mssql-core/db.d.cts +0 -228
  1135. package/mssql-core/db.d.ts +0 -228
  1136. package/mssql-core/db.js +0 -235
  1137. package/mssql-core/db.js.map +0 -1
  1138. package/mssql-core/dialect.cjs +0 -633
  1139. package/mssql-core/dialect.cjs.map +0 -1
  1140. package/mssql-core/dialect.d.cts +0 -58
  1141. package/mssql-core/dialect.d.ts +0 -58
  1142. package/mssql-core/dialect.js +0 -599
  1143. package/mssql-core/dialect.js.map +0 -1
  1144. package/mssql-core/expressions.cjs +0 -49
  1145. package/mssql-core/expressions.cjs.map +0 -1
  1146. package/mssql-core/expressions.d.cts +0 -8
  1147. package/mssql-core/expressions.d.ts +0 -8
  1148. package/mssql-core/expressions.js +0 -22
  1149. package/mssql-core/expressions.js.map +0 -1
  1150. package/mssql-core/foreign-keys.cjs +0 -91
  1151. package/mssql-core/foreign-keys.cjs.map +0 -1
  1152. package/mssql-core/foreign-keys.d.cts +0 -51
  1153. package/mssql-core/foreign-keys.d.ts +0 -51
  1154. package/mssql-core/foreign-keys.js +0 -65
  1155. package/mssql-core/foreign-keys.js.map +0 -1
  1156. package/mssql-core/index.cjs +0 -55
  1157. package/mssql-core/index.cjs.map +0 -1
  1158. package/mssql-core/index.d.cts +0 -17
  1159. package/mssql-core/index.d.ts +0 -17
  1160. package/mssql-core/index.js +0 -18
  1161. package/mssql-core/index.js.map +0 -1
  1162. package/mssql-core/indexes.cjs +0 -80
  1163. package/mssql-core/indexes.cjs.map +0 -1
  1164. package/mssql-core/indexes.d.cts +0 -49
  1165. package/mssql-core/indexes.d.ts +0 -49
  1166. package/mssql-core/indexes.js +0 -52
  1167. package/mssql-core/indexes.js.map +0 -1
  1168. package/mssql-core/primary-keys.cjs +0 -64
  1169. package/mssql-core/primary-keys.cjs.map +0 -1
  1170. package/mssql-core/primary-keys.d.cts +0 -23
  1171. package/mssql-core/primary-keys.d.ts +0 -23
  1172. package/mssql-core/primary-keys.js +0 -38
  1173. package/mssql-core/primary-keys.js.map +0 -1
  1174. package/mssql-core/query-builders/delete.cjs +0 -107
  1175. package/mssql-core/query-builders/delete.cjs.map +0 -1
  1176. package/mssql-core/query-builders/delete.d.cts +0 -98
  1177. package/mssql-core/query-builders/delete.d.ts +0 -98
  1178. package/mssql-core/query-builders/delete.js +0 -83
  1179. package/mssql-core/query-builders/delete.js.map +0 -1
  1180. package/mssql-core/query-builders/index.cjs +0 -33
  1181. package/mssql-core/query-builders/index.cjs.map +0 -1
  1182. package/mssql-core/query-builders/index.d.cts +0 -6
  1183. package/mssql-core/query-builders/index.d.ts +0 -6
  1184. package/mssql-core/query-builders/index.js +0 -7
  1185. package/mssql-core/query-builders/index.js.map +0 -1
  1186. package/mssql-core/query-builders/insert.cjs +0 -105
  1187. package/mssql-core/query-builders/insert.cjs.map +0 -1
  1188. package/mssql-core/query-builders/insert.d.cts +0 -79
  1189. package/mssql-core/query-builders/insert.d.ts +0 -79
  1190. package/mssql-core/query-builders/insert.js +0 -80
  1191. package/mssql-core/query-builders/insert.js.map +0 -1
  1192. package/mssql-core/query-builders/query-builder.cjs +0 -95
  1193. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  1194. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  1195. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  1196. package/mssql-core/query-builders/query-builder.js +0 -71
  1197. package/mssql-core/query-builders/query-builder.js.map +0 -1
  1198. package/mssql-core/query-builders/query.cjs +0 -126
  1199. package/mssql-core/query-builders/query.cjs.map +0 -1
  1200. package/mssql-core/query-builders/query.d.cts +0 -42
  1201. package/mssql-core/query-builders/query.d.ts +0 -42
  1202. package/mssql-core/query-builders/query.js +0 -103
  1203. package/mssql-core/query-builders/query.js.map +0 -1
  1204. package/mssql-core/query-builders/select.cjs +0 -679
  1205. package/mssql-core/query-builders/select.cjs.map +0 -1
  1206. package/mssql-core/query-builders/select.d.cts +0 -549
  1207. package/mssql-core/query-builders/select.d.ts +0 -549
  1208. package/mssql-core/query-builders/select.js +0 -649
  1209. package/mssql-core/query-builders/select.js.map +0 -1
  1210. package/mssql-core/query-builders/select.types.cjs +0 -17
  1211. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  1212. package/mssql-core/query-builders/select.types.d.cts +0 -142
  1213. package/mssql-core/query-builders/select.types.d.ts +0 -142
  1214. package/mssql-core/query-builders/select.types.js +0 -1
  1215. package/mssql-core/query-builders/select.types.js.map +0 -1
  1216. package/mssql-core/query-builders/update.cjs +0 -138
  1217. package/mssql-core/query-builders/update.cjs.map +0 -1
  1218. package/mssql-core/query-builders/update.d.cts +0 -142
  1219. package/mssql-core/query-builders/update.d.ts +0 -142
  1220. package/mssql-core/query-builders/update.js +0 -113
  1221. package/mssql-core/query-builders/update.js.map +0 -1
  1222. package/mssql-core/schema.cjs +0 -51
  1223. package/mssql-core/schema.cjs.map +0 -1
  1224. package/mssql-core/schema.d.cts +0 -22
  1225. package/mssql-core/schema.d.ts +0 -22
  1226. package/mssql-core/schema.js +0 -25
  1227. package/mssql-core/schema.js.map +0 -1
  1228. package/mssql-core/session.cjs +0 -74
  1229. package/mssql-core/session.cjs.map +0 -1
  1230. package/mssql-core/session.d.cts +0 -63
  1231. package/mssql-core/session.d.ts +0 -63
  1232. package/mssql-core/session.js +0 -48
  1233. package/mssql-core/session.js.map +0 -1
  1234. package/mssql-core/subquery.cjs +0 -17
  1235. package/mssql-core/subquery.cjs.map +0 -1
  1236. package/mssql-core/subquery.d.cts +0 -18
  1237. package/mssql-core/subquery.d.ts +0 -18
  1238. package/mssql-core/subquery.js +0 -1
  1239. package/mssql-core/subquery.js.map +0 -1
  1240. package/mssql-core/table.cjs +0 -81
  1241. package/mssql-core/table.cjs.map +0 -1
  1242. package/mssql-core/table.d.cts +0 -40
  1243. package/mssql-core/table.d.ts +0 -40
  1244. package/mssql-core/table.js +0 -55
  1245. package/mssql-core/table.js.map +0 -1
  1246. package/mssql-core/unique-constraint.cjs +0 -76
  1247. package/mssql-core/unique-constraint.cjs.map +0 -1
  1248. package/mssql-core/unique-constraint.d.cts +0 -23
  1249. package/mssql-core/unique-constraint.d.ts +0 -23
  1250. package/mssql-core/unique-constraint.js +0 -49
  1251. package/mssql-core/unique-constraint.js.map +0 -1
  1252. package/mssql-core/utils.cjs +0 -85
  1253. package/mssql-core/utils.cjs.map +0 -1
  1254. package/mssql-core/utils.d.cts +0 -31
  1255. package/mssql-core/utils.d.ts +0 -31
  1256. package/mssql-core/utils.js +0 -60
  1257. package/mssql-core/utils.js.map +0 -1
  1258. package/mssql-core/view-base.cjs +0 -33
  1259. package/mssql-core/view-base.cjs.map +0 -1
  1260. package/mssql-core/view-base.d.cts +0 -9
  1261. package/mssql-core/view-base.d.ts +0 -9
  1262. package/mssql-core/view-base.js +0 -9
  1263. package/mssql-core/view-base.js.map +0 -1
  1264. package/mssql-core/view-common.cjs +0 -29
  1265. package/mssql-core/view-common.cjs.map +0 -1
  1266. package/mssql-core/view-common.d.cts +0 -1
  1267. package/mssql-core/view-common.d.ts +0 -1
  1268. package/mssql-core/view-common.js +0 -5
  1269. package/mssql-core/view-common.js.map +0 -1
  1270. package/mssql-core/view.cjs +0 -154
  1271. package/mssql-core/view.cjs.map +0 -1
  1272. package/mssql-core/view.d.cts +0 -63
  1273. package/mssql-core/view.d.ts +0 -63
  1274. package/mssql-core/view.js +0 -125
  1275. package/mssql-core/view.js.map +0 -1
  1276. package/node-mssql/driver.cjs +0 -117
  1277. package/node-mssql/driver.cjs.map +0 -1
  1278. package/node-mssql/driver.d.cts +0 -46
  1279. package/node-mssql/driver.d.ts +0 -46
  1280. package/node-mssql/driver.js +0 -81
  1281. package/node-mssql/driver.js.map +0 -1
  1282. package/node-mssql/index.cjs +0 -25
  1283. package/node-mssql/index.cjs.map +0 -1
  1284. package/node-mssql/index.d.cts +0 -2
  1285. package/node-mssql/index.d.ts +0 -2
  1286. package/node-mssql/index.js +0 -3
  1287. package/node-mssql/index.js.map +0 -1
  1288. package/node-mssql/migrator.cjs +0 -33
  1289. package/node-mssql/migrator.cjs.map +0 -1
  1290. package/node-mssql/migrator.d.cts +0 -3
  1291. package/node-mssql/migrator.d.ts +0 -3
  1292. package/node-mssql/migrator.js +0 -9
  1293. package/node-mssql/migrator.js.map +0 -1
  1294. package/node-mssql/pool.cjs +0 -54
  1295. package/node-mssql/pool.cjs.map +0 -1
  1296. package/node-mssql/pool.d.cts +0 -8
  1297. package/node-mssql/pool.d.ts +0 -8
  1298. package/node-mssql/pool.js +0 -20
  1299. package/node-mssql/pool.js.map +0 -1
  1300. package/node-mssql/session.cjs +0 -256
  1301. package/node-mssql/session.cjs.map +0 -1
  1302. package/node-mssql/session.d.cts +0 -48
  1303. package/node-mssql/session.d.ts +0 -48
  1304. package/node-mssql/session.js +0 -224
  1305. package/node-mssql/session.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/gel-core/query-builders/update.ts"],"sourcesContent":["import type { GetColumnData } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport { GelTable } from '~/gel-core/table.ts';\nimport type {\n\tAppendToNullabilityMap,\n\tAppendToResult,\n\tGetSelectTableName,\n\tGetSelectTableSelection,\n\tJoinNullability,\n\tJoinType,\n\tSelectMode,\n\tSelectResult,\n} from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport { SelectionProxyHandler } from '~/selection-proxy.ts';\nimport { type ColumnsSelection, type Query, SQL, type SQLWrapper } from '~/sql/sql.ts';\nimport { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table } from '~/table.ts';\nimport {\n\ttype Assume,\n\tgetTableLikeName,\n\tmapUpdateSet,\n\ttype NeonAuthToken,\n\torderSelectedFields,\n\ttype UpdateSet,\n} from '~/utils.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport type { GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { GelViewBase } from '../view-base.ts';\nimport type { GelSelectJoinConfig, SelectedFields, SelectedFieldsOrdered } from './select.types.ts';\n\nexport interface GelUpdateConfig {\n\twhere?: SQL | undefined;\n\tset: UpdateSet;\n\ttable: GelTable;\n\tfrom?: GelTable | Subquery | GelViewBase | SQL;\n\tjoins: GelSelectJoinConfig[];\n\treturning?: SelectedFieldsOrdered;\n\twithList?: Subquery[];\n}\n\nexport type GelUpdateSetSource<\n\tTTable extends GelTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> =\n\t& {\n\t\t[Key in keyof TModel & string]?:\n\t\t\t| GetColumnData<TTable['_']['columns'][Key]>\n\t\t\t| SQL\n\t\t\t| GelColumn;\n\t}\n\t& {};\n\nexport class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {\n\tstatic readonly [entityKind]: string = 'GelUpdateBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly table: TTable;\n\t};\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\tsetToken(token: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tset(\n\t\tvalues: GelUpdateSetSource<TTable>,\n\t): GelUpdateWithout<GelUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'> {\n\t\treturn new GelUpdateBase<TTable, TQueryResult>(\n\t\t\tthis.table,\n\t\t\tmapUpdateSet(this.table, values),\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t);\n\t}\n}\n\nexport type GelUpdateWithout<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tK extends keyof T & string,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tT['_']['returning'],\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods'] | K\n\t>,\n\tT['_']['excludedMethods'] | K\n>;\n\nexport type GelUpdateWithJoins<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tTFrom,\n\t\tT['_']['returning'],\n\t\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TFrom>, 'inner'>,\n\t\t[...T['_']['joins'], {\n\t\t\tname: GetSelectTableName<TFrom>;\n\t\t\tjoinType: 'inner';\n\t\t\ttable: TFrom;\n\t\t}],\n\t\tTDynamic,\n\t\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n\t>,\n\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n>;\n\nexport type GelUpdateJoinFn<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n> = <\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n>(\n\ttable: TJoinedTable,\n\ton:\n\t\t| (\n\t\t\t(\n\t\t\t\tupdateTable: T['_']['table']['_']['columns'],\n\t\t\t\tfrom: T['_']['from'] extends GelTable ? T['_']['from']['_']['columns']\n\t\t\t\t\t: T['_']['from'] extends Subquery | GelViewBase ? T['_']['from']['_']['selectedFields']\n\t\t\t\t\t: never,\n\t\t\t) => SQL | undefined\n\t\t)\n\t\t| SQL\n\t\t| undefined,\n) => GelUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;\n\nexport type GelUpdateJoin<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : GelUpdateBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TJoinedTable>, TJoinType>,\n\t[...T['_']['joins'], {\n\t\tname: GetSelectTableName<TJoinedTable>;\n\t\tjoinType: TJoinType;\n\t\ttable: TJoinedTable;\n\t}],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\ntype Join = {\n\tname: string | undefined;\n\tjoinType: JoinType;\n\ttable: GelTable | Subquery | GelViewBase | SQL;\n};\n\ntype AccumulateToResult<\n\tT extends AnyGelUpdate,\n\tTSelectMode extends SelectMode,\n\tTJoins extends Join[],\n\tTSelectedFields extends ColumnsSelection,\n> = TJoins extends [infer TJoin extends Join, ...infer TRest extends Join[]] ? AccumulateToResult<\n\t\tT,\n\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple',\n\t\tTRest,\n\t\tAppendToResult<\n\t\t\tT['_']['table']['_']['name'],\n\t\t\tTSelectedFields,\n\t\t\tTJoin['name'],\n\t\t\tTJoin['table'] extends Table ? TJoin['table']['_']['columns']\n\t\t\t\t: TJoin['table'] extends Subquery ? Assume<TJoin['table']['_']['selectedFields'], SelectedFields>\n\t\t\t\t: never,\n\t\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple'\n\t\t>\n\t>\n\t: TSelectedFields;\n\nexport type GelUpdateReturningAll<T extends AnyGelUpdate, TDynamic extends boolean> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'single',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tGetSelectTableSelection<T['_']['table']>\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdateReturning<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFields,\n> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'partial',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tTSelectedFields\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdatePrepare<T extends AnyGelUpdate> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelUpdateDynamic<T extends AnyGelUpdate> = GelUpdate<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tT['_']['nullabilityMap']\n>;\n\nexport type GelUpdate<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = GelUpdateBase<TTable, TQueryResult, TFrom, TReturning, TNullabilityMap, TJoins, true, never>;\n\nexport type AnyGelUpdate = GelUpdateBase<any, any, any, any, any, any, any, any>;\n\nexport interface GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly joins: TJoins;\n\t\treadonly nullabilityMap: TNullabilityMap;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly from: TFrom;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelUpdate';\n\n\tprivate config: GelUpdateConfig;\n\tprivate tableName: string | undefined;\n\tprivate joinsNotNullableMap: Record<string, boolean>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tset: UpdateSet,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t) {\n\t\tsuper();\n\t\tthis.config = { set, table, withList, joins: [] };\n\t\tthis.tableName = getTableLikeName(table);\n\t\tthis.joinsNotNullableMap = typeof this.tableName === 'string' ? { [this.tableName]: true } : {};\n\t}\n\n\tfrom<TFrom extends GelTable | Subquery | GelViewBase | SQL>(\n\t\tsource: TFrom,\n\t): GelUpdateWithJoins<this, TDynamic, TFrom> {\n\t\tconst tableName = getTableLikeName(source);\n\t\tif (typeof tableName === 'string') {\n\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t}\n\t\tthis.config.from = source;\n\t\treturn this as any;\n\t}\n\n\tprivate getTableLikeFields(table: GelTable | Subquery | GelViewBase): Record<string, unknown> {\n\t\tif (is(table, GelTable)) {\n\t\t\treturn table[Table.Symbol.Columns];\n\t\t} else if (is(table, Subquery)) {\n\t\t\treturn table._.selectedFields;\n\t\t}\n\t\treturn table[ViewBaseConfig].selectedFields;\n\t}\n\n\tprivate createJoin<TJoinType extends JoinType>(\n\t\tjoinType: TJoinType,\n\t): GelUpdateJoinFn<this, TDynamic, TJoinType> {\n\t\treturn ((\n\t\t\ttable: GelTable | Subquery | GelViewBase | SQL,\n\t\t\ton: ((updateTable: TTable, from: TFrom) => SQL | undefined) | SQL | undefined,\n\t\t) => {\n\t\t\tconst tableName = getTableLikeName(table);\n\n\t\t\tif (typeof tableName === 'string' && this.config.joins.some((join) => join.alias === tableName)) {\n\t\t\t\tthrow new Error(`Alias \"${tableName}\" is already used in this query`);\n\t\t\t}\n\n\t\t\tif (typeof on === 'function') {\n\t\t\t\tconst from = this.config.from && !is(this.config.from, SQL)\n\t\t\t\t\t? this.getTableLikeFields(this.config.from)\n\t\t\t\t\t: undefined;\n\t\t\t\ton = on(\n\t\t\t\t\tnew Proxy(\n\t\t\t\t\t\tthis.config.table[Table.Symbol.Columns],\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t\tfrom && new Proxy(\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.config.joins.push({ on, table, joinType, alias: tableName });\n\n\t\t\tif (typeof tableName === 'string') {\n\t\t\t\tswitch (joinType) {\n\t\t\t\t\tcase 'left': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'right': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'inner': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'full': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this as any;\n\t\t}) as any;\n\t}\n\n\tleftJoin = this.createJoin('left');\n\n\trightJoin = this.createJoin('right');\n\n\tinnerJoin = this.createJoin('inner');\n\n\tfullJoin = this.createJoin('full');\n\n\t/**\n\t * Adds a 'where' clause to the query.\n\t *\n\t * Calling this method will update only those rows that fulfill a specified condition.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update}\n\t *\n\t * @param where the 'where' clause.\n\t *\n\t * @example\n\t * You can use conditional operators and `sql function` to filter the rows to be updated.\n\t *\n\t * ```ts\n\t * // Update all cars with green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'));\n\t * // or\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(sql`${cars.color} = 'green'`)\n\t * ```\n\t *\n\t * You can logically combine conditional operators with `and()` and `or()` operators:\n\t *\n\t * ```ts\n\t * // Update all BMW cars with a green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));\n\t *\n\t * // Update all cars with the green or blue color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));\n\t * ```\n\t */\n\twhere(where: SQL | undefined): GelUpdateWithout<this, TDynamic, 'where'> {\n\t\tthis.config.where = where;\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the updated rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update#update-with-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Update all cars with the green color and return all fields\n\t * const updatedCars: Car[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning();\n\t *\n\t * // Update all cars with the green color and return only their id and brand fields\n\t * const updatedCarsIdsAndBrands: { id: number, brand: string }[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning({ id: cars.id, brand: cars.brand });\n\t * ```\n\t */\n\treturning(): GelUpdateReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFields>(\n\t\tfields: TSelectedFields,\n\t): GelUpdateReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields?: SelectedFields,\n\t): GelUpdateWithout<AnyGelUpdate, TDynamic, 'returning'> {\n\t\tif (!fields) {\n\t\t\tfields = Object.assign({}, this.config.table[Table.Symbol.Columns]);\n\n\t\t\tif (this.config.from) {\n\t\t\t\tconst tableName = getTableLikeName(this.config.from);\n\n\t\t\t\tif (typeof tableName === 'string' && this.config.from && !is(this.config.from, SQL)) {\n\t\t\t\t\tconst fromFields = this.getTableLikeFields(this.config.from);\n\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t}\n\n\t\t\t\tfor (const join of this.config.joins) {\n\t\t\t\t\tconst tableName = getTableLikeName(join.table);\n\n\t\t\t\t\tif (typeof tableName === 'string' && !is(join.table, SQL)) {\n\t\t\t\t\t\tconst fromFields = this.getTableLikeFields(join.table);\n\t\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildUpdateQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'update',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t});\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): GelUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n\n\t$dynamic(): GelUpdateDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"AACA,SAAS,YAAY,UAAU;AAS/B,SAAS,gBAAgB;AAWzB,SAAS,oBAAoB;AAE7B,SAAS,6BAA6B;AACtC,SAA4C,WAA4B;AACxE,SAAS,gBAAgB;AACzB,SAAgC,aAAa;AAC7C;AAAA,EAEC;AAAA,EACA;AAAA,EAEA;AAAA,OAEM;AACP,SAAS,sBAAsB;AAE/B,SAAS,wBAAwB;AA0B1B,MAAM,iBAAkF;AAAA,EAO9F,YACS,OACA,SACA,SACA,UACP;AAJO;AACA;AACA;AACA;AAAA,EACN;AAAA,EAXH,QAAiB,UAAU,IAAY;AAAA,EAa/B;AAAA,EACR,SAAS,OAAsB;AAC9B,SAAK,YAAY;AACjB,WAAO;AAAA,EACR;AAAA,EAEA,IACC,QACoH;AACpH,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,aAAa,KAAK,OAAO,MAAM;AAAA,MAC/B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAwNO,MAAM,sBAaH,aAIV;AAAA,EAOC,YACC,OACA,KACQ,SACA,SACR,UACC;AACD,UAAM;AAJE;AACA;AAIR,SAAK,SAAS,EAAE,KAAK,OAAO,UAAU,OAAO,CAAC,EAAE;AAChD,SAAK,YAAY,iBAAiB,KAAK;AACvC,SAAK,sBAAsB,OAAO,KAAK,cAAc,WAAW,EAAE,CAAC,KAAK,SAAS,GAAG,KAAK,IAAI,CAAC;AAAA,EAC/F;AAAA,EAjBA,QAA0B,UAAU,IAAY;AAAA,EAExC;AAAA,EACA;AAAA,EACA;AAAA,EAeR,KACC,QAC4C;AAC5C,UAAM,YAAY,iBAAiB,MAAM;AACzC,QAAI,OAAO,cAAc,UAAU;AAClC,WAAK,oBAAoB,SAAS,IAAI;AAAA,IACvC;AACA,SAAK,OAAO,OAAO;AACnB,WAAO;AAAA,EACR;AAAA,EAEQ,mBAAmB,OAAmE;AAC7F,QAAI,GAAG,OAAO,QAAQ,GAAG;AACxB,aAAO,MAAM,MAAM,OAAO,OAAO;AAAA,IAClC,WAAW,GAAG,OAAO,QAAQ,GAAG;AAC/B,aAAO,MAAM,EAAE;AAAA,IAChB;AACA,WAAO,MAAM,cAAc,EAAE;AAAA,EAC9B;AAAA,EAEQ,WACP,UAC6C;AAC7C,WAAQ,CACP,OACA,OACI;AACJ,YAAM,YAAY,iBAAiB,KAAK;AAExC,UAAI,OAAO,cAAc,YAAY,KAAK,OAAO,MAAM,KAAK,CAAC,SAAS,KAAK,UAAU,SAAS,GAAG;AAChG,cAAM,IAAI,MAAM,UAAU,SAAS,iCAAiC;AAAA,MACrE;AAEA,UAAI,OAAO,OAAO,YAAY;AAC7B,cAAM,OAAO,KAAK,OAAO,QAAQ,CAAC,GAAG,KAAK,OAAO,MAAM,GAAG,IACvD,KAAK,mBAAmB,KAAK,OAAO,IAAI,IACxC;AACH,aAAK;AAAA,UACJ,IAAI;AAAA,YACH,KAAK,OAAO,MAAM,MAAM,OAAO,OAAO;AAAA,YACtC,IAAI,sBAAsB,EAAE,oBAAoB,OAAO,aAAa,MAAM,CAAC;AAAA,UAC5E;AAAA,UACA,QAAQ,IAAI;AAAA,YACX;AAAA,YACA,IAAI,sBAAsB,EAAE,oBAAoB,OAAO,aAAa,MAAM,CAAC;AAAA,UAC5E;AAAA,QACD;AAAA,MACD;AAEA,WAAK,OAAO,MAAM,KAAK,EAAE,IAAI,OAAO,UAAU,OAAO,UAAU,CAAC;AAEhE,UAAI,OAAO,cAAc,UAAU;AAClC,gBAAQ,UAAU;AAAA,UACjB,KAAK,QAAQ;AACZ,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,SAAS;AACb,iBAAK,sBAAsB,OAAO;AAAA,cACjC,OAAO,QAAQ,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC;AAAA,YACrE;AACA,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,SAAS;AACb,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,QAAQ;AACZ,iBAAK,sBAAsB,OAAO;AAAA,cACjC,OAAO,QAAQ,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC;AAAA,YACrE;AACA,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EAEA,WAAW,KAAK,WAAW,MAAM;AAAA,EAEjC,YAAY,KAAK,WAAW,OAAO;AAAA,EAEnC,YAAY,KAAK,WAAW,OAAO;AAAA,EAEnC,WAAW,KAAK,WAAW,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAmCjC,MAAM,OAAmE;AACxE,SAAK,OAAO,QAAQ;AACpB,WAAO;AAAA,EACR;AAAA,EA4BA,UACC,QACwD;AACxD,QAAI,CAAC,QAAQ;AACZ,eAAS,OAAO,OAAO,CAAC,GAAG,KAAK,OAAO,MAAM,MAAM,OAAO,OAAO,CAAC;AAElE,UAAI,KAAK,OAAO,MAAM;AACrB,cAAM,YAAY,iBAAiB,KAAK,OAAO,IAAI;AAEnD,YAAI,OAAO,cAAc,YAAY,KAAK,OAAO,QAAQ,CAAC,GAAG,KAAK,OAAO,MAAM,GAAG,GAAG;AACpF,gBAAM,aAAa,KAAK,mBAAmB,KAAK,OAAO,IAAI;AAC3D,iBAAO,SAAS,IAAI;AAAA,QACrB;AAEA,mBAAW,QAAQ,KAAK,OAAO,OAAO;AACrC,gBAAMA,aAAY,iBAAiB,KAAK,KAAK;AAE7C,cAAI,OAAOA,eAAc,YAAY,CAAC,GAAG,KAAK,OAAO,GAAG,GAAG;AAC1D,kBAAM,aAAa,KAAK,mBAAmB,KAAK,KAAK;AACrD,mBAAOA,UAAS,IAAI;AAAA,UACrB;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAEA,SAAK,OAAO,YAAY,oBAA+B,MAAM;AAC7D,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,SAAc;AACb,WAAO,KAAK,QAAQ,iBAAiB,KAAK,MAAM;AAAA,EACjD;AAAA,EAEA,QAAe;AACd,UAAM,EAAE,SAAS,UAAU,GAAG,KAAK,IAAI,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC;AAC5E,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,SAAS,MAAuC;AAC/C,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,QAAQ,iBAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,CAAC;AACD,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAAsC;AAC7C,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAES,UAAkD,CAAC,sBAAsB;AACjF,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AAAA,EAEA,WAAmC;AAClC,WAAO;AAAA,EACR;AACD;","names":["tableName"]}
1
+ {"version":3,"sources":["../../../src/gel-core/query-builders/update.ts"],"sourcesContent":["import type { GetColumnData } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { GelDialect } from '~/gel-core/dialect.ts';\nimport type {\n\tGelPreparedQuery,\n\tGelQueryResultHKT,\n\tGelQueryResultKind,\n\tGelSession,\n\tPreparedQueryConfig,\n} from '~/gel-core/session.ts';\nimport { GelTable } from '~/gel-core/table.ts';\nimport type {\n\tAppendToNullabilityMap,\n\tAppendToResult,\n\tGetSelectTableName,\n\tGetSelectTableSelection,\n\tJoinNullability,\n\tJoinType,\n\tSelectMode,\n\tSelectResult,\n} from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport { SelectionProxyHandler } from '~/selection-proxy.ts';\nimport { type ColumnsSelection, type Query, SQL, type SQLWrapper } from '~/sql/sql.ts';\nimport { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table } from '~/table.ts';\nimport {\n\ttype Assume,\n\tgetTableLikeName,\n\tmapUpdateSet,\n\ttype NeonAuthToken,\n\torderSelectedFields,\n\ttype UpdateSet,\n} from '~/utils.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport type { GelColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { GelViewBase } from '../view-base.ts';\nimport type { GelSelectJoinConfig, SelectedFields, SelectedFieldsOrdered } from './select.types.ts';\n\nexport interface GelUpdateConfig {\n\twhere?: SQL | undefined;\n\tset: UpdateSet;\n\ttable: GelTable;\n\tfrom?: GelTable | Subquery | GelViewBase | SQL;\n\tjoins: GelSelectJoinConfig[];\n\treturning?: SelectedFieldsOrdered;\n\twithList?: Subquery[];\n}\n\nexport type GelUpdateSetSource<\n\tTTable extends GelTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> =\n\t& {\n\t\t[Key in keyof TModel & string]?:\n\t\t\t| GetColumnData<TTable['_']['columns'][Key]>\n\t\t\t| SQL\n\t\t\t| GelColumn;\n\t}\n\t& {};\n\nexport class GelUpdateBuilder<TTable extends GelTable, TQueryResult extends GelQueryResultHKT> {\n\tstatic readonly [entityKind]: string = 'GelUpdateBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly table: TTable;\n\t};\n\n\tconstructor(\n\t\tprivate table: TTable,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tprivate authToken?: NeonAuthToken;\n\tsetToken(token: NeonAuthToken) {\n\t\tthis.authToken = token;\n\t\treturn this;\n\t}\n\n\tset(\n\t\tvalues: GelUpdateSetSource<TTable>,\n\t): GelUpdateWithout<GelUpdateBase<TTable, TQueryResult>, false, 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'> {\n\t\treturn new GelUpdateBase<TTable, TQueryResult>(\n\t\t\tthis.table,\n\t\t\tmapUpdateSet(this.table, values),\n\t\t\tthis.session,\n\t\t\tthis.dialect,\n\t\t\tthis.withList,\n\t\t);\n\t}\n}\n\nexport type GelUpdateWithout<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tK extends keyof T & string,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tT['_']['returning'],\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods'] | K\n\t>,\n\tT['_']['excludedMethods'] | K\n>;\n\nexport type GelUpdateWithJoins<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : Omit<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tTFrom,\n\t\tT['_']['returning'],\n\t\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TFrom>, 'inner'>,\n\t\t[...T['_']['joins'], {\n\t\t\tname: GetSelectTableName<TFrom>;\n\t\t\tjoinType: 'inner';\n\t\t\ttable: TFrom;\n\t\t}],\n\t\tTDynamic,\n\t\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n\t>,\n\tExclude<T['_']['excludedMethods'] | 'from', 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin'>\n>;\n\nexport type GelUpdateJoinFn<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n> = <\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n>(\n\ttable: TJoinedTable,\n\ton:\n\t\t| (\n\t\t\t(\n\t\t\t\tupdateTable: T['_']['table']['_']['columns'],\n\t\t\t\tfrom: T['_']['from'] extends GelTable ? T['_']['from']['_']['columns']\n\t\t\t\t\t: T['_']['from'] extends Subquery | GelViewBase ? T['_']['from']['_']['selectedFields']\n\t\t\t\t\t: never,\n\t\t\t) => SQL | undefined\n\t\t)\n\t\t| SQL\n\t\t| undefined,\n) => GelUpdateJoin<T, TDynamic, TJoinType, TJoinedTable>;\n\nexport type GelUpdateJoin<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTJoinType extends JoinType,\n\tTJoinedTable extends GelTable | Subquery | GelViewBase | SQL,\n> = TDynamic extends true ? T : GelUpdateBase<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tAppendToNullabilityMap<T['_']['nullabilityMap'], GetSelectTableName<TJoinedTable>, TJoinType>,\n\t[...T['_']['joins'], {\n\t\tname: GetSelectTableName<TJoinedTable>;\n\t\tjoinType: TJoinType;\n\t\ttable: TJoinedTable;\n\t}],\n\tTDynamic,\n\tT['_']['excludedMethods']\n>;\n\ntype Join = {\n\tname: string | undefined;\n\tjoinType: JoinType;\n\ttable: GelTable | Subquery | GelViewBase | SQL;\n};\n\ntype AccumulateToResult<\n\tT extends AnyGelUpdate,\n\tTSelectMode extends SelectMode,\n\tTJoins extends Join[],\n\tTSelectedFields extends ColumnsSelection,\n> = TJoins extends [infer TJoin extends Join, ...infer TRest extends Join[]] ? AccumulateToResult<\n\t\tT,\n\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple',\n\t\tTRest,\n\t\tAppendToResult<\n\t\t\tT['_']['table']['_']['name'],\n\t\t\tTSelectedFields,\n\t\t\tTJoin['name'],\n\t\t\tTJoin['table'] extends Table ? TJoin['table']['_']['columns']\n\t\t\t\t: TJoin['table'] extends Subquery ? Assume<TJoin['table']['_']['selectedFields'], SelectedFields>\n\t\t\t\t: never,\n\t\t\tTSelectMode extends 'partial' ? TSelectMode : 'multiple'\n\t\t>\n\t>\n\t: TSelectedFields;\n\nexport type GelUpdateReturningAll<T extends AnyGelUpdate, TDynamic extends boolean> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'single',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tGetSelectTableSelection<T['_']['table']>\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdateReturning<\n\tT extends AnyGelUpdate,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFields,\n> = GelUpdateWithout<\n\tGelUpdateBase<\n\t\tT['_']['table'],\n\t\tT['_']['queryResult'],\n\t\tT['_']['from'],\n\t\tSelectResult<\n\t\t\tAccumulateToResult<\n\t\t\t\tT,\n\t\t\t\t'partial',\n\t\t\t\tT['_']['joins'],\n\t\t\t\tTSelectedFields\n\t\t\t>,\n\t\t\t'partial',\n\t\t\tT['_']['nullabilityMap']\n\t\t>,\n\t\tT['_']['nullabilityMap'],\n\t\tT['_']['joins'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type GelUpdatePrepare<T extends AnyGelUpdate> = GelPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? GelQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type GelUpdateDynamic<T extends AnyGelUpdate> = GelUpdate<\n\tT['_']['table'],\n\tT['_']['queryResult'],\n\tT['_']['from'],\n\tT['_']['returning'],\n\tT['_']['nullabilityMap']\n>;\n\nexport type GelUpdate<\n\tTTable extends GelTable = GelTable,\n\tTQueryResult extends GelQueryResultHKT = GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = GelUpdateBase<TTable, TQueryResult, TFrom, TReturning, TNullabilityMap, TJoins, true, never>;\n\nexport type AnyGelUpdate = GelUpdateBase<any, any, any, any, any, any, any, any>;\n\nexport interface GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tQueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\tSQLWrapper\n{\n\treadonly _: {\n\t\treadonly dialect: 'gel';\n\t\treadonly table: TTable;\n\t\treadonly joins: TJoins;\n\t\treadonly nullabilityMap: TNullabilityMap;\n\t\treadonly queryResult: TQueryResult;\n\t\treadonly from: TFrom;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[];\n\t};\n}\n\nexport class GelUpdateBase<\n\tTTable extends GelTable,\n\tTQueryResult extends GelQueryResultHKT,\n\tTFrom extends GelTable | Subquery | GelViewBase | SQL | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[]>\n\timplements\n\t\tRunnableQuery<TReturning extends undefined ? GelQueryResultKind<TQueryResult, never> : TReturning[], 'gel'>,\n\t\tSQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'GelUpdate';\n\n\tprivate config: GelUpdateConfig;\n\tprivate tableName: string | undefined;\n\tprivate joinsNotNullableMap: Record<string, boolean>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tset: UpdateSet,\n\t\tprivate session: GelSession,\n\t\tprivate dialect: GelDialect,\n\t\twithList?: Subquery[],\n\t) {\n\t\tsuper();\n\t\tthis.config = { set, table, withList, joins: [] };\n\t\tthis.tableName = getTableLikeName(table);\n\t\tthis.joinsNotNullableMap = typeof this.tableName === 'string' ? { [this.tableName]: true } : {};\n\t}\n\n\tfrom<TFrom extends GelTable | Subquery | GelViewBase | SQL>(\n\t\tsource: TFrom,\n\t): GelUpdateWithJoins<this, TDynamic, TFrom> {\n\t\tconst tableName = getTableLikeName(source);\n\t\tif (typeof tableName === 'string') {\n\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t}\n\t\tthis.config.from = source;\n\t\treturn this as any;\n\t}\n\n\tprivate getTableLikeFields(table: GelTable | Subquery | GelViewBase): Record<string, unknown> {\n\t\tif (is(table, GelTable)) {\n\t\t\treturn table[Table.Symbol.Columns];\n\t\t} else if (is(table, Subquery)) {\n\t\t\treturn table._.selectedFields;\n\t\t}\n\t\treturn table[ViewBaseConfig].selectedFields;\n\t}\n\n\tprivate createJoin<TJoinType extends JoinType>(\n\t\tjoinType: TJoinType,\n\t): GelUpdateJoinFn<this, TDynamic, TJoinType> {\n\t\treturn ((\n\t\t\ttable: GelTable | Subquery | GelViewBase | SQL,\n\t\t\ton: ((updateTable: TTable, from: TFrom) => SQL | undefined) | SQL | undefined,\n\t\t) => {\n\t\t\tconst tableName = getTableLikeName(table);\n\n\t\t\tif (typeof tableName === 'string' && this.config.joins.some((join) => join.alias === tableName)) {\n\t\t\t\tthrow new Error(`Alias \"${tableName}\" is already used in this query`);\n\t\t\t}\n\n\t\t\tif (typeof on === 'function') {\n\t\t\t\tconst from = this.config.from && !is(this.config.from, SQL)\n\t\t\t\t\t? this.getTableLikeFields(this.config.from)\n\t\t\t\t\t: undefined;\n\t\t\t\ton = on(\n\t\t\t\t\tnew Proxy(\n\t\t\t\t\t\tthis.config.table[Table.Symbol.Columns],\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t\tfrom && new Proxy(\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tnew SelectionProxyHandler({ sqlAliasedBehavior: 'sql', sqlBehavior: 'sql' }),\n\t\t\t\t\t) as any,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.config.joins.push({ on, table, joinType, alias: tableName });\n\n\t\t\tif (typeof tableName === 'string') {\n\t\t\t\tswitch (joinType) {\n\t\t\t\t\tcase 'left': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'right': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'inner': {\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'full': {\n\t\t\t\t\t\tthis.joinsNotNullableMap = Object.fromEntries(\n\t\t\t\t\t\t\tObject.entries(this.joinsNotNullableMap).map(([key]) => [key, false]),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.joinsNotNullableMap[tableName] = false;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this as any;\n\t\t}) as any;\n\t}\n\n\tleftJoin = this.createJoin('left');\n\n\trightJoin = this.createJoin('right');\n\n\tinnerJoin = this.createJoin('inner');\n\n\tfullJoin = this.createJoin('full');\n\n\t/**\n\t * Adds a 'where' clause to the query.\n\t *\n\t * Calling this method will update only those rows that fulfill a specified condition.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update}\n\t *\n\t * @param where the 'where' clause.\n\t *\n\t * @example\n\t * You can use conditional operators and `sql function` to filter the rows to be updated.\n\t *\n\t * ```ts\n\t * // Update all cars with green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'));\n\t * // or\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(sql`${cars.color} = 'green'`)\n\t * ```\n\t *\n\t * You can logically combine conditional operators with `and()` and `or()` operators:\n\t *\n\t * ```ts\n\t * // Update all BMW cars with a green color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(and(eq(cars.color, 'green'), eq(cars.brand, 'BMW')));\n\t *\n\t * // Update all cars with the green or blue color\n\t * await db.update(cars).set({ color: 'red' })\n\t * .where(or(eq(cars.color, 'green'), eq(cars.color, 'blue')));\n\t * ```\n\t */\n\twhere(where: SQL | undefined): GelUpdateWithout<this, TDynamic, 'where'> {\n\t\tthis.config.where = where;\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the updated rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/update#update-with-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Update all cars with the green color and return all fields\n\t * const updatedCars: Car[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning();\n\t *\n\t * // Update all cars with the green color and return only their id and brand fields\n\t * const updatedCarsIdsAndBrands: { id: number, brand: string }[] = await db.update(cars)\n\t * .set({ color: 'red' })\n\t * .where(eq(cars.color, 'green'))\n\t * .returning({ id: cars.id, brand: cars.brand });\n\t * ```\n\t */\n\treturning(): GelUpdateReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFields>(\n\t\tfields: TSelectedFields,\n\t): GelUpdateReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields?: SelectedFields,\n\t): GelUpdateWithout<AnyGelUpdate, TDynamic, 'returning'> {\n\t\tif (!fields) {\n\t\t\tfields = Object.assign({}, this.config.table[Table.Symbol.Columns]);\n\n\t\t\tif (this.config.from) {\n\t\t\t\tconst tableName = getTableLikeName(this.config.from);\n\n\t\t\t\tif (typeof tableName === 'string' && this.config.from && !is(this.config.from, SQL)) {\n\t\t\t\t\tconst fromFields = this.getTableLikeFields(this.config.from);\n\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t}\n\n\t\t\t\tfor (const join of this.config.joins) {\n\t\t\t\t\tconst tableName = getTableLikeName(join.table);\n\n\t\t\t\t\tif (typeof tableName === 'string' && !is(join.table, SQL)) {\n\t\t\t\t\t\tconst fromFields = this.getTableLikeFields(join.table);\n\t\t\t\t\t\tfields[tableName] = fromFields as any;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.config.returning = orderSelectedFields<GelColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildUpdateQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(name?: string): GelUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'update',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t});\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): GelUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\toverride execute: ReturnType<this['prepare']>['execute'] = (placeholderValues) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n\n\t$dynamic(): GelUpdateDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"AACA,SAAS,YAAY,UAAU;AAS/B,SAAS,gBAAgB;AAWzB,SAAS,oBAAoB;AAE7B,SAAS,6BAA6B;AACtC,SAA4C,WAA4B;AACxE,SAAS,gBAAgB;AACzB,SAAgC,aAAa;AAC7C;AAAA,EAEC;AAAA,EACA;AAAA,EAEA;AAAA,OAEM;AACP,SAAS,sBAAsB;AAE/B,SAAS,wBAAwB;AA0B1B,MAAM,iBAAkF;AAAA,EAO9F,YACS,OACA,SACA,SACA,UACP;AAJO;AACA;AACA;AACA;AAAA,EACN;AAAA,EAXH,QAAiB,UAAU,IAAY;AAAA,EAa/B;AAAA,EACR,SAAS,OAAsB;AAC9B,SAAK,YAAY;AACjB,WAAO;AAAA,EACR;AAAA,EAEA,IACC,QACoH;AACpH,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,aAAa,KAAK,OAAO,MAAM;AAAA,MAC/B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAwNO,MAAM,sBAaH,aAIV;AAAA,EAOC,YACC,OACA,KACQ,SACA,SACR,UACC;AACD,UAAM;AAJE;AACA;AAIR,SAAK,SAAS,EAAE,KAAK,OAAO,UAAU,OAAO,CAAC,EAAE;AAChD,SAAK,YAAY,iBAAiB,KAAK;AACvC,SAAK,sBAAsB,OAAO,KAAK,cAAc,WAAW,EAAE,CAAC,KAAK,SAAS,GAAG,KAAK,IAAI,CAAC;AAAA,EAC/F;AAAA,EAjBA,QAA0B,UAAU,IAAY;AAAA,EAExC;AAAA,EACA;AAAA,EACA;AAAA,EAeR,KACC,QAC4C;AAC5C,UAAM,YAAY,iBAAiB,MAAM;AACzC,QAAI,OAAO,cAAc,UAAU;AAClC,WAAK,oBAAoB,SAAS,IAAI;AAAA,IACvC;AACA,SAAK,OAAO,OAAO;AACnB,WAAO;AAAA,EACR;AAAA,EAEQ,mBAAmB,OAAmE;AAC7F,QAAI,GAAG,OAAO,QAAQ,GAAG;AACxB,aAAO,MAAM,MAAM,OAAO,OAAO;AAAA,IAClC,WAAW,GAAG,OAAO,QAAQ,GAAG;AAC/B,aAAO,MAAM,EAAE;AAAA,IAChB;AACA,WAAO,MAAM,cAAc,EAAE;AAAA,EAC9B;AAAA,EAEQ,WACP,UAC6C;AAC7C,WAAQ,CACP,OACA,OACI;AACJ,YAAM,YAAY,iBAAiB,KAAK;AAExC,UAAI,OAAO,cAAc,YAAY,KAAK,OAAO,MAAM,KAAK,CAAC,SAAS,KAAK,UAAU,SAAS,GAAG;AAChG,cAAM,IAAI,MAAM,UAAU,SAAS,iCAAiC;AAAA,MACrE;AAEA,UAAI,OAAO,OAAO,YAAY;AAC7B,cAAM,OAAO,KAAK,OAAO,QAAQ,CAAC,GAAG,KAAK,OAAO,MAAM,GAAG,IACvD,KAAK,mBAAmB,KAAK,OAAO,IAAI,IACxC;AACH,aAAK;AAAA,UACJ,IAAI;AAAA,YACH,KAAK,OAAO,MAAM,MAAM,OAAO,OAAO;AAAA,YACtC,IAAI,sBAAsB,EAAE,oBAAoB,OAAO,aAAa,MAAM,CAAC;AAAA,UAC5E;AAAA,UACA,QAAQ,IAAI;AAAA,YACX;AAAA,YACA,IAAI,sBAAsB,EAAE,oBAAoB,OAAO,aAAa,MAAM,CAAC;AAAA,UAC5E;AAAA,QACD;AAAA,MACD;AAEA,WAAK,OAAO,MAAM,KAAK,EAAE,IAAI,OAAO,UAAU,OAAO,UAAU,CAAC;AAEhE,UAAI,OAAO,cAAc,UAAU;AAClC,gBAAQ,UAAU;AAAA,UACjB,KAAK,QAAQ;AACZ,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,SAAS;AACb,iBAAK,sBAAsB,OAAO;AAAA,cACjC,OAAO,QAAQ,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC;AAAA,YACrE;AACA,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,SAAS;AACb,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,UACA,KAAK,QAAQ;AACZ,iBAAK,sBAAsB,OAAO;AAAA,cACjC,OAAO,QAAQ,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC;AAAA,YACrE;AACA,iBAAK,oBAAoB,SAAS,IAAI;AACtC;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EAEA,WAAW,KAAK,WAAW,MAAM;AAAA,EAEjC,YAAY,KAAK,WAAW,OAAO;AAAA,EAEnC,YAAY,KAAK,WAAW,OAAO;AAAA,EAEnC,WAAW,KAAK,WAAW,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAmCjC,MAAM,OAAmE;AACxE,SAAK,OAAO,QAAQ;AACpB,WAAO;AAAA,EACR;AAAA,EA4BA,UACC,QACwD;AACxD,QAAI,CAAC,QAAQ;AACZ,eAAS,OAAO,OAAO,CAAC,GAAG,KAAK,OAAO,MAAM,MAAM,OAAO,OAAO,CAAC;AAElE,UAAI,KAAK,OAAO,MAAM;AACrB,cAAM,YAAY,iBAAiB,KAAK,OAAO,IAAI;AAEnD,YAAI,OAAO,cAAc,YAAY,KAAK,OAAO,QAAQ,CAAC,GAAG,KAAK,OAAO,MAAM,GAAG,GAAG;AACpF,gBAAM,aAAa,KAAK,mBAAmB,KAAK,OAAO,IAAI;AAC3D,iBAAO,SAAS,IAAI;AAAA,QACrB;AAEA,mBAAW,QAAQ,KAAK,OAAO,OAAO;AACrC,gBAAMA,aAAY,iBAAiB,KAAK,KAAK;AAE7C,cAAI,OAAOA,eAAc,YAAY,CAAC,GAAG,KAAK,OAAO,GAAG,GAAG;AAC1D,kBAAM,aAAa,KAAK,mBAAmB,KAAK,KAAK;AACrD,mBAAOA,UAAS,IAAI;AAAA,UACrB;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAEA,SAAK,OAAO,YAAY,oBAA+B,MAAM;AAC7D,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,SAAc;AACb,WAAO,KAAK,QAAQ,iBAAiB,KAAK,MAAM;AAAA,EACjD;AAAA,EAEA,QAAe;AACd,UAAM,EAAE,SAAS,UAAU,GAAG,KAAK,IAAI,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC;AAC5E,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,SAAS,MAAuC;AAC/C,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,QAAQ,iBAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,CAAC;AACD,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAAsC;AAC7C,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAES,UAAkD,CAAC,sBAAsB;AACjF,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AAAA,EAEA,WAAmC;AAClC,WAAO;AAAA,EACR;AACD;","names":["tableName"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumnBuilderWithAutoIncrement, MySqlColumnWithAutoIncrement } from './common.ts';\n\nexport class MySqlBigInt53Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tdataType: Equal<TUnsigned, true> extends true ? 'number uint53' : 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'number uint53' : 'number int53') as any, 'MySqlBigInt53');\n\t\tthis.config.unsigned = unsigned as TUnsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt53(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt53<T extends ColumnBaseConfig<'number int53' | 'number uint53'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class MySqlBigInt64Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tdataType: Equal<TUnsigned, true> extends true ? 'bigint uint64' : 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'bigint uint64' : 'bigint int64') as any, 'MySqlBigInt64');\n\t\tthis.config.unsigned = unsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt64(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt64<T extends ColumnBaseConfig<'bigint int64' | 'bigint uint64'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport interface MySqlBigIntConfig<\n\tT extends 'number' | 'bigint' = 'number' | 'bigint',\n\tTUnsigned extends boolean | undefined = boolean | undefined,\n> {\n\tmode: T;\n\tunsigned?: TUnsigned;\n}\n\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tname: string,\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint(a?: string | MySqlBigIntConfig, b?: MySqlBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new MySqlBigInt53Builder(name, config.unsigned);\n\t}\n\treturn new MySqlBigInt64Builder(name, config.unsigned);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAmD;AACnD,oBAAkF;AAE3E,MAAM,6BAAoE,kDAItD;AAAA,EAC1B,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,2CACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,6BAAoE,kDAItD;AAAA,EAC1B,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,2CACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAiBO,SAAS,OAAO,GAAgC,GAAuB;AAC7E,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA0C,GAAG,CAAC;AACvE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AAAA,EACtD;AACA,SAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AACtD;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumnBuilderWithAutoIncrement, MySqlColumnWithAutoIncrement } from './common.ts';\n\nexport class MySqlBigInt53Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tname: string;\n\tdataType: Equal<TUnsigned, true> extends true ? 'number uint53' : 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'number uint53' : 'number int53') as any, 'MySqlBigInt53');\n\t\tthis.config.unsigned = unsigned as TUnsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt53(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt53<T extends ColumnBaseConfig<'number int53' | 'number uint53'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class MySqlBigInt64Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tname: string;\n\tdataType: Equal<TUnsigned, true> extends true ? 'bigint uint64' : 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'bigint uint64' : 'bigint int64') as any, 'MySqlBigInt64');\n\t\tthis.config.unsigned = unsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt64(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt64<T extends ColumnBaseConfig<'bigint int64' | 'bigint uint64'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport interface MySqlBigIntConfig<\n\tT extends 'number' | 'bigint' = 'number' | 'bigint',\n\tTUnsigned extends boolean | undefined = boolean | undefined,\n> {\n\tmode: T;\n\tunsigned?: TUnsigned;\n}\n\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tname: string,\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint(a?: string | MySqlBigIntConfig, b?: MySqlBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new MySqlBigInt53Builder(name, config.unsigned);\n\t}\n\treturn new MySqlBigInt64Builder(name, config.unsigned);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAmD;AACnD,oBAAkF;AAE3E,MAAM,6BAAoE,kDAKtD;AAAA,EAC1B,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,2CACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,6BAAoE,kDAKtD;AAAA,EAC1B,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,2CACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAiBO,SAAS,OAAO,GAAgC,GAAuB;AAC7E,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA0C,GAAG,CAAC;AACvE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AAAA,EACtD;AACA,SAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AACtD;","names":[]}
@@ -3,6 +3,7 @@ import { entityKind } from "../../entity.cjs";
3
3
  import { type Equal } from "../../utils.cjs";
4
4
  import { MySqlColumnBuilderWithAutoIncrement, MySqlColumnWithAutoIncrement } from "./common.cjs";
5
5
  export declare class MySqlBigInt53Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{
6
+ name: string;
6
7
  dataType: Equal<TUnsigned, true> extends true ? 'number uint53' : 'number int53';
7
8
  data: number;
8
9
  driverParam: number | string;
@@ -20,6 +21,7 @@ export declare class MySqlBigInt53<T extends ColumnBaseConfig<'number int53' | '
20
21
  mapFromDriverValue(value: number | string): number;
21
22
  }
22
23
  export declare class MySqlBigInt64Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{
24
+ name: string;
23
25
  dataType: Equal<TUnsigned, true> extends true ? 'bigint uint64' : 'bigint int64';
24
26
  data: bigint;
25
27
  driverParam: string;
@@ -3,6 +3,7 @@ import { entityKind } from "../../entity.js";
3
3
  import { type Equal } from "../../utils.js";
4
4
  import { MySqlColumnBuilderWithAutoIncrement, MySqlColumnWithAutoIncrement } from "./common.js";
5
5
  export declare class MySqlBigInt53Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{
6
+ name: string;
6
7
  dataType: Equal<TUnsigned, true> extends true ? 'number uint53' : 'number int53';
7
8
  data: number;
8
9
  driverParam: number | string;
@@ -20,6 +21,7 @@ export declare class MySqlBigInt53<T extends ColumnBaseConfig<'number int53' | '
20
21
  mapFromDriverValue(value: number | string): number;
21
22
  }
22
23
  export declare class MySqlBigInt64Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{
24
+ name: string;
23
25
  dataType: Equal<TUnsigned, true> extends true ? 'bigint uint64' : 'bigint int64';
24
26
  data: bigint;
25
27
  driverParam: string;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumnBuilderWithAutoIncrement, MySqlColumnWithAutoIncrement } from './common.ts';\n\nexport class MySqlBigInt53Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tdataType: Equal<TUnsigned, true> extends true ? 'number uint53' : 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'number uint53' : 'number int53') as any, 'MySqlBigInt53');\n\t\tthis.config.unsigned = unsigned as TUnsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt53(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt53<T extends ColumnBaseConfig<'number int53' | 'number uint53'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class MySqlBigInt64Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tdataType: Equal<TUnsigned, true> extends true ? 'bigint uint64' : 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'bigint uint64' : 'bigint int64') as any, 'MySqlBigInt64');\n\t\tthis.config.unsigned = unsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt64(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt64<T extends ColumnBaseConfig<'bigint int64' | 'bigint uint64'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport interface MySqlBigIntConfig<\n\tT extends 'number' | 'bigint' = 'number' | 'bigint',\n\tTUnsigned extends boolean | undefined = boolean | undefined,\n> {\n\tmode: T;\n\tunsigned?: TUnsigned;\n}\n\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tname: string,\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint(a?: string | MySqlBigIntConfig, b?: MySqlBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new MySqlBigInt53Builder(name, config.unsigned);\n\t}\n\treturn new MySqlBigInt64Builder(name, config.unsigned);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAqB,8BAA8B;AACnD,SAAS,qCAAqC,oCAAoC;AAE3E,MAAM,6BAAoE,oCAItD;AAAA,EAC1B,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,6BACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,6BAAoE,oCAItD;AAAA,EAC1B,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,6BACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAiBO,SAAS,OAAO,GAAgC,GAAuB;AAC7E,QAAM,EAAE,MAAM,OAAO,IAAI,uBAA0C,GAAG,CAAC;AACvE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AAAA,EACtD;AACA,SAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AACtD;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumnBuilderWithAutoIncrement, MySqlColumnWithAutoIncrement } from './common.ts';\n\nexport class MySqlBigInt53Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tname: string;\n\tdataType: Equal<TUnsigned, true> extends true ? 'number uint53' : 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'number uint53' : 'number int53') as any, 'MySqlBigInt53');\n\t\tthis.config.unsigned = unsigned as TUnsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt53(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt53<T extends ColumnBaseConfig<'number int53' | 'number uint53'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class MySqlBigInt64Builder<TUnsigned extends boolean | undefined> extends MySqlColumnBuilderWithAutoIncrement<{\n\tname: string;\n\tdataType: Equal<TUnsigned, true> extends true ? 'bigint uint64' : 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}, { unsigned?: boolean }> {\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64Builder';\n\n\tconstructor(name: string, unsigned: boolean = false) {\n\t\tsuper(name, (unsigned ? 'bigint uint64' : 'bigint int64') as any, 'MySqlBigInt64');\n\t\tthis.config.unsigned = unsigned;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBigInt64(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBigInt64<T extends ColumnBaseConfig<'bigint int64' | 'bigint uint64'>>\n\textends MySqlColumnWithAutoIncrement<T, { unsigned: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn `bigint${this.config.unsigned ? ' unsigned' : ''}`;\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport interface MySqlBigIntConfig<\n\tT extends 'number' | 'bigint' = 'number' | 'bigint',\n\tTUnsigned extends boolean | undefined = boolean | undefined,\n> {\n\tmode: T;\n\tunsigned?: TUnsigned;\n}\n\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint<TMode extends MySqlBigIntConfig['mode'], TUnsigned extends boolean | undefined>(\n\tname: string,\n\tconfig: MySqlBigIntConfig<TMode, TUnsigned>,\n): TMode extends 'number' ? MySqlBigInt53Builder<TUnsigned> : MySqlBigInt64Builder<TUnsigned>;\nexport function bigint(a?: string | MySqlBigIntConfig, b?: MySqlBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new MySqlBigInt53Builder(name, config.unsigned);\n\t}\n\treturn new MySqlBigInt64Builder(name, config.unsigned);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAqB,8BAA8B;AACnD,SAAS,qCAAqC,oCAAoC;AAE3E,MAAM,6BAAoE,oCAKtD;AAAA,EAC1B,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,6BACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,6BAAoE,oCAKtD;AAAA,EAC1B,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,WAAoB,OAAO;AACpD,UAAM,MAAO,WAAW,kBAAkB,gBAAwB,eAAe;AACjF,SAAK,OAAO,WAAW;AAAA,EACxB;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBACJ,6BACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO,SAAS,KAAK,OAAO,WAAW,cAAc,EAAE;AAAA,EACxD;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAiBO,SAAS,OAAO,GAAgC,GAAuB;AAC7E,QAAM,EAAE,MAAM,OAAO,IAAI,uBAA0C,GAAG,CAAC;AACvE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AAAA,EACtD;AACA,SAAO,IAAI,qBAAqB,MAAM,OAAO,QAAQ;AACtD;","names":[]}
@@ -32,6 +32,7 @@ class MySqlBinaryBuilder extends import_common.MySqlColumnBuilder {
32
32
  super(name, "string binary", "MySqlBinary");
33
33
  this.config.length = length ?? 1;
34
34
  this.config.setLength = length !== void 0;
35
+ this.config.isLengthExact = true;
35
36
  }
36
37
  /** @internal */
37
38
  build(table) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/binary.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBinaryBuilder extends MySqlColumnBuilder<\n\t{\n\t\tdataType: 'string binary';\n\t\tdata: string;\n\t\tdriverParam: string;\n\t},\n\tMySqlBinaryConfig & { setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinaryBuilder';\n\n\tconstructor(name: string, length: number | undefined) {\n\t\tsuper(name, 'string binary', 'MySqlBinary');\n\t\tthis.config.length = length ?? 1;\n\t\tthis.config.setLength = length !== undefined;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBinary(table, this.config as any);\n\t}\n}\n\nexport class MySqlBinary<T extends ColumnBaseConfig<'string binary'>> extends MySqlColumn<\n\tT,\n\tMySqlBinaryConfig & { setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinary';\n\n\toverride mapFromDriverValue(value: string | Buffer | Uint8Array): string {\n\t\tif (typeof value === 'string') return value;\n\t\tif (Buffer.isBuffer(value)) return value.toString();\n\n\t\tconst str: string[] = [];\n\t\tfor (const v of value) {\n\t\t\tstr.push(v === 49 ? '1' : '0');\n\t\t}\n\n\t\treturn str.join('');\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `binary(${this.length})` : `binary`;\n\t}\n}\n\nexport interface MySqlBinaryConfig {\n\tlength?: number;\n}\n\nexport function binary(\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(\n\tname: string,\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(a?: string | MySqlBinaryConfig, b: MySqlBinaryConfig = {}) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBinaryConfig>(a, b);\n\treturn new MySqlBinaryBuilder(name, config.length);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAuC;AACvC,oBAAgD;AAEzC,MAAM,2BAA2B,iCAOtC;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAA4B;AACrD,UAAM,MAAM,iBAAiB,aAAa;AAC1C,SAAK,OAAO,SAAS,UAAU;AAC/B,SAAK,OAAO,YAAY,WAAW;AAAA,EACpC;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI,YAAY,OAAO,KAAK,MAAa;AAAA,EACjD;AACD;AAEO,MAAM,oBAAiE,0BAG5E;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEvC,mBAAmB,OAA6C;AACxE,QAAI,OAAO,UAAU,SAAU,QAAO;AACtC,QAAI,OAAO,SAAS,KAAK,EAAG,QAAO,MAAM,SAAS;AAElD,UAAM,MAAgB,CAAC;AACvB,eAAW,KAAK,OAAO;AACtB,UAAI,KAAK,MAAM,KAAK,MAAM,GAAG;AAAA,IAC9B;AAEA,WAAO,IAAI,KAAK,EAAE;AAAA,EACnB;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,UAAU,KAAK,MAAM,MAAM;AAAA,EAC3D;AACD;AAaO,SAAS,OAAO,GAAgC,IAAuB,CAAC,GAAG;AACjF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA0C,GAAG,CAAC;AACvE,SAAO,IAAI,mBAAmB,MAAM,OAAO,MAAM;AAClD;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/binary.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBinaryBuilder extends MySqlColumnBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: 'string binary';\n\t\tdata: string;\n\t\tdriverParam: string;\n\t},\n\tMySqlBinaryConfig & { setLength: boolean; isLengthExact: true }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinaryBuilder';\n\n\tconstructor(name: string, length: number | undefined) {\n\t\tsuper(name, 'string binary', 'MySqlBinary');\n\t\tthis.config.length = length ?? 1;\n\t\tthis.config.setLength = length !== undefined;\n\t\tthis.config.isLengthExact = true;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBinary(table, this.config as any);\n\t}\n}\n\nexport class MySqlBinary<T extends ColumnBaseConfig<'string binary'>> extends MySqlColumn<\n\tT,\n\tMySqlBinaryConfig & { setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinary';\n\n\toverride mapFromDriverValue(value: string | Buffer | Uint8Array): string {\n\t\tif (typeof value === 'string') return value;\n\t\tif (Buffer.isBuffer(value)) return value.toString();\n\n\t\tconst str: string[] = [];\n\t\tfor (const v of value) {\n\t\t\tstr.push(v === 49 ? '1' : '0');\n\t\t}\n\n\t\treturn str.join('');\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `binary(${this.length})` : `binary`;\n\t}\n}\n\nexport interface MySqlBinaryConfig {\n\tlength?: number;\n}\n\nexport function binary(\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(\n\tname: string,\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(a?: string | MySqlBinaryConfig, b: MySqlBinaryConfig = {}) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBinaryConfig>(a, b);\n\treturn new MySqlBinaryBuilder(name, config.length);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAuC;AACvC,oBAAgD;AAEzC,MAAM,2BAA2B,iCAQtC;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAA4B;AACrD,UAAM,MAAM,iBAAiB,aAAa;AAC1C,SAAK,OAAO,SAAS,UAAU;AAC/B,SAAK,OAAO,YAAY,WAAW;AACnC,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI,YAAY,OAAO,KAAK,MAAa;AAAA,EACjD;AACD;AAEO,MAAM,oBAAiE,0BAG5E;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEvC,mBAAmB,OAA6C;AACxE,QAAI,OAAO,UAAU,SAAU,QAAO;AACtC,QAAI,OAAO,SAAS,KAAK,EAAG,QAAO,MAAM,SAAS;AAElD,UAAM,MAAgB,CAAC;AACvB,eAAW,KAAK,OAAO;AACtB,UAAI,KAAK,MAAM,KAAK,MAAM,GAAG;AAAA,IAC9B;AAEA,WAAO,IAAI,KAAK,EAAE;AAAA,EACnB;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,UAAU,KAAK,MAAM,MAAM;AAAA,EAC3D;AACD;AAaO,SAAS,OAAO,GAAgC,IAAuB,CAAC,GAAG;AACjF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA0C,GAAG,CAAC;AACvE,SAAO,IAAI,mBAAmB,MAAM,OAAO,MAAM;AAClD;","names":[]}
@@ -2,11 +2,13 @@ import type { ColumnBaseConfig } from "../../column.cjs";
2
2
  import { entityKind } from "../../entity.cjs";
3
3
  import { MySqlColumn, MySqlColumnBuilder } from "./common.cjs";
4
4
  export declare class MySqlBinaryBuilder extends MySqlColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'string binary';
6
7
  data: string;
7
8
  driverParam: string;
8
9
  }, MySqlBinaryConfig & {
9
10
  setLength: boolean;
11
+ isLengthExact: true;
10
12
  }> {
11
13
  static readonly [entityKind]: string;
12
14
  constructor(name: string, length: number | undefined);
@@ -2,11 +2,13 @@ import type { ColumnBaseConfig } from "../../column.js";
2
2
  import { entityKind } from "../../entity.js";
3
3
  import { MySqlColumn, MySqlColumnBuilder } from "./common.js";
4
4
  export declare class MySqlBinaryBuilder extends MySqlColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'string binary';
6
7
  data: string;
7
8
  driverParam: string;
8
9
  }, MySqlBinaryConfig & {
9
10
  setLength: boolean;
11
+ isLengthExact: true;
10
12
  }> {
11
13
  static readonly [entityKind]: string;
12
14
  constructor(name: string, length: number | undefined);
@@ -7,6 +7,7 @@ class MySqlBinaryBuilder extends MySqlColumnBuilder {
7
7
  super(name, "string binary", "MySqlBinary");
8
8
  this.config.length = length ?? 1;
9
9
  this.config.setLength = length !== void 0;
10
+ this.config.isLengthExact = true;
10
11
  }
11
12
  /** @internal */
12
13
  build(table) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/binary.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBinaryBuilder extends MySqlColumnBuilder<\n\t{\n\t\tdataType: 'string binary';\n\t\tdata: string;\n\t\tdriverParam: string;\n\t},\n\tMySqlBinaryConfig & { setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinaryBuilder';\n\n\tconstructor(name: string, length: number | undefined) {\n\t\tsuper(name, 'string binary', 'MySqlBinary');\n\t\tthis.config.length = length ?? 1;\n\t\tthis.config.setLength = length !== undefined;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBinary(table, this.config as any);\n\t}\n}\n\nexport class MySqlBinary<T extends ColumnBaseConfig<'string binary'>> extends MySqlColumn<\n\tT,\n\tMySqlBinaryConfig & { setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinary';\n\n\toverride mapFromDriverValue(value: string | Buffer | Uint8Array): string {\n\t\tif (typeof value === 'string') return value;\n\t\tif (Buffer.isBuffer(value)) return value.toString();\n\n\t\tconst str: string[] = [];\n\t\tfor (const v of value) {\n\t\t\tstr.push(v === 49 ? '1' : '0');\n\t\t}\n\n\t\treturn str.join('');\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `binary(${this.length})` : `binary`;\n\t}\n}\n\nexport interface MySqlBinaryConfig {\n\tlength?: number;\n}\n\nexport function binary(\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(\n\tname: string,\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(a?: string | MySqlBinaryConfig, b: MySqlBinaryConfig = {}) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBinaryConfig>(a, b);\n\treturn new MySqlBinaryBuilder(name, config.length);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,8BAA8B;AACvC,SAAS,aAAa,0BAA0B;AAEzC,MAAM,2BAA2B,mBAOtC;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAA4B;AACrD,UAAM,MAAM,iBAAiB,aAAa;AAC1C,SAAK,OAAO,SAAS,UAAU;AAC/B,SAAK,OAAO,YAAY,WAAW;AAAA,EACpC;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI,YAAY,OAAO,KAAK,MAAa;AAAA,EACjD;AACD;AAEO,MAAM,oBAAiE,YAG5E;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEvC,mBAAmB,OAA6C;AACxE,QAAI,OAAO,UAAU,SAAU,QAAO;AACtC,QAAI,OAAO,SAAS,KAAK,EAAG,QAAO,MAAM,SAAS;AAElD,UAAM,MAAgB,CAAC;AACvB,eAAW,KAAK,OAAO;AACtB,UAAI,KAAK,MAAM,KAAK,MAAM,GAAG;AAAA,IAC9B;AAEA,WAAO,IAAI,KAAK,EAAE;AAAA,EACnB;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,UAAU,KAAK,MAAM,MAAM;AAAA,EAC3D;AACD;AAaO,SAAS,OAAO,GAAgC,IAAuB,CAAC,GAAG;AACjF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAA0C,GAAG,CAAC;AACvE,SAAO,IAAI,mBAAmB,MAAM,OAAO,MAAM;AAClD;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/binary.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBinaryBuilder extends MySqlColumnBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: 'string binary';\n\t\tdata: string;\n\t\tdriverParam: string;\n\t},\n\tMySqlBinaryConfig & { setLength: boolean; isLengthExact: true }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinaryBuilder';\n\n\tconstructor(name: string, length: number | undefined) {\n\t\tsuper(name, 'string binary', 'MySqlBinary');\n\t\tthis.config.length = length ?? 1;\n\t\tthis.config.setLength = length !== undefined;\n\t\tthis.config.isLengthExact = true;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBinary(table, this.config as any);\n\t}\n}\n\nexport class MySqlBinary<T extends ColumnBaseConfig<'string binary'>> extends MySqlColumn<\n\tT,\n\tMySqlBinaryConfig & { setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlBinary';\n\n\toverride mapFromDriverValue(value: string | Buffer | Uint8Array): string {\n\t\tif (typeof value === 'string') return value;\n\t\tif (Buffer.isBuffer(value)) return value.toString();\n\n\t\tconst str: string[] = [];\n\t\tfor (const v of value) {\n\t\t\tstr.push(v === 49 ? '1' : '0');\n\t\t}\n\n\t\treturn str.join('');\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `binary(${this.length})` : `binary`;\n\t}\n}\n\nexport interface MySqlBinaryConfig {\n\tlength?: number;\n}\n\nexport function binary(\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(\n\tname: string,\n\tconfig?: MySqlBinaryConfig,\n): MySqlBinaryBuilder;\nexport function binary(a?: string | MySqlBinaryConfig, b: MySqlBinaryConfig = {}) {\n\tconst { name, config } = getColumnNameAndConfig<MySqlBinaryConfig>(a, b);\n\treturn new MySqlBinaryBuilder(name, config.length);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,8BAA8B;AACvC,SAAS,aAAa,0BAA0B;AAEzC,MAAM,2BAA2B,mBAQtC;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAA4B;AACrD,UAAM,MAAM,iBAAiB,aAAa;AAC1C,SAAK,OAAO,SAAS,UAAU;AAC/B,SAAK,OAAO,YAAY,WAAW;AACnC,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI,YAAY,OAAO,KAAK,MAAa;AAAA,EACjD;AACD;AAEO,MAAM,oBAAiE,YAG5E;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEvC,mBAAmB,OAA6C;AACxE,QAAI,OAAO,UAAU,SAAU,QAAO;AACtC,QAAI,OAAO,SAAS,KAAK,EAAG,QAAO,MAAM,SAAS;AAElD,UAAM,MAAgB,CAAC;AACvB,eAAW,KAAK,OAAO;AACtB,UAAI,KAAK,MAAM,KAAK,MAAM,GAAG;AAAA,IAC9B;AAEA,WAAO,IAAI,KAAK,EAAE;AAAA,EACnB;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,UAAU,KAAK,MAAM,MAAM;AAAA,EAC3D;AACD;AAaO,SAAS,OAAO,GAAgC,IAAuB,CAAC,GAAG;AACjF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAA0C,GAAG,CAAC;AACvE,SAAO,IAAI,mBAAmB,MAAM,OAAO,MAAM;AAClD;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/boolean.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBooleanBuilder extends MySqlColumnBuilder<{\n\tdataType: 'boolean';\n\tdata: boolean;\n\tdriverParam: number | boolean;\n}> {\n\tstatic override readonly [entityKind]: string = 'MySqlBooleanBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'boolean', 'MySqlBoolean');\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBoolean(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBoolean<T extends ColumnBaseConfig<'boolean'>> extends MySqlColumn<T> {\n\tstatic override readonly [entityKind]: string = 'MySqlBoolean';\n\n\tgetSQLType(): string {\n\t\treturn 'boolean';\n\t}\n\n\toverride mapFromDriverValue(value: number | boolean): boolean {\n\t\tif (typeof value === 'boolean') {\n\t\t\treturn value;\n\t\t}\n\t\treturn value === 1;\n\t}\n}\n\nexport function boolean(name?: string): MySqlBooleanBuilder {\n\treturn new MySqlBooleanBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAAgD;AAEzC,MAAM,4BAA4B,iCAItC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,WAAW,cAAc;AAAA,EACtC;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAA4D,0BAAe;AAAA,EACvF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAkC;AAC7D,QAAI,OAAO,UAAU,WAAW;AAC/B,aAAO;AAAA,IACR;AACA,WAAO,UAAU;AAAA,EAClB;AACD;AAEO,SAAS,QAAQ,MAAoC;AAC3D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/boolean.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBooleanBuilder extends MySqlColumnBuilder<{\n\tname: string;\n\tdataType: 'boolean';\n\tdata: boolean;\n\tdriverParam: number | boolean;\n}> {\n\tstatic override readonly [entityKind]: string = 'MySqlBooleanBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'boolean', 'MySqlBoolean');\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBoolean(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBoolean<T extends ColumnBaseConfig<'boolean'>> extends MySqlColumn<T> {\n\tstatic override readonly [entityKind]: string = 'MySqlBoolean';\n\n\tgetSQLType(): string {\n\t\treturn 'boolean';\n\t}\n\n\toverride mapFromDriverValue(value: number | boolean): boolean {\n\t\tif (typeof value === 'boolean') {\n\t\t\treturn value;\n\t\t}\n\t\treturn value === 1;\n\t}\n}\n\nexport function boolean(name?: string): MySqlBooleanBuilder {\n\treturn new MySqlBooleanBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAAgD;AAEzC,MAAM,4BAA4B,iCAKtC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,WAAW,cAAc;AAAA,EACtC;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAA4D,0BAAe;AAAA,EACvF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAkC;AAC7D,QAAI,OAAO,UAAU,WAAW;AAC/B,aAAO;AAAA,IACR;AACA,WAAO,UAAU;AAAA,EAClB;AACD;AAEO,SAAS,QAAQ,MAAoC;AAC3D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
@@ -2,6 +2,7 @@ import type { ColumnBaseConfig } from "../../column.cjs";
2
2
  import { entityKind } from "../../entity.cjs";
3
3
  import { MySqlColumn, MySqlColumnBuilder } from "./common.cjs";
4
4
  export declare class MySqlBooleanBuilder extends MySqlColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'boolean';
6
7
  data: boolean;
7
8
  driverParam: number | boolean;
@@ -2,6 +2,7 @@ import type { ColumnBaseConfig } from "../../column.js";
2
2
  import { entityKind } from "../../entity.js";
3
3
  import { MySqlColumn, MySqlColumnBuilder } from "./common.js";
4
4
  export declare class MySqlBooleanBuilder extends MySqlColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'boolean';
6
7
  data: boolean;
7
8
  driverParam: number | boolean;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/boolean.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBooleanBuilder extends MySqlColumnBuilder<{\n\tdataType: 'boolean';\n\tdata: boolean;\n\tdriverParam: number | boolean;\n}> {\n\tstatic override readonly [entityKind]: string = 'MySqlBooleanBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'boolean', 'MySqlBoolean');\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBoolean(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBoolean<T extends ColumnBaseConfig<'boolean'>> extends MySqlColumn<T> {\n\tstatic override readonly [entityKind]: string = 'MySqlBoolean';\n\n\tgetSQLType(): string {\n\t\treturn 'boolean';\n\t}\n\n\toverride mapFromDriverValue(value: number | boolean): boolean {\n\t\tif (typeof value === 'boolean') {\n\t\t\treturn value;\n\t\t}\n\t\treturn value === 1;\n\t}\n}\n\nexport function boolean(name?: string): MySqlBooleanBuilder {\n\treturn new MySqlBooleanBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,aAAa,0BAA0B;AAEzC,MAAM,4BAA4B,mBAItC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,WAAW,cAAc;AAAA,EACtC;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAA4D,YAAe;AAAA,EACvF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAkC;AAC7D,QAAI,OAAO,UAAU,WAAW;AAC/B,aAAO;AAAA,IACR;AACA,WAAO,UAAU;AAAA,EAClB;AACD;AAEO,SAAS,QAAQ,MAAoC;AAC3D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/boolean.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlBooleanBuilder extends MySqlColumnBuilder<{\n\tname: string;\n\tdataType: 'boolean';\n\tdata: boolean;\n\tdriverParam: number | boolean;\n}> {\n\tstatic override readonly [entityKind]: string = 'MySqlBooleanBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'boolean', 'MySqlBoolean');\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlBoolean(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlBoolean<T extends ColumnBaseConfig<'boolean'>> extends MySqlColumn<T> {\n\tstatic override readonly [entityKind]: string = 'MySqlBoolean';\n\n\tgetSQLType(): string {\n\t\treturn 'boolean';\n\t}\n\n\toverride mapFromDriverValue(value: number | boolean): boolean {\n\t\tif (typeof value === 'boolean') {\n\t\t\treturn value;\n\t\t}\n\t\treturn value === 1;\n\t}\n}\n\nexport function boolean(name?: string): MySqlBooleanBuilder {\n\treturn new MySqlBooleanBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,aAAa,0BAA0B;AAEzC,MAAM,4BAA4B,mBAKtC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,WAAW,cAAc;AAAA,EACtC;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,qBAA4D,YAAe;AAAA,EACvF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAkC;AAC7D,QAAI,OAAO,UAAU,WAAW;AAC/B,aAAO;AAAA,IACR;AACA,WAAO,UAAU;AAAA,EAClB;AACD;AAEO,SAAS,QAAQ,MAAoC;AAC3D,SAAO,IAAI,oBAAoB,QAAQ,EAAE;AAC1C;","names":[]}
@@ -33,6 +33,7 @@ class MySqlCharBuilder extends import_common.MySqlColumnBuilder {
33
33
  this.config.length = config.length ?? 1;
34
34
  this.config.setLength = config.length !== void 0;
35
35
  this.config.enum = config.enum;
36
+ this.config.isLengthExact = true;
36
37
  }
37
38
  /** @internal */
38
39
  build(table) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/char.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlCharBuilder<\n\tTEnum extends [string, ...string[]],\n> extends MySqlColumnBuilder<\n\t{\n\t\tdataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';\n\t\tdata: TEnum[number];\n\t\tdriverParam: number | string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enum?: TEnum; length: number; setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlCharBuilder';\n\n\tconstructor(name: string, config: MySqlCharConfig<TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'MySqlChar');\n\t\tthis.config.length = (config.length ?? 1) as number;\n\t\tthis.config.setLength = config.length !== undefined;\n\t\tthis.config.enum = config.enum;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlChar(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlChar<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends MySqlColumn<T, { enum?: T['enumValues']; length: number; setLength: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlChar';\n\n\toverride readonly enumValues = this.config.enum;\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `char(${this.length})` : `char`;\n\t}\n}\n\nexport interface MySqlCharConfig<\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> {\n\tenum?: TEnum;\n\tlength?: number;\n}\n\nexport function char<U extends string, T extends Readonly<[U, ...U[]]>>(\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n>(\n\tname: string,\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char(a?: string | MySqlCharConfig, b: MySqlCharConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<MySqlCharConfig>(a, b);\n\treturn new MySqlCharBuilder(name, config as any);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAkE;AAClE,oBAAgD;AAEzC,MAAM,yBAEH,iCAQR;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAgC;AACzD,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,WAAW;AACvE,SAAK,OAAO,SAAU,OAAO,UAAU;AACvC,SAAK,OAAO,YAAY,OAAO,WAAW;AAC1C,SAAK,OAAO,OAAO,OAAO;AAAA,EAC3B;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,kBACJ,0BACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,QAAQ,KAAK,MAAM,MAAM;AAAA,EACzD;AACD;AAmBO,SAAS,KAAK,GAA8B,IAAqB,CAAC,GAAQ;AAChF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAAwC,GAAG,CAAC;AACrE,SAAO,IAAI,iBAAiB,MAAM,MAAa;AAChD;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/char.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlCharBuilder<\n\tTEnum extends [string, ...string[]],\n> extends MySqlColumnBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';\n\t\tdata: TEnum[number];\n\t\tdriverParam: number | string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enum?: TEnum; length: number; setLength: boolean; isLengthExact: true }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlCharBuilder';\n\n\tconstructor(name: string, config: MySqlCharConfig<TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'MySqlChar');\n\t\tthis.config.length = (config.length ?? 1) as number;\n\t\tthis.config.setLength = config.length !== undefined;\n\t\tthis.config.enum = config.enum;\n\t\tthis.config.isLengthExact = true;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlChar(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlChar<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends MySqlColumn<T, { enum?: T['enumValues']; length: number; setLength: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlChar';\n\n\toverride readonly enumValues = this.config.enum;\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `char(${this.length})` : `char`;\n\t}\n}\n\nexport interface MySqlCharConfig<\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> {\n\tenum?: TEnum;\n\tlength?: number;\n}\n\nexport function char<U extends string, T extends Readonly<[U, ...U[]]>>(\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n>(\n\tname: string,\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char(a?: string | MySqlCharConfig, b: MySqlCharConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<MySqlCharConfig>(a, b);\n\treturn new MySqlCharBuilder(name, config as any);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAkE;AAClE,oBAAgD;AAEzC,MAAM,yBAEH,iCASR;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAgC;AACzD,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,WAAW;AACvE,SAAK,OAAO,SAAU,OAAO,UAAU;AACvC,SAAK,OAAO,YAAY,OAAO,WAAW;AAC1C,SAAK,OAAO,OAAO,OAAO;AAC1B,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,kBACJ,0BACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,QAAQ,KAAK,MAAM,MAAM;AAAA,EACzD;AACD;AAmBO,SAAS,KAAK,GAA8B,IAAqB,CAAC,GAAQ;AAChF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAAwC,GAAG,CAAC;AACrE,SAAO,IAAI,iBAAiB,MAAM,MAAa;AAChD;","names":[]}
@@ -3,6 +3,7 @@ import { entityKind } from "../../entity.cjs";
3
3
  import { type Equal, type Writable } from "../../utils.cjs";
4
4
  import { MySqlColumn, MySqlColumnBuilder } from "./common.cjs";
5
5
  export declare class MySqlCharBuilder<TEnum extends [string, ...string[]]> extends MySqlColumnBuilder<{
6
+ name: string;
6
7
  dataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';
7
8
  data: TEnum[number];
8
9
  driverParam: number | string;
@@ -11,6 +12,7 @@ export declare class MySqlCharBuilder<TEnum extends [string, ...string[]]> exten
11
12
  enum?: TEnum;
12
13
  length: number;
13
14
  setLength: boolean;
15
+ isLengthExact: true;
14
16
  }> {
15
17
  static readonly [entityKind]: string;
16
18
  constructor(name: string, config: MySqlCharConfig<TEnum>);
@@ -3,6 +3,7 @@ import { entityKind } from "../../entity.js";
3
3
  import { type Equal, type Writable } from "../../utils.js";
4
4
  import { MySqlColumn, MySqlColumnBuilder } from "./common.js";
5
5
  export declare class MySqlCharBuilder<TEnum extends [string, ...string[]]> extends MySqlColumnBuilder<{
6
+ name: string;
6
7
  dataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';
7
8
  data: TEnum[number];
8
9
  driverParam: number | string;
@@ -11,6 +12,7 @@ export declare class MySqlCharBuilder<TEnum extends [string, ...string[]]> exten
11
12
  enum?: TEnum;
12
13
  length: number;
13
14
  setLength: boolean;
15
+ isLengthExact: true;
14
16
  }> {
15
17
  static readonly [entityKind]: string;
16
18
  constructor(name: string, config: MySqlCharConfig<TEnum>);
@@ -8,6 +8,7 @@ class MySqlCharBuilder extends MySqlColumnBuilder {
8
8
  this.config.length = config.length ?? 1;
9
9
  this.config.setLength = config.length !== void 0;
10
10
  this.config.enum = config.enum;
11
+ this.config.isLengthExact = true;
11
12
  }
12
13
  /** @internal */
13
14
  build(table) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/char.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlCharBuilder<\n\tTEnum extends [string, ...string[]],\n> extends MySqlColumnBuilder<\n\t{\n\t\tdataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';\n\t\tdata: TEnum[number];\n\t\tdriverParam: number | string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enum?: TEnum; length: number; setLength: boolean }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlCharBuilder';\n\n\tconstructor(name: string, config: MySqlCharConfig<TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'MySqlChar');\n\t\tthis.config.length = (config.length ?? 1) as number;\n\t\tthis.config.setLength = config.length !== undefined;\n\t\tthis.config.enum = config.enum;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlChar(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlChar<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends MySqlColumn<T, { enum?: T['enumValues']; length: number; setLength: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlChar';\n\n\toverride readonly enumValues = this.config.enum;\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `char(${this.length})` : `char`;\n\t}\n}\n\nexport interface MySqlCharConfig<\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> {\n\tenum?: TEnum;\n\tlength?: number;\n}\n\nexport function char<U extends string, T extends Readonly<[U, ...U[]]>>(\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n>(\n\tname: string,\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char(a?: string | MySqlCharConfig, b: MySqlCharConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<MySqlCharConfig>(a, b);\n\treturn new MySqlCharBuilder(name, config as any);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAqB,8BAA6C;AAClE,SAAS,aAAa,0BAA0B;AAEzC,MAAM,yBAEH,mBAQR;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAgC;AACzD,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,WAAW;AACvE,SAAK,OAAO,SAAU,OAAO,UAAU;AACvC,SAAK,OAAO,YAAY,OAAO,WAAW;AAC1C,SAAK,OAAO,OAAO,OAAO;AAAA,EAC3B;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,kBACJ,YACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,QAAQ,KAAK,MAAM,MAAM;AAAA,EACzD;AACD;AAmBO,SAAS,KAAK,GAA8B,IAAqB,CAAC,GAAQ;AAChF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAAwC,GAAG,CAAC;AACrE,SAAO,IAAI,iBAAiB,MAAM,MAAa;AAChD;","names":[]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/char.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { MySqlColumn, MySqlColumnBuilder } from './common.ts';\n\nexport class MySqlCharBuilder<\n\tTEnum extends [string, ...string[]],\n> extends MySqlColumnBuilder<\n\t{\n\t\tname: string;\n\t\tdataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';\n\t\tdata: TEnum[number];\n\t\tdriverParam: number | string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enum?: TEnum; length: number; setLength: boolean; isLengthExact: true }\n> {\n\tstatic override readonly [entityKind]: string = 'MySqlCharBuilder';\n\n\tconstructor(name: string, config: MySqlCharConfig<TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'MySqlChar');\n\t\tthis.config.length = (config.length ?? 1) as number;\n\t\tthis.config.setLength = config.length !== undefined;\n\t\tthis.config.enum = config.enum;\n\t\tthis.config.isLengthExact = true;\n\t}\n\n\t/** @internal */\n\toverride build(table: MySqlTable) {\n\t\treturn new MySqlChar(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class MySqlChar<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends MySqlColumn<T, { enum?: T['enumValues']; length: number; setLength: boolean }>\n{\n\tstatic override readonly [entityKind]: string = 'MySqlChar';\n\n\toverride readonly enumValues = this.config.enum;\n\n\tgetSQLType(): string {\n\t\treturn this.config.setLength ? `char(${this.length})` : `char`;\n\t}\n}\n\nexport interface MySqlCharConfig<\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> {\n\tenum?: TEnum;\n\tlength?: number;\n}\n\nexport function char<U extends string, T extends Readonly<[U, ...U[]]>>(\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n>(\n\tname: string,\n\tconfig?: MySqlCharConfig<T | Writable<T>>,\n): MySqlCharBuilder<Writable<T>>;\nexport function char(a?: string | MySqlCharConfig, b: MySqlCharConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<MySqlCharConfig>(a, b);\n\treturn new MySqlCharBuilder(name, config as any);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAqB,8BAA6C;AAClE,SAAS,aAAa,0BAA0B;AAEzC,MAAM,yBAEH,mBASR;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAgC;AACzD,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,WAAW;AACvE,SAAK,OAAO,SAAU,OAAO,UAAU;AACvC,SAAK,OAAO,YAAY,OAAO,WAAW;AAC1C,SAAK,OAAO,OAAO,OAAO;AAC1B,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAmB;AACjC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,kBACJ,YACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,aAAqB;AACpB,WAAO,KAAK,OAAO,YAAY,QAAQ,KAAK,MAAM,MAAM;AAAA,EACzD;AACD;AAmBO,SAAS,KAAK,GAA8B,IAAqB,CAAC,GAAQ;AAChF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAAwC,GAAG,CAAC;AACrE,SAAO,IAAI,iBAAiB,MAAM,MAAa;AAChD;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/common.ts"],"sourcesContent":["import { ColumnBuilder } from '~/column-builder.ts';\nimport type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasDefault,\n\tHasGenerated,\n\tIsAutoincrement,\n} from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/mysql-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/mysql-core/foreign-keys.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { Update } from '~/utils.ts';\nimport { uniqueKeyName } from '../unique-constraint.ts';\n\nexport type MySqlColumns = Record<string, MySqlColumn<any>>;\n\nexport interface ReferenceConfig {\n\tref: () => MySqlColumn;\n\tactions: {\n\t\tonUpdate?: UpdateDeleteAction;\n\t\tonDelete?: UpdateDeleteAction;\n\t};\n}\n\nexport interface MySqlGeneratedColumnConfig {\n\tmode?: 'virtual' | 'stored';\n}\n\nexport abstract class MySqlColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType> & {\n\t\tdata: any;\n\t},\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends ColumnBuilder<T, TRuntimeConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilder';\n\n\tprivate foreignKeyConfigs: ReferenceConfig[] = [];\n\n\treferences(ref: ReferenceConfig['ref'], actions: ReferenceConfig['actions'] = {}): this {\n\t\tthis.foreignKeyConfigs.push({ ref, actions });\n\t\treturn this;\n\t}\n\n\tunique(name?: string): this {\n\t\tthis.config.isUnique = true;\n\t\tthis.config.uniqueName = name;\n\t\treturn this;\n\t}\n\n\tgeneratedAlwaysAs(as: SQL | T['data'] | (() => SQL), config?: MySqlGeneratedColumnConfig): HasGenerated<this, {\n\t\ttype: 'always';\n\t}> {\n\t\tthis.config.generated = {\n\t\t\tas,\n\t\t\ttype: 'always',\n\t\t\tmode: config?.mode ?? 'virtual',\n\t\t};\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tbuildForeignKeys(column: MySqlColumn, table: MySqlTable): ForeignKey[] {\n\t\treturn this.foreignKeyConfigs.map(({ ref, actions }) => {\n\t\t\treturn ((ref, actions) => {\n\t\t\t\tconst builder = new ForeignKeyBuilder(() => {\n\t\t\t\t\tconst foreignColumn = ref();\n\t\t\t\t\treturn { columns: [column], foreignColumns: [foreignColumn] };\n\t\t\t\t});\n\t\t\t\tif (actions.onUpdate) {\n\t\t\t\t\tbuilder.onUpdate(actions.onUpdate);\n\t\t\t\t}\n\t\t\t\tif (actions.onDelete) {\n\t\t\t\t\tbuilder.onDelete(actions.onDelete);\n\t\t\t\t}\n\t\t\t\treturn builder.build(table);\n\t\t\t})(ref, actions);\n\t\t});\n\t}\n\n\t/** @internal */\n\tabstract build(table: MySqlTable): MySqlColumn;\n}\n\n// To understand how to use `MySqlColumn` and `AnyMySqlColumn`, see `Column` and `AnyColumn` documentation.\nexport abstract class MySqlColumn<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = {},\n> extends Column<T, TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumn';\n\n\t/** @internal */\n\toverride readonly table: MySqlTable;\n\n\tconstructor(\n\t\ttable: MySqlTable,\n\t\tconfig: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig,\n\t) {\n\t\tif (!config.uniqueName) {\n\t\t\tconfig.uniqueName = uniqueKeyName(table, [config.name]);\n\t\t}\n\t\tsuper(table, config);\n\t\tthis.table = table;\n\t}\n}\n\nexport type AnyMySqlColumn<TPartial extends Partial<ColumnBaseConfig<ColumnType>> = {}> = MySqlColumn<\n\tRequired<Update<ColumnBaseConfig<ColumnType>, TPartial>>\n>;\n\nexport interface MySqlColumnWithAutoIncrementConfig {\n\tautoIncrement: boolean;\n}\n\nexport abstract class MySqlColumnBuilderWithAutoIncrement<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends MySqlColumnBuilder<T, TRuntimeConfig & MySqlColumnWithAutoIncrementConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilderWithAutoIncrement';\n\n\tconstructor(name: string, dataType: T['dataType'], columnType: string) {\n\t\tsuper(name, dataType, columnType);\n\t\tthis.config.autoIncrement = false;\n\t}\n\n\tautoincrement(): IsAutoincrement<HasDefault<this>> {\n\t\tthis.config.autoIncrement = true;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as IsAutoincrement<HasDefault<this>>;\n\t}\n}\n\nexport abstract class MySqlColumnWithAutoIncrement<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends MySqlColumn<T, MySqlColumnWithAutoIncrementConfig & TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnWithAutoIncrement';\n\n\treadonly autoIncrement: boolean = this.config.autoIncrement;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAA8B;AAW9B,oBAAuB;AACvB,oBAA2B;AAE3B,0BAAkC;AAIlC,+BAA8B;AAgBvB,MAAe,2BAMZ,oCAA+C;AAAA,EACxD,QAA0B,wBAAU,IAAY;AAAA,EAExC,oBAAuC,CAAC;AAAA,EAEhD,WAAW,KAA6B,UAAsC,CAAC,GAAS;AACvF,SAAK,kBAAkB,KAAK,EAAE,KAAK,QAAQ,CAAC;AAC5C,WAAO;AAAA,EACR;AAAA,EAEA,OAAO,MAAqB;AAC3B,SAAK,OAAO,WAAW;AACvB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA,EAEA,kBAAkB,IAAmC,QAElD;AACF,SAAK,OAAO,YAAY;AAAA,MACvB;AAAA,MACA,MAAM;AAAA,MACN,MAAM,QAAQ,QAAQ;AAAA,IACvB;AACA,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,iBAAiB,QAAqB,OAAiC;AACtE,WAAO,KAAK,kBAAkB,IAAI,CAAC,EAAE,KAAK,QAAQ,MAAM;AACvD,cAAQ,CAACA,MAAKC,aAAY;AACzB,cAAM,UAAU,IAAI,sCAAkB,MAAM;AAC3C,gBAAM,gBAAgBD,KAAI;AAC1B,iBAAO,EAAE,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE;AAAA,QAC7D,CAAC;AACD,YAAIC,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,YAAIA,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,eAAO,QAAQ,MAAM,KAAK;AAAA,MAC3B,GAAG,KAAK,OAAO;AAAA,IAChB,CAAC;AAAA,EACF;AAID;AAGO,MAAe,oBAGZ,qBAA0B;AAAA,EACnC,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAG9B;AAAA,EAElB,YACC,OACA,QACC;AACD,QAAI,CAAC,OAAO,YAAY;AACvB,aAAO,iBAAa,wCAAc,OAAO,CAAC,OAAO,IAAI,CAAC;AAAA,IACvD;AACA,UAAM,OAAO,MAAM;AACnB,SAAK,QAAQ;AAAA,EACd;AACD;AAUO,MAAe,4CAIZ,mBAAyF;AAAA,EAClG,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,UAAyB,YAAoB;AACtE,UAAM,MAAM,UAAU,UAAU;AAChC,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA,EAEA,gBAAmD;AAClD,SAAK,OAAO,gBAAgB;AAC5B,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AACD;AAEO,MAAe,qCAGZ,YAAoE;AAAA,EAC7E,QAA0B,wBAAU,IAAY;AAAA,EAEvC,gBAAyB,KAAK,OAAO;AAC/C;","names":["ref","actions"]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/common.ts"],"sourcesContent":["import { ColumnBuilder } from '~/column-builder.ts';\nimport type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasDefault,\n\tHasGenerated,\n\tIsAutoincrement,\n} from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/mysql-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/mysql-core/foreign-keys.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { Update } from '~/utils.ts';\nimport { uniqueKeyName } from '../unique-constraint.ts';\n\nexport type MySqlColumns = Record<string, MySqlColumn<any>>;\n\nexport interface ReferenceConfig {\n\tref: () => MySqlColumn;\n\tactions: {\n\t\tonUpdate?: UpdateDeleteAction;\n\t\tonDelete?: UpdateDeleteAction;\n\t};\n}\n\nexport interface MySqlGeneratedColumnConfig {\n\tmode?: 'virtual' | 'stored';\n}\n\nexport abstract class MySqlColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType> & {\n\t\tdata: any;\n\t},\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends ColumnBuilder<T, TRuntimeConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilder';\n\n\tprivate foreignKeyConfigs: ReferenceConfig[] = [];\n\n\treferences(ref: ReferenceConfig['ref'], actions: ReferenceConfig['actions'] = {}): this {\n\t\tthis.foreignKeyConfigs.push({ ref, actions });\n\t\treturn this;\n\t}\n\n\tunique(name?: string): this {\n\t\tthis.config.isUnique = true;\n\t\tthis.config.uniqueName = name;\n\t\treturn this;\n\t}\n\n\tgeneratedAlwaysAs(as: SQL | T['data'] | (() => SQL), config?: MySqlGeneratedColumnConfig): HasGenerated<this, {\n\t\ttype: 'always';\n\t}> {\n\t\tthis.config.generated = {\n\t\t\tas,\n\t\t\ttype: 'always',\n\t\t\tmode: config?.mode ?? 'virtual',\n\t\t};\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tbuildForeignKeys(column: MySqlColumn, table: MySqlTable): ForeignKey[] {\n\t\treturn this.foreignKeyConfigs.map(({ ref, actions }) => {\n\t\t\treturn ((ref, actions) => {\n\t\t\t\tconst builder = new ForeignKeyBuilder(() => {\n\t\t\t\t\tconst foreignColumn = ref();\n\t\t\t\t\treturn { columns: [column], foreignColumns: [foreignColumn] };\n\t\t\t\t});\n\t\t\t\tif (actions.onUpdate) {\n\t\t\t\t\tbuilder.onUpdate(actions.onUpdate);\n\t\t\t\t}\n\t\t\t\tif (actions.onDelete) {\n\t\t\t\t\tbuilder.onDelete(actions.onDelete);\n\t\t\t\t}\n\t\t\t\treturn builder.build(table);\n\t\t\t})(ref, actions);\n\t\t});\n\t}\n\n\t/** @internal */\n\tabstract build(table: MySqlTable): MySqlColumn;\n}\n\n// To understand how to use `MySqlColumn` and `AnyMySqlColumn`, see `Column` and `AnyColumn` documentation.\nexport abstract class MySqlColumn<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = {},\n> extends Column<T, TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumn';\n\n\t/** @internal */\n\toverride readonly table: MySqlTable;\n\n\tconstructor(\n\t\ttable: MySqlTable,\n\t\tconfig: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig,\n\t) {\n\t\tif (!config.uniqueName) {\n\t\t\tconfig.uniqueName = uniqueKeyName(table, [config.name]);\n\t\t}\n\t\tsuper(table, config);\n\t\tthis.table = table;\n\t}\n}\n\nexport type AnyMySqlColumn<TPartial extends Partial<ColumnBaseConfig<ColumnType>> = {}> = MySqlColumn<\n\tRequired<Update<ColumnBaseConfig<ColumnType>, TPartial>>\n>;\n\nexport interface MySqlColumnWithAutoIncrementConfig {\n\tautoIncrement: boolean;\n}\n\nexport abstract class MySqlColumnBuilderWithAutoIncrement<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends MySqlColumnBuilder<T, TRuntimeConfig & MySqlColumnWithAutoIncrementConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilderWithAutoIncrement';\n\n\tconstructor(name: NonNullable<T['name']>, dataType: T['dataType'], columnType: string) {\n\t\tsuper(name, dataType, columnType);\n\t\tthis.config.autoIncrement = false;\n\t}\n\n\tautoincrement(): IsAutoincrement<HasDefault<this>> {\n\t\tthis.config.autoIncrement = true;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as IsAutoincrement<HasDefault<this>>;\n\t}\n}\n\nexport abstract class MySqlColumnWithAutoIncrement<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends MySqlColumn<T, MySqlColumnWithAutoIncrementConfig & TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnWithAutoIncrement';\n\n\treadonly autoIncrement: boolean = this.config.autoIncrement;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAA8B;AAW9B,oBAAuB;AACvB,oBAA2B;AAE3B,0BAAkC;AAIlC,+BAA8B;AAgBvB,MAAe,2BAMZ,oCAA+C;AAAA,EACxD,QAA0B,wBAAU,IAAY;AAAA,EAExC,oBAAuC,CAAC;AAAA,EAEhD,WAAW,KAA6B,UAAsC,CAAC,GAAS;AACvF,SAAK,kBAAkB,KAAK,EAAE,KAAK,QAAQ,CAAC;AAC5C,WAAO;AAAA,EACR;AAAA,EAEA,OAAO,MAAqB;AAC3B,SAAK,OAAO,WAAW;AACvB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA,EAEA,kBAAkB,IAAmC,QAElD;AACF,SAAK,OAAO,YAAY;AAAA,MACvB;AAAA,MACA,MAAM;AAAA,MACN,MAAM,QAAQ,QAAQ;AAAA,IACvB;AACA,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,iBAAiB,QAAqB,OAAiC;AACtE,WAAO,KAAK,kBAAkB,IAAI,CAAC,EAAE,KAAK,QAAQ,MAAM;AACvD,cAAQ,CAACA,MAAKC,aAAY;AACzB,cAAM,UAAU,IAAI,sCAAkB,MAAM;AAC3C,gBAAM,gBAAgBD,KAAI;AAC1B,iBAAO,EAAE,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE;AAAA,QAC7D,CAAC;AACD,YAAIC,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,YAAIA,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,eAAO,QAAQ,MAAM,KAAK;AAAA,MAC3B,GAAG,KAAK,OAAO;AAAA,IAChB,CAAC;AAAA,EACF;AAID;AAGO,MAAe,oBAGZ,qBAA0B;AAAA,EACnC,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAG9B;AAAA,EAElB,YACC,OACA,QACC;AACD,QAAI,CAAC,OAAO,YAAY;AACvB,aAAO,iBAAa,wCAAc,OAAO,CAAC,OAAO,IAAI,CAAC;AAAA,IACvD;AACA,UAAM,OAAO,MAAM;AACnB,SAAK,QAAQ;AAAA,EACd;AACD;AAUO,MAAe,4CAIZ,mBAAyF;AAAA,EAClG,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAA8B,UAAyB,YAAoB;AACtF,UAAM,MAAM,UAAU,UAAU;AAChC,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA,EAEA,gBAAmD;AAClD,SAAK,OAAO,gBAAgB;AAC5B,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AACD;AAEO,MAAe,qCAGZ,YAAoE;AAAA,EAC7E,QAA0B,wBAAU,IAAY;AAAA,EAEvC,gBAAyB,KAAK,OAAO;AAC/C;","names":["ref","actions"]}
@@ -39,7 +39,7 @@ export interface MySqlColumnWithAutoIncrementConfig {
39
39
  }
40
40
  export declare abstract class MySqlColumnBuilderWithAutoIncrement<T extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>, TRuntimeConfig extends object = object, TExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig> extends MySqlColumnBuilder<T, TRuntimeConfig & MySqlColumnWithAutoIncrementConfig, TExtraConfig> {
41
41
  static readonly [entityKind]: string;
42
- constructor(name: string, dataType: T['dataType'], columnType: string);
42
+ constructor(name: NonNullable<T['name']>, dataType: T['dataType'], columnType: string);
43
43
  autoincrement(): IsAutoincrement<HasDefault<this>>;
44
44
  }
45
45
  export declare abstract class MySqlColumnWithAutoIncrement<T extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>, TRuntimeConfig extends object = object> extends MySqlColumn<T, MySqlColumnWithAutoIncrementConfig & TRuntimeConfig> {
@@ -39,7 +39,7 @@ export interface MySqlColumnWithAutoIncrementConfig {
39
39
  }
40
40
  export declare abstract class MySqlColumnBuilderWithAutoIncrement<T extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>, TRuntimeConfig extends object = object, TExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig> extends MySqlColumnBuilder<T, TRuntimeConfig & MySqlColumnWithAutoIncrementConfig, TExtraConfig> {
41
41
  static readonly [entityKind]: string;
42
- constructor(name: string, dataType: T['dataType'], columnType: string);
42
+ constructor(name: NonNullable<T['name']>, dataType: T['dataType'], columnType: string);
43
43
  autoincrement(): IsAutoincrement<HasDefault<this>>;
44
44
  }
45
45
  export declare abstract class MySqlColumnWithAutoIncrement<T extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>, TRuntimeConfig extends object = object> extends MySqlColumn<T, MySqlColumnWithAutoIncrementConfig & TRuntimeConfig> {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mysql-core/columns/common.ts"],"sourcesContent":["import { ColumnBuilder } from '~/column-builder.ts';\nimport type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasDefault,\n\tHasGenerated,\n\tIsAutoincrement,\n} from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/mysql-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/mysql-core/foreign-keys.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { Update } from '~/utils.ts';\nimport { uniqueKeyName } from '../unique-constraint.ts';\n\nexport type MySqlColumns = Record<string, MySqlColumn<any>>;\n\nexport interface ReferenceConfig {\n\tref: () => MySqlColumn;\n\tactions: {\n\t\tonUpdate?: UpdateDeleteAction;\n\t\tonDelete?: UpdateDeleteAction;\n\t};\n}\n\nexport interface MySqlGeneratedColumnConfig {\n\tmode?: 'virtual' | 'stored';\n}\n\nexport abstract class MySqlColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType> & {\n\t\tdata: any;\n\t},\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends ColumnBuilder<T, TRuntimeConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilder';\n\n\tprivate foreignKeyConfigs: ReferenceConfig[] = [];\n\n\treferences(ref: ReferenceConfig['ref'], actions: ReferenceConfig['actions'] = {}): this {\n\t\tthis.foreignKeyConfigs.push({ ref, actions });\n\t\treturn this;\n\t}\n\n\tunique(name?: string): this {\n\t\tthis.config.isUnique = true;\n\t\tthis.config.uniqueName = name;\n\t\treturn this;\n\t}\n\n\tgeneratedAlwaysAs(as: SQL | T['data'] | (() => SQL), config?: MySqlGeneratedColumnConfig): HasGenerated<this, {\n\t\ttype: 'always';\n\t}> {\n\t\tthis.config.generated = {\n\t\t\tas,\n\t\t\ttype: 'always',\n\t\t\tmode: config?.mode ?? 'virtual',\n\t\t};\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tbuildForeignKeys(column: MySqlColumn, table: MySqlTable): ForeignKey[] {\n\t\treturn this.foreignKeyConfigs.map(({ ref, actions }) => {\n\t\t\treturn ((ref, actions) => {\n\t\t\t\tconst builder = new ForeignKeyBuilder(() => {\n\t\t\t\t\tconst foreignColumn = ref();\n\t\t\t\t\treturn { columns: [column], foreignColumns: [foreignColumn] };\n\t\t\t\t});\n\t\t\t\tif (actions.onUpdate) {\n\t\t\t\t\tbuilder.onUpdate(actions.onUpdate);\n\t\t\t\t}\n\t\t\t\tif (actions.onDelete) {\n\t\t\t\t\tbuilder.onDelete(actions.onDelete);\n\t\t\t\t}\n\t\t\t\treturn builder.build(table);\n\t\t\t})(ref, actions);\n\t\t});\n\t}\n\n\t/** @internal */\n\tabstract build(table: MySqlTable): MySqlColumn;\n}\n\n// To understand how to use `MySqlColumn` and `AnyMySqlColumn`, see `Column` and `AnyColumn` documentation.\nexport abstract class MySqlColumn<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = {},\n> extends Column<T, TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumn';\n\n\t/** @internal */\n\toverride readonly table: MySqlTable;\n\n\tconstructor(\n\t\ttable: MySqlTable,\n\t\tconfig: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig,\n\t) {\n\t\tif (!config.uniqueName) {\n\t\t\tconfig.uniqueName = uniqueKeyName(table, [config.name]);\n\t\t}\n\t\tsuper(table, config);\n\t\tthis.table = table;\n\t}\n}\n\nexport type AnyMySqlColumn<TPartial extends Partial<ColumnBaseConfig<ColumnType>> = {}> = MySqlColumn<\n\tRequired<Update<ColumnBaseConfig<ColumnType>, TPartial>>\n>;\n\nexport interface MySqlColumnWithAutoIncrementConfig {\n\tautoIncrement: boolean;\n}\n\nexport abstract class MySqlColumnBuilderWithAutoIncrement<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends MySqlColumnBuilder<T, TRuntimeConfig & MySqlColumnWithAutoIncrementConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilderWithAutoIncrement';\n\n\tconstructor(name: string, dataType: T['dataType'], columnType: string) {\n\t\tsuper(name, dataType, columnType);\n\t\tthis.config.autoIncrement = false;\n\t}\n\n\tautoincrement(): IsAutoincrement<HasDefault<this>> {\n\t\tthis.config.autoIncrement = true;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as IsAutoincrement<HasDefault<this>>;\n\t}\n}\n\nexport abstract class MySqlColumnWithAutoIncrement<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends MySqlColumn<T, MySqlColumnWithAutoIncrementConfig & TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnWithAutoIncrement';\n\n\treadonly autoIncrement: boolean = this.config.autoIncrement;\n}\n"],"mappings":"AAAA,SAAS,qBAAqB;AAW9B,SAAS,cAAc;AACvB,SAAS,kBAAkB;AAE3B,SAAS,yBAAyB;AAIlC,SAAS,qBAAqB;AAgBvB,MAAe,2BAMZ,cAA+C;AAAA,EACxD,QAA0B,UAAU,IAAY;AAAA,EAExC,oBAAuC,CAAC;AAAA,EAEhD,WAAW,KAA6B,UAAsC,CAAC,GAAS;AACvF,SAAK,kBAAkB,KAAK,EAAE,KAAK,QAAQ,CAAC;AAC5C,WAAO;AAAA,EACR;AAAA,EAEA,OAAO,MAAqB;AAC3B,SAAK,OAAO,WAAW;AACvB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA,EAEA,kBAAkB,IAAmC,QAElD;AACF,SAAK,OAAO,YAAY;AAAA,MACvB;AAAA,MACA,MAAM;AAAA,MACN,MAAM,QAAQ,QAAQ;AAAA,IACvB;AACA,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,iBAAiB,QAAqB,OAAiC;AACtE,WAAO,KAAK,kBAAkB,IAAI,CAAC,EAAE,KAAK,QAAQ,MAAM;AACvD,cAAQ,CAACA,MAAKC,aAAY;AACzB,cAAM,UAAU,IAAI,kBAAkB,MAAM;AAC3C,gBAAM,gBAAgBD,KAAI;AAC1B,iBAAO,EAAE,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE;AAAA,QAC7D,CAAC;AACD,YAAIC,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,YAAIA,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,eAAO,QAAQ,MAAM,KAAK;AAAA,MAC3B,GAAG,KAAK,OAAO;AAAA,IAChB,CAAC;AAAA,EACF;AAID;AAGO,MAAe,oBAGZ,OAA0B;AAAA,EACnC,QAA0B,UAAU,IAAY;AAAA;AAAA,EAG9B;AAAA,EAElB,YACC,OACA,QACC;AACD,QAAI,CAAC,OAAO,YAAY;AACvB,aAAO,aAAa,cAAc,OAAO,CAAC,OAAO,IAAI,CAAC;AAAA,IACvD;AACA,UAAM,OAAO,MAAM;AACnB,SAAK,QAAQ;AAAA,EACd;AACD;AAUO,MAAe,4CAIZ,mBAAyF;AAAA,EAClG,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,UAAyB,YAAoB;AACtE,UAAM,MAAM,UAAU,UAAU;AAChC,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA,EAEA,gBAAmD;AAClD,SAAK,OAAO,gBAAgB;AAC5B,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AACD;AAEO,MAAe,qCAGZ,YAAoE;AAAA,EAC7E,QAA0B,UAAU,IAAY;AAAA,EAEvC,gBAAyB,KAAK,OAAO;AAC/C;","names":["ref","actions"]}
1
+ {"version":3,"sources":["../../../src/mysql-core/columns/common.ts"],"sourcesContent":["import { ColumnBuilder } from '~/column-builder.ts';\nimport type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasDefault,\n\tHasGenerated,\n\tIsAutoincrement,\n} from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/mysql-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/mysql-core/foreign-keys.ts';\nimport type { MySqlTable } from '~/mysql-core/table.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { Update } from '~/utils.ts';\nimport { uniqueKeyName } from '../unique-constraint.ts';\n\nexport type MySqlColumns = Record<string, MySqlColumn<any>>;\n\nexport interface ReferenceConfig {\n\tref: () => MySqlColumn;\n\tactions: {\n\t\tonUpdate?: UpdateDeleteAction;\n\t\tonDelete?: UpdateDeleteAction;\n\t};\n}\n\nexport interface MySqlGeneratedColumnConfig {\n\tmode?: 'virtual' | 'stored';\n}\n\nexport abstract class MySqlColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType> & {\n\t\tdata: any;\n\t},\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends ColumnBuilder<T, TRuntimeConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilder';\n\n\tprivate foreignKeyConfigs: ReferenceConfig[] = [];\n\n\treferences(ref: ReferenceConfig['ref'], actions: ReferenceConfig['actions'] = {}): this {\n\t\tthis.foreignKeyConfigs.push({ ref, actions });\n\t\treturn this;\n\t}\n\n\tunique(name?: string): this {\n\t\tthis.config.isUnique = true;\n\t\tthis.config.uniqueName = name;\n\t\treturn this;\n\t}\n\n\tgeneratedAlwaysAs(as: SQL | T['data'] | (() => SQL), config?: MySqlGeneratedColumnConfig): HasGenerated<this, {\n\t\ttype: 'always';\n\t}> {\n\t\tthis.config.generated = {\n\t\t\tas,\n\t\t\ttype: 'always',\n\t\t\tmode: config?.mode ?? 'virtual',\n\t\t};\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tbuildForeignKeys(column: MySqlColumn, table: MySqlTable): ForeignKey[] {\n\t\treturn this.foreignKeyConfigs.map(({ ref, actions }) => {\n\t\t\treturn ((ref, actions) => {\n\t\t\t\tconst builder = new ForeignKeyBuilder(() => {\n\t\t\t\t\tconst foreignColumn = ref();\n\t\t\t\t\treturn { columns: [column], foreignColumns: [foreignColumn] };\n\t\t\t\t});\n\t\t\t\tif (actions.onUpdate) {\n\t\t\t\t\tbuilder.onUpdate(actions.onUpdate);\n\t\t\t\t}\n\t\t\t\tif (actions.onDelete) {\n\t\t\t\t\tbuilder.onDelete(actions.onDelete);\n\t\t\t\t}\n\t\t\t\treturn builder.build(table);\n\t\t\t})(ref, actions);\n\t\t});\n\t}\n\n\t/** @internal */\n\tabstract build(table: MySqlTable): MySqlColumn;\n}\n\n// To understand how to use `MySqlColumn` and `AnyMySqlColumn`, see `Column` and `AnyColumn` documentation.\nexport abstract class MySqlColumn<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = {},\n> extends Column<T, TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumn';\n\n\t/** @internal */\n\toverride readonly table: MySqlTable;\n\n\tconstructor(\n\t\ttable: MySqlTable,\n\t\tconfig: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig,\n\t) {\n\t\tif (!config.uniqueName) {\n\t\t\tconfig.uniqueName = uniqueKeyName(table, [config.name]);\n\t\t}\n\t\tsuper(table, config);\n\t\tthis.table = table;\n\t}\n}\n\nexport type AnyMySqlColumn<TPartial extends Partial<ColumnBaseConfig<ColumnType>> = {}> = MySqlColumn<\n\tRequired<Update<ColumnBaseConfig<ColumnType>, TPartial>>\n>;\n\nexport interface MySqlColumnWithAutoIncrementConfig {\n\tautoIncrement: boolean;\n}\n\nexport abstract class MySqlColumnBuilderWithAutoIncrement<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends MySqlColumnBuilder<T, TRuntimeConfig & MySqlColumnWithAutoIncrementConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnBuilderWithAutoIncrement';\n\n\tconstructor(name: NonNullable<T['name']>, dataType: T['dataType'], columnType: string) {\n\t\tsuper(name, dataType, columnType);\n\t\tthis.config.autoIncrement = false;\n\t}\n\n\tautoincrement(): IsAutoincrement<HasDefault<this>> {\n\t\tthis.config.autoIncrement = true;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as IsAutoincrement<HasDefault<this>>;\n\t}\n}\n\nexport abstract class MySqlColumnWithAutoIncrement<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends MySqlColumn<T, MySqlColumnWithAutoIncrementConfig & TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'MySqlColumnWithAutoIncrement';\n\n\treadonly autoIncrement: boolean = this.config.autoIncrement;\n}\n"],"mappings":"AAAA,SAAS,qBAAqB;AAW9B,SAAS,cAAc;AACvB,SAAS,kBAAkB;AAE3B,SAAS,yBAAyB;AAIlC,SAAS,qBAAqB;AAgBvB,MAAe,2BAMZ,cAA+C;AAAA,EACxD,QAA0B,UAAU,IAAY;AAAA,EAExC,oBAAuC,CAAC;AAAA,EAEhD,WAAW,KAA6B,UAAsC,CAAC,GAAS;AACvF,SAAK,kBAAkB,KAAK,EAAE,KAAK,QAAQ,CAAC;AAC5C,WAAO;AAAA,EACR;AAAA,EAEA,OAAO,MAAqB;AAC3B,SAAK,OAAO,WAAW;AACvB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA,EAEA,kBAAkB,IAAmC,QAElD;AACF,SAAK,OAAO,YAAY;AAAA,MACvB;AAAA,MACA,MAAM;AAAA,MACN,MAAM,QAAQ,QAAQ;AAAA,IACvB;AACA,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,iBAAiB,QAAqB,OAAiC;AACtE,WAAO,KAAK,kBAAkB,IAAI,CAAC,EAAE,KAAK,QAAQ,MAAM;AACvD,cAAQ,CAACA,MAAKC,aAAY;AACzB,cAAM,UAAU,IAAI,kBAAkB,MAAM;AAC3C,gBAAM,gBAAgBD,KAAI;AAC1B,iBAAO,EAAE,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE;AAAA,QAC7D,CAAC;AACD,YAAIC,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,YAAIA,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,eAAO,QAAQ,MAAM,KAAK;AAAA,MAC3B,GAAG,KAAK,OAAO;AAAA,IAChB,CAAC;AAAA,EACF;AAID;AAGO,MAAe,oBAGZ,OAA0B;AAAA,EACnC,QAA0B,UAAU,IAAY;AAAA;AAAA,EAG9B;AAAA,EAElB,YACC,OACA,QACC;AACD,QAAI,CAAC,OAAO,YAAY;AACvB,aAAO,aAAa,cAAc,OAAO,CAAC,OAAO,IAAI,CAAC;AAAA,IACvD;AACA,UAAM,OAAO,MAAM;AACnB,SAAK,QAAQ;AAAA,EACd;AACD;AAUO,MAAe,4CAIZ,mBAAyF;AAAA,EAClG,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAA8B,UAAyB,YAAoB;AACtF,UAAM,MAAM,UAAU,UAAU;AAChC,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA,EAEA,gBAAmD;AAClD,SAAK,OAAO,gBAAgB;AAC5B,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AACD;AAEO,MAAe,qCAGZ,YAAoE;AAAA,EAC7E,QAA0B,UAAU,IAAY;AAAA,EAEvC,gBAAyB,KAAK,OAAO;AAC/C;","names":["ref","actions"]}