drizzle-orm 1.0.0-beta.1-4ec2def → 1.0.0-beta.1-f92627f

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 (1301) 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 +22 -1464
  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/singlestore-core/columns/bigint.cjs.map +1 -1
  419. package/singlestore-core/columns/bigint.d.cts +2 -0
  420. package/singlestore-core/columns/bigint.d.ts +2 -0
  421. package/singlestore-core/columns/bigint.js.map +1 -1
  422. package/singlestore-core/columns/binary.cjs +1 -0
  423. package/singlestore-core/columns/binary.cjs.map +1 -1
  424. package/singlestore-core/columns/binary.d.cts +2 -0
  425. package/singlestore-core/columns/binary.d.ts +2 -0
  426. package/singlestore-core/columns/binary.js +1 -0
  427. package/singlestore-core/columns/binary.js.map +1 -1
  428. package/singlestore-core/columns/boolean.cjs.map +1 -1
  429. package/singlestore-core/columns/boolean.d.cts +1 -0
  430. package/singlestore-core/columns/boolean.d.ts +1 -0
  431. package/singlestore-core/columns/boolean.js.map +1 -1
  432. package/singlestore-core/columns/char.cjs +1 -0
  433. package/singlestore-core/columns/char.cjs.map +1 -1
  434. package/singlestore-core/columns/char.d.cts +2 -0
  435. package/singlestore-core/columns/char.d.ts +2 -0
  436. package/singlestore-core/columns/char.js +1 -0
  437. package/singlestore-core/columns/char.js.map +1 -1
  438. package/singlestore-core/columns/common.cjs.map +1 -1
  439. package/singlestore-core/columns/common.d.cts +1 -1
  440. package/singlestore-core/columns/common.d.ts +1 -1
  441. package/singlestore-core/columns/common.js.map +1 -1
  442. package/singlestore-core/columns/custom.cjs.map +1 -1
  443. package/singlestore-core/columns/custom.d.cts +1 -0
  444. package/singlestore-core/columns/custom.d.ts +1 -0
  445. package/singlestore-core/columns/custom.js.map +1 -1
  446. package/singlestore-core/columns/date.cjs.map +1 -1
  447. package/singlestore-core/columns/date.d.cts +2 -0
  448. package/singlestore-core/columns/date.d.ts +2 -0
  449. package/singlestore-core/columns/date.js.map +1 -1
  450. package/singlestore-core/columns/datetime.cjs.map +1 -1
  451. package/singlestore-core/columns/datetime.d.cts +2 -0
  452. package/singlestore-core/columns/datetime.d.ts +2 -0
  453. package/singlestore-core/columns/datetime.js.map +1 -1
  454. package/singlestore-core/columns/decimal.cjs.map +1 -1
  455. package/singlestore-core/columns/decimal.d.cts +3 -0
  456. package/singlestore-core/columns/decimal.d.ts +3 -0
  457. package/singlestore-core/columns/decimal.js.map +1 -1
  458. package/singlestore-core/columns/double.cjs.map +1 -1
  459. package/singlestore-core/columns/double.d.cts +1 -0
  460. package/singlestore-core/columns/double.d.ts +1 -0
  461. package/singlestore-core/columns/double.js.map +1 -1
  462. package/singlestore-core/columns/enum.cjs.map +1 -1
  463. package/singlestore-core/columns/enum.d.cts +1 -0
  464. package/singlestore-core/columns/enum.d.ts +1 -0
  465. package/singlestore-core/columns/enum.js.map +1 -1
  466. package/singlestore-core/columns/float.cjs.map +1 -1
  467. package/singlestore-core/columns/float.d.cts +1 -0
  468. package/singlestore-core/columns/float.d.ts +1 -0
  469. package/singlestore-core/columns/float.js.map +1 -1
  470. package/singlestore-core/columns/int.cjs.map +1 -1
  471. package/singlestore-core/columns/int.d.cts +1 -0
  472. package/singlestore-core/columns/int.d.ts +1 -0
  473. package/singlestore-core/columns/int.js.map +1 -1
  474. package/singlestore-core/columns/json.cjs.map +1 -1
  475. package/singlestore-core/columns/json.d.cts +1 -0
  476. package/singlestore-core/columns/json.d.ts +1 -0
  477. package/singlestore-core/columns/json.js.map +1 -1
  478. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  479. package/singlestore-core/columns/mediumint.d.cts +1 -0
  480. package/singlestore-core/columns/mediumint.d.ts +1 -0
  481. package/singlestore-core/columns/mediumint.js.map +1 -1
  482. package/singlestore-core/columns/real.cjs.map +1 -1
  483. package/singlestore-core/columns/real.d.cts +1 -0
  484. package/singlestore-core/columns/real.d.ts +1 -0
  485. package/singlestore-core/columns/real.js.map +1 -1
  486. package/singlestore-core/columns/serial.cjs.map +1 -1
  487. package/singlestore-core/columns/serial.d.cts +1 -0
  488. package/singlestore-core/columns/serial.d.ts +1 -0
  489. package/singlestore-core/columns/serial.js.map +1 -1
  490. package/singlestore-core/columns/smallint.cjs.map +1 -1
  491. package/singlestore-core/columns/smallint.d.cts +1 -0
  492. package/singlestore-core/columns/smallint.d.ts +1 -0
  493. package/singlestore-core/columns/smallint.js.map +1 -1
  494. package/singlestore-core/columns/text.cjs.map +1 -1
  495. package/singlestore-core/columns/text.d.cts +1 -0
  496. package/singlestore-core/columns/text.d.ts +1 -0
  497. package/singlestore-core/columns/text.js.map +1 -1
  498. package/singlestore-core/columns/time.cjs.map +1 -1
  499. package/singlestore-core/columns/time.d.cts +1 -0
  500. package/singlestore-core/columns/time.d.ts +1 -0
  501. package/singlestore-core/columns/time.js.map +1 -1
  502. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  503. package/singlestore-core/columns/timestamp.d.cts +2 -0
  504. package/singlestore-core/columns/timestamp.d.ts +2 -0
  505. package/singlestore-core/columns/timestamp.js.map +1 -1
  506. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  507. package/singlestore-core/columns/tinyint.d.cts +1 -0
  508. package/singlestore-core/columns/tinyint.d.ts +1 -0
  509. package/singlestore-core/columns/tinyint.js.map +1 -1
  510. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  511. package/singlestore-core/columns/varbinary.d.cts +1 -0
  512. package/singlestore-core/columns/varbinary.d.ts +1 -0
  513. package/singlestore-core/columns/varbinary.js.map +1 -1
  514. package/singlestore-core/columns/varchar.cjs.map +1 -1
  515. package/singlestore-core/columns/varchar.d.cts +1 -0
  516. package/singlestore-core/columns/varchar.d.ts +1 -0
  517. package/singlestore-core/columns/varchar.js.map +1 -1
  518. package/singlestore-core/columns/vector.cjs.map +1 -1
  519. package/singlestore-core/columns/vector.d.cts +2 -0
  520. package/singlestore-core/columns/vector.d.ts +2 -0
  521. package/singlestore-core/columns/vector.js.map +1 -1
  522. package/singlestore-core/columns/year.cjs.map +1 -1
  523. package/singlestore-core/columns/year.d.cts +1 -0
  524. package/singlestore-core/columns/year.d.ts +1 -0
  525. package/singlestore-core/columns/year.js.map +1 -1
  526. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  527. package/singlestore-core/query-builders/insert.d.cts +1 -1
  528. package/singlestore-core/query-builders/insert.d.ts +1 -1
  529. package/singlestore-core/query-builders/insert.js.map +1 -1
  530. package/singlestore-core/query-builders/update.cjs.map +1 -1
  531. package/singlestore-core/query-builders/update.d.cts +1 -1
  532. package/singlestore-core/query-builders/update.d.ts +1 -1
  533. package/singlestore-core/query-builders/update.js.map +1 -1
  534. package/sql/sql.cjs +3 -10
  535. package/sql/sql.cjs.map +1 -1
  536. package/sql/sql.d.cts +1 -1
  537. package/sql/sql.d.ts +1 -1
  538. package/sql/sql.js +3 -10
  539. package/sql/sql.js.map +1 -1
  540. package/sqlite-core/columns/blob.cjs.map +1 -1
  541. package/sqlite-core/columns/blob.d.cts +3 -0
  542. package/sqlite-core/columns/blob.d.ts +3 -0
  543. package/sqlite-core/columns/blob.js.map +1 -1
  544. package/sqlite-core/columns/custom.cjs.map +1 -1
  545. package/sqlite-core/columns/custom.d.cts +1 -0
  546. package/sqlite-core/columns/custom.d.ts +1 -0
  547. package/sqlite-core/columns/custom.js.map +1 -1
  548. package/sqlite-core/columns/integer.cjs.map +1 -1
  549. package/sqlite-core/columns/integer.d.cts +3 -0
  550. package/sqlite-core/columns/integer.d.ts +3 -0
  551. package/sqlite-core/columns/integer.js.map +1 -1
  552. package/sqlite-core/columns/numeric.cjs.map +1 -1
  553. package/sqlite-core/columns/numeric.d.cts +3 -0
  554. package/sqlite-core/columns/numeric.d.ts +3 -0
  555. package/sqlite-core/columns/numeric.js.map +1 -1
  556. package/sqlite-core/columns/real.cjs.map +1 -1
  557. package/sqlite-core/columns/real.d.cts +1 -0
  558. package/sqlite-core/columns/real.d.ts +1 -0
  559. package/sqlite-core/columns/real.js.map +1 -1
  560. package/sqlite-core/columns/text.cjs.map +1 -1
  561. package/sqlite-core/columns/text.d.cts +2 -0
  562. package/sqlite-core/columns/text.d.ts +2 -0
  563. package/sqlite-core/columns/text.js.map +1 -1
  564. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  565. package/sqlite-core/query-builders/insert.d.cts +2 -2
  566. package/sqlite-core/query-builders/insert.d.ts +2 -2
  567. package/sqlite-core/query-builders/insert.js.map +1 -1
  568. package/sqlite-core/query-builders/update.cjs.map +1 -1
  569. package/sqlite-core/query-builders/update.d.cts +1 -1
  570. package/sqlite-core/query-builders/update.d.ts +1 -1
  571. package/sqlite-core/query-builders/update.js.map +1 -1
  572. package/version.cjs +1 -1
  573. package/version.d.cts +1 -1
  574. package/version.d.ts +1 -1
  575. package/version.js +1 -1
  576. package/cockroach/driver.cjs +0 -113
  577. package/cockroach/driver.cjs.map +0 -1
  578. package/cockroach/driver.d.cts +0 -42
  579. package/cockroach/driver.d.ts +0 -42
  580. package/cockroach/driver.js +0 -77
  581. package/cockroach/driver.js.map +0 -1
  582. package/cockroach/index.cjs +0 -25
  583. package/cockroach/index.cjs.map +0 -1
  584. package/cockroach/index.d.cts +0 -2
  585. package/cockroach/index.d.ts +0 -2
  586. package/cockroach/index.js +0 -3
  587. package/cockroach/index.js.map +0 -1
  588. package/cockroach/migrator.cjs +0 -33
  589. package/cockroach/migrator.cjs.map +0 -1
  590. package/cockroach/migrator.d.cts +0 -3
  591. package/cockroach/migrator.d.ts +0 -3
  592. package/cockroach/migrator.js +0 -9
  593. package/cockroach/migrator.js.map +0 -1
  594. package/cockroach/session.cjs +0 -253
  595. package/cockroach/session.cjs.map +0 -1
  596. package/cockroach/session.d.cts +0 -48
  597. package/cockroach/session.d.ts +0 -48
  598. package/cockroach/session.js +0 -217
  599. package/cockroach/session.js.map +0 -1
  600. package/cockroach-core/alias.cjs +0 -32
  601. package/cockroach-core/alias.cjs.map +0 -1
  602. package/cockroach-core/alias.d.cts +0 -4
  603. package/cockroach-core/alias.d.ts +0 -4
  604. package/cockroach-core/alias.js +0 -8
  605. package/cockroach-core/alias.js.map +0 -1
  606. package/cockroach-core/checks.cjs +0 -58
  607. package/cockroach-core/checks.cjs.map +0 -1
  608. package/cockroach-core/checks.d.cts +0 -18
  609. package/cockroach-core/checks.d.ts +0 -18
  610. package/cockroach-core/checks.js +0 -32
  611. package/cockroach-core/checks.js.map +0 -1
  612. package/cockroach-core/columns/all.cjs +0 -81
  613. package/cockroach-core/columns/all.cjs.map +0 -1
  614. package/cockroach-core/columns/all.d.cts +0 -52
  615. package/cockroach-core/columns/all.d.ts +0 -52
  616. package/cockroach-core/columns/all.js +0 -57
  617. package/cockroach-core/columns/all.js.map +0 -1
  618. package/cockroach-core/columns/bigint.cjs +0 -104
  619. package/cockroach-core/columns/bigint.cjs.map +0 -1
  620. package/cockroach-core/columns/bigint.d.cts +0 -37
  621. package/cockroach-core/columns/bigint.d.ts +0 -37
  622. package/cockroach-core/columns/bigint.js +0 -75
  623. package/cockroach-core/columns/bigint.js.map +0 -1
  624. package/cockroach-core/columns/bit.cjs +0 -61
  625. package/cockroach-core/columns/bit.cjs.map +0 -1
  626. package/cockroach-core/columns/bit.d.cts +0 -29
  627. package/cockroach-core/columns/bit.d.ts +0 -29
  628. package/cockroach-core/columns/bit.js +0 -35
  629. package/cockroach-core/columns/bit.js.map +0 -1
  630. package/cockroach-core/columns/bool.cjs +0 -56
  631. package/cockroach-core/columns/bool.cjs.map +0 -1
  632. package/cockroach-core/columns/bool.d.cts +0 -16
  633. package/cockroach-core/columns/bool.d.ts +0 -16
  634. package/cockroach-core/columns/bool.js +0 -30
  635. package/cockroach-core/columns/bool.js.map +0 -1
  636. package/cockroach-core/columns/char.cjs +0 -62
  637. package/cockroach-core/columns/char.cjs.map +0 -1
  638. package/cockroach-core/columns/char.d.cts +0 -31
  639. package/cockroach-core/columns/char.d.ts +0 -31
  640. package/cockroach-core/columns/char.js +0 -36
  641. package/cockroach-core/columns/char.js.map +0 -1
  642. package/cockroach-core/columns/common.cjs +0 -199
  643. package/cockroach-core/columns/common.cjs.map +0 -1
  644. package/cockroach-core/columns/common.d.cts +0 -98
  645. package/cockroach-core/columns/common.d.ts +0 -98
  646. package/cockroach-core/columns/common.js +0 -169
  647. package/cockroach-core/columns/common.js.map +0 -1
  648. package/cockroach-core/columns/custom.cjs +0 -102
  649. package/cockroach-core/columns/custom.cjs.map +0 -1
  650. package/cockroach-core/columns/custom.d.cts +0 -261
  651. package/cockroach-core/columns/custom.d.ts +0 -261
  652. package/cockroach-core/columns/custom.js +0 -76
  653. package/cockroach-core/columns/custom.js.map +0 -1
  654. package/cockroach-core/columns/date.cjs +0 -91
  655. package/cockroach-core/columns/date.cjs.map +0 -1
  656. package/cockroach-core/columns/date.common.cjs +0 -37
  657. package/cockroach-core/columns/date.common.cjs.map +0 -1
  658. package/cockroach-core/columns/date.common.d.cts +0 -7
  659. package/cockroach-core/columns/date.common.d.ts +0 -7
  660. package/cockroach-core/columns/date.common.js +0 -13
  661. package/cockroach-core/columns/date.common.js.map +0 -1
  662. package/cockroach-core/columns/date.d.cts +0 -36
  663. package/cockroach-core/columns/date.d.ts +0 -36
  664. package/cockroach-core/columns/date.js +0 -63
  665. package/cockroach-core/columns/date.js.map +0 -1
  666. package/cockroach-core/columns/decimal.cjs +0 -164
  667. package/cockroach-core/columns/decimal.cjs.map +0 -1
  668. package/cockroach-core/columns/decimal.d.cts +0 -80
  669. package/cockroach-core/columns/decimal.d.ts +0 -80
  670. package/cockroach-core/columns/decimal.js +0 -133
  671. package/cockroach-core/columns/decimal.js.map +0 -1
  672. package/cockroach-core/columns/enum.cjs +0 -127
  673. package/cockroach-core/columns/enum.cjs.map +0 -1
  674. package/cockroach-core/columns/enum.d.cts +0 -64
  675. package/cockroach-core/columns/enum.d.ts +0 -64
  676. package/cockroach-core/columns/enum.js +0 -96
  677. package/cockroach-core/columns/enum.js.map +0 -1
  678. package/cockroach-core/columns/float.cjs +0 -65
  679. package/cockroach-core/columns/float.cjs.map +0 -1
  680. package/cockroach-core/columns/float.d.cts +0 -18
  681. package/cockroach-core/columns/float.d.ts +0 -18
  682. package/cockroach-core/columns/float.js +0 -38
  683. package/cockroach-core/columns/float.js.map +0 -1
  684. package/cockroach-core/columns/geometry.cjs +0 -98
  685. package/cockroach-core/columns/geometry.cjs.map +0 -1
  686. package/cockroach-core/columns/geometry.d.cts +0 -48
  687. package/cockroach-core/columns/geometry.d.ts +0 -48
  688. package/cockroach-core/columns/geometry.js +0 -70
  689. package/cockroach-core/columns/geometry.js.map +0 -1
  690. package/cockroach-core/columns/index.cjs +0 -71
  691. package/cockroach-core/columns/index.cjs.map +0 -1
  692. package/cockroach-core/columns/index.d.cts +0 -25
  693. package/cockroach-core/columns/index.d.ts +0 -25
  694. package/cockroach-core/columns/index.js +0 -26
  695. package/cockroach-core/columns/index.js.map +0 -1
  696. package/cockroach-core/columns/inet.cjs +0 -56
  697. package/cockroach-core/columns/inet.cjs.map +0 -1
  698. package/cockroach-core/columns/inet.d.cts +0 -16
  699. package/cockroach-core/columns/inet.d.ts +0 -16
  700. package/cockroach-core/columns/inet.js +0 -30
  701. package/cockroach-core/columns/inet.js.map +0 -1
  702. package/cockroach-core/columns/int.common.cjs +0 -55
  703. package/cockroach-core/columns/int.common.cjs.map +0 -1
  704. package/cockroach-core/columns/int.common.d.cts +0 -11
  705. package/cockroach-core/columns/int.common.d.ts +0 -11
  706. package/cockroach-core/columns/int.common.js +0 -31
  707. package/cockroach-core/columns/int.common.js.map +0 -1
  708. package/cockroach-core/columns/integer.cjs +0 -63
  709. package/cockroach-core/columns/integer.cjs.map +0 -1
  710. package/cockroach-core/columns/integer.d.cts +0 -18
  711. package/cockroach-core/columns/integer.d.ts +0 -18
  712. package/cockroach-core/columns/integer.js +0 -37
  713. package/cockroach-core/columns/integer.js.map +0 -1
  714. package/cockroach-core/columns/interval.cjs +0 -63
  715. package/cockroach-core/columns/interval.cjs.map +0 -1
  716. package/cockroach-core/columns/interval.d.cts +0 -28
  717. package/cockroach-core/columns/interval.d.ts +0 -28
  718. package/cockroach-core/columns/interval.js +0 -37
  719. package/cockroach-core/columns/interval.js.map +0 -1
  720. package/cockroach-core/columns/jsonb.cjs +0 -72
  721. package/cockroach-core/columns/jsonb.cjs.map +0 -1
  722. package/cockroach-core/columns/jsonb.d.cts +0 -20
  723. package/cockroach-core/columns/jsonb.d.ts +0 -20
  724. package/cockroach-core/columns/jsonb.js +0 -46
  725. package/cockroach-core/columns/jsonb.js.map +0 -1
  726. package/cockroach-core/columns/real.cjs +0 -66
  727. package/cockroach-core/columns/real.cjs.map +0 -1
  728. package/cockroach-core/columns/real.d.cts +0 -21
  729. package/cockroach-core/columns/real.d.ts +0 -21
  730. package/cockroach-core/columns/real.js +0 -40
  731. package/cockroach-core/columns/real.js.map +0 -1
  732. package/cockroach-core/columns/smallint.cjs +0 -68
  733. package/cockroach-core/columns/smallint.cjs.map +0 -1
  734. package/cockroach-core/columns/smallint.d.cts +0 -19
  735. package/cockroach-core/columns/smallint.d.ts +0 -19
  736. package/cockroach-core/columns/smallint.js +0 -41
  737. package/cockroach-core/columns/smallint.js.map +0 -1
  738. package/cockroach-core/columns/string.cjs +0 -66
  739. package/cockroach-core/columns/string.cjs.map +0 -1
  740. package/cockroach-core/columns/string.d.cts +0 -35
  741. package/cockroach-core/columns/string.d.ts +0 -35
  742. package/cockroach-core/columns/string.js +0 -39
  743. package/cockroach-core/columns/string.js.map +0 -1
  744. package/cockroach-core/columns/time.cjs +0 -70
  745. package/cockroach-core/columns/time.cjs.map +0 -1
  746. package/cockroach-core/columns/time.d.cts +0 -31
  747. package/cockroach-core/columns/time.d.ts +0 -31
  748. package/cockroach-core/columns/time.js +0 -44
  749. package/cockroach-core/columns/time.js.map +0 -1
  750. package/cockroach-core/columns/timestamp.cjs +0 -111
  751. package/cockroach-core/columns/timestamp.cjs.map +0 -1
  752. package/cockroach-core/columns/timestamp.d.cts +0 -52
  753. package/cockroach-core/columns/timestamp.d.ts +0 -52
  754. package/cockroach-core/columns/timestamp.js +0 -83
  755. package/cockroach-core/columns/timestamp.js.map +0 -1
  756. package/cockroach-core/columns/utils.cjs +0 -65
  757. package/cockroach-core/columns/utils.cjs.map +0 -1
  758. package/cockroach-core/columns/utils.d.cts +0 -1
  759. package/cockroach-core/columns/utils.d.ts +0 -1
  760. package/cockroach-core/columns/utils.js +0 -41
  761. package/cockroach-core/columns/utils.js.map +0 -1
  762. package/cockroach-core/columns/uuid.cjs +0 -63
  763. package/cockroach-core/columns/uuid.cjs.map +0 -1
  764. package/cockroach-core/columns/uuid.d.cts +0 -20
  765. package/cockroach-core/columns/uuid.d.ts +0 -20
  766. package/cockroach-core/columns/uuid.js +0 -37
  767. package/cockroach-core/columns/uuid.js.map +0 -1
  768. package/cockroach-core/columns/varbit.cjs +0 -59
  769. package/cockroach-core/columns/varbit.cjs.map +0 -1
  770. package/cockroach-core/columns/varbit.d.cts +0 -24
  771. package/cockroach-core/columns/varbit.d.ts +0 -24
  772. package/cockroach-core/columns/varbit.js +0 -33
  773. package/cockroach-core/columns/varbit.js.map +0 -1
  774. package/cockroach-core/columns/varchar.cjs +0 -61
  775. package/cockroach-core/columns/varchar.cjs.map +0 -1
  776. package/cockroach-core/columns/varchar.d.cts +0 -30
  777. package/cockroach-core/columns/varchar.d.ts +0 -30
  778. package/cockroach-core/columns/varchar.js +0 -35
  779. package/cockroach-core/columns/varchar.js.map +0 -1
  780. package/cockroach-core/columns/vector.cjs +0 -65
  781. package/cockroach-core/columns/vector.cjs.map +0 -1
  782. package/cockroach-core/columns/vector.d.cts +0 -26
  783. package/cockroach-core/columns/vector.d.ts +0 -26
  784. package/cockroach-core/columns/vector.js +0 -39
  785. package/cockroach-core/columns/vector.js.map +0 -1
  786. package/cockroach-core/db.cjs +0 -346
  787. package/cockroach-core/db.cjs.map +0 -1
  788. package/cockroach-core/db.d.cts +0 -282
  789. package/cockroach-core/db.d.ts +0 -282
  790. package/cockroach-core/db.js +0 -327
  791. package/cockroach-core/db.js.map +0 -1
  792. package/cockroach-core/dialect.cjs +0 -1146
  793. package/cockroach-core/dialect.cjs.map +0 -1
  794. package/cockroach-core/dialect.d.cts +0 -65
  795. package/cockroach-core/dialect.d.ts +0 -65
  796. package/cockroach-core/dialect.js +0 -1126
  797. package/cockroach-core/dialect.js.map +0 -1
  798. package/cockroach-core/expressions.cjs +0 -49
  799. package/cockroach-core/expressions.cjs.map +0 -1
  800. package/cockroach-core/expressions.d.cts +0 -8
  801. package/cockroach-core/expressions.d.ts +0 -8
  802. package/cockroach-core/expressions.js +0 -22
  803. package/cockroach-core/expressions.js.map +0 -1
  804. package/cockroach-core/foreign-keys.cjs +0 -92
  805. package/cockroach-core/foreign-keys.cjs.map +0 -1
  806. package/cockroach-core/foreign-keys.d.cts +0 -52
  807. package/cockroach-core/foreign-keys.d.ts +0 -52
  808. package/cockroach-core/foreign-keys.js +0 -66
  809. package/cockroach-core/foreign-keys.js.map +0 -1
  810. package/cockroach-core/index.cjs +0 -61
  811. package/cockroach-core/index.cjs.map +0 -1
  812. package/cockroach-core/index.d.cts +0 -20
  813. package/cockroach-core/index.d.ts +0 -20
  814. package/cockroach-core/index.js +0 -21
  815. package/cockroach-core/index.js.map +0 -1
  816. package/cockroach-core/indexes.cjs +0 -137
  817. package/cockroach-core/indexes.cjs.map +0 -1
  818. package/cockroach-core/indexes.d.cts +0 -64
  819. package/cockroach-core/indexes.d.ts +0 -64
  820. package/cockroach-core/indexes.js +0 -109
  821. package/cockroach-core/indexes.js.map +0 -1
  822. package/cockroach-core/policies.cjs +0 -58
  823. package/cockroach-core/policies.cjs.map +0 -1
  824. package/cockroach-core/policies.d.cts +0 -24
  825. package/cockroach-core/policies.d.ts +0 -24
  826. package/cockroach-core/policies.js +0 -33
  827. package/cockroach-core/policies.js.map +0 -1
  828. package/cockroach-core/primary-keys.cjs +0 -64
  829. package/cockroach-core/primary-keys.cjs.map +0 -1
  830. package/cockroach-core/primary-keys.d.cts +0 -23
  831. package/cockroach-core/primary-keys.d.ts +0 -23
  832. package/cockroach-core/primary-keys.js +0 -38
  833. package/cockroach-core/primary-keys.js.map +0 -1
  834. package/cockroach-core/query-builders/count.cjs +0 -79
  835. package/cockroach-core/query-builders/count.cjs.map +0 -1
  836. package/cockroach-core/query-builders/count.d.cts +0 -29
  837. package/cockroach-core/query-builders/count.d.ts +0 -29
  838. package/cockroach-core/query-builders/count.js +0 -55
  839. package/cockroach-core/query-builders/count.js.map +0 -1
  840. package/cockroach-core/query-builders/delete.cjs +0 -124
  841. package/cockroach-core/query-builders/delete.cjs.map +0 -1
  842. package/cockroach-core/query-builders/delete.d.cts +0 -103
  843. package/cockroach-core/query-builders/delete.d.ts +0 -103
  844. package/cockroach-core/query-builders/delete.js +0 -100
  845. package/cockroach-core/query-builders/delete.js.map +0 -1
  846. package/cockroach-core/query-builders/index.cjs +0 -35
  847. package/cockroach-core/query-builders/index.cjs.map +0 -1
  848. package/cockroach-core/query-builders/index.d.cts +0 -7
  849. package/cockroach-core/query-builders/index.d.ts +0 -7
  850. package/cockroach-core/query-builders/index.js +0 -8
  851. package/cockroach-core/query-builders/index.js.map +0 -1
  852. package/cockroach-core/query-builders/insert.cjs +0 -213
  853. package/cockroach-core/query-builders/insert.cjs.map +0 -1
  854. package/cockroach-core/query-builders/insert.d.cts +0 -168
  855. package/cockroach-core/query-builders/insert.d.ts +0 -168
  856. package/cockroach-core/query-builders/insert.js +0 -188
  857. package/cockroach-core/query-builders/insert.js.map +0 -1
  858. package/cockroach-core/query-builders/query-builder.cjs +0 -118
  859. package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
  860. package/cockroach-core/query-builders/query-builder.d.cts +0 -37
  861. package/cockroach-core/query-builders/query-builder.d.ts +0 -37
  862. package/cockroach-core/query-builders/query-builder.js +0 -94
  863. package/cockroach-core/query-builders/query-builder.js.map +0 -1
  864. package/cockroach-core/query-builders/query.cjs +0 -145
  865. package/cockroach-core/query-builders/query.cjs.map +0 -1
  866. package/cockroach-core/query-builders/query.d.cts +0 -47
  867. package/cockroach-core/query-builders/query.d.ts +0 -47
  868. package/cockroach-core/query-builders/query.js +0 -122
  869. package/cockroach-core/query-builders/query.js.map +0 -1
  870. package/cockroach-core/query-builders/raw.cjs +0 -57
  871. package/cockroach-core/query-builders/raw.cjs.map +0 -1
  872. package/cockroach-core/query-builders/raw.d.cts +0 -22
  873. package/cockroach-core/query-builders/raw.d.ts +0 -22
  874. package/cockroach-core/query-builders/raw.js +0 -33
  875. package/cockroach-core/query-builders/raw.js.map +0 -1
  876. package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
  877. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
  878. package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
  879. package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
  880. package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
  881. package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
  882. package/cockroach-core/query-builders/select.cjs +0 -848
  883. package/cockroach-core/query-builders/select.cjs.map +0 -1
  884. package/cockroach-core/query-builders/select.d.cts +0 -787
  885. package/cockroach-core/query-builders/select.d.ts +0 -787
  886. package/cockroach-core/query-builders/select.js +0 -821
  887. package/cockroach-core/query-builders/select.js.map +0 -1
  888. package/cockroach-core/query-builders/select.types.cjs +0 -17
  889. package/cockroach-core/query-builders/select.types.cjs.map +0 -1
  890. package/cockroach-core/query-builders/select.types.d.cts +0 -140
  891. package/cockroach-core/query-builders/select.types.d.ts +0 -140
  892. package/cockroach-core/query-builders/select.types.js +0 -1
  893. package/cockroach-core/query-builders/select.types.js.map +0 -1
  894. package/cockroach-core/query-builders/update.cjs +0 -240
  895. package/cockroach-core/query-builders/update.cjs.map +0 -1
  896. package/cockroach-core/query-builders/update.d.cts +0 -170
  897. package/cockroach-core/query-builders/update.d.ts +0 -170
  898. package/cockroach-core/query-builders/update.js +0 -219
  899. package/cockroach-core/query-builders/update.js.map +0 -1
  900. package/cockroach-core/roles.cjs +0 -54
  901. package/cockroach-core/roles.cjs.map +0 -1
  902. package/cockroach-core/roles.d.cts +0 -12
  903. package/cockroach-core/roles.d.ts +0 -12
  904. package/cockroach-core/roles.js +0 -29
  905. package/cockroach-core/roles.js.map +0 -1
  906. package/cockroach-core/schema.cjs +0 -80
  907. package/cockroach-core/schema.cjs.map +0 -1
  908. package/cockroach-core/schema.d.cts +0 -22
  909. package/cockroach-core/schema.d.ts +0 -22
  910. package/cockroach-core/schema.js +0 -60
  911. package/cockroach-core/schema.js.map +0 -1
  912. package/cockroach-core/sequence.cjs +0 -52
  913. package/cockroach-core/sequence.cjs.map +0 -1
  914. package/cockroach-core/sequence.d.cts +0 -17
  915. package/cockroach-core/sequence.d.ts +0 -17
  916. package/cockroach-core/sequence.js +0 -25
  917. package/cockroach-core/sequence.js.map +0 -1
  918. package/cockroach-core/session.cjs +0 -120
  919. package/cockroach-core/session.cjs.map +0 -1
  920. package/cockroach-core/session.d.cts +0 -62
  921. package/cockroach-core/session.d.ts +0 -62
  922. package/cockroach-core/session.js +0 -94
  923. package/cockroach-core/session.js.map +0 -1
  924. package/cockroach-core/subquery.cjs +0 -17
  925. package/cockroach-core/subquery.cjs.map +0 -1
  926. package/cockroach-core/subquery.d.cts +0 -18
  927. package/cockroach-core/subquery.d.ts +0 -18
  928. package/cockroach-core/subquery.js +0 -1
  929. package/cockroach-core/subquery.js.map +0 -1
  930. package/cockroach-core/table.cjs +0 -100
  931. package/cockroach-core/table.cjs.map +0 -1
  932. package/cockroach-core/table.d.cts +0 -37
  933. package/cockroach-core/table.d.ts +0 -37
  934. package/cockroach-core/table.js +0 -73
  935. package/cockroach-core/table.js.map +0 -1
  936. package/cockroach-core/unique-constraint.cjs +0 -77
  937. package/cockroach-core/unique-constraint.cjs.map +0 -1
  938. package/cockroach-core/unique-constraint.d.cts +0 -23
  939. package/cockroach-core/unique-constraint.d.ts +0 -23
  940. package/cockroach-core/unique-constraint.js +0 -50
  941. package/cockroach-core/unique-constraint.js.map +0 -1
  942. package/cockroach-core/utils/array.cjs +0 -106
  943. package/cockroach-core/utils/array.cjs.map +0 -1
  944. package/cockroach-core/utils/array.d.cts +0 -3
  945. package/cockroach-core/utils/array.d.ts +0 -3
  946. package/cockroach-core/utils/array.js +0 -80
  947. package/cockroach-core/utils/array.js.map +0 -1
  948. package/cockroach-core/utils/index.cjs +0 -23
  949. package/cockroach-core/utils/index.cjs.map +0 -1
  950. package/cockroach-core/utils/index.d.cts +0 -1
  951. package/cockroach-core/utils/index.d.ts +0 -1
  952. package/cockroach-core/utils/index.js +0 -2
  953. package/cockroach-core/utils/index.js.map +0 -1
  954. package/cockroach-core/utils.cjs +0 -98
  955. package/cockroach-core/utils.cjs.map +0 -1
  956. package/cockroach-core/utils.d.cts +0 -47
  957. package/cockroach-core/utils.d.ts +0 -47
  958. package/cockroach-core/utils.js +0 -72
  959. package/cockroach-core/utils.js.map +0 -1
  960. package/cockroach-core/view-base.cjs +0 -33
  961. package/cockroach-core/view-base.cjs.map +0 -1
  962. package/cockroach-core/view-base.d.cts +0 -8
  963. package/cockroach-core/view-base.d.ts +0 -8
  964. package/cockroach-core/view-base.js +0 -9
  965. package/cockroach-core/view-base.js.map +0 -1
  966. package/cockroach-core/view.cjs +0 -271
  967. package/cockroach-core/view.cjs.map +0 -1
  968. package/cockroach-core/view.d.cts +0 -106
  969. package/cockroach-core/view.d.ts +0 -106
  970. package/cockroach-core/view.js +0 -233
  971. package/cockroach-core/view.js.map +0 -1
  972. package/mssql-core/alias.cjs +0 -32
  973. package/mssql-core/alias.cjs.map +0 -1
  974. package/mssql-core/alias.d.cts +0 -4
  975. package/mssql-core/alias.d.ts +0 -4
  976. package/mssql-core/alias.js +0 -8
  977. package/mssql-core/alias.js.map +0 -1
  978. package/mssql-core/checks.cjs +0 -58
  979. package/mssql-core/checks.cjs.map +0 -1
  980. package/mssql-core/checks.d.cts +0 -18
  981. package/mssql-core/checks.d.ts +0 -18
  982. package/mssql-core/checks.js +0 -32
  983. package/mssql-core/checks.js.map +0 -1
  984. package/mssql-core/columns/all.cjs +0 -74
  985. package/mssql-core/columns/all.cjs.map +0 -1
  986. package/mssql-core/columns/all.d.cts +0 -45
  987. package/mssql-core/columns/all.d.ts +0 -45
  988. package/mssql-core/columns/all.js +0 -50
  989. package/mssql-core/columns/all.js.map +0 -1
  990. package/mssql-core/columns/bigint.cjs +0 -72
  991. package/mssql-core/columns/bigint.cjs.map +0 -1
  992. package/mssql-core/columns/bigint.d.cts +0 -25
  993. package/mssql-core/columns/bigint.d.ts +0 -25
  994. package/mssql-core/columns/bigint.js +0 -46
  995. package/mssql-core/columns/bigint.js.map +0 -1
  996. package/mssql-core/columns/binary.cjs +0 -57
  997. package/mssql-core/columns/binary.cjs.map +0 -1
  998. package/mssql-core/columns/binary.d.cts +0 -24
  999. package/mssql-core/columns/binary.d.ts +0 -24
  1000. package/mssql-core/columns/binary.js +0 -31
  1001. package/mssql-core/columns/binary.js.map +0 -1
  1002. package/mssql-core/columns/bit.cjs +0 -54
  1003. package/mssql-core/columns/bit.cjs.map +0 -1
  1004. package/mssql-core/columns/bit.d.cts +0 -17
  1005. package/mssql-core/columns/bit.d.ts +0 -17
  1006. package/mssql-core/columns/bit.js +0 -28
  1007. package/mssql-core/columns/bit.js.map +0 -1
  1008. package/mssql-core/columns/char.cjs +0 -73
  1009. package/mssql-core/columns/char.cjs.map +0 -1
  1010. package/mssql-core/columns/char.d.cts +0 -29
  1011. package/mssql-core/columns/char.d.ts +0 -29
  1012. package/mssql-core/columns/char.js +0 -46
  1013. package/mssql-core/columns/char.js.map +0 -1
  1014. package/mssql-core/columns/common.cjs +0 -112
  1015. package/mssql-core/columns/common.cjs.map +0 -1
  1016. package/mssql-core/columns/common.d.cts +0 -57
  1017. package/mssql-core/columns/common.d.ts +0 -57
  1018. package/mssql-core/columns/common.js +0 -85
  1019. package/mssql-core/columns/common.js.map +0 -1
  1020. package/mssql-core/columns/custom.cjs +0 -105
  1021. package/mssql-core/columns/custom.cjs.map +0 -1
  1022. package/mssql-core/columns/custom.d.cts +0 -261
  1023. package/mssql-core/columns/custom.d.ts +0 -261
  1024. package/mssql-core/columns/custom.js +0 -79
  1025. package/mssql-core/columns/custom.js.map +0 -1
  1026. package/mssql-core/columns/date.cjs +0 -94
  1027. package/mssql-core/columns/date.cjs.map +0 -1
  1028. package/mssql-core/columns/date.common.cjs +0 -37
  1029. package/mssql-core/columns/date.common.cjs.map +0 -1
  1030. package/mssql-core/columns/date.common.d.cts +0 -12
  1031. package/mssql-core/columns/date.common.d.ts +0 -12
  1032. package/mssql-core/columns/date.common.js +0 -13
  1033. package/mssql-core/columns/date.common.js.map +0 -1
  1034. package/mssql-core/columns/date.d.cts +0 -39
  1035. package/mssql-core/columns/date.d.ts +0 -39
  1036. package/mssql-core/columns/date.js +0 -66
  1037. package/mssql-core/columns/date.js.map +0 -1
  1038. package/mssql-core/columns/datetime.cjs +0 -94
  1039. package/mssql-core/columns/datetime.cjs.map +0 -1
  1040. package/mssql-core/columns/datetime.d.cts +0 -38
  1041. package/mssql-core/columns/datetime.d.ts +0 -38
  1042. package/mssql-core/columns/datetime.js +0 -66
  1043. package/mssql-core/columns/datetime.js.map +0 -1
  1044. package/mssql-core/columns/datetime2.cjs +0 -102
  1045. package/mssql-core/columns/datetime2.cjs.map +0 -1
  1046. package/mssql-core/columns/datetime2.d.cts +0 -38
  1047. package/mssql-core/columns/datetime2.d.ts +0 -38
  1048. package/mssql-core/columns/datetime2.js +0 -74
  1049. package/mssql-core/columns/datetime2.js.map +0 -1
  1050. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  1051. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  1052. package/mssql-core/columns/datetimeoffset.d.cts +0 -39
  1053. package/mssql-core/columns/datetimeoffset.d.ts +0 -39
  1054. package/mssql-core/columns/datetimeoffset.js +0 -74
  1055. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  1056. package/mssql-core/columns/decimal.cjs +0 -146
  1057. package/mssql-core/columns/decimal.cjs.map +0 -1
  1058. package/mssql-core/columns/decimal.d.cts +0 -58
  1059. package/mssql-core/columns/decimal.d.ts +0 -58
  1060. package/mssql-core/columns/decimal.js +0 -116
  1061. package/mssql-core/columns/decimal.js.map +0 -1
  1062. package/mssql-core/columns/float.cjs +0 -58
  1063. package/mssql-core/columns/float.cjs.map +0 -1
  1064. package/mssql-core/columns/float.d.cts +0 -21
  1065. package/mssql-core/columns/float.d.ts +0 -21
  1066. package/mssql-core/columns/float.js +0 -32
  1067. package/mssql-core/columns/float.js.map +0 -1
  1068. package/mssql-core/columns/index.cjs +0 -63
  1069. package/mssql-core/columns/index.cjs.map +0 -1
  1070. package/mssql-core/columns/index.d.cts +0 -21
  1071. package/mssql-core/columns/index.d.ts +0 -21
  1072. package/mssql-core/columns/index.js +0 -22
  1073. package/mssql-core/columns/index.js.map +0 -1
  1074. package/mssql-core/columns/int.cjs +0 -53
  1075. package/mssql-core/columns/int.cjs.map +0 -1
  1076. package/mssql-core/columns/int.d.cts +0 -16
  1077. package/mssql-core/columns/int.d.ts +0 -16
  1078. package/mssql-core/columns/int.js +0 -27
  1079. package/mssql-core/columns/int.js.map +0 -1
  1080. package/mssql-core/columns/numeric.cjs +0 -146
  1081. package/mssql-core/columns/numeric.cjs.map +0 -1
  1082. package/mssql-core/columns/numeric.d.cts +0 -58
  1083. package/mssql-core/columns/numeric.d.ts +0 -58
  1084. package/mssql-core/columns/numeric.js +0 -116
  1085. package/mssql-core/columns/numeric.js.map +0 -1
  1086. package/mssql-core/columns/real.cjs +0 -53
  1087. package/mssql-core/columns/real.cjs.map +0 -1
  1088. package/mssql-core/columns/real.d.cts +0 -16
  1089. package/mssql-core/columns/real.d.ts +0 -16
  1090. package/mssql-core/columns/real.js +0 -27
  1091. package/mssql-core/columns/real.js.map +0 -1
  1092. package/mssql-core/columns/smallint.cjs +0 -62
  1093. package/mssql-core/columns/smallint.cjs.map +0 -1
  1094. package/mssql-core/columns/smallint.d.cts +0 -17
  1095. package/mssql-core/columns/smallint.d.ts +0 -17
  1096. package/mssql-core/columns/smallint.js +0 -36
  1097. package/mssql-core/columns/smallint.js.map +0 -1
  1098. package/mssql-core/columns/text.cjs +0 -68
  1099. package/mssql-core/columns/text.cjs.map +0 -1
  1100. package/mssql-core/columns/text.d.cts +0 -36
  1101. package/mssql-core/columns/text.d.ts +0 -36
  1102. package/mssql-core/columns/text.js +0 -41
  1103. package/mssql-core/columns/text.js.map +0 -1
  1104. package/mssql-core/columns/time.cjs +0 -90
  1105. package/mssql-core/columns/time.cjs.map +0 -1
  1106. package/mssql-core/columns/time.d.cts +0 -37
  1107. package/mssql-core/columns/time.d.ts +0 -37
  1108. package/mssql-core/columns/time.js +0 -62
  1109. package/mssql-core/columns/time.js.map +0 -1
  1110. package/mssql-core/columns/tinyint.cjs +0 -62
  1111. package/mssql-core/columns/tinyint.cjs.map +0 -1
  1112. package/mssql-core/columns/tinyint.d.cts +0 -17
  1113. package/mssql-core/columns/tinyint.d.ts +0 -17
  1114. package/mssql-core/columns/tinyint.js +0 -36
  1115. package/mssql-core/columns/tinyint.js.map +0 -1
  1116. package/mssql-core/columns/varbinary.cjs +0 -61
  1117. package/mssql-core/columns/varbinary.cjs.map +0 -1
  1118. package/mssql-core/columns/varbinary.d.cts +0 -23
  1119. package/mssql-core/columns/varbinary.d.ts +0 -23
  1120. package/mssql-core/columns/varbinary.js +0 -35
  1121. package/mssql-core/columns/varbinary.js.map +0 -1
  1122. package/mssql-core/columns/varchar.cjs +0 -117
  1123. package/mssql-core/columns/varchar.cjs.map +0 -1
  1124. package/mssql-core/columns/varchar.d.cts +0 -59
  1125. package/mssql-core/columns/varchar.d.ts +0 -59
  1126. package/mssql-core/columns/varchar.js +0 -88
  1127. package/mssql-core/columns/varchar.js.map +0 -1
  1128. package/mssql-core/db.cjs +0 -254
  1129. package/mssql-core/db.cjs.map +0 -1
  1130. package/mssql-core/db.d.cts +0 -228
  1131. package/mssql-core/db.d.ts +0 -228
  1132. package/mssql-core/db.js +0 -235
  1133. package/mssql-core/db.js.map +0 -1
  1134. package/mssql-core/dialect.cjs +0 -633
  1135. package/mssql-core/dialect.cjs.map +0 -1
  1136. package/mssql-core/dialect.d.cts +0 -58
  1137. package/mssql-core/dialect.d.ts +0 -58
  1138. package/mssql-core/dialect.js +0 -599
  1139. package/mssql-core/dialect.js.map +0 -1
  1140. package/mssql-core/expressions.cjs +0 -49
  1141. package/mssql-core/expressions.cjs.map +0 -1
  1142. package/mssql-core/expressions.d.cts +0 -8
  1143. package/mssql-core/expressions.d.ts +0 -8
  1144. package/mssql-core/expressions.js +0 -22
  1145. package/mssql-core/expressions.js.map +0 -1
  1146. package/mssql-core/foreign-keys.cjs +0 -91
  1147. package/mssql-core/foreign-keys.cjs.map +0 -1
  1148. package/mssql-core/foreign-keys.d.cts +0 -51
  1149. package/mssql-core/foreign-keys.d.ts +0 -51
  1150. package/mssql-core/foreign-keys.js +0 -65
  1151. package/mssql-core/foreign-keys.js.map +0 -1
  1152. package/mssql-core/index.cjs +0 -55
  1153. package/mssql-core/index.cjs.map +0 -1
  1154. package/mssql-core/index.d.cts +0 -17
  1155. package/mssql-core/index.d.ts +0 -17
  1156. package/mssql-core/index.js +0 -18
  1157. package/mssql-core/index.js.map +0 -1
  1158. package/mssql-core/indexes.cjs +0 -80
  1159. package/mssql-core/indexes.cjs.map +0 -1
  1160. package/mssql-core/indexes.d.cts +0 -49
  1161. package/mssql-core/indexes.d.ts +0 -49
  1162. package/mssql-core/indexes.js +0 -52
  1163. package/mssql-core/indexes.js.map +0 -1
  1164. package/mssql-core/primary-keys.cjs +0 -64
  1165. package/mssql-core/primary-keys.cjs.map +0 -1
  1166. package/mssql-core/primary-keys.d.cts +0 -23
  1167. package/mssql-core/primary-keys.d.ts +0 -23
  1168. package/mssql-core/primary-keys.js +0 -38
  1169. package/mssql-core/primary-keys.js.map +0 -1
  1170. package/mssql-core/query-builders/delete.cjs +0 -107
  1171. package/mssql-core/query-builders/delete.cjs.map +0 -1
  1172. package/mssql-core/query-builders/delete.d.cts +0 -98
  1173. package/mssql-core/query-builders/delete.d.ts +0 -98
  1174. package/mssql-core/query-builders/delete.js +0 -83
  1175. package/mssql-core/query-builders/delete.js.map +0 -1
  1176. package/mssql-core/query-builders/index.cjs +0 -33
  1177. package/mssql-core/query-builders/index.cjs.map +0 -1
  1178. package/mssql-core/query-builders/index.d.cts +0 -6
  1179. package/mssql-core/query-builders/index.d.ts +0 -6
  1180. package/mssql-core/query-builders/index.js +0 -7
  1181. package/mssql-core/query-builders/index.js.map +0 -1
  1182. package/mssql-core/query-builders/insert.cjs +0 -105
  1183. package/mssql-core/query-builders/insert.cjs.map +0 -1
  1184. package/mssql-core/query-builders/insert.d.cts +0 -79
  1185. package/mssql-core/query-builders/insert.d.ts +0 -79
  1186. package/mssql-core/query-builders/insert.js +0 -80
  1187. package/mssql-core/query-builders/insert.js.map +0 -1
  1188. package/mssql-core/query-builders/query-builder.cjs +0 -95
  1189. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  1190. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  1191. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  1192. package/mssql-core/query-builders/query-builder.js +0 -71
  1193. package/mssql-core/query-builders/query-builder.js.map +0 -1
  1194. package/mssql-core/query-builders/query.cjs +0 -126
  1195. package/mssql-core/query-builders/query.cjs.map +0 -1
  1196. package/mssql-core/query-builders/query.d.cts +0 -42
  1197. package/mssql-core/query-builders/query.d.ts +0 -42
  1198. package/mssql-core/query-builders/query.js +0 -103
  1199. package/mssql-core/query-builders/query.js.map +0 -1
  1200. package/mssql-core/query-builders/select.cjs +0 -679
  1201. package/mssql-core/query-builders/select.cjs.map +0 -1
  1202. package/mssql-core/query-builders/select.d.cts +0 -549
  1203. package/mssql-core/query-builders/select.d.ts +0 -549
  1204. package/mssql-core/query-builders/select.js +0 -649
  1205. package/mssql-core/query-builders/select.js.map +0 -1
  1206. package/mssql-core/query-builders/select.types.cjs +0 -17
  1207. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  1208. package/mssql-core/query-builders/select.types.d.cts +0 -142
  1209. package/mssql-core/query-builders/select.types.d.ts +0 -142
  1210. package/mssql-core/query-builders/select.types.js +0 -1
  1211. package/mssql-core/query-builders/select.types.js.map +0 -1
  1212. package/mssql-core/query-builders/update.cjs +0 -138
  1213. package/mssql-core/query-builders/update.cjs.map +0 -1
  1214. package/mssql-core/query-builders/update.d.cts +0 -142
  1215. package/mssql-core/query-builders/update.d.ts +0 -142
  1216. package/mssql-core/query-builders/update.js +0 -113
  1217. package/mssql-core/query-builders/update.js.map +0 -1
  1218. package/mssql-core/schema.cjs +0 -51
  1219. package/mssql-core/schema.cjs.map +0 -1
  1220. package/mssql-core/schema.d.cts +0 -22
  1221. package/mssql-core/schema.d.ts +0 -22
  1222. package/mssql-core/schema.js +0 -25
  1223. package/mssql-core/schema.js.map +0 -1
  1224. package/mssql-core/session.cjs +0 -74
  1225. package/mssql-core/session.cjs.map +0 -1
  1226. package/mssql-core/session.d.cts +0 -63
  1227. package/mssql-core/session.d.ts +0 -63
  1228. package/mssql-core/session.js +0 -48
  1229. package/mssql-core/session.js.map +0 -1
  1230. package/mssql-core/subquery.cjs +0 -17
  1231. package/mssql-core/subquery.cjs.map +0 -1
  1232. package/mssql-core/subquery.d.cts +0 -18
  1233. package/mssql-core/subquery.d.ts +0 -18
  1234. package/mssql-core/subquery.js +0 -1
  1235. package/mssql-core/subquery.js.map +0 -1
  1236. package/mssql-core/table.cjs +0 -81
  1237. package/mssql-core/table.cjs.map +0 -1
  1238. package/mssql-core/table.d.cts +0 -40
  1239. package/mssql-core/table.d.ts +0 -40
  1240. package/mssql-core/table.js +0 -55
  1241. package/mssql-core/table.js.map +0 -1
  1242. package/mssql-core/unique-constraint.cjs +0 -76
  1243. package/mssql-core/unique-constraint.cjs.map +0 -1
  1244. package/mssql-core/unique-constraint.d.cts +0 -23
  1245. package/mssql-core/unique-constraint.d.ts +0 -23
  1246. package/mssql-core/unique-constraint.js +0 -49
  1247. package/mssql-core/unique-constraint.js.map +0 -1
  1248. package/mssql-core/utils.cjs +0 -85
  1249. package/mssql-core/utils.cjs.map +0 -1
  1250. package/mssql-core/utils.d.cts +0 -31
  1251. package/mssql-core/utils.d.ts +0 -31
  1252. package/mssql-core/utils.js +0 -60
  1253. package/mssql-core/utils.js.map +0 -1
  1254. package/mssql-core/view-base.cjs +0 -33
  1255. package/mssql-core/view-base.cjs.map +0 -1
  1256. package/mssql-core/view-base.d.cts +0 -9
  1257. package/mssql-core/view-base.d.ts +0 -9
  1258. package/mssql-core/view-base.js +0 -9
  1259. package/mssql-core/view-base.js.map +0 -1
  1260. package/mssql-core/view-common.cjs +0 -29
  1261. package/mssql-core/view-common.cjs.map +0 -1
  1262. package/mssql-core/view-common.d.cts +0 -1
  1263. package/mssql-core/view-common.d.ts +0 -1
  1264. package/mssql-core/view-common.js +0 -5
  1265. package/mssql-core/view-common.js.map +0 -1
  1266. package/mssql-core/view.cjs +0 -154
  1267. package/mssql-core/view.cjs.map +0 -1
  1268. package/mssql-core/view.d.cts +0 -63
  1269. package/mssql-core/view.d.ts +0 -63
  1270. package/mssql-core/view.js +0 -125
  1271. package/mssql-core/view.js.map +0 -1
  1272. package/node-mssql/driver.cjs +0 -117
  1273. package/node-mssql/driver.cjs.map +0 -1
  1274. package/node-mssql/driver.d.cts +0 -46
  1275. package/node-mssql/driver.d.ts +0 -46
  1276. package/node-mssql/driver.js +0 -81
  1277. package/node-mssql/driver.js.map +0 -1
  1278. package/node-mssql/index.cjs +0 -25
  1279. package/node-mssql/index.cjs.map +0 -1
  1280. package/node-mssql/index.d.cts +0 -2
  1281. package/node-mssql/index.d.ts +0 -2
  1282. package/node-mssql/index.js +0 -3
  1283. package/node-mssql/index.js.map +0 -1
  1284. package/node-mssql/migrator.cjs +0 -33
  1285. package/node-mssql/migrator.cjs.map +0 -1
  1286. package/node-mssql/migrator.d.cts +0 -3
  1287. package/node-mssql/migrator.d.ts +0 -3
  1288. package/node-mssql/migrator.js +0 -9
  1289. package/node-mssql/migrator.js.map +0 -1
  1290. package/node-mssql/pool.cjs +0 -54
  1291. package/node-mssql/pool.cjs.map +0 -1
  1292. package/node-mssql/pool.d.cts +0 -8
  1293. package/node-mssql/pool.d.ts +0 -8
  1294. package/node-mssql/pool.js +0 -20
  1295. package/node-mssql/pool.js.map +0 -1
  1296. package/node-mssql/session.cjs +0 -256
  1297. package/node-mssql/session.cjs.map +0 -1
  1298. package/node-mssql/session.d.cts +0 -48
  1299. package/node-mssql/session.d.ts +0 -48
  1300. package/node-mssql/session.js +0 -224
  1301. 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"]}