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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1309) hide show
  1. package/_relations.cjs +0 -48
  2. package/_relations.cjs.map +1 -1
  3. package/_relations.d.cts +0 -1
  4. package/_relations.d.ts +0 -1
  5. package/_relations.js +0 -47
  6. package/_relations.js.map +1 -1
  7. package/column-builder.cjs.map +1 -1
  8. package/column-builder.d.cts +8 -10
  9. package/column-builder.d.ts +8 -10
  10. package/column-builder.js.map +1 -1
  11. package/column.cjs +0 -2
  12. package/column.cjs.map +1 -1
  13. package/column.d.cts +0 -1
  14. package/column.d.ts +0 -1
  15. package/column.js +0 -2
  16. package/column.js.map +1 -1
  17. package/gel-core/columns/bigint.cjs.map +1 -1
  18. package/gel-core/columns/bigint.d.cts +1 -0
  19. package/gel-core/columns/bigint.d.ts +1 -0
  20. package/gel-core/columns/bigint.js.map +1 -1
  21. package/gel-core/columns/bigintT.cjs.map +1 -1
  22. package/gel-core/columns/bigintT.d.cts +1 -0
  23. package/gel-core/columns/bigintT.d.ts +1 -0
  24. package/gel-core/columns/bigintT.js.map +1 -1
  25. package/gel-core/columns/boolean.cjs.map +1 -1
  26. package/gel-core/columns/boolean.d.cts +1 -0
  27. package/gel-core/columns/boolean.d.ts +1 -0
  28. package/gel-core/columns/boolean.js.map +1 -1
  29. package/gel-core/columns/bytes.cjs.map +1 -1
  30. package/gel-core/columns/bytes.d.cts +1 -0
  31. package/gel-core/columns/bytes.d.ts +1 -0
  32. package/gel-core/columns/bytes.js.map +1 -1
  33. package/gel-core/columns/custom.cjs.map +1 -1
  34. package/gel-core/columns/custom.d.cts +1 -0
  35. package/gel-core/columns/custom.d.ts +1 -0
  36. package/gel-core/columns/custom.js.map +1 -1
  37. package/gel-core/columns/date-duration.cjs.map +1 -1
  38. package/gel-core/columns/date-duration.d.cts +1 -0
  39. package/gel-core/columns/date-duration.d.ts +1 -0
  40. package/gel-core/columns/date-duration.js.map +1 -1
  41. package/gel-core/columns/decimal.cjs.map +1 -1
  42. package/gel-core/columns/decimal.d.cts +1 -0
  43. package/gel-core/columns/decimal.d.ts +1 -0
  44. package/gel-core/columns/decimal.js.map +1 -1
  45. package/gel-core/columns/double-precision.cjs.map +1 -1
  46. package/gel-core/columns/double-precision.d.cts +1 -0
  47. package/gel-core/columns/double-precision.d.ts +1 -0
  48. package/gel-core/columns/double-precision.js.map +1 -1
  49. package/gel-core/columns/duration.cjs.map +1 -1
  50. package/gel-core/columns/duration.d.cts +1 -0
  51. package/gel-core/columns/duration.d.ts +1 -0
  52. package/gel-core/columns/duration.js.map +1 -1
  53. package/gel-core/columns/integer.cjs.map +1 -1
  54. package/gel-core/columns/integer.d.cts +1 -0
  55. package/gel-core/columns/integer.d.ts +1 -0
  56. package/gel-core/columns/integer.js.map +1 -1
  57. package/gel-core/columns/json.cjs.map +1 -1
  58. package/gel-core/columns/json.d.cts +1 -0
  59. package/gel-core/columns/json.d.ts +1 -0
  60. package/gel-core/columns/json.js.map +1 -1
  61. package/gel-core/columns/localdate.cjs.map +1 -1
  62. package/gel-core/columns/localdate.d.cts +1 -0
  63. package/gel-core/columns/localdate.d.ts +1 -0
  64. package/gel-core/columns/localdate.js.map +1 -1
  65. package/gel-core/columns/localtime.cjs.map +1 -1
  66. package/gel-core/columns/localtime.d.cts +1 -0
  67. package/gel-core/columns/localtime.d.ts +1 -0
  68. package/gel-core/columns/localtime.js.map +1 -1
  69. package/gel-core/columns/real.cjs.map +1 -1
  70. package/gel-core/columns/real.d.cts +1 -0
  71. package/gel-core/columns/real.d.ts +1 -0
  72. package/gel-core/columns/real.js.map +1 -1
  73. package/gel-core/columns/relative-duration.cjs.map +1 -1
  74. package/gel-core/columns/relative-duration.d.cts +1 -0
  75. package/gel-core/columns/relative-duration.d.ts +1 -0
  76. package/gel-core/columns/relative-duration.js.map +1 -1
  77. package/gel-core/columns/smallint.cjs.map +1 -1
  78. package/gel-core/columns/smallint.d.cts +1 -0
  79. package/gel-core/columns/smallint.d.ts +1 -0
  80. package/gel-core/columns/smallint.js.map +1 -1
  81. package/gel-core/columns/text.cjs.map +1 -1
  82. package/gel-core/columns/text.d.cts +1 -0
  83. package/gel-core/columns/text.d.ts +1 -0
  84. package/gel-core/columns/text.js.map +1 -1
  85. package/gel-core/columns/timestamp.cjs.map +1 -1
  86. package/gel-core/columns/timestamp.d.cts +1 -0
  87. package/gel-core/columns/timestamp.d.ts +1 -0
  88. package/gel-core/columns/timestamp.js.map +1 -1
  89. package/gel-core/columns/timestamptz.cjs.map +1 -1
  90. package/gel-core/columns/timestamptz.d.cts +1 -0
  91. package/gel-core/columns/timestamptz.d.ts +1 -0
  92. package/gel-core/columns/timestamptz.js.map +1 -1
  93. package/gel-core/columns/uuid.cjs.map +1 -1
  94. package/gel-core/columns/uuid.d.cts +1 -0
  95. package/gel-core/columns/uuid.d.ts +1 -0
  96. package/gel-core/columns/uuid.js.map +1 -1
  97. package/gel-core/query-builders/insert.cjs.map +1 -1
  98. package/gel-core/query-builders/insert.d.cts +9 -6
  99. package/gel-core/query-builders/insert.d.ts +9 -6
  100. package/gel-core/query-builders/insert.js.map +1 -1
  101. package/gel-core/query-builders/update.cjs.map +1 -1
  102. package/gel-core/query-builders/update.d.cts +1 -1
  103. package/gel-core/query-builders/update.d.ts +1 -1
  104. package/gel-core/query-builders/update.js.map +1 -1
  105. package/mysql-core/columns/bigint.cjs.map +1 -1
  106. package/mysql-core/columns/bigint.d.cts +2 -0
  107. package/mysql-core/columns/bigint.d.ts +2 -0
  108. package/mysql-core/columns/bigint.js.map +1 -1
  109. package/mysql-core/columns/binary.cjs +1 -0
  110. package/mysql-core/columns/binary.cjs.map +1 -1
  111. package/mysql-core/columns/binary.d.cts +2 -0
  112. package/mysql-core/columns/binary.d.ts +2 -0
  113. package/mysql-core/columns/binary.js +1 -0
  114. package/mysql-core/columns/binary.js.map +1 -1
  115. package/mysql-core/columns/boolean.cjs.map +1 -1
  116. package/mysql-core/columns/boolean.d.cts +1 -0
  117. package/mysql-core/columns/boolean.d.ts +1 -0
  118. package/mysql-core/columns/boolean.js.map +1 -1
  119. package/mysql-core/columns/char.cjs +1 -0
  120. package/mysql-core/columns/char.cjs.map +1 -1
  121. package/mysql-core/columns/char.d.cts +2 -0
  122. package/mysql-core/columns/char.d.ts +2 -0
  123. package/mysql-core/columns/char.js +1 -0
  124. package/mysql-core/columns/char.js.map +1 -1
  125. package/mysql-core/columns/common.cjs.map +1 -1
  126. package/mysql-core/columns/common.d.cts +1 -1
  127. package/mysql-core/columns/common.d.ts +1 -1
  128. package/mysql-core/columns/common.js.map +1 -1
  129. package/mysql-core/columns/custom.cjs +3 -1
  130. package/mysql-core/columns/custom.cjs.map +1 -1
  131. package/mysql-core/columns/custom.d.cts +1 -0
  132. package/mysql-core/columns/custom.d.ts +1 -0
  133. package/mysql-core/columns/custom.js +3 -1
  134. package/mysql-core/columns/custom.js.map +1 -1
  135. package/mysql-core/columns/date.cjs.map +1 -1
  136. package/mysql-core/columns/date.d.cts +2 -0
  137. package/mysql-core/columns/date.d.ts +2 -0
  138. package/mysql-core/columns/date.js.map +1 -1
  139. package/mysql-core/columns/datetime.cjs.map +1 -1
  140. package/mysql-core/columns/datetime.d.cts +2 -0
  141. package/mysql-core/columns/datetime.d.ts +2 -0
  142. package/mysql-core/columns/datetime.js.map +1 -1
  143. package/mysql-core/columns/decimal.cjs.map +1 -1
  144. package/mysql-core/columns/decimal.d.cts +3 -0
  145. package/mysql-core/columns/decimal.d.ts +3 -0
  146. package/mysql-core/columns/decimal.js.map +1 -1
  147. package/mysql-core/columns/double.cjs.map +1 -1
  148. package/mysql-core/columns/double.d.cts +1 -0
  149. package/mysql-core/columns/double.d.ts +1 -0
  150. package/mysql-core/columns/double.js.map +1 -1
  151. package/mysql-core/columns/enum.cjs.map +1 -1
  152. package/mysql-core/columns/enum.d.cts +2 -0
  153. package/mysql-core/columns/enum.d.ts +2 -0
  154. package/mysql-core/columns/enum.js.map +1 -1
  155. package/mysql-core/columns/float.cjs.map +1 -1
  156. package/mysql-core/columns/float.d.cts +1 -0
  157. package/mysql-core/columns/float.d.ts +1 -0
  158. package/mysql-core/columns/float.js.map +1 -1
  159. package/mysql-core/columns/int.cjs.map +1 -1
  160. package/mysql-core/columns/int.d.cts +1 -0
  161. package/mysql-core/columns/int.d.ts +1 -0
  162. package/mysql-core/columns/int.js.map +1 -1
  163. package/mysql-core/columns/json.cjs.map +1 -1
  164. package/mysql-core/columns/json.d.cts +1 -0
  165. package/mysql-core/columns/json.d.ts +1 -0
  166. package/mysql-core/columns/json.js.map +1 -1
  167. package/mysql-core/columns/mediumint.cjs.map +1 -1
  168. package/mysql-core/columns/mediumint.d.cts +1 -0
  169. package/mysql-core/columns/mediumint.d.ts +1 -0
  170. package/mysql-core/columns/mediumint.js.map +1 -1
  171. package/mysql-core/columns/real.cjs.map +1 -1
  172. package/mysql-core/columns/real.d.cts +1 -0
  173. package/mysql-core/columns/real.d.ts +1 -0
  174. package/mysql-core/columns/real.js.map +1 -1
  175. package/mysql-core/columns/serial.cjs.map +1 -1
  176. package/mysql-core/columns/serial.d.cts +1 -0
  177. package/mysql-core/columns/serial.d.ts +1 -0
  178. package/mysql-core/columns/serial.js.map +1 -1
  179. package/mysql-core/columns/smallint.cjs.map +1 -1
  180. package/mysql-core/columns/smallint.d.cts +1 -0
  181. package/mysql-core/columns/smallint.d.ts +1 -0
  182. package/mysql-core/columns/smallint.js.map +1 -1
  183. package/mysql-core/columns/text.cjs.map +1 -1
  184. package/mysql-core/columns/text.d.cts +1 -0
  185. package/mysql-core/columns/text.d.ts +1 -0
  186. package/mysql-core/columns/text.js.map +1 -1
  187. package/mysql-core/columns/time.cjs.map +1 -1
  188. package/mysql-core/columns/time.d.cts +1 -0
  189. package/mysql-core/columns/time.d.ts +1 -0
  190. package/mysql-core/columns/time.js.map +1 -1
  191. package/mysql-core/columns/timestamp.cjs.map +1 -1
  192. package/mysql-core/columns/timestamp.d.cts +2 -0
  193. package/mysql-core/columns/timestamp.d.ts +2 -0
  194. package/mysql-core/columns/timestamp.js.map +1 -1
  195. package/mysql-core/columns/tinyint.cjs.map +1 -1
  196. package/mysql-core/columns/tinyint.d.cts +1 -0
  197. package/mysql-core/columns/tinyint.d.ts +1 -0
  198. package/mysql-core/columns/tinyint.js.map +1 -1
  199. package/mysql-core/columns/varbinary.cjs.map +1 -1
  200. package/mysql-core/columns/varbinary.d.cts +1 -0
  201. package/mysql-core/columns/varbinary.d.ts +1 -0
  202. package/mysql-core/columns/varbinary.js.map +1 -1
  203. package/mysql-core/columns/varchar.cjs +1 -1
  204. package/mysql-core/columns/varchar.cjs.map +1 -1
  205. package/mysql-core/columns/varchar.d.cts +2 -1
  206. package/mysql-core/columns/varchar.d.ts +2 -1
  207. package/mysql-core/columns/varchar.js +1 -1
  208. package/mysql-core/columns/varchar.js.map +1 -1
  209. package/mysql-core/columns/year.cjs.map +1 -1
  210. package/mysql-core/columns/year.d.cts +1 -0
  211. package/mysql-core/columns/year.d.ts +1 -0
  212. package/mysql-core/columns/year.js.map +1 -1
  213. package/mysql-core/dialect.cjs +0 -3
  214. package/mysql-core/dialect.cjs.map +1 -1
  215. package/mysql-core/dialect.d.cts +0 -1
  216. package/mysql-core/dialect.d.ts +0 -1
  217. package/mysql-core/dialect.js +0 -3
  218. package/mysql-core/dialect.js.map +1 -1
  219. package/mysql-core/query-builders/insert.cjs.map +1 -1
  220. package/mysql-core/query-builders/insert.d.cts +2 -2
  221. package/mysql-core/query-builders/insert.d.ts +2 -2
  222. package/mysql-core/query-builders/insert.js.map +1 -1
  223. package/mysql-core/query-builders/update.cjs.map +1 -1
  224. package/mysql-core/query-builders/update.d.cts +1 -1
  225. package/mysql-core/query-builders/update.d.ts +1 -1
  226. package/mysql-core/query-builders/update.js.map +1 -1
  227. package/mysql-proxy/driver.cjs +2 -2
  228. package/mysql-proxy/driver.cjs.map +1 -1
  229. package/mysql-proxy/driver.d.cts +1 -2
  230. package/mysql-proxy/driver.d.ts +1 -2
  231. package/mysql-proxy/driver.js +2 -2
  232. package/mysql-proxy/driver.js.map +1 -1
  233. package/node-postgres/session.cjs.map +1 -1
  234. package/node-postgres/session.js.map +1 -1
  235. package/package.json +190 -1632
  236. package/pg-core/columns/bigint.cjs.map +1 -1
  237. package/pg-core/columns/bigint.d.cts +2 -0
  238. package/pg-core/columns/bigint.d.ts +2 -0
  239. package/pg-core/columns/bigint.js.map +1 -1
  240. package/pg-core/columns/bigserial.cjs +0 -1
  241. package/pg-core/columns/bigserial.cjs.map +1 -1
  242. package/pg-core/columns/bigserial.d.cts +2 -0
  243. package/pg-core/columns/bigserial.d.ts +2 -0
  244. package/pg-core/columns/bigserial.js +0 -1
  245. package/pg-core/columns/bigserial.js.map +1 -1
  246. package/pg-core/columns/boolean.cjs.map +1 -1
  247. package/pg-core/columns/boolean.d.cts +1 -0
  248. package/pg-core/columns/boolean.d.ts +1 -0
  249. package/pg-core/columns/boolean.js.map +1 -1
  250. package/pg-core/columns/bytea.cjs.map +1 -1
  251. package/pg-core/columns/bytea.d.cts +1 -0
  252. package/pg-core/columns/bytea.d.ts +1 -0
  253. package/pg-core/columns/bytea.js.map +1 -1
  254. package/pg-core/columns/char.cjs +1 -0
  255. package/pg-core/columns/char.cjs.map +1 -1
  256. package/pg-core/columns/char.d.cts +2 -0
  257. package/pg-core/columns/char.d.ts +2 -0
  258. package/pg-core/columns/char.js +1 -0
  259. package/pg-core/columns/char.js.map +1 -1
  260. package/pg-core/columns/cidr.cjs.map +1 -1
  261. package/pg-core/columns/cidr.d.cts +1 -0
  262. package/pg-core/columns/cidr.d.ts +1 -0
  263. package/pg-core/columns/cidr.js.map +1 -1
  264. package/pg-core/columns/common.cjs +10 -11
  265. package/pg-core/columns/common.cjs.map +1 -1
  266. package/pg-core/columns/common.d.cts +2 -3
  267. package/pg-core/columns/common.d.ts +2 -3
  268. package/pg-core/columns/common.js +10 -11
  269. package/pg-core/columns/common.js.map +1 -1
  270. package/pg-core/columns/custom.cjs.map +1 -1
  271. package/pg-core/columns/custom.d.cts +1 -0
  272. package/pg-core/columns/custom.d.ts +1 -0
  273. package/pg-core/columns/custom.js.map +1 -1
  274. package/pg-core/columns/date.cjs.map +1 -1
  275. package/pg-core/columns/date.d.cts +2 -0
  276. package/pg-core/columns/date.d.ts +2 -0
  277. package/pg-core/columns/date.js.map +1 -1
  278. package/pg-core/columns/double-precision.cjs.map +1 -1
  279. package/pg-core/columns/double-precision.d.cts +1 -0
  280. package/pg-core/columns/double-precision.d.ts +1 -0
  281. package/pg-core/columns/double-precision.js.map +1 -1
  282. package/pg-core/columns/enum.cjs.map +1 -1
  283. package/pg-core/columns/enum.d.cts +2 -0
  284. package/pg-core/columns/enum.d.ts +2 -0
  285. package/pg-core/columns/enum.js.map +1 -1
  286. package/pg-core/columns/inet.cjs.map +1 -1
  287. package/pg-core/columns/inet.d.cts +1 -0
  288. package/pg-core/columns/inet.d.ts +1 -0
  289. package/pg-core/columns/inet.js.map +1 -1
  290. package/pg-core/columns/integer.cjs.map +1 -1
  291. package/pg-core/columns/integer.d.cts +1 -0
  292. package/pg-core/columns/integer.d.ts +1 -0
  293. package/pg-core/columns/integer.js.map +1 -1
  294. package/pg-core/columns/interval.cjs.map +1 -1
  295. package/pg-core/columns/interval.d.cts +1 -0
  296. package/pg-core/columns/interval.d.ts +1 -0
  297. package/pg-core/columns/interval.js.map +1 -1
  298. package/pg-core/columns/json.cjs.map +1 -1
  299. package/pg-core/columns/json.d.cts +1 -0
  300. package/pg-core/columns/json.d.ts +1 -0
  301. package/pg-core/columns/json.js.map +1 -1
  302. package/pg-core/columns/jsonb.cjs.map +1 -1
  303. package/pg-core/columns/jsonb.d.cts +1 -0
  304. package/pg-core/columns/jsonb.d.ts +1 -0
  305. package/pg-core/columns/jsonb.js.map +1 -1
  306. package/pg-core/columns/line.cjs +0 -2
  307. package/pg-core/columns/line.cjs.map +1 -1
  308. package/pg-core/columns/line.d.cts +2 -2
  309. package/pg-core/columns/line.d.ts +2 -2
  310. package/pg-core/columns/line.js +0 -2
  311. package/pg-core/columns/line.js.map +1 -1
  312. package/pg-core/columns/macaddr.cjs.map +1 -1
  313. package/pg-core/columns/macaddr.d.cts +1 -0
  314. package/pg-core/columns/macaddr.d.ts +1 -0
  315. package/pg-core/columns/macaddr.js.map +1 -1
  316. package/pg-core/columns/macaddr8.cjs.map +1 -1
  317. package/pg-core/columns/macaddr8.d.cts +1 -0
  318. package/pg-core/columns/macaddr8.d.ts +1 -0
  319. package/pg-core/columns/macaddr8.js.map +1 -1
  320. package/pg-core/columns/numeric.cjs.map +1 -1
  321. package/pg-core/columns/numeric.d.cts +3 -0
  322. package/pg-core/columns/numeric.d.ts +3 -0
  323. package/pg-core/columns/numeric.js.map +1 -1
  324. package/pg-core/columns/point.cjs +0 -2
  325. package/pg-core/columns/point.cjs.map +1 -1
  326. package/pg-core/columns/point.d.cts +2 -2
  327. package/pg-core/columns/point.d.ts +2 -2
  328. package/pg-core/columns/point.js +0 -2
  329. package/pg-core/columns/point.js.map +1 -1
  330. package/pg-core/columns/postgis_extension/geometry.cjs +8 -14
  331. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  332. package/pg-core/columns/postgis_extension/geometry.d.cts +6 -16
  333. package/pg-core/columns/postgis_extension/geometry.d.ts +6 -16
  334. package/pg-core/columns/postgis_extension/geometry.js +8 -14
  335. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  336. package/pg-core/columns/postgis_extension/utils.cjs +3 -3
  337. package/pg-core/columns/postgis_extension/utils.cjs.map +1 -1
  338. package/pg-core/columns/postgis_extension/utils.d.cts +1 -4
  339. package/pg-core/columns/postgis_extension/utils.d.ts +1 -4
  340. package/pg-core/columns/postgis_extension/utils.js +3 -3
  341. package/pg-core/columns/postgis_extension/utils.js.map +1 -1
  342. package/pg-core/columns/real.cjs.map +1 -1
  343. package/pg-core/columns/real.d.cts +1 -0
  344. package/pg-core/columns/real.d.ts +1 -0
  345. package/pg-core/columns/real.js.map +1 -1
  346. package/pg-core/columns/serial.cjs.map +1 -1
  347. package/pg-core/columns/serial.d.cts +1 -0
  348. package/pg-core/columns/serial.d.ts +1 -0
  349. package/pg-core/columns/serial.js.map +1 -1
  350. package/pg-core/columns/smallint.cjs.map +1 -1
  351. package/pg-core/columns/smallint.d.cts +1 -0
  352. package/pg-core/columns/smallint.d.ts +1 -0
  353. package/pg-core/columns/smallint.js.map +1 -1
  354. package/pg-core/columns/smallserial.cjs.map +1 -1
  355. package/pg-core/columns/smallserial.d.cts +1 -0
  356. package/pg-core/columns/smallserial.d.ts +1 -0
  357. package/pg-core/columns/smallserial.js.map +1 -1
  358. package/pg-core/columns/text.cjs.map +1 -1
  359. package/pg-core/columns/text.d.cts +1 -0
  360. package/pg-core/columns/text.d.ts +1 -0
  361. package/pg-core/columns/text.js.map +1 -1
  362. package/pg-core/columns/time.cjs.map +1 -1
  363. package/pg-core/columns/time.d.cts +1 -0
  364. package/pg-core/columns/time.d.ts +1 -0
  365. package/pg-core/columns/time.js.map +1 -1
  366. package/pg-core/columns/timestamp.cjs.map +1 -1
  367. package/pg-core/columns/timestamp.d.cts +2 -0
  368. package/pg-core/columns/timestamp.d.ts +2 -0
  369. package/pg-core/columns/timestamp.js.map +1 -1
  370. package/pg-core/columns/uuid.cjs.map +1 -1
  371. package/pg-core/columns/uuid.d.cts +1 -0
  372. package/pg-core/columns/uuid.d.ts +1 -0
  373. package/pg-core/columns/uuid.js.map +1 -1
  374. package/pg-core/columns/varchar.cjs.map +1 -1
  375. package/pg-core/columns/varchar.d.cts +1 -0
  376. package/pg-core/columns/varchar.d.ts +1 -0
  377. package/pg-core/columns/varchar.js.map +1 -1
  378. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  379. package/pg-core/columns/vector_extension/bit.d.cts +1 -0
  380. package/pg-core/columns/vector_extension/bit.d.ts +1 -0
  381. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  382. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  383. package/pg-core/columns/vector_extension/halfvec.d.cts +1 -0
  384. package/pg-core/columns/vector_extension/halfvec.d.ts +1 -0
  385. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  386. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  387. package/pg-core/columns/vector_extension/sparsevec.d.cts +1 -0
  388. package/pg-core/columns/vector_extension/sparsevec.d.ts +1 -0
  389. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  390. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  391. package/pg-core/columns/vector_extension/vector.d.cts +1 -0
  392. package/pg-core/columns/vector_extension/vector.d.ts +1 -0
  393. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  394. package/pg-core/foreign-keys.cjs +0 -4
  395. package/pg-core/foreign-keys.cjs.map +1 -1
  396. package/pg-core/foreign-keys.d.cts +0 -2
  397. package/pg-core/foreign-keys.d.ts +0 -2
  398. package/pg-core/foreign-keys.js +0 -4
  399. package/pg-core/foreign-keys.js.map +1 -1
  400. package/pg-core/primary-keys.cjs +0 -3
  401. package/pg-core/primary-keys.cjs.map +1 -1
  402. package/pg-core/primary-keys.d.cts +0 -1
  403. package/pg-core/primary-keys.d.ts +0 -1
  404. package/pg-core/primary-keys.js +0 -3
  405. package/pg-core/primary-keys.js.map +1 -1
  406. package/pg-core/query-builders/insert.cjs.map +1 -1
  407. package/pg-core/query-builders/insert.d.cts +9 -6
  408. package/pg-core/query-builders/insert.d.ts +9 -6
  409. package/pg-core/query-builders/insert.js.map +1 -1
  410. package/pg-core/query-builders/update.cjs.map +1 -1
  411. package/pg-core/query-builders/update.d.cts +1 -1
  412. package/pg-core/query-builders/update.d.ts +1 -1
  413. package/pg-core/query-builders/update.js.map +1 -1
  414. package/pg-core/unique-constraint.cjs +0 -5
  415. package/pg-core/unique-constraint.cjs.map +1 -1
  416. package/pg-core/unique-constraint.d.cts +0 -2
  417. package/pg-core/unique-constraint.d.ts +0 -2
  418. package/pg-core/unique-constraint.js +0 -5
  419. package/pg-core/unique-constraint.js.map +1 -1
  420. package/relations.cjs +5 -0
  421. package/relations.cjs.map +1 -1
  422. package/relations.js +5 -0
  423. package/relations.js.map +1 -1
  424. package/singlestore-core/columns/bigint.cjs.map +1 -1
  425. package/singlestore-core/columns/bigint.d.cts +2 -0
  426. package/singlestore-core/columns/bigint.d.ts +2 -0
  427. package/singlestore-core/columns/bigint.js.map +1 -1
  428. package/singlestore-core/columns/binary.cjs +1 -0
  429. package/singlestore-core/columns/binary.cjs.map +1 -1
  430. package/singlestore-core/columns/binary.d.cts +2 -0
  431. package/singlestore-core/columns/binary.d.ts +2 -0
  432. package/singlestore-core/columns/binary.js +1 -0
  433. package/singlestore-core/columns/binary.js.map +1 -1
  434. package/singlestore-core/columns/boolean.cjs.map +1 -1
  435. package/singlestore-core/columns/boolean.d.cts +1 -0
  436. package/singlestore-core/columns/boolean.d.ts +1 -0
  437. package/singlestore-core/columns/boolean.js.map +1 -1
  438. package/singlestore-core/columns/char.cjs +1 -0
  439. package/singlestore-core/columns/char.cjs.map +1 -1
  440. package/singlestore-core/columns/char.d.cts +2 -0
  441. package/singlestore-core/columns/char.d.ts +2 -0
  442. package/singlestore-core/columns/char.js +1 -0
  443. package/singlestore-core/columns/char.js.map +1 -1
  444. package/singlestore-core/columns/common.cjs.map +1 -1
  445. package/singlestore-core/columns/common.d.cts +1 -1
  446. package/singlestore-core/columns/common.d.ts +1 -1
  447. package/singlestore-core/columns/common.js.map +1 -1
  448. package/singlestore-core/columns/custom.cjs.map +1 -1
  449. package/singlestore-core/columns/custom.d.cts +1 -0
  450. package/singlestore-core/columns/custom.d.ts +1 -0
  451. package/singlestore-core/columns/custom.js.map +1 -1
  452. package/singlestore-core/columns/date.cjs.map +1 -1
  453. package/singlestore-core/columns/date.d.cts +2 -0
  454. package/singlestore-core/columns/date.d.ts +2 -0
  455. package/singlestore-core/columns/date.js.map +1 -1
  456. package/singlestore-core/columns/datetime.cjs.map +1 -1
  457. package/singlestore-core/columns/datetime.d.cts +2 -0
  458. package/singlestore-core/columns/datetime.d.ts +2 -0
  459. package/singlestore-core/columns/datetime.js.map +1 -1
  460. package/singlestore-core/columns/decimal.cjs.map +1 -1
  461. package/singlestore-core/columns/decimal.d.cts +3 -0
  462. package/singlestore-core/columns/decimal.d.ts +3 -0
  463. package/singlestore-core/columns/decimal.js.map +1 -1
  464. package/singlestore-core/columns/double.cjs.map +1 -1
  465. package/singlestore-core/columns/double.d.cts +1 -0
  466. package/singlestore-core/columns/double.d.ts +1 -0
  467. package/singlestore-core/columns/double.js.map +1 -1
  468. package/singlestore-core/columns/enum.cjs.map +1 -1
  469. package/singlestore-core/columns/enum.d.cts +1 -0
  470. package/singlestore-core/columns/enum.d.ts +1 -0
  471. package/singlestore-core/columns/enum.js.map +1 -1
  472. package/singlestore-core/columns/float.cjs.map +1 -1
  473. package/singlestore-core/columns/float.d.cts +1 -0
  474. package/singlestore-core/columns/float.d.ts +1 -0
  475. package/singlestore-core/columns/float.js.map +1 -1
  476. package/singlestore-core/columns/int.cjs.map +1 -1
  477. package/singlestore-core/columns/int.d.cts +1 -0
  478. package/singlestore-core/columns/int.d.ts +1 -0
  479. package/singlestore-core/columns/int.js.map +1 -1
  480. package/singlestore-core/columns/json.cjs.map +1 -1
  481. package/singlestore-core/columns/json.d.cts +1 -0
  482. package/singlestore-core/columns/json.d.ts +1 -0
  483. package/singlestore-core/columns/json.js.map +1 -1
  484. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  485. package/singlestore-core/columns/mediumint.d.cts +1 -0
  486. package/singlestore-core/columns/mediumint.d.ts +1 -0
  487. package/singlestore-core/columns/mediumint.js.map +1 -1
  488. package/singlestore-core/columns/real.cjs.map +1 -1
  489. package/singlestore-core/columns/real.d.cts +1 -0
  490. package/singlestore-core/columns/real.d.ts +1 -0
  491. package/singlestore-core/columns/real.js.map +1 -1
  492. package/singlestore-core/columns/serial.cjs.map +1 -1
  493. package/singlestore-core/columns/serial.d.cts +1 -0
  494. package/singlestore-core/columns/serial.d.ts +1 -0
  495. package/singlestore-core/columns/serial.js.map +1 -1
  496. package/singlestore-core/columns/smallint.cjs.map +1 -1
  497. package/singlestore-core/columns/smallint.d.cts +1 -0
  498. package/singlestore-core/columns/smallint.d.ts +1 -0
  499. package/singlestore-core/columns/smallint.js.map +1 -1
  500. package/singlestore-core/columns/text.cjs.map +1 -1
  501. package/singlestore-core/columns/text.d.cts +1 -0
  502. package/singlestore-core/columns/text.d.ts +1 -0
  503. package/singlestore-core/columns/text.js.map +1 -1
  504. package/singlestore-core/columns/time.cjs.map +1 -1
  505. package/singlestore-core/columns/time.d.cts +1 -0
  506. package/singlestore-core/columns/time.d.ts +1 -0
  507. package/singlestore-core/columns/time.js.map +1 -1
  508. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  509. package/singlestore-core/columns/timestamp.d.cts +2 -0
  510. package/singlestore-core/columns/timestamp.d.ts +2 -0
  511. package/singlestore-core/columns/timestamp.js.map +1 -1
  512. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  513. package/singlestore-core/columns/tinyint.d.cts +1 -0
  514. package/singlestore-core/columns/tinyint.d.ts +1 -0
  515. package/singlestore-core/columns/tinyint.js.map +1 -1
  516. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  517. package/singlestore-core/columns/varbinary.d.cts +1 -0
  518. package/singlestore-core/columns/varbinary.d.ts +1 -0
  519. package/singlestore-core/columns/varbinary.js.map +1 -1
  520. package/singlestore-core/columns/varchar.cjs.map +1 -1
  521. package/singlestore-core/columns/varchar.d.cts +1 -0
  522. package/singlestore-core/columns/varchar.d.ts +1 -0
  523. package/singlestore-core/columns/varchar.js.map +1 -1
  524. package/singlestore-core/columns/vector.cjs.map +1 -1
  525. package/singlestore-core/columns/vector.d.cts +2 -0
  526. package/singlestore-core/columns/vector.d.ts +2 -0
  527. package/singlestore-core/columns/vector.js.map +1 -1
  528. package/singlestore-core/columns/year.cjs.map +1 -1
  529. package/singlestore-core/columns/year.d.cts +1 -0
  530. package/singlestore-core/columns/year.d.ts +1 -0
  531. package/singlestore-core/columns/year.js.map +1 -1
  532. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  533. package/singlestore-core/query-builders/insert.d.cts +1 -1
  534. package/singlestore-core/query-builders/insert.d.ts +1 -1
  535. package/singlestore-core/query-builders/insert.js.map +1 -1
  536. package/singlestore-core/query-builders/update.cjs.map +1 -1
  537. package/singlestore-core/query-builders/update.d.cts +1 -1
  538. package/singlestore-core/query-builders/update.d.ts +1 -1
  539. package/singlestore-core/query-builders/update.js.map +1 -1
  540. package/sql/sql.cjs +3 -10
  541. package/sql/sql.cjs.map +1 -1
  542. package/sql/sql.d.cts +1 -1
  543. package/sql/sql.d.ts +1 -1
  544. package/sql/sql.js +3 -10
  545. package/sql/sql.js.map +1 -1
  546. package/sqlite-core/columns/blob.cjs +3 -3
  547. package/sqlite-core/columns/blob.cjs.map +1 -1
  548. package/sqlite-core/columns/blob.d.cts +3 -0
  549. package/sqlite-core/columns/blob.d.ts +3 -0
  550. package/sqlite-core/columns/blob.js +3 -3
  551. package/sqlite-core/columns/blob.js.map +1 -1
  552. package/sqlite-core/columns/custom.cjs.map +1 -1
  553. package/sqlite-core/columns/custom.d.cts +1 -0
  554. package/sqlite-core/columns/custom.d.ts +1 -0
  555. package/sqlite-core/columns/custom.js.map +1 -1
  556. package/sqlite-core/columns/integer.cjs.map +1 -1
  557. package/sqlite-core/columns/integer.d.cts +3 -0
  558. package/sqlite-core/columns/integer.d.ts +3 -0
  559. package/sqlite-core/columns/integer.js.map +1 -1
  560. package/sqlite-core/columns/numeric.cjs.map +1 -1
  561. package/sqlite-core/columns/numeric.d.cts +3 -0
  562. package/sqlite-core/columns/numeric.d.ts +3 -0
  563. package/sqlite-core/columns/numeric.js.map +1 -1
  564. package/sqlite-core/columns/real.cjs.map +1 -1
  565. package/sqlite-core/columns/real.d.cts +1 -0
  566. package/sqlite-core/columns/real.d.ts +1 -0
  567. package/sqlite-core/columns/real.js.map +1 -1
  568. package/sqlite-core/columns/text.cjs.map +1 -1
  569. package/sqlite-core/columns/text.d.cts +2 -0
  570. package/sqlite-core/columns/text.d.ts +2 -0
  571. package/sqlite-core/columns/text.js.map +1 -1
  572. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  573. package/sqlite-core/query-builders/insert.d.cts +2 -2
  574. package/sqlite-core/query-builders/insert.d.ts +2 -2
  575. package/sqlite-core/query-builders/insert.js.map +1 -1
  576. package/sqlite-core/query-builders/update.cjs.map +1 -1
  577. package/sqlite-core/query-builders/update.d.cts +1 -1
  578. package/sqlite-core/query-builders/update.d.ts +1 -1
  579. package/sqlite-core/query-builders/update.js.map +1 -1
  580. package/version.cjs +1 -1
  581. package/version.d.cts +1 -1
  582. package/version.d.ts +1 -1
  583. package/version.js +1 -1
  584. package/cockroach/driver.cjs +0 -113
  585. package/cockroach/driver.cjs.map +0 -1
  586. package/cockroach/driver.d.cts +0 -42
  587. package/cockroach/driver.d.ts +0 -42
  588. package/cockroach/driver.js +0 -77
  589. package/cockroach/driver.js.map +0 -1
  590. package/cockroach/index.cjs +0 -25
  591. package/cockroach/index.cjs.map +0 -1
  592. package/cockroach/index.d.cts +0 -2
  593. package/cockroach/index.d.ts +0 -2
  594. package/cockroach/index.js +0 -3
  595. package/cockroach/index.js.map +0 -1
  596. package/cockroach/migrator.cjs +0 -33
  597. package/cockroach/migrator.cjs.map +0 -1
  598. package/cockroach/migrator.d.cts +0 -3
  599. package/cockroach/migrator.d.ts +0 -3
  600. package/cockroach/migrator.js +0 -9
  601. package/cockroach/migrator.js.map +0 -1
  602. package/cockroach/session.cjs +0 -253
  603. package/cockroach/session.cjs.map +0 -1
  604. package/cockroach/session.d.cts +0 -48
  605. package/cockroach/session.d.ts +0 -48
  606. package/cockroach/session.js +0 -217
  607. package/cockroach/session.js.map +0 -1
  608. package/cockroach-core/alias.cjs +0 -32
  609. package/cockroach-core/alias.cjs.map +0 -1
  610. package/cockroach-core/alias.d.cts +0 -4
  611. package/cockroach-core/alias.d.ts +0 -4
  612. package/cockroach-core/alias.js +0 -8
  613. package/cockroach-core/alias.js.map +0 -1
  614. package/cockroach-core/checks.cjs +0 -58
  615. package/cockroach-core/checks.cjs.map +0 -1
  616. package/cockroach-core/checks.d.cts +0 -18
  617. package/cockroach-core/checks.d.ts +0 -18
  618. package/cockroach-core/checks.js +0 -32
  619. package/cockroach-core/checks.js.map +0 -1
  620. package/cockroach-core/columns/all.cjs +0 -81
  621. package/cockroach-core/columns/all.cjs.map +0 -1
  622. package/cockroach-core/columns/all.d.cts +0 -52
  623. package/cockroach-core/columns/all.d.ts +0 -52
  624. package/cockroach-core/columns/all.js +0 -57
  625. package/cockroach-core/columns/all.js.map +0 -1
  626. package/cockroach-core/columns/bigint.cjs +0 -104
  627. package/cockroach-core/columns/bigint.cjs.map +0 -1
  628. package/cockroach-core/columns/bigint.d.cts +0 -37
  629. package/cockroach-core/columns/bigint.d.ts +0 -37
  630. package/cockroach-core/columns/bigint.js +0 -75
  631. package/cockroach-core/columns/bigint.js.map +0 -1
  632. package/cockroach-core/columns/bit.cjs +0 -61
  633. package/cockroach-core/columns/bit.cjs.map +0 -1
  634. package/cockroach-core/columns/bit.d.cts +0 -29
  635. package/cockroach-core/columns/bit.d.ts +0 -29
  636. package/cockroach-core/columns/bit.js +0 -35
  637. package/cockroach-core/columns/bit.js.map +0 -1
  638. package/cockroach-core/columns/bool.cjs +0 -59
  639. package/cockroach-core/columns/bool.cjs.map +0 -1
  640. package/cockroach-core/columns/bool.d.cts +0 -17
  641. package/cockroach-core/columns/bool.d.ts +0 -17
  642. package/cockroach-core/columns/bool.js +0 -32
  643. package/cockroach-core/columns/bool.js.map +0 -1
  644. package/cockroach-core/columns/char.cjs +0 -62
  645. package/cockroach-core/columns/char.cjs.map +0 -1
  646. package/cockroach-core/columns/char.d.cts +0 -31
  647. package/cockroach-core/columns/char.d.ts +0 -31
  648. package/cockroach-core/columns/char.js +0 -36
  649. package/cockroach-core/columns/char.js.map +0 -1
  650. package/cockroach-core/columns/common.cjs +0 -199
  651. package/cockroach-core/columns/common.cjs.map +0 -1
  652. package/cockroach-core/columns/common.d.cts +0 -98
  653. package/cockroach-core/columns/common.d.ts +0 -98
  654. package/cockroach-core/columns/common.js +0 -169
  655. package/cockroach-core/columns/common.js.map +0 -1
  656. package/cockroach-core/columns/custom.cjs +0 -102
  657. package/cockroach-core/columns/custom.cjs.map +0 -1
  658. package/cockroach-core/columns/custom.d.cts +0 -261
  659. package/cockroach-core/columns/custom.d.ts +0 -261
  660. package/cockroach-core/columns/custom.js +0 -76
  661. package/cockroach-core/columns/custom.js.map +0 -1
  662. package/cockroach-core/columns/date.cjs +0 -91
  663. package/cockroach-core/columns/date.cjs.map +0 -1
  664. package/cockroach-core/columns/date.common.cjs +0 -37
  665. package/cockroach-core/columns/date.common.cjs.map +0 -1
  666. package/cockroach-core/columns/date.common.d.cts +0 -7
  667. package/cockroach-core/columns/date.common.d.ts +0 -7
  668. package/cockroach-core/columns/date.common.js +0 -13
  669. package/cockroach-core/columns/date.common.js.map +0 -1
  670. package/cockroach-core/columns/date.d.cts +0 -36
  671. package/cockroach-core/columns/date.d.ts +0 -36
  672. package/cockroach-core/columns/date.js +0 -63
  673. package/cockroach-core/columns/date.js.map +0 -1
  674. package/cockroach-core/columns/decimal.cjs +0 -164
  675. package/cockroach-core/columns/decimal.cjs.map +0 -1
  676. package/cockroach-core/columns/decimal.d.cts +0 -80
  677. package/cockroach-core/columns/decimal.d.ts +0 -80
  678. package/cockroach-core/columns/decimal.js +0 -133
  679. package/cockroach-core/columns/decimal.js.map +0 -1
  680. package/cockroach-core/columns/enum.cjs +0 -127
  681. package/cockroach-core/columns/enum.cjs.map +0 -1
  682. package/cockroach-core/columns/enum.d.cts +0 -64
  683. package/cockroach-core/columns/enum.d.ts +0 -64
  684. package/cockroach-core/columns/enum.js +0 -96
  685. package/cockroach-core/columns/enum.js.map +0 -1
  686. package/cockroach-core/columns/float.cjs +0 -65
  687. package/cockroach-core/columns/float.cjs.map +0 -1
  688. package/cockroach-core/columns/float.d.cts +0 -18
  689. package/cockroach-core/columns/float.d.ts +0 -18
  690. package/cockroach-core/columns/float.js +0 -38
  691. package/cockroach-core/columns/float.js.map +0 -1
  692. package/cockroach-core/columns/geometry.cjs +0 -105
  693. package/cockroach-core/columns/geometry.cjs.map +0 -1
  694. package/cockroach-core/columns/geometry.d.cts +0 -60
  695. package/cockroach-core/columns/geometry.d.ts +0 -60
  696. package/cockroach-core/columns/geometry.js +0 -77
  697. package/cockroach-core/columns/geometry.js.map +0 -1
  698. package/cockroach-core/columns/index.cjs +0 -71
  699. package/cockroach-core/columns/index.cjs.map +0 -1
  700. package/cockroach-core/columns/index.d.cts +0 -25
  701. package/cockroach-core/columns/index.d.ts +0 -25
  702. package/cockroach-core/columns/index.js +0 -26
  703. package/cockroach-core/columns/index.js.map +0 -1
  704. package/cockroach-core/columns/inet.cjs +0 -56
  705. package/cockroach-core/columns/inet.cjs.map +0 -1
  706. package/cockroach-core/columns/inet.d.cts +0 -16
  707. package/cockroach-core/columns/inet.d.ts +0 -16
  708. package/cockroach-core/columns/inet.js +0 -30
  709. package/cockroach-core/columns/inet.js.map +0 -1
  710. package/cockroach-core/columns/int.common.cjs +0 -55
  711. package/cockroach-core/columns/int.common.cjs.map +0 -1
  712. package/cockroach-core/columns/int.common.d.cts +0 -11
  713. package/cockroach-core/columns/int.common.d.ts +0 -11
  714. package/cockroach-core/columns/int.common.js +0 -31
  715. package/cockroach-core/columns/int.common.js.map +0 -1
  716. package/cockroach-core/columns/integer.cjs +0 -63
  717. package/cockroach-core/columns/integer.cjs.map +0 -1
  718. package/cockroach-core/columns/integer.d.cts +0 -18
  719. package/cockroach-core/columns/integer.d.ts +0 -18
  720. package/cockroach-core/columns/integer.js +0 -37
  721. package/cockroach-core/columns/integer.js.map +0 -1
  722. package/cockroach-core/columns/interval.cjs +0 -63
  723. package/cockroach-core/columns/interval.cjs.map +0 -1
  724. package/cockroach-core/columns/interval.d.cts +0 -28
  725. package/cockroach-core/columns/interval.d.ts +0 -28
  726. package/cockroach-core/columns/interval.js +0 -37
  727. package/cockroach-core/columns/interval.js.map +0 -1
  728. package/cockroach-core/columns/jsonb.cjs +0 -72
  729. package/cockroach-core/columns/jsonb.cjs.map +0 -1
  730. package/cockroach-core/columns/jsonb.d.cts +0 -20
  731. package/cockroach-core/columns/jsonb.d.ts +0 -20
  732. package/cockroach-core/columns/jsonb.js +0 -46
  733. package/cockroach-core/columns/jsonb.js.map +0 -1
  734. package/cockroach-core/columns/real.cjs +0 -66
  735. package/cockroach-core/columns/real.cjs.map +0 -1
  736. package/cockroach-core/columns/real.d.cts +0 -21
  737. package/cockroach-core/columns/real.d.ts +0 -21
  738. package/cockroach-core/columns/real.js +0 -40
  739. package/cockroach-core/columns/real.js.map +0 -1
  740. package/cockroach-core/columns/smallint.cjs +0 -68
  741. package/cockroach-core/columns/smallint.cjs.map +0 -1
  742. package/cockroach-core/columns/smallint.d.cts +0 -19
  743. package/cockroach-core/columns/smallint.d.ts +0 -19
  744. package/cockroach-core/columns/smallint.js +0 -41
  745. package/cockroach-core/columns/smallint.js.map +0 -1
  746. package/cockroach-core/columns/string.cjs +0 -67
  747. package/cockroach-core/columns/string.cjs.map +0 -1
  748. package/cockroach-core/columns/string.d.cts +0 -36
  749. package/cockroach-core/columns/string.d.ts +0 -36
  750. package/cockroach-core/columns/string.js +0 -40
  751. package/cockroach-core/columns/string.js.map +0 -1
  752. package/cockroach-core/columns/time.cjs +0 -70
  753. package/cockroach-core/columns/time.cjs.map +0 -1
  754. package/cockroach-core/columns/time.d.cts +0 -31
  755. package/cockroach-core/columns/time.d.ts +0 -31
  756. package/cockroach-core/columns/time.js +0 -44
  757. package/cockroach-core/columns/time.js.map +0 -1
  758. package/cockroach-core/columns/timestamp.cjs +0 -111
  759. package/cockroach-core/columns/timestamp.cjs.map +0 -1
  760. package/cockroach-core/columns/timestamp.d.cts +0 -52
  761. package/cockroach-core/columns/timestamp.d.ts +0 -52
  762. package/cockroach-core/columns/timestamp.js +0 -83
  763. package/cockroach-core/columns/timestamp.js.map +0 -1
  764. package/cockroach-core/columns/utils.cjs +0 -65
  765. package/cockroach-core/columns/utils.cjs.map +0 -1
  766. package/cockroach-core/columns/utils.d.cts +0 -4
  767. package/cockroach-core/columns/utils.d.ts +0 -4
  768. package/cockroach-core/columns/utils.js +0 -41
  769. package/cockroach-core/columns/utils.js.map +0 -1
  770. package/cockroach-core/columns/uuid.cjs +0 -63
  771. package/cockroach-core/columns/uuid.cjs.map +0 -1
  772. package/cockroach-core/columns/uuid.d.cts +0 -20
  773. package/cockroach-core/columns/uuid.d.ts +0 -20
  774. package/cockroach-core/columns/uuid.js +0 -37
  775. package/cockroach-core/columns/uuid.js.map +0 -1
  776. package/cockroach-core/columns/varbit.cjs +0 -59
  777. package/cockroach-core/columns/varbit.cjs.map +0 -1
  778. package/cockroach-core/columns/varbit.d.cts +0 -24
  779. package/cockroach-core/columns/varbit.d.ts +0 -24
  780. package/cockroach-core/columns/varbit.js +0 -33
  781. package/cockroach-core/columns/varbit.js.map +0 -1
  782. package/cockroach-core/columns/varchar.cjs +0 -61
  783. package/cockroach-core/columns/varchar.cjs.map +0 -1
  784. package/cockroach-core/columns/varchar.d.cts +0 -30
  785. package/cockroach-core/columns/varchar.d.ts +0 -30
  786. package/cockroach-core/columns/varchar.js +0 -35
  787. package/cockroach-core/columns/varchar.js.map +0 -1
  788. package/cockroach-core/columns/vector.cjs +0 -65
  789. package/cockroach-core/columns/vector.cjs.map +0 -1
  790. package/cockroach-core/columns/vector.d.cts +0 -26
  791. package/cockroach-core/columns/vector.d.ts +0 -26
  792. package/cockroach-core/columns/vector.js +0 -39
  793. package/cockroach-core/columns/vector.js.map +0 -1
  794. package/cockroach-core/db.cjs +0 -346
  795. package/cockroach-core/db.cjs.map +0 -1
  796. package/cockroach-core/db.d.cts +0 -282
  797. package/cockroach-core/db.d.ts +0 -282
  798. package/cockroach-core/db.js +0 -327
  799. package/cockroach-core/db.js.map +0 -1
  800. package/cockroach-core/dialect.cjs +0 -1146
  801. package/cockroach-core/dialect.cjs.map +0 -1
  802. package/cockroach-core/dialect.d.cts +0 -65
  803. package/cockroach-core/dialect.d.ts +0 -65
  804. package/cockroach-core/dialect.js +0 -1126
  805. package/cockroach-core/dialect.js.map +0 -1
  806. package/cockroach-core/expressions.cjs +0 -49
  807. package/cockroach-core/expressions.cjs.map +0 -1
  808. package/cockroach-core/expressions.d.cts +0 -8
  809. package/cockroach-core/expressions.d.ts +0 -8
  810. package/cockroach-core/expressions.js +0 -22
  811. package/cockroach-core/expressions.js.map +0 -1
  812. package/cockroach-core/foreign-keys.cjs +0 -92
  813. package/cockroach-core/foreign-keys.cjs.map +0 -1
  814. package/cockroach-core/foreign-keys.d.cts +0 -52
  815. package/cockroach-core/foreign-keys.d.ts +0 -52
  816. package/cockroach-core/foreign-keys.js +0 -66
  817. package/cockroach-core/foreign-keys.js.map +0 -1
  818. package/cockroach-core/index.cjs +0 -61
  819. package/cockroach-core/index.cjs.map +0 -1
  820. package/cockroach-core/index.d.cts +0 -20
  821. package/cockroach-core/index.d.ts +0 -20
  822. package/cockroach-core/index.js +0 -21
  823. package/cockroach-core/index.js.map +0 -1
  824. package/cockroach-core/indexes.cjs +0 -137
  825. package/cockroach-core/indexes.cjs.map +0 -1
  826. package/cockroach-core/indexes.d.cts +0 -64
  827. package/cockroach-core/indexes.d.ts +0 -64
  828. package/cockroach-core/indexes.js +0 -109
  829. package/cockroach-core/indexes.js.map +0 -1
  830. package/cockroach-core/policies.cjs +0 -58
  831. package/cockroach-core/policies.cjs.map +0 -1
  832. package/cockroach-core/policies.d.cts +0 -24
  833. package/cockroach-core/policies.d.ts +0 -24
  834. package/cockroach-core/policies.js +0 -33
  835. package/cockroach-core/policies.js.map +0 -1
  836. package/cockroach-core/primary-keys.cjs +0 -64
  837. package/cockroach-core/primary-keys.cjs.map +0 -1
  838. package/cockroach-core/primary-keys.d.cts +0 -23
  839. package/cockroach-core/primary-keys.d.ts +0 -23
  840. package/cockroach-core/primary-keys.js +0 -38
  841. package/cockroach-core/primary-keys.js.map +0 -1
  842. package/cockroach-core/query-builders/count.cjs +0 -79
  843. package/cockroach-core/query-builders/count.cjs.map +0 -1
  844. package/cockroach-core/query-builders/count.d.cts +0 -29
  845. package/cockroach-core/query-builders/count.d.ts +0 -29
  846. package/cockroach-core/query-builders/count.js +0 -55
  847. package/cockroach-core/query-builders/count.js.map +0 -1
  848. package/cockroach-core/query-builders/delete.cjs +0 -124
  849. package/cockroach-core/query-builders/delete.cjs.map +0 -1
  850. package/cockroach-core/query-builders/delete.d.cts +0 -103
  851. package/cockroach-core/query-builders/delete.d.ts +0 -103
  852. package/cockroach-core/query-builders/delete.js +0 -100
  853. package/cockroach-core/query-builders/delete.js.map +0 -1
  854. package/cockroach-core/query-builders/index.cjs +0 -35
  855. package/cockroach-core/query-builders/index.cjs.map +0 -1
  856. package/cockroach-core/query-builders/index.d.cts +0 -7
  857. package/cockroach-core/query-builders/index.d.ts +0 -7
  858. package/cockroach-core/query-builders/index.js +0 -8
  859. package/cockroach-core/query-builders/index.js.map +0 -1
  860. package/cockroach-core/query-builders/insert.cjs +0 -213
  861. package/cockroach-core/query-builders/insert.cjs.map +0 -1
  862. package/cockroach-core/query-builders/insert.d.cts +0 -168
  863. package/cockroach-core/query-builders/insert.d.ts +0 -168
  864. package/cockroach-core/query-builders/insert.js +0 -188
  865. package/cockroach-core/query-builders/insert.js.map +0 -1
  866. package/cockroach-core/query-builders/query-builder.cjs +0 -118
  867. package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
  868. package/cockroach-core/query-builders/query-builder.d.cts +0 -37
  869. package/cockroach-core/query-builders/query-builder.d.ts +0 -37
  870. package/cockroach-core/query-builders/query-builder.js +0 -94
  871. package/cockroach-core/query-builders/query-builder.js.map +0 -1
  872. package/cockroach-core/query-builders/query.cjs +0 -145
  873. package/cockroach-core/query-builders/query.cjs.map +0 -1
  874. package/cockroach-core/query-builders/query.d.cts +0 -47
  875. package/cockroach-core/query-builders/query.d.ts +0 -47
  876. package/cockroach-core/query-builders/query.js +0 -122
  877. package/cockroach-core/query-builders/query.js.map +0 -1
  878. package/cockroach-core/query-builders/raw.cjs +0 -57
  879. package/cockroach-core/query-builders/raw.cjs.map +0 -1
  880. package/cockroach-core/query-builders/raw.d.cts +0 -22
  881. package/cockroach-core/query-builders/raw.d.ts +0 -22
  882. package/cockroach-core/query-builders/raw.js +0 -33
  883. package/cockroach-core/query-builders/raw.js.map +0 -1
  884. package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
  885. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
  886. package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
  887. package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
  888. package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
  889. package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
  890. package/cockroach-core/query-builders/select.cjs +0 -848
  891. package/cockroach-core/query-builders/select.cjs.map +0 -1
  892. package/cockroach-core/query-builders/select.d.cts +0 -787
  893. package/cockroach-core/query-builders/select.d.ts +0 -787
  894. package/cockroach-core/query-builders/select.js +0 -821
  895. package/cockroach-core/query-builders/select.js.map +0 -1
  896. package/cockroach-core/query-builders/select.types.cjs +0 -17
  897. package/cockroach-core/query-builders/select.types.cjs.map +0 -1
  898. package/cockroach-core/query-builders/select.types.d.cts +0 -140
  899. package/cockroach-core/query-builders/select.types.d.ts +0 -140
  900. package/cockroach-core/query-builders/select.types.js +0 -1
  901. package/cockroach-core/query-builders/select.types.js.map +0 -1
  902. package/cockroach-core/query-builders/update.cjs +0 -240
  903. package/cockroach-core/query-builders/update.cjs.map +0 -1
  904. package/cockroach-core/query-builders/update.d.cts +0 -170
  905. package/cockroach-core/query-builders/update.d.ts +0 -170
  906. package/cockroach-core/query-builders/update.js +0 -219
  907. package/cockroach-core/query-builders/update.js.map +0 -1
  908. package/cockroach-core/roles.cjs +0 -54
  909. package/cockroach-core/roles.cjs.map +0 -1
  910. package/cockroach-core/roles.d.cts +0 -12
  911. package/cockroach-core/roles.d.ts +0 -12
  912. package/cockroach-core/roles.js +0 -29
  913. package/cockroach-core/roles.js.map +0 -1
  914. package/cockroach-core/schema.cjs +0 -80
  915. package/cockroach-core/schema.cjs.map +0 -1
  916. package/cockroach-core/schema.d.cts +0 -22
  917. package/cockroach-core/schema.d.ts +0 -22
  918. package/cockroach-core/schema.js +0 -60
  919. package/cockroach-core/schema.js.map +0 -1
  920. package/cockroach-core/sequence.cjs +0 -52
  921. package/cockroach-core/sequence.cjs.map +0 -1
  922. package/cockroach-core/sequence.d.cts +0 -17
  923. package/cockroach-core/sequence.d.ts +0 -17
  924. package/cockroach-core/sequence.js +0 -25
  925. package/cockroach-core/sequence.js.map +0 -1
  926. package/cockroach-core/session.cjs +0 -120
  927. package/cockroach-core/session.cjs.map +0 -1
  928. package/cockroach-core/session.d.cts +0 -62
  929. package/cockroach-core/session.d.ts +0 -62
  930. package/cockroach-core/session.js +0 -94
  931. package/cockroach-core/session.js.map +0 -1
  932. package/cockroach-core/subquery.cjs +0 -17
  933. package/cockroach-core/subquery.cjs.map +0 -1
  934. package/cockroach-core/subquery.d.cts +0 -18
  935. package/cockroach-core/subquery.d.ts +0 -18
  936. package/cockroach-core/subquery.js +0 -1
  937. package/cockroach-core/subquery.js.map +0 -1
  938. package/cockroach-core/table.cjs +0 -100
  939. package/cockroach-core/table.cjs.map +0 -1
  940. package/cockroach-core/table.d.cts +0 -37
  941. package/cockroach-core/table.d.ts +0 -37
  942. package/cockroach-core/table.js +0 -73
  943. package/cockroach-core/table.js.map +0 -1
  944. package/cockroach-core/unique-constraint.cjs +0 -77
  945. package/cockroach-core/unique-constraint.cjs.map +0 -1
  946. package/cockroach-core/unique-constraint.d.cts +0 -23
  947. package/cockroach-core/unique-constraint.d.ts +0 -23
  948. package/cockroach-core/unique-constraint.js +0 -50
  949. package/cockroach-core/unique-constraint.js.map +0 -1
  950. package/cockroach-core/utils/array.cjs +0 -106
  951. package/cockroach-core/utils/array.cjs.map +0 -1
  952. package/cockroach-core/utils/array.d.cts +0 -3
  953. package/cockroach-core/utils/array.d.ts +0 -3
  954. package/cockroach-core/utils/array.js +0 -80
  955. package/cockroach-core/utils/array.js.map +0 -1
  956. package/cockroach-core/utils/index.cjs +0 -23
  957. package/cockroach-core/utils/index.cjs.map +0 -1
  958. package/cockroach-core/utils/index.d.cts +0 -1
  959. package/cockroach-core/utils/index.d.ts +0 -1
  960. package/cockroach-core/utils/index.js +0 -2
  961. package/cockroach-core/utils/index.js.map +0 -1
  962. package/cockroach-core/utils.cjs +0 -98
  963. package/cockroach-core/utils.cjs.map +0 -1
  964. package/cockroach-core/utils.d.cts +0 -47
  965. package/cockroach-core/utils.d.ts +0 -47
  966. package/cockroach-core/utils.js +0 -72
  967. package/cockroach-core/utils.js.map +0 -1
  968. package/cockroach-core/view-base.cjs +0 -33
  969. package/cockroach-core/view-base.cjs.map +0 -1
  970. package/cockroach-core/view-base.d.cts +0 -8
  971. package/cockroach-core/view-base.d.ts +0 -8
  972. package/cockroach-core/view-base.js +0 -9
  973. package/cockroach-core/view-base.js.map +0 -1
  974. package/cockroach-core/view.cjs +0 -271
  975. package/cockroach-core/view.cjs.map +0 -1
  976. package/cockroach-core/view.d.cts +0 -106
  977. package/cockroach-core/view.d.ts +0 -106
  978. package/cockroach-core/view.js +0 -233
  979. package/cockroach-core/view.js.map +0 -1
  980. package/mssql-core/alias.cjs +0 -32
  981. package/mssql-core/alias.cjs.map +0 -1
  982. package/mssql-core/alias.d.cts +0 -4
  983. package/mssql-core/alias.d.ts +0 -4
  984. package/mssql-core/alias.js +0 -8
  985. package/mssql-core/alias.js.map +0 -1
  986. package/mssql-core/checks.cjs +0 -58
  987. package/mssql-core/checks.cjs.map +0 -1
  988. package/mssql-core/checks.d.cts +0 -18
  989. package/mssql-core/checks.d.ts +0 -18
  990. package/mssql-core/checks.js +0 -32
  991. package/mssql-core/checks.js.map +0 -1
  992. package/mssql-core/columns/all.cjs +0 -74
  993. package/mssql-core/columns/all.cjs.map +0 -1
  994. package/mssql-core/columns/all.d.cts +0 -45
  995. package/mssql-core/columns/all.d.ts +0 -45
  996. package/mssql-core/columns/all.js +0 -50
  997. package/mssql-core/columns/all.js.map +0 -1
  998. package/mssql-core/columns/bigint.cjs +0 -72
  999. package/mssql-core/columns/bigint.cjs.map +0 -1
  1000. package/mssql-core/columns/bigint.d.cts +0 -25
  1001. package/mssql-core/columns/bigint.d.ts +0 -25
  1002. package/mssql-core/columns/bigint.js +0 -46
  1003. package/mssql-core/columns/bigint.js.map +0 -1
  1004. package/mssql-core/columns/binary.cjs +0 -57
  1005. package/mssql-core/columns/binary.cjs.map +0 -1
  1006. package/mssql-core/columns/binary.d.cts +0 -24
  1007. package/mssql-core/columns/binary.d.ts +0 -24
  1008. package/mssql-core/columns/binary.js +0 -31
  1009. package/mssql-core/columns/binary.js.map +0 -1
  1010. package/mssql-core/columns/bit.cjs +0 -54
  1011. package/mssql-core/columns/bit.cjs.map +0 -1
  1012. package/mssql-core/columns/bit.d.cts +0 -17
  1013. package/mssql-core/columns/bit.d.ts +0 -17
  1014. package/mssql-core/columns/bit.js +0 -28
  1015. package/mssql-core/columns/bit.js.map +0 -1
  1016. package/mssql-core/columns/char.cjs +0 -73
  1017. package/mssql-core/columns/char.cjs.map +0 -1
  1018. package/mssql-core/columns/char.d.cts +0 -29
  1019. package/mssql-core/columns/char.d.ts +0 -29
  1020. package/mssql-core/columns/char.js +0 -46
  1021. package/mssql-core/columns/char.js.map +0 -1
  1022. package/mssql-core/columns/common.cjs +0 -112
  1023. package/mssql-core/columns/common.cjs.map +0 -1
  1024. package/mssql-core/columns/common.d.cts +0 -57
  1025. package/mssql-core/columns/common.d.ts +0 -57
  1026. package/mssql-core/columns/common.js +0 -85
  1027. package/mssql-core/columns/common.js.map +0 -1
  1028. package/mssql-core/columns/custom.cjs +0 -105
  1029. package/mssql-core/columns/custom.cjs.map +0 -1
  1030. package/mssql-core/columns/custom.d.cts +0 -261
  1031. package/mssql-core/columns/custom.d.ts +0 -261
  1032. package/mssql-core/columns/custom.js +0 -79
  1033. package/mssql-core/columns/custom.js.map +0 -1
  1034. package/mssql-core/columns/date.cjs +0 -94
  1035. package/mssql-core/columns/date.cjs.map +0 -1
  1036. package/mssql-core/columns/date.common.cjs +0 -37
  1037. package/mssql-core/columns/date.common.cjs.map +0 -1
  1038. package/mssql-core/columns/date.common.d.cts +0 -12
  1039. package/mssql-core/columns/date.common.d.ts +0 -12
  1040. package/mssql-core/columns/date.common.js +0 -13
  1041. package/mssql-core/columns/date.common.js.map +0 -1
  1042. package/mssql-core/columns/date.d.cts +0 -39
  1043. package/mssql-core/columns/date.d.ts +0 -39
  1044. package/mssql-core/columns/date.js +0 -66
  1045. package/mssql-core/columns/date.js.map +0 -1
  1046. package/mssql-core/columns/datetime.cjs +0 -94
  1047. package/mssql-core/columns/datetime.cjs.map +0 -1
  1048. package/mssql-core/columns/datetime.d.cts +0 -38
  1049. package/mssql-core/columns/datetime.d.ts +0 -38
  1050. package/mssql-core/columns/datetime.js +0 -66
  1051. package/mssql-core/columns/datetime.js.map +0 -1
  1052. package/mssql-core/columns/datetime2.cjs +0 -102
  1053. package/mssql-core/columns/datetime2.cjs.map +0 -1
  1054. package/mssql-core/columns/datetime2.d.cts +0 -38
  1055. package/mssql-core/columns/datetime2.d.ts +0 -38
  1056. package/mssql-core/columns/datetime2.js +0 -74
  1057. package/mssql-core/columns/datetime2.js.map +0 -1
  1058. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  1059. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  1060. package/mssql-core/columns/datetimeoffset.d.cts +0 -39
  1061. package/mssql-core/columns/datetimeoffset.d.ts +0 -39
  1062. package/mssql-core/columns/datetimeoffset.js +0 -74
  1063. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  1064. package/mssql-core/columns/decimal.cjs +0 -146
  1065. package/mssql-core/columns/decimal.cjs.map +0 -1
  1066. package/mssql-core/columns/decimal.d.cts +0 -58
  1067. package/mssql-core/columns/decimal.d.ts +0 -58
  1068. package/mssql-core/columns/decimal.js +0 -116
  1069. package/mssql-core/columns/decimal.js.map +0 -1
  1070. package/mssql-core/columns/float.cjs +0 -58
  1071. package/mssql-core/columns/float.cjs.map +0 -1
  1072. package/mssql-core/columns/float.d.cts +0 -21
  1073. package/mssql-core/columns/float.d.ts +0 -21
  1074. package/mssql-core/columns/float.js +0 -32
  1075. package/mssql-core/columns/float.js.map +0 -1
  1076. package/mssql-core/columns/index.cjs +0 -63
  1077. package/mssql-core/columns/index.cjs.map +0 -1
  1078. package/mssql-core/columns/index.d.cts +0 -21
  1079. package/mssql-core/columns/index.d.ts +0 -21
  1080. package/mssql-core/columns/index.js +0 -22
  1081. package/mssql-core/columns/index.js.map +0 -1
  1082. package/mssql-core/columns/int.cjs +0 -53
  1083. package/mssql-core/columns/int.cjs.map +0 -1
  1084. package/mssql-core/columns/int.d.cts +0 -16
  1085. package/mssql-core/columns/int.d.ts +0 -16
  1086. package/mssql-core/columns/int.js +0 -27
  1087. package/mssql-core/columns/int.js.map +0 -1
  1088. package/mssql-core/columns/numeric.cjs +0 -146
  1089. package/mssql-core/columns/numeric.cjs.map +0 -1
  1090. package/mssql-core/columns/numeric.d.cts +0 -58
  1091. package/mssql-core/columns/numeric.d.ts +0 -58
  1092. package/mssql-core/columns/numeric.js +0 -116
  1093. package/mssql-core/columns/numeric.js.map +0 -1
  1094. package/mssql-core/columns/real.cjs +0 -53
  1095. package/mssql-core/columns/real.cjs.map +0 -1
  1096. package/mssql-core/columns/real.d.cts +0 -16
  1097. package/mssql-core/columns/real.d.ts +0 -16
  1098. package/mssql-core/columns/real.js +0 -27
  1099. package/mssql-core/columns/real.js.map +0 -1
  1100. package/mssql-core/columns/smallint.cjs +0 -62
  1101. package/mssql-core/columns/smallint.cjs.map +0 -1
  1102. package/mssql-core/columns/smallint.d.cts +0 -17
  1103. package/mssql-core/columns/smallint.d.ts +0 -17
  1104. package/mssql-core/columns/smallint.js +0 -36
  1105. package/mssql-core/columns/smallint.js.map +0 -1
  1106. package/mssql-core/columns/text.cjs +0 -68
  1107. package/mssql-core/columns/text.cjs.map +0 -1
  1108. package/mssql-core/columns/text.d.cts +0 -36
  1109. package/mssql-core/columns/text.d.ts +0 -36
  1110. package/mssql-core/columns/text.js +0 -41
  1111. package/mssql-core/columns/text.js.map +0 -1
  1112. package/mssql-core/columns/time.cjs +0 -90
  1113. package/mssql-core/columns/time.cjs.map +0 -1
  1114. package/mssql-core/columns/time.d.cts +0 -37
  1115. package/mssql-core/columns/time.d.ts +0 -37
  1116. package/mssql-core/columns/time.js +0 -62
  1117. package/mssql-core/columns/time.js.map +0 -1
  1118. package/mssql-core/columns/tinyint.cjs +0 -62
  1119. package/mssql-core/columns/tinyint.cjs.map +0 -1
  1120. package/mssql-core/columns/tinyint.d.cts +0 -17
  1121. package/mssql-core/columns/tinyint.d.ts +0 -17
  1122. package/mssql-core/columns/tinyint.js +0 -36
  1123. package/mssql-core/columns/tinyint.js.map +0 -1
  1124. package/mssql-core/columns/varbinary.cjs +0 -61
  1125. package/mssql-core/columns/varbinary.cjs.map +0 -1
  1126. package/mssql-core/columns/varbinary.d.cts +0 -23
  1127. package/mssql-core/columns/varbinary.d.ts +0 -23
  1128. package/mssql-core/columns/varbinary.js +0 -35
  1129. package/mssql-core/columns/varbinary.js.map +0 -1
  1130. package/mssql-core/columns/varchar.cjs +0 -117
  1131. package/mssql-core/columns/varchar.cjs.map +0 -1
  1132. package/mssql-core/columns/varchar.d.cts +0 -59
  1133. package/mssql-core/columns/varchar.d.ts +0 -59
  1134. package/mssql-core/columns/varchar.js +0 -88
  1135. package/mssql-core/columns/varchar.js.map +0 -1
  1136. package/mssql-core/db.cjs +0 -254
  1137. package/mssql-core/db.cjs.map +0 -1
  1138. package/mssql-core/db.d.cts +0 -228
  1139. package/mssql-core/db.d.ts +0 -228
  1140. package/mssql-core/db.js +0 -235
  1141. package/mssql-core/db.js.map +0 -1
  1142. package/mssql-core/dialect.cjs +0 -633
  1143. package/mssql-core/dialect.cjs.map +0 -1
  1144. package/mssql-core/dialect.d.cts +0 -58
  1145. package/mssql-core/dialect.d.ts +0 -58
  1146. package/mssql-core/dialect.js +0 -599
  1147. package/mssql-core/dialect.js.map +0 -1
  1148. package/mssql-core/expressions.cjs +0 -49
  1149. package/mssql-core/expressions.cjs.map +0 -1
  1150. package/mssql-core/expressions.d.cts +0 -8
  1151. package/mssql-core/expressions.d.ts +0 -8
  1152. package/mssql-core/expressions.js +0 -22
  1153. package/mssql-core/expressions.js.map +0 -1
  1154. package/mssql-core/foreign-keys.cjs +0 -91
  1155. package/mssql-core/foreign-keys.cjs.map +0 -1
  1156. package/mssql-core/foreign-keys.d.cts +0 -51
  1157. package/mssql-core/foreign-keys.d.ts +0 -51
  1158. package/mssql-core/foreign-keys.js +0 -65
  1159. package/mssql-core/foreign-keys.js.map +0 -1
  1160. package/mssql-core/index.cjs +0 -55
  1161. package/mssql-core/index.cjs.map +0 -1
  1162. package/mssql-core/index.d.cts +0 -17
  1163. package/mssql-core/index.d.ts +0 -17
  1164. package/mssql-core/index.js +0 -18
  1165. package/mssql-core/index.js.map +0 -1
  1166. package/mssql-core/indexes.cjs +0 -80
  1167. package/mssql-core/indexes.cjs.map +0 -1
  1168. package/mssql-core/indexes.d.cts +0 -49
  1169. package/mssql-core/indexes.d.ts +0 -49
  1170. package/mssql-core/indexes.js +0 -52
  1171. package/mssql-core/indexes.js.map +0 -1
  1172. package/mssql-core/primary-keys.cjs +0 -64
  1173. package/mssql-core/primary-keys.cjs.map +0 -1
  1174. package/mssql-core/primary-keys.d.cts +0 -23
  1175. package/mssql-core/primary-keys.d.ts +0 -23
  1176. package/mssql-core/primary-keys.js +0 -38
  1177. package/mssql-core/primary-keys.js.map +0 -1
  1178. package/mssql-core/query-builders/delete.cjs +0 -107
  1179. package/mssql-core/query-builders/delete.cjs.map +0 -1
  1180. package/mssql-core/query-builders/delete.d.cts +0 -98
  1181. package/mssql-core/query-builders/delete.d.ts +0 -98
  1182. package/mssql-core/query-builders/delete.js +0 -83
  1183. package/mssql-core/query-builders/delete.js.map +0 -1
  1184. package/mssql-core/query-builders/index.cjs +0 -33
  1185. package/mssql-core/query-builders/index.cjs.map +0 -1
  1186. package/mssql-core/query-builders/index.d.cts +0 -6
  1187. package/mssql-core/query-builders/index.d.ts +0 -6
  1188. package/mssql-core/query-builders/index.js +0 -7
  1189. package/mssql-core/query-builders/index.js.map +0 -1
  1190. package/mssql-core/query-builders/insert.cjs +0 -105
  1191. package/mssql-core/query-builders/insert.cjs.map +0 -1
  1192. package/mssql-core/query-builders/insert.d.cts +0 -79
  1193. package/mssql-core/query-builders/insert.d.ts +0 -79
  1194. package/mssql-core/query-builders/insert.js +0 -80
  1195. package/mssql-core/query-builders/insert.js.map +0 -1
  1196. package/mssql-core/query-builders/query-builder.cjs +0 -95
  1197. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  1198. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  1199. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  1200. package/mssql-core/query-builders/query-builder.js +0 -71
  1201. package/mssql-core/query-builders/query-builder.js.map +0 -1
  1202. package/mssql-core/query-builders/query.cjs +0 -126
  1203. package/mssql-core/query-builders/query.cjs.map +0 -1
  1204. package/mssql-core/query-builders/query.d.cts +0 -42
  1205. package/mssql-core/query-builders/query.d.ts +0 -42
  1206. package/mssql-core/query-builders/query.js +0 -103
  1207. package/mssql-core/query-builders/query.js.map +0 -1
  1208. package/mssql-core/query-builders/select.cjs +0 -679
  1209. package/mssql-core/query-builders/select.cjs.map +0 -1
  1210. package/mssql-core/query-builders/select.d.cts +0 -549
  1211. package/mssql-core/query-builders/select.d.ts +0 -549
  1212. package/mssql-core/query-builders/select.js +0 -649
  1213. package/mssql-core/query-builders/select.js.map +0 -1
  1214. package/mssql-core/query-builders/select.types.cjs +0 -17
  1215. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  1216. package/mssql-core/query-builders/select.types.d.cts +0 -142
  1217. package/mssql-core/query-builders/select.types.d.ts +0 -142
  1218. package/mssql-core/query-builders/select.types.js +0 -1
  1219. package/mssql-core/query-builders/select.types.js.map +0 -1
  1220. package/mssql-core/query-builders/update.cjs +0 -138
  1221. package/mssql-core/query-builders/update.cjs.map +0 -1
  1222. package/mssql-core/query-builders/update.d.cts +0 -142
  1223. package/mssql-core/query-builders/update.d.ts +0 -142
  1224. package/mssql-core/query-builders/update.js +0 -113
  1225. package/mssql-core/query-builders/update.js.map +0 -1
  1226. package/mssql-core/schema.cjs +0 -51
  1227. package/mssql-core/schema.cjs.map +0 -1
  1228. package/mssql-core/schema.d.cts +0 -22
  1229. package/mssql-core/schema.d.ts +0 -22
  1230. package/mssql-core/schema.js +0 -25
  1231. package/mssql-core/schema.js.map +0 -1
  1232. package/mssql-core/session.cjs +0 -74
  1233. package/mssql-core/session.cjs.map +0 -1
  1234. package/mssql-core/session.d.cts +0 -63
  1235. package/mssql-core/session.d.ts +0 -63
  1236. package/mssql-core/session.js +0 -48
  1237. package/mssql-core/session.js.map +0 -1
  1238. package/mssql-core/subquery.cjs +0 -17
  1239. package/mssql-core/subquery.cjs.map +0 -1
  1240. package/mssql-core/subquery.d.cts +0 -18
  1241. package/mssql-core/subquery.d.ts +0 -18
  1242. package/mssql-core/subquery.js +0 -1
  1243. package/mssql-core/subquery.js.map +0 -1
  1244. package/mssql-core/table.cjs +0 -81
  1245. package/mssql-core/table.cjs.map +0 -1
  1246. package/mssql-core/table.d.cts +0 -40
  1247. package/mssql-core/table.d.ts +0 -40
  1248. package/mssql-core/table.js +0 -55
  1249. package/mssql-core/table.js.map +0 -1
  1250. package/mssql-core/unique-constraint.cjs +0 -76
  1251. package/mssql-core/unique-constraint.cjs.map +0 -1
  1252. package/mssql-core/unique-constraint.d.cts +0 -23
  1253. package/mssql-core/unique-constraint.d.ts +0 -23
  1254. package/mssql-core/unique-constraint.js +0 -49
  1255. package/mssql-core/unique-constraint.js.map +0 -1
  1256. package/mssql-core/utils.cjs +0 -85
  1257. package/mssql-core/utils.cjs.map +0 -1
  1258. package/mssql-core/utils.d.cts +0 -31
  1259. package/mssql-core/utils.d.ts +0 -31
  1260. package/mssql-core/utils.js +0 -60
  1261. package/mssql-core/utils.js.map +0 -1
  1262. package/mssql-core/view-base.cjs +0 -33
  1263. package/mssql-core/view-base.cjs.map +0 -1
  1264. package/mssql-core/view-base.d.cts +0 -9
  1265. package/mssql-core/view-base.d.ts +0 -9
  1266. package/mssql-core/view-base.js +0 -9
  1267. package/mssql-core/view-base.js.map +0 -1
  1268. package/mssql-core/view-common.cjs +0 -29
  1269. package/mssql-core/view-common.cjs.map +0 -1
  1270. package/mssql-core/view-common.d.cts +0 -1
  1271. package/mssql-core/view-common.d.ts +0 -1
  1272. package/mssql-core/view-common.js +0 -5
  1273. package/mssql-core/view-common.js.map +0 -1
  1274. package/mssql-core/view.cjs +0 -154
  1275. package/mssql-core/view.cjs.map +0 -1
  1276. package/mssql-core/view.d.cts +0 -63
  1277. package/mssql-core/view.d.ts +0 -63
  1278. package/mssql-core/view.js +0 -125
  1279. package/mssql-core/view.js.map +0 -1
  1280. package/node-mssql/driver.cjs +0 -117
  1281. package/node-mssql/driver.cjs.map +0 -1
  1282. package/node-mssql/driver.d.cts +0 -46
  1283. package/node-mssql/driver.d.ts +0 -46
  1284. package/node-mssql/driver.js +0 -81
  1285. package/node-mssql/driver.js.map +0 -1
  1286. package/node-mssql/index.cjs +0 -25
  1287. package/node-mssql/index.cjs.map +0 -1
  1288. package/node-mssql/index.d.cts +0 -2
  1289. package/node-mssql/index.d.ts +0 -2
  1290. package/node-mssql/index.js +0 -3
  1291. package/node-mssql/index.js.map +0 -1
  1292. package/node-mssql/migrator.cjs +0 -33
  1293. package/node-mssql/migrator.cjs.map +0 -1
  1294. package/node-mssql/migrator.d.cts +0 -3
  1295. package/node-mssql/migrator.d.ts +0 -3
  1296. package/node-mssql/migrator.js +0 -9
  1297. package/node-mssql/migrator.js.map +0 -1
  1298. package/node-mssql/pool.cjs +0 -54
  1299. package/node-mssql/pool.cjs.map +0 -1
  1300. package/node-mssql/pool.d.cts +0 -8
  1301. package/node-mssql/pool.d.ts +0 -8
  1302. package/node-mssql/pool.js +0 -20
  1303. package/node-mssql/pool.js.map +0 -1
  1304. package/node-mssql/session.cjs +0 -256
  1305. package/node-mssql/session.cjs.map +0 -1
  1306. package/node-mssql/session.d.cts +0 -48
  1307. package/node-mssql/session.d.ts +0 -48
  1308. package/node-mssql/session.js +0 -224
  1309. package/node-mssql/session.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/columns/integer.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig, ColumnType, HasDefault, IsPrimaryKey, NotNull } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { OnConflict } from '~/sqlite-core/utils.ts';\nimport { type Equal, getColumnNameAndConfig, type Or } from '~/utils.ts';\nimport type { SQLiteTable } from '../table.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport interface PrimaryKeyConfig {\n\tautoIncrement?: boolean;\n\tonConflict?: OnConflict;\n}\n\nexport abstract class SQLiteBaseIntegerBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends SQLiteColumnBuilder<\n\tT,\n\tTRuntimeConfig & { autoIncrement: boolean },\n\t{ primaryKeyHasDefault: true }\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBaseIntegerBuilder';\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\toverride primaryKey(config?: PrimaryKeyConfig): IsPrimaryKey<HasDefault<NotNull<this>>> {\n\t\tif (config?.autoIncrement) {\n\t\t\tthis.config.autoIncrement = true;\n\t\t}\n\t\tthis.config.hasDefault = true;\n\t\treturn super.primaryKey() as IsPrimaryKey<HasDefault<NotNull<this>>>;\n\t}\n}\n\nexport abstract class SQLiteBaseInteger<\n\tT extends ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends SQLiteColumn<T, TRuntimeConfig & { autoIncrement: boolean }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBaseInteger';\n\n\treadonly autoIncrement: boolean = this.config.autoIncrement;\n\n\tgetSQLType(): string {\n\t\treturn 'integer';\n\t}\n}\n\nexport class SQLiteIntegerBuilder extends SQLiteBaseIntegerBuilder<{\n\tdataType: 'number int53';\n\tdata: number;\n\tdriverParam: number;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteIntegerBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number int53', 'SQLiteInteger');\n\t}\n\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteInteger(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteInteger<T extends ColumnBaseConfig<'number int53'>> extends SQLiteBaseInteger<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteInteger';\n}\n\nexport class SQLiteTimestampBuilder extends SQLiteBaseIntegerBuilder<{\n\tdataType: 'object date';\n\tdata: Date;\n\tdriverParam: number;\n}, { mode: 'timestamp' | 'timestamp_ms' }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTimestampBuilder';\n\n\tconstructor(name: string, mode: 'timestamp' | 'timestamp_ms') {\n\t\tsuper(name, 'object date', 'SQLiteTimestamp');\n\t\tthis.config.mode = mode;\n\t}\n\n\t/**\n\t * @deprecated Use `default()` with your own expression instead.\n\t *\n\t * Adds `DEFAULT (cast((julianday('now') - 2440587.5)*86400000 as integer))` to the column, which is the current epoch timestamp in milliseconds.\n\t */\n\tdefaultNow(): HasDefault<this> {\n\t\treturn this.default(sql`(cast((julianday('now') - 2440587.5)*86400000 as integer))`) as any;\n\t}\n\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteTimestamp(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteTimestamp<T extends ColumnBaseConfig<'object date'>>\n\textends SQLiteBaseInteger<T, { mode: 'timestamp' | 'timestamp_ms' }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteTimestamp';\n\n\treadonly mode: 'timestamp' | 'timestamp_ms' = this.config.mode;\n\n\toverride mapFromDriverValue(value: number): Date {\n\t\tif (this.config.mode === 'timestamp') {\n\t\t\treturn new Date(value * 1000);\n\t\t}\n\t\treturn new Date(value);\n\t}\n\n\toverride mapToDriverValue(value: Date): number {\n\t\tconst unix = value.getTime();\n\t\tif (this.config.mode === 'timestamp') {\n\t\t\treturn Math.floor(unix / 1000);\n\t\t}\n\t\treturn unix;\n\t}\n}\n\nexport class SQLiteBooleanBuilder extends SQLiteBaseIntegerBuilder<{\n\tdataType: 'boolean';\n\tdata: boolean;\n\tdriverParam: number;\n}, { mode: 'boolean' }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBooleanBuilder';\n\n\tconstructor(name: string, mode: 'boolean') {\n\t\tsuper(name, 'boolean', 'SQLiteBoolean');\n\t\tthis.config.mode = mode;\n\t}\n\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBoolean(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteBoolean<T extends ColumnBaseConfig<'boolean'>> extends SQLiteBaseInteger<T, { mode: 'boolean' }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBoolean';\n\n\treadonly mode: 'boolean' = this.config.mode;\n\n\toverride mapFromDriverValue(value: number): boolean {\n\t\treturn Number(value) === 1;\n\t}\n\n\toverride mapToDriverValue(value: boolean): number {\n\t\treturn value ? 1 : 0;\n\t}\n}\n\nexport interface IntegerConfig<\n\tTMode extends 'number' | 'timestamp' | 'timestamp_ms' | 'boolean' =\n\t\t| 'number'\n\t\t| 'timestamp'\n\t\t| 'timestamp_ms'\n\t\t| 'boolean',\n> {\n\tmode: TMode;\n}\n\nexport function integer<TMode extends IntegerConfig['mode']>(\n\tconfig?: IntegerConfig<TMode>,\n): Or<Equal<TMode, 'timestamp'>, Equal<TMode, 'timestamp_ms'>> extends true ? SQLiteTimestampBuilder\n\t: Equal<TMode, 'boolean'> extends true ? SQLiteBooleanBuilder\n\t: SQLiteIntegerBuilder;\nexport function integer<TMode extends IntegerConfig['mode']>(\n\tname: string,\n\tconfig?: IntegerConfig<TMode>,\n): Or<Equal<TMode, 'timestamp'>, Equal<TMode, 'timestamp_ms'>> extends true ? SQLiteTimestampBuilder\n\t: Equal<TMode, 'boolean'> extends true ? SQLiteBooleanBuilder\n\t: SQLiteIntegerBuilder;\nexport function integer(a?: string | IntegerConfig, b?: IntegerConfig) {\n\tconst { name, config } = getColumnNameAndConfig<IntegerConfig | undefined>(a, b);\n\tif (config?.mode === 'timestamp' || config?.mode === 'timestamp_ms') {\n\t\treturn new SQLiteTimestampBuilder(name, config.mode);\n\t}\n\tif (config?.mode === 'boolean') {\n\t\treturn new SQLiteBooleanBuilder(name, config.mode);\n\t}\n\treturn new SQLiteIntegerBuilder(name);\n}\n\nexport const int = integer;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/columns/integer.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig, ColumnType, HasDefault, IsPrimaryKey, NotNull } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { OnConflict } from '~/sqlite-core/utils.ts';\nimport { type Equal, getColumnNameAndConfig, type Or } from '~/utils.ts';\nimport type { SQLiteTable } from '../table.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport interface PrimaryKeyConfig {\n\tautoIncrement?: boolean;\n\tonConflict?: OnConflict;\n}\n\nexport abstract class SQLiteBaseIntegerBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends SQLiteColumnBuilder<\n\tT,\n\tTRuntimeConfig & { autoIncrement: boolean },\n\t{ primaryKeyHasDefault: true }\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBaseIntegerBuilder';\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\toverride primaryKey(config?: PrimaryKeyConfig): IsPrimaryKey<HasDefault<NotNull<this>>> {\n\t\tif (config?.autoIncrement) {\n\t\t\tthis.config.autoIncrement = true;\n\t\t}\n\t\tthis.config.hasDefault = true;\n\t\treturn super.primaryKey() as IsPrimaryKey<HasDefault<NotNull<this>>>;\n\t}\n}\n\nexport abstract class SQLiteBaseInteger<\n\tT extends ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n> extends SQLiteColumn<T, TRuntimeConfig & { autoIncrement: boolean }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBaseInteger';\n\n\treadonly autoIncrement: boolean = this.config.autoIncrement;\n\n\tgetSQLType(): string {\n\t\treturn 'integer';\n\t}\n}\n\nexport class SQLiteIntegerBuilder extends SQLiteBaseIntegerBuilder<{\n\tname: string;\n\tdataType: 'number int53';\n\tdata: number;\n\tdriverParam: number;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteIntegerBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number int53', 'SQLiteInteger');\n\t}\n\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteInteger(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteInteger<T extends ColumnBaseConfig<'number int53'>> extends SQLiteBaseInteger<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteInteger';\n}\n\nexport class SQLiteTimestampBuilder extends SQLiteBaseIntegerBuilder<{\n\tname: string;\n\tdataType: 'object date';\n\tdata: Date;\n\tdriverParam: number;\n}, { mode: 'timestamp' | 'timestamp_ms' }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTimestampBuilder';\n\n\tconstructor(name: string, mode: 'timestamp' | 'timestamp_ms') {\n\t\tsuper(name, 'object date', 'SQLiteTimestamp');\n\t\tthis.config.mode = mode;\n\t}\n\n\t/**\n\t * @deprecated Use `default()` with your own expression instead.\n\t *\n\t * Adds `DEFAULT (cast((julianday('now') - 2440587.5)*86400000 as integer))` to the column, which is the current epoch timestamp in milliseconds.\n\t */\n\tdefaultNow(): HasDefault<this> {\n\t\treturn this.default(sql`(cast((julianday('now') - 2440587.5)*86400000 as integer))`) as any;\n\t}\n\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteTimestamp(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteTimestamp<T extends ColumnBaseConfig<'object date'>>\n\textends SQLiteBaseInteger<T, { mode: 'timestamp' | 'timestamp_ms' }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteTimestamp';\n\n\treadonly mode: 'timestamp' | 'timestamp_ms' = this.config.mode;\n\n\toverride mapFromDriverValue(value: number): Date {\n\t\tif (this.config.mode === 'timestamp') {\n\t\t\treturn new Date(value * 1000);\n\t\t}\n\t\treturn new Date(value);\n\t}\n\n\toverride mapToDriverValue(value: Date): number {\n\t\tconst unix = value.getTime();\n\t\tif (this.config.mode === 'timestamp') {\n\t\t\treturn Math.floor(unix / 1000);\n\t\t}\n\t\treturn unix;\n\t}\n}\n\nexport class SQLiteBooleanBuilder extends SQLiteBaseIntegerBuilder<{\n\tname: string;\n\tdataType: 'boolean';\n\tdata: boolean;\n\tdriverParam: number;\n}, { mode: 'boolean' }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBooleanBuilder';\n\n\tconstructor(name: string, mode: 'boolean') {\n\t\tsuper(name, 'boolean', 'SQLiteBoolean');\n\t\tthis.config.mode = mode;\n\t}\n\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBoolean(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteBoolean<T extends ColumnBaseConfig<'boolean'>> extends SQLiteBaseInteger<T, { mode: 'boolean' }> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBoolean';\n\n\treadonly mode: 'boolean' = this.config.mode;\n\n\toverride mapFromDriverValue(value: number): boolean {\n\t\treturn Number(value) === 1;\n\t}\n\n\toverride mapToDriverValue(value: boolean): number {\n\t\treturn value ? 1 : 0;\n\t}\n}\n\nexport interface IntegerConfig<\n\tTMode extends 'number' | 'timestamp' | 'timestamp_ms' | 'boolean' =\n\t\t| 'number'\n\t\t| 'timestamp'\n\t\t| 'timestamp_ms'\n\t\t| 'boolean',\n> {\n\tmode: TMode;\n}\n\nexport function integer<TMode extends IntegerConfig['mode']>(\n\tconfig?: IntegerConfig<TMode>,\n): Or<Equal<TMode, 'timestamp'>, Equal<TMode, 'timestamp_ms'>> extends true ? SQLiteTimestampBuilder\n\t: Equal<TMode, 'boolean'> extends true ? SQLiteBooleanBuilder\n\t: SQLiteIntegerBuilder;\nexport function integer<TMode extends IntegerConfig['mode']>(\n\tname: string,\n\tconfig?: IntegerConfig<TMode>,\n): Or<Equal<TMode, 'timestamp'>, Equal<TMode, 'timestamp_ms'>> extends true ? SQLiteTimestampBuilder\n\t: Equal<TMode, 'boolean'> extends true ? SQLiteBooleanBuilder\n\t: SQLiteIntegerBuilder;\nexport function integer(a?: string | IntegerConfig, b?: IntegerConfig) {\n\tconst { name, config } = getColumnNameAndConfig<IntegerConfig | undefined>(a, b);\n\tif (config?.mode === 'timestamp' || config?.mode === 'timestamp_ms') {\n\t\treturn new SQLiteTimestampBuilder(name, config.mode);\n\t}\n\tif (config?.mode === 'boolean') {\n\t\treturn new SQLiteBooleanBuilder(name, config.mode);\n\t}\n\treturn new SQLiteIntegerBuilder(name);\n}\n\nexport const int = integer;\n"],"mappings":"AAEA,SAAS,kBAAkB;AAC3B,SAAS,WAAW;AAEpB,SAAqB,8BAAuC;AAE5D,SAAS,cAAc,2BAA2B;AAO3C,MAAe,iCAGZ,oBAIR;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,UAAyB,YAAoB;AACtE,UAAM,MAAM,UAAU,UAAU;AAChC,SAAK,OAAO,gBAAgB;AAAA,EAC7B;AAAA,EAES,WAAW,QAAoE;AACvF,QAAI,QAAQ,eAAe;AAC1B,WAAK,OAAO,gBAAgB;AAAA,IAC7B;AACA,SAAK,OAAO,aAAa;AACzB,WAAO,MAAM,WAAW;AAAA,EACzB;AACD;AAEO,MAAe,0BAGZ,aAA6D;AAAA,EACtE,QAA0B,UAAU,IAAY;AAAA,EAEvC,gBAAyB,KAAK,OAAO;AAAA,EAE9C,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,MAAM,6BAA6B,yBAKvC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,eAAe;AAAA,EAC5C;AAAA,EAES,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBAAkE,kBAAqB;AAAA,EACnG,QAA0B,UAAU,IAAY;AACjD;AAEO,MAAM,+BAA+B,yBAKD;AAAA,EAC1C,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,MAAoC;AAC7D,UAAM,MAAM,eAAe,iBAAiB;AAC5C,SAAK,OAAO,OAAO;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,aAA+B;AAC9B,WAAO,KAAK,QAAQ,+DAA+D;AAAA,EACpF;AAAA,EAES,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,wBACJ,kBACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEvC,OAAqC,KAAK,OAAO;AAAA,EAEjD,mBAAmB,OAAqB;AAChD,QAAI,KAAK,OAAO,SAAS,aAAa;AACrC,aAAO,IAAI,KAAK,QAAQ,GAAI;AAAA,IAC7B;AACA,WAAO,IAAI,KAAK,KAAK;AAAA,EACtB;AAAA,EAES,iBAAiB,OAAqB;AAC9C,UAAM,OAAO,MAAM,QAAQ;AAC3B,QAAI,KAAK,OAAO,SAAS,aAAa;AACrC,aAAO,KAAK,MAAM,OAAO,GAAI;AAAA,IAC9B;AACA,WAAO;AAAA,EACR;AACD;AAEO,MAAM,6BAA6B,yBAKlB;AAAA,EACvB,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,MAAiB;AAC1C,UAAM,MAAM,WAAW,eAAe;AACtC,SAAK,OAAO,OAAO;AAAA,EACpB;AAAA,EAES,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBAA6D,kBAA0C;AAAA,EACnH,QAA0B,UAAU,IAAY;AAAA,EAEvC,OAAkB,KAAK,OAAO;AAAA,EAE9B,mBAAmB,OAAwB;AACnD,WAAO,OAAO,KAAK,MAAM;AAAA,EAC1B;AAAA,EAES,iBAAiB,OAAwB;AACjD,WAAO,QAAQ,IAAI;AAAA,EACpB;AACD;AAuBO,SAAS,QAAQ,GAA4B,GAAmB;AACtE,QAAM,EAAE,MAAM,OAAO,IAAI,uBAAkD,GAAG,CAAC;AAC/E,MAAI,QAAQ,SAAS,eAAe,QAAQ,SAAS,gBAAgB;AACpE,WAAO,IAAI,uBAAuB,MAAM,OAAO,IAAI;AAAA,EACpD;AACA,MAAI,QAAQ,SAAS,WAAW;AAC/B,WAAO,IAAI,qBAAqB,MAAM,OAAO,IAAI;AAAA,EAClD;AACA,SAAO,IAAI,qBAAqB,IAAI;AACrC;AAEO,MAAM,MAAM;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/columns/numeric.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteNumericBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'string numeric';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string numeric', 'SQLiteNumeric');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumeric(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumeric<T extends ColumnBaseConfig<'string numeric'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumeric';\n\n\toverride mapFromDriverValue(value: unknown): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\nexport class SQLiteNumericNumberBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'number';\n\tdata: number;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumberBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number', 'SQLiteNumericNumber');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericNumber(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericNumber<T extends ColumnBaseConfig<'number'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumber';\n\n\toverride mapFromDriverValue(value: unknown): number {\n\t\tif (typeof value === 'number') return value;\n\n\t\treturn Number(value);\n\t}\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport class SQLiteNumericBigIntBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigIntBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'SQLiteNumericBigInt');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericBigInt(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericBigInt<T extends ColumnBaseConfig<'bigint int64'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigInt';\n\n\toverride mapFromDriverValue = BigInt;\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport type SQLiteNumericConfig<T extends 'string' | 'number' | 'bigint' = 'string' | 'number' | 'bigint'> = {\n\tmode: T;\n};\n\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tname: string,\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric(a?: string | SQLiteNumericConfig, b?: SQLiteNumericConfig) {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteNumericConfig>(a, b);\n\tconst mode = config?.mode;\n\treturn mode === 'number'\n\t\t? new SQLiteNumericNumberBuilder(name)\n\t\t: mode === 'bigint'\n\t\t? new SQLiteNumericBigIntBuilder(name)\n\t\t: new SQLiteNumericBuilder(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAmD;AACnD,oBAAkD;AAE3C,MAAM,6BAA6B,kCAIvC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,kBAAkB,eAAe;AAAA,EAC9C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBAAoE,2BAAgB;AAAA,EAChG,QAA0B,wBAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AACO,MAAM,mCAAmC,kCAI7C;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,UAAU,qBAAqB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAkE,2BAAgB;AAAA,EAC9F,QAA0B,wBAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAES,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,MAAM,mCAAmC,kCAI7C;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,qBAAqB;AAAA,EAClD;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAwE,2BAAgB;AAAA,EACpG,QAA0B,wBAAU,IAAY;AAAA,EAEvC,qBAAqB;AAAA,EAErB,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAiBO,SAAS,QAAQ,GAAkC,GAAyB;AAClF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA4C,GAAG,CAAC;AACzE,QAAM,OAAO,QAAQ;AACrB,SAAO,SAAS,WACb,IAAI,2BAA2B,IAAI,IACnC,SAAS,WACT,IAAI,2BAA2B,IAAI,IACnC,IAAI,qBAAqB,IAAI;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/columns/numeric.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteNumericBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'string numeric';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string numeric', 'SQLiteNumeric');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumeric(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumeric<T extends ColumnBaseConfig<'string numeric'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumeric';\n\n\toverride mapFromDriverValue(value: unknown): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\nexport class SQLiteNumericNumberBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'number';\n\tdata: number;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumberBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number', 'SQLiteNumericNumber');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericNumber(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericNumber<T extends ColumnBaseConfig<'number'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumber';\n\n\toverride mapFromDriverValue(value: unknown): number {\n\t\tif (typeof value === 'number') return value;\n\n\t\treturn Number(value);\n\t}\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport class SQLiteNumericBigIntBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigIntBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'SQLiteNumericBigInt');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericBigInt(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericBigInt<T extends ColumnBaseConfig<'bigint int64'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigInt';\n\n\toverride mapFromDriverValue = BigInt;\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport type SQLiteNumericConfig<T extends 'string' | 'number' | 'bigint' = 'string' | 'number' | 'bigint'> = {\n\tmode: T;\n};\n\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tname: string,\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric(a?: string | SQLiteNumericConfig, b?: SQLiteNumericConfig) {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteNumericConfig>(a, b);\n\tconst mode = config?.mode;\n\treturn mode === 'number'\n\t\t? new SQLiteNumericNumberBuilder(name)\n\t\t: mode === 'bigint'\n\t\t? new SQLiteNumericBigIntBuilder(name)\n\t\t: new SQLiteNumericBuilder(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAmD;AACnD,oBAAkD;AAE3C,MAAM,6BAA6B,kCAKvC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,kBAAkB,eAAe;AAAA,EAC9C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBAAoE,2BAAgB;AAAA,EAChG,QAA0B,wBAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AACO,MAAM,mCAAmC,kCAK7C;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,UAAU,qBAAqB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAkE,2BAAgB;AAAA,EAC9F,QAA0B,wBAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAES,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,MAAM,mCAAmC,kCAK7C;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,qBAAqB;AAAA,EAClD;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAwE,2BAAgB;AAAA,EACpG,QAA0B,wBAAU,IAAY;AAAA,EAEvC,qBAAqB;AAAA,EAErB,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAiBO,SAAS,QAAQ,GAAkC,GAAyB;AAClF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA4C,GAAG,CAAC;AACzE,QAAM,OAAO,QAAQ;AACrB,SAAO,SAAS,WACb,IAAI,2BAA2B,IAAI,IACnC,SAAS,WACT,IAAI,2BAA2B,IAAI,IACnC,IAAI,qBAAqB,IAAI;AACjC;","names":[]}
@@ -3,6 +3,7 @@ import { entityKind } from "../../entity.cjs";
3
3
  import { type Equal } from "../../utils.cjs";
4
4
  import { SQLiteColumn, SQLiteColumnBuilder } from "./common.cjs";
5
5
  export declare class SQLiteNumericBuilder extends SQLiteColumnBuilder<{
6
+ name: string;
6
7
  dataType: 'string numeric';
7
8
  data: string;
8
9
  driverParam: string;
@@ -16,6 +17,7 @@ export declare class SQLiteNumeric<T extends ColumnBaseConfig<'string numeric'>>
16
17
  getSQLType(): string;
17
18
  }
18
19
  export declare class SQLiteNumericNumberBuilder extends SQLiteColumnBuilder<{
20
+ name: string;
19
21
  dataType: 'number';
20
22
  data: number;
21
23
  driverParam: string;
@@ -30,6 +32,7 @@ export declare class SQLiteNumericNumber<T extends ColumnBaseConfig<'number'>> e
30
32
  getSQLType(): string;
31
33
  }
32
34
  export declare class SQLiteNumericBigIntBuilder extends SQLiteColumnBuilder<{
35
+ name: string;
33
36
  dataType: 'bigint int64';
34
37
  data: bigint;
35
38
  driverParam: string;
@@ -3,6 +3,7 @@ import { entityKind } from "../../entity.js";
3
3
  import { type Equal } from "../../utils.js";
4
4
  import { SQLiteColumn, SQLiteColumnBuilder } from "./common.js";
5
5
  export declare class SQLiteNumericBuilder extends SQLiteColumnBuilder<{
6
+ name: string;
6
7
  dataType: 'string numeric';
7
8
  data: string;
8
9
  driverParam: string;
@@ -16,6 +17,7 @@ export declare class SQLiteNumeric<T extends ColumnBaseConfig<'string numeric'>>
16
17
  getSQLType(): string;
17
18
  }
18
19
  export declare class SQLiteNumericNumberBuilder extends SQLiteColumnBuilder<{
20
+ name: string;
19
21
  dataType: 'number';
20
22
  data: number;
21
23
  driverParam: string;
@@ -30,6 +32,7 @@ export declare class SQLiteNumericNumber<T extends ColumnBaseConfig<'number'>> e
30
32
  getSQLType(): string;
31
33
  }
32
34
  export declare class SQLiteNumericBigIntBuilder extends SQLiteColumnBuilder<{
35
+ name: string;
33
36
  dataType: 'bigint int64';
34
37
  data: bigint;
35
38
  driverParam: string;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/columns/numeric.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteNumericBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'string numeric';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string numeric', 'SQLiteNumeric');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumeric(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumeric<T extends ColumnBaseConfig<'string numeric'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumeric';\n\n\toverride mapFromDriverValue(value: unknown): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\nexport class SQLiteNumericNumberBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'number';\n\tdata: number;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumberBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number', 'SQLiteNumericNumber');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericNumber(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericNumber<T extends ColumnBaseConfig<'number'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumber';\n\n\toverride mapFromDriverValue(value: unknown): number {\n\t\tif (typeof value === 'number') return value;\n\n\t\treturn Number(value);\n\t}\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport class SQLiteNumericBigIntBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigIntBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'SQLiteNumericBigInt');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericBigInt(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericBigInt<T extends ColumnBaseConfig<'bigint int64'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigInt';\n\n\toverride mapFromDriverValue = BigInt;\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport type SQLiteNumericConfig<T extends 'string' | 'number' | 'bigint' = 'string' | 'number' | 'bigint'> = {\n\tmode: T;\n};\n\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tname: string,\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric(a?: string | SQLiteNumericConfig, b?: SQLiteNumericConfig) {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteNumericConfig>(a, b);\n\tconst mode = config?.mode;\n\treturn mode === 'number'\n\t\t? new SQLiteNumericNumberBuilder(name)\n\t\t: mode === 'bigint'\n\t\t? new SQLiteNumericBigIntBuilder(name)\n\t\t: new SQLiteNumericBuilder(name);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAqB,8BAA8B;AACnD,SAAS,cAAc,2BAA2B;AAE3C,MAAM,6BAA6B,oBAIvC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,kBAAkB,eAAe;AAAA,EAC9C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBAAoE,aAAgB;AAAA,EAChG,QAA0B,UAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AACO,MAAM,mCAAmC,oBAI7C;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,UAAU,qBAAqB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAkE,aAAgB;AAAA,EAC9F,QAA0B,UAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAES,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,MAAM,mCAAmC,oBAI7C;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,qBAAqB;AAAA,EAClD;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAwE,aAAgB;AAAA,EACpG,QAA0B,UAAU,IAAY;AAAA,EAEvC,qBAAqB;AAAA,EAErB,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAiBO,SAAS,QAAQ,GAAkC,GAAyB;AAClF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAA4C,GAAG,CAAC;AACzE,QAAM,OAAO,QAAQ;AACrB,SAAO,SAAS,WACb,IAAI,2BAA2B,IAAI,IACnC,SAAS,WACT,IAAI,2BAA2B,IAAI,IACnC,IAAI,qBAAqB,IAAI;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/columns/numeric.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteNumericBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'string numeric';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string numeric', 'SQLiteNumeric');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumeric(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumeric<T extends ColumnBaseConfig<'string numeric'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumeric';\n\n\toverride mapFromDriverValue(value: unknown): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\nexport class SQLiteNumericNumberBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'number';\n\tdata: number;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumberBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number', 'SQLiteNumericNumber');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericNumber(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericNumber<T extends ColumnBaseConfig<'number'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericNumber';\n\n\toverride mapFromDriverValue(value: unknown): number {\n\t\tif (typeof value === 'number') return value;\n\n\t\treturn Number(value);\n\t}\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport class SQLiteNumericBigIntBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigIntBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'SQLiteNumericBigInt');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteNumericBigInt(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteNumericBigInt<T extends ColumnBaseConfig<'bigint int64'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteNumericBigInt';\n\n\toverride mapFromDriverValue = BigInt;\n\n\toverride mapToDriverValue = String;\n\n\tgetSQLType(): string {\n\t\treturn 'numeric';\n\t}\n}\n\nexport type SQLiteNumericConfig<T extends 'string' | 'number' | 'bigint' = 'string' | 'number' | 'bigint'> = {\n\tmode: T;\n};\n\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric<TMode extends SQLiteNumericConfig['mode']>(\n\tname: string,\n\tconfig?: SQLiteNumericConfig<TMode>,\n): Equal<TMode, 'number'> extends true ? SQLiteNumericNumberBuilder\n\t: Equal<TMode, 'bigint'> extends true ? SQLiteNumericBigIntBuilder\n\t: SQLiteNumericBuilder;\nexport function numeric(a?: string | SQLiteNumericConfig, b?: SQLiteNumericConfig) {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteNumericConfig>(a, b);\n\tconst mode = config?.mode;\n\treturn mode === 'number'\n\t\t? new SQLiteNumericNumberBuilder(name)\n\t\t: mode === 'bigint'\n\t\t? new SQLiteNumericBigIntBuilder(name)\n\t\t: new SQLiteNumericBuilder(name);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAqB,8BAA8B;AACnD,SAAS,cAAc,2BAA2B;AAE3C,MAAM,6BAA6B,oBAKvC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,kBAAkB,eAAe;AAAA,EAC9C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,sBAAoE,aAAgB;AAAA,EAChG,QAA0B,UAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AACO,MAAM,mCAAmC,oBAK7C;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,UAAU,qBAAqB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAkE,aAAgB;AAAA,EAC9F,QAA0B,UAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAwB;AACnD,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AAAA,EAES,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,MAAM,mCAAmC,oBAK7C;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,qBAAqB;AAAA,EAClD;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,4BAAwE,aAAgB;AAAA,EACpG,QAA0B,UAAU,IAAY;AAAA,EAEvC,qBAAqB;AAAA,EAErB,mBAAmB;AAAA,EAE5B,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAiBO,SAAS,QAAQ,GAAkC,GAAyB;AAClF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAA4C,GAAG,CAAC;AACzE,QAAM,OAAO,QAAQ;AACrB,SAAO,SAAS,WACb,IAAI,2BAA2B,IAAI,IACnC,SAAS,WACT,IAAI,2BAA2B,IAAI,IACnC,IAAI,qBAAqB,IAAI;AACjC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/columns/real.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '../table.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteRealBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'number double';\n\tdata: number;\n\tdriverParam: number;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteRealBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number double', 'SQLiteReal');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteReal(table, this.config as any);\n\t}\n}\n\nexport class SQLiteReal<T extends ColumnBaseConfig<'number double'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteReal';\n\n\tgetSQLType(): string {\n\t\treturn 'real';\n\t}\n}\n\nexport function real(name?: string): SQLiteRealBuilder {\n\treturn new SQLiteRealBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAAkD;AAE3C,MAAM,0BAA0B,kCAIpC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,iBAAiB,YAAY;AAAA,EAC1C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAAgE,2BAAgB;AAAA,EAC5F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAAkC;AACtD,SAAO,IAAI,kBAAkB,QAAQ,EAAE;AACxC;","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/columns/real.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '../table.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteRealBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'number double';\n\tdata: number;\n\tdriverParam: number;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteRealBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number double', 'SQLiteReal');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteReal(table, this.config as any);\n\t}\n}\n\nexport class SQLiteReal<T extends ColumnBaseConfig<'number double'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteReal';\n\n\tgetSQLType(): string {\n\t\treturn 'real';\n\t}\n}\n\nexport function real(name?: string): SQLiteRealBuilder {\n\treturn new SQLiteRealBuilder(name ?? '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAAkD;AAE3C,MAAM,0BAA0B,kCAKpC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,iBAAiB,YAAY;AAAA,EAC1C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAAgE,2BAAgB;AAAA,EAC5F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAAkC;AACtD,SAAO,IAAI,kBAAkB,QAAQ,EAAE;AACxC;","names":[]}
@@ -2,6 +2,7 @@ import type { ColumnBaseConfig } from "../../column.cjs";
2
2
  import { entityKind } from "../../entity.cjs";
3
3
  import { SQLiteColumn, SQLiteColumnBuilder } from "./common.cjs";
4
4
  export declare class SQLiteRealBuilder extends SQLiteColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'number double';
6
7
  data: number;
7
8
  driverParam: number;
@@ -2,6 +2,7 @@ import type { ColumnBaseConfig } from "../../column.js";
2
2
  import { entityKind } from "../../entity.js";
3
3
  import { SQLiteColumn, SQLiteColumnBuilder } from "./common.js";
4
4
  export declare class SQLiteRealBuilder extends SQLiteColumnBuilder<{
5
+ name: string;
5
6
  dataType: 'number double';
6
7
  data: number;
7
8
  driverParam: number;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/columns/real.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '../table.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteRealBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'number double';\n\tdata: number;\n\tdriverParam: number;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteRealBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number double', 'SQLiteReal');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteReal(table, this.config as any);\n\t}\n}\n\nexport class SQLiteReal<T extends ColumnBaseConfig<'number double'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteReal';\n\n\tgetSQLType(): string {\n\t\treturn 'real';\n\t}\n}\n\nexport function real(name?: string): SQLiteRealBuilder {\n\treturn new SQLiteRealBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,cAAc,2BAA2B;AAE3C,MAAM,0BAA0B,oBAIpC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,iBAAiB,YAAY;AAAA,EAC1C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAAgE,aAAgB;AAAA,EAC5F,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAAkC;AACtD,SAAO,IAAI,kBAAkB,QAAQ,EAAE;AACxC;","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/columns/real.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '../table.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteRealBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'number double';\n\tdata: number;\n\tdriverParam: number;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteRealBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number double', 'SQLiteReal');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteReal(table, this.config as any);\n\t}\n}\n\nexport class SQLiteReal<T extends ColumnBaseConfig<'number double'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteReal';\n\n\tgetSQLType(): string {\n\t\treturn 'real';\n\t}\n}\n\nexport function real(name?: string): SQLiteRealBuilder {\n\treturn new SQLiteRealBuilder(name ?? '');\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,cAAc,2BAA2B;AAE3C,MAAM,0BAA0B,oBAKpC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,iBAAiB,YAAY;AAAA,EAC1C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAAgE,aAAgB;AAAA,EAC5F,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,KAAK,MAAkC;AACtD,SAAO,IAAI,kBAAkB,QAAQ,EAAE;AACxC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/columns/text.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Assume, type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteTextBuilder<\n\tTEnum extends [string, ...string[]],\n> extends SQLiteColumnBuilder<\n\t{\n\t\tdataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';\n\t\tdata: TEnum[number];\n\t\tdriverParam: string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enumValues: TEnum; length: number | undefined }\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextBuilder';\n\n\tconstructor(name: string, config: SQLiteTextConfig<'text', TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'SQLiteText');\n\t\tthis.config.enumValues = config.enum!;\n\t\tthis.config.length = config.length!;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteText(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteText<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteText';\n\n\toverride readonly enumValues = this.config.enumValues;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteTextBuilder<Assume<T['enumValues'], [string, ...string[]]>>['config'],\n\t) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn `text${this.config.length ? `(${this.config.length})` : ''}`;\n\t}\n}\n\nexport class SQLiteTextJsonBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'object json';\n\tdata: unknown;\n\tdriverParam: string;\n\n\tgenerated: undefined;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJsonBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object json', 'SQLiteTextJson');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteTextJson(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteTextJson<T extends ColumnBaseConfig<'object json'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJson';\n\n\tgetSQLType(): string {\n\t\treturn 'text';\n\t}\n\n\toverride mapFromDriverValue(value: string): T['data'] {\n\t\treturn JSON.parse(value);\n\t}\n\n\toverride mapToDriverValue(value: T['data']): string {\n\t\treturn JSON.stringify(value);\n\t}\n}\n\nexport type SQLiteTextConfig<\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> = TMode extends 'text' ? {\n\t\tmode?: TMode;\n\t\tlength?: number;\n\t\tenum?: TEnum;\n\t}\n\t: {\n\t\tmode?: TMode;\n\t};\n\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tname: string,\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text(a?: string | SQLiteTextConfig, b: SQLiteTextConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteTextConfig>(a, b);\n\tif (config.mode === 'json') {\n\t\treturn new SQLiteTextJsonBuilder(name);\n\t}\n\treturn new SQLiteTextBuilder(name, config as any);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAA+E;AAC/E,oBAAkD;AAE3C,MAAM,0BAEH,kCAQR;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAyC;AAClE,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,YAAY;AACxE,SAAK,OAAO,aAAa,OAAO;AAChC,SAAK,OAAO,SAAS,OAAO;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,mBACJ,2BACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO,OAAO,KAAK,OAAO,SAAS,IAAI,KAAK,OAAO,MAAM,MAAM,EAAE;AAAA,EAClE;AACD;AAEO,MAAM,8BAA8B,kCAMxC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBACJ,2BACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA0B;AACrD,WAAO,KAAK,MAAM,KAAK;AAAA,EACxB;AAAA,EAES,iBAAiB,OAA0B;AACnD,WAAO,KAAK,UAAU,KAAK;AAAA,EAC5B;AACD;AA+BO,SAAS,KAAK,GAA+B,IAAsB,CAAC,GAAQ;AAClF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAAyC,GAAG,CAAC;AACtE,MAAI,OAAO,SAAS,QAAQ;AAC3B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,MAAM,MAAa;AACjD;","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/columns/text.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Assume, type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteTextBuilder<\n\tTEnum extends [string, ...string[]],\n> extends SQLiteColumnBuilder<\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: string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enumValues: TEnum; length: number | undefined }\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextBuilder';\n\n\tconstructor(name: string, config: SQLiteTextConfig<'text', TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'SQLiteText');\n\t\tthis.config.enumValues = config.enum!;\n\t\tthis.config.length = config.length!;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteText(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteText<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteText';\n\n\toverride readonly enumValues = this.config.enumValues;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteTextBuilder<Assume<T['enumValues'], [string, ...string[]]>>['config'],\n\t) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn `text${this.config.length ? `(${this.config.length})` : ''}`;\n\t}\n}\n\nexport class SQLiteTextJsonBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'object json';\n\tdata: unknown;\n\tdriverParam: string;\n\n\tgenerated: undefined;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJsonBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object json', 'SQLiteTextJson');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteTextJson(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteTextJson<T extends ColumnBaseConfig<'object json'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJson';\n\n\tgetSQLType(): string {\n\t\treturn 'text';\n\t}\n\n\toverride mapFromDriverValue(value: string): T['data'] {\n\t\treturn JSON.parse(value);\n\t}\n\n\toverride mapToDriverValue(value: T['data']): string {\n\t\treturn JSON.stringify(value);\n\t}\n}\n\nexport type SQLiteTextConfig<\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> = TMode extends 'text' ? {\n\t\tmode?: TMode;\n\t\tlength?: number;\n\t\tenum?: TEnum;\n\t}\n\t: {\n\t\tmode?: TMode;\n\t};\n\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tname: string,\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text(a?: string | SQLiteTextConfig, b: SQLiteTextConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteTextConfig>(a, b);\n\tif (config.mode === 'json') {\n\t\treturn new SQLiteTextJsonBuilder(name);\n\t}\n\treturn new SQLiteTextBuilder(name, config as any);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAA+E;AAC/E,oBAAkD;AAE3C,MAAM,0BAEH,kCASR;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAyC;AAClE,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,YAAY;AACxE,SAAK,OAAO,aAAa,OAAO;AAChC,SAAK,OAAO,SAAS,OAAO;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,mBACJ,2BACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO,OAAO,KAAK,OAAO,SAAS,IAAI,KAAK,OAAO,MAAM,MAAM,EAAE;AAAA,EAClE;AACD;AAEO,MAAM,8BAA8B,kCAOxC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBACJ,2BACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA0B;AACrD,WAAO,KAAK,MAAM,KAAK;AAAA,EACxB;AAAA,EAES,iBAAiB,OAA0B;AACnD,WAAO,KAAK,UAAU,KAAK;AAAA,EAC5B;AACD;AA+BO,SAAS,KAAK,GAA+B,IAAsB,CAAC,GAAQ;AAClF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAAyC,GAAG,CAAC;AACtE,MAAI,OAAO,SAAS,QAAQ;AAC3B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,MAAM,MAAa;AACjD;","names":[]}
@@ -4,6 +4,7 @@ import type { AnySQLiteTable } from "../table.cjs";
4
4
  import { type Assume, type Equal, type Writable } from "../../utils.cjs";
5
5
  import { SQLiteColumn, SQLiteColumnBuilder } from "./common.cjs";
6
6
  export declare class SQLiteTextBuilder<TEnum extends [string, ...string[]]> extends SQLiteColumnBuilder<{
7
+ name: string;
7
8
  dataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';
8
9
  data: TEnum[number];
9
10
  driverParam: string;
@@ -27,6 +28,7 @@ export declare class SQLiteText<T extends ColumnBaseConfig<'string' | 'string en
27
28
  getSQLType(): string;
28
29
  }
29
30
  export declare class SQLiteTextJsonBuilder extends SQLiteColumnBuilder<{
31
+ name: string;
30
32
  dataType: 'object json';
31
33
  data: unknown;
32
34
  driverParam: string;
@@ -4,6 +4,7 @@ import type { AnySQLiteTable } from "../table.js";
4
4
  import { type Assume, type Equal, type Writable } from "../../utils.js";
5
5
  import { SQLiteColumn, SQLiteColumnBuilder } from "./common.js";
6
6
  export declare class SQLiteTextBuilder<TEnum extends [string, ...string[]]> extends SQLiteColumnBuilder<{
7
+ name: string;
7
8
  dataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';
8
9
  data: TEnum[number];
9
10
  driverParam: string;
@@ -27,6 +28,7 @@ export declare class SQLiteText<T extends ColumnBaseConfig<'string' | 'string en
27
28
  getSQLType(): string;
28
29
  }
29
30
  export declare class SQLiteTextJsonBuilder extends SQLiteColumnBuilder<{
31
+ name: string;
30
32
  dataType: 'object json';
31
33
  data: unknown;
32
34
  driverParam: string;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/columns/text.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Assume, type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteTextBuilder<\n\tTEnum extends [string, ...string[]],\n> extends SQLiteColumnBuilder<\n\t{\n\t\tdataType: Equal<TEnum, [string, ...string[]]> extends true ? 'string' : 'string enum';\n\t\tdata: TEnum[number];\n\t\tdriverParam: string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enumValues: TEnum; length: number | undefined }\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextBuilder';\n\n\tconstructor(name: string, config: SQLiteTextConfig<'text', TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'SQLiteText');\n\t\tthis.config.enumValues = config.enum!;\n\t\tthis.config.length = config.length!;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteText(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteText<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteText';\n\n\toverride readonly enumValues = this.config.enumValues;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteTextBuilder<Assume<T['enumValues'], [string, ...string[]]>>['config'],\n\t) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn `text${this.config.length ? `(${this.config.length})` : ''}`;\n\t}\n}\n\nexport class SQLiteTextJsonBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'object json';\n\tdata: unknown;\n\tdriverParam: string;\n\n\tgenerated: undefined;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJsonBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object json', 'SQLiteTextJson');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteTextJson(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteTextJson<T extends ColumnBaseConfig<'object json'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJson';\n\n\tgetSQLType(): string {\n\t\treturn 'text';\n\t}\n\n\toverride mapFromDriverValue(value: string): T['data'] {\n\t\treturn JSON.parse(value);\n\t}\n\n\toverride mapToDriverValue(value: T['data']): string {\n\t\treturn JSON.stringify(value);\n\t}\n}\n\nexport type SQLiteTextConfig<\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> = TMode extends 'text' ? {\n\t\tmode?: TMode;\n\t\tlength?: number;\n\t\tenum?: TEnum;\n\t}\n\t: {\n\t\tmode?: TMode;\n\t};\n\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tname: string,\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text(a?: string | SQLiteTextConfig, b: SQLiteTextConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteTextConfig>(a, b);\n\tif (config.mode === 'json') {\n\t\treturn new SQLiteTextJsonBuilder(name);\n\t}\n\treturn new SQLiteTextBuilder(name, config as any);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAkC,8BAA6C;AAC/E,SAAS,cAAc,2BAA2B;AAE3C,MAAM,0BAEH,oBAQR;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAyC;AAClE,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,YAAY;AACxE,SAAK,OAAO,aAAa,OAAO;AAChC,SAAK,OAAO,SAAS,OAAO;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,mBACJ,aACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO,OAAO,KAAK,OAAO,SAAS,IAAI,KAAK,OAAO,MAAM,MAAM,EAAE;AAAA,EAClE;AACD;AAEO,MAAM,8BAA8B,oBAMxC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBACJ,aACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA0B;AACrD,WAAO,KAAK,MAAM,KAAK;AAAA,EACxB;AAAA,EAES,iBAAiB,OAA0B;AACnD,WAAO,KAAK,UAAU,KAAK;AAAA,EAC5B;AACD;AA+BO,SAAS,KAAK,GAA+B,IAAsB,CAAC,GAAQ;AAClF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAAyC,GAAG,CAAC;AACtE,MAAI,OAAO,SAAS,QAAQ;AAC3B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,MAAM,MAAa;AACjD;","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/columns/text.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Assume, type Equal, getColumnNameAndConfig, type Writable } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport class SQLiteTextBuilder<\n\tTEnum extends [string, ...string[]],\n> extends SQLiteColumnBuilder<\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: string;\n\t\tenumValues: TEnum;\n\t},\n\t{ enumValues: TEnum; length: number | undefined }\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextBuilder';\n\n\tconstructor(name: string, config: SQLiteTextConfig<'text', TEnum>) {\n\t\tsuper(name, config.enum?.length ? 'string enum' : 'string', 'SQLiteText');\n\t\tthis.config.enumValues = config.enum!;\n\t\tthis.config.length = config.length!;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteText(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteText<T extends ColumnBaseConfig<'string' | 'string enum'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteText';\n\n\toverride readonly enumValues = this.config.enumValues;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteTextBuilder<Assume<T['enumValues'], [string, ...string[]]>>['config'],\n\t) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn `text${this.config.length ? `(${this.config.length})` : ''}`;\n\t}\n}\n\nexport class SQLiteTextJsonBuilder extends SQLiteColumnBuilder<{\n\tname: string;\n\tdataType: 'object json';\n\tdata: unknown;\n\tdriverParam: string;\n\n\tgenerated: undefined;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJsonBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object json', 'SQLiteTextJson');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteTextJson(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteTextJson<T extends ColumnBaseConfig<'object json'>>\n\textends SQLiteColumn<T, { length: number | undefined; enumValues: T['enumValues'] }>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteTextJson';\n\n\tgetSQLType(): string {\n\t\treturn 'text';\n\t}\n\n\toverride mapFromDriverValue(value: string): T['data'] {\n\t\treturn JSON.parse(value);\n\t}\n\n\toverride mapToDriverValue(value: T['data']): string {\n\t\treturn JSON.stringify(value);\n\t}\n}\n\nexport type SQLiteTextConfig<\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n\tTEnum extends readonly string[] | string[] | undefined = readonly string[] | string[] | undefined,\n> = TMode extends 'text' ? {\n\t\tmode?: TMode;\n\t\tlength?: number;\n\t\tenum?: TEnum;\n\t}\n\t: {\n\t\tmode?: TMode;\n\t};\n\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text<\n\tU extends string,\n\tT extends Readonly<[U, ...U[]]>,\n\tTMode extends 'text' | 'json' = 'text' | 'json',\n>(\n\tname: string,\n\tconfig?: SQLiteTextConfig<TMode, T | Writable<T>>,\n): Equal<TMode, 'json'> extends true ? SQLiteTextJsonBuilder\n\t: SQLiteTextBuilder<Writable<T>>;\nexport function text(a?: string | SQLiteTextConfig, b: SQLiteTextConfig = {}): any {\n\tconst { name, config } = getColumnNameAndConfig<SQLiteTextConfig>(a, b);\n\tif (config.mode === 'json') {\n\t\treturn new SQLiteTextJsonBuilder(name);\n\t}\n\treturn new SQLiteTextBuilder(name, config as any);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAkC,8BAA6C;AAC/E,SAAS,cAAc,2BAA2B;AAE3C,MAAM,0BAEH,oBASR;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc,QAAyC;AAClE,UAAM,MAAM,OAAO,MAAM,SAAS,gBAAgB,UAAU,YAAY;AACxE,SAAK,OAAO,aAAa,OAAO;AAChC,SAAK,OAAO,SAAS,OAAO;AAAA,EAC7B;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,mBACJ,aACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAE9B,aAAa,KAAK,OAAO;AAAA,EAE3C,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO,OAAO,KAAK,OAAO,SAAS,IAAI,KAAK,OAAO,MAAM,MAAM,EAAE;AAAA,EAClE;AACD;AAEO,MAAM,8BAA8B,oBAOxC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBACJ,aACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA0B;AACrD,WAAO,KAAK,MAAM,KAAK;AAAA,EACxB;AAAA,EAES,iBAAiB,OAA0B;AACnD,WAAO,KAAK,UAAU,KAAK;AAAA,EAC5B;AACD;AA+BO,SAAS,KAAK,GAA+B,IAAsB,CAAC,GAAQ;AAClF,QAAM,EAAE,MAAM,OAAO,IAAI,uBAAyC,GAAG,CAAC;AACtE,MAAI,OAAO,SAAS,QAAQ;AAC3B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,MAAM,MAAa;AACjD;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL, sql } from '~/sql/sql.ts';\nimport type { SQLiteDialect } from '~/sqlite-core/dialect.ts';\nimport type { IndexColumn } from '~/sqlite-core/indexes.ts';\nimport type { SQLitePreparedQuery, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table, TableColumns } from '~/table.ts';\nimport { type DrizzleTypeError, haveSameKeys, mapUpdateSet, orderSelectedFields, type Simplify } from '~/utils.ts';\nimport type { AnySQLiteColumn, SQLiteColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { SQLiteUpdateSetSource } from './update.ts';\n\nexport interface SQLiteInsertConfig<TTable extends SQLiteTable = SQLiteTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | SQLiteInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL[];\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n}\n\nexport type SQLiteInsertValue<\n\tTTable extends SQLiteTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> = Simplify<\n\t{\n\t\t[Key in keyof TModel]: TModel[Key] | SQL | Placeholder;\n\t}\n>;\n\nexport type SQLiteInsertSelectQueryBuilder<\n\tTTable extends SQLiteTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnySQLiteColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class SQLiteInsertBuilder<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n> {\n\tstatic readonly [entityKind]: string = 'SQLiteInsertBuilder';\n\n\tconstructor(\n\t\tprotected table: TTable,\n\t\tprotected session: SQLiteSession<any, any, any, any, any>,\n\t\tprotected dialect: SQLiteDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tvalues(value: SQLiteInsertValue<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(values: SQLiteInsertValue<TTable>[]): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(\n\t\tvalues: SQLiteInsertValue<TTable> | SQLiteInsertValue<TTable>[],\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\t// if (mappedValues.length > 1 && mappedValues.some((t) => Object.keys(t).length === 0)) {\n\t\t// \tthrow new Error(\n\t\t// \t\t`One of the values you want to insert is empty. In SQLite you can insert only one empty object per statement. For this case Drizzle with use \"INSERT INTO ... DEFAULT VALUES\" syntax`,\n\t\t// \t);\n\t\t// }\n\n\t\treturn new SQLiteInsertBase(this.table, mappedValues, this.session, this.dialect, this.withList);\n\t}\n\n\tselect(\n\t\tselectQuery: (qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable>,\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQLiteInsertSelectQueryBuilder<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| SQLiteInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable> | SQL),\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new SQLiteInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type SQLiteInsertWithout<T extends AnySQLiteInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tSQLiteInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['resultType'],\n\t\t\t\tT['_']['runResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type SQLiteInsertReturning<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tSelectResultFields<TSelectedFields>,\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertReturningAll<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tT['_']['table']['$inferSelect'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertOnConflictDoUpdateConfig<T extends AnySQLiteInsert> = {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated - use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: SQLiteUpdateSetSource<T['_']['table']>;\n};\n\nexport type SQLiteInsertDynamic<T extends AnySQLiteInsert> = SQLiteInsert<\n\tT['_']['table'],\n\tT['_']['resultType'],\n\tT['_']['runResult'],\n\tT['_']['returning']\n>;\n\nexport type SQLiteInsertExecute<T extends AnySQLiteInsert> = T['_']['returning'] extends undefined ? T['_']['runResult']\n\t: T['_']['returning'][];\n\nexport type SQLiteInsertPrepare<T extends AnySQLiteInsert> = SQLitePreparedQuery<\n\t{\n\t\ttype: T['_']['resultType'];\n\t\trun: T['_']['runResult'];\n\t\tall: T['_']['returning'] extends undefined ? DrizzleTypeError<'.all() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'][];\n\t\tget: T['_']['returning'] extends undefined ? DrizzleTypeError<'.get() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'];\n\t\tvalues: T['_']['returning'] extends undefined ? DrizzleTypeError<'.values() cannot be used without .returning()'>\n\t\t\t: any[][];\n\t\texecute: SQLiteInsertExecute<T>;\n\t}\n>;\n\nexport type AnySQLiteInsert = SQLiteInsertBase<any, any, any, any, any, any>;\n\nexport type SQLiteInsert<\n\tTTable extends SQLiteTable = SQLiteTable,\n\tTResultType extends 'sync' | 'async' = 'sync' | 'async',\n\tTRunResult = unknown,\n\tTReturning = any,\n> = SQLiteInsertBase<TTable, TResultType, TRunResult, TReturning, true, never>;\n\nexport interface SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tSQLWrapper,\n\tQueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>\n{\n\treadonly _: {\n\t\treadonly dialect: 'sqlite';\n\t\treadonly table: TTable;\n\t\treadonly resultType: TResultType;\n\t\treadonly runResult: TRunResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? TRunResult : TReturning[];\n\t};\n}\n\nexport class SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>\n\timplements RunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>, SQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteInsert';\n\n\t/** @internal */\n\tconfig: SQLiteInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: SQLiteInsertConfig['values'],\n\t\tprivate session: SQLiteSession<any, any, any, any, any>,\n\t\tprivate dialect: SQLiteDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): SQLiteInsertReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): SQLiteInsertReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[SQLiteTable.Symbol.Columns],\n\t): SQLiteInsertWithout<AnySQLiteInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<SQLiteColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\tonConflictDoNothing(config: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {}): this {\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tif (config.target === undefined) {\n\t\t\tthis.config.onConflict.push(sql` on conflict do nothing`);\n\t\t} else {\n\t\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\t\tconst whereSql = config.where ? sql` where ${config.where}` : sql``;\n\t\t\tthis.config.onConflict.push(sql` on conflict ${targetSql} do nothing${whereSql}`);\n\t\t}\n\t\treturn this;\n\t}\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * where: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\tonConflictDoUpdate(config: SQLiteInsertOnConflictDoUpdateConfig<this>): this {\n\t\tif (config.where && (config.targetWhere || config.setWhere)) {\n\t\t\tthrow new Error(\n\t\t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t\t\t);\n\t\t}\n\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t\tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t\tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t\tthis.config.onConflict.push(\n\t\t\tsql` on conflict ${targetSql}${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`,\n\t\t);\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(isOneTimeQuery = true): SQLiteInsertPrepare<this> {\n\t\treturn this.session[isOneTimeQuery ? 'prepareOneTimeQuery' : 'prepareQuery'](\n\t\t\tthis.dialect.sqlToQuery(this.getSQL()),\n\t\t\tthis.config.returning,\n\t\t\tthis.config.returning ? 'all' : 'run',\n\t\t\ttrue,\n\t\t\tundefined,\n\t\t\t{\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t},\n\t\t) as SQLiteInsertPrepare<this>;\n\t}\n\n\tprepare(): SQLiteInsertPrepare<this> {\n\t\treturn this._prepare(false);\n\t}\n\n\trun: ReturnType<this['prepare']>['run'] = (placeholderValues) => {\n\t\treturn this._prepare().run(placeholderValues);\n\t};\n\n\tall: ReturnType<this['prepare']>['all'] = (placeholderValues) => {\n\t\treturn this._prepare().all(placeholderValues);\n\t};\n\n\tget: ReturnType<this['prepare']>['get'] = (placeholderValues) => {\n\t\treturn this._prepare().get(placeholderValues);\n\t};\n\n\tvalues: ReturnType<this['prepare']>['values'] = (placeholderValues) => {\n\t\treturn this._prepare().values(placeholderValues);\n\t};\n\n\toverride async execute(): Promise<SQLiteInsertExecute<this>> {\n\t\treturn (this.config.returning ? this.all() : this.run()) as SQLiteInsertExecute<this>;\n\t}\n\n\t$dynamic(): SQLiteInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["import_table","import_utils"]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL, sql } from '~/sql/sql.ts';\nimport type { SQLiteDialect } from '~/sqlite-core/dialect.ts';\nimport type { IndexColumn } from '~/sqlite-core/indexes.ts';\nimport type { SQLitePreparedQuery, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table, TableColumns } from '~/table.ts';\nimport { type DrizzleTypeError, haveSameKeys, mapUpdateSet, orderSelectedFields, type Simplify } from '~/utils.ts';\nimport type { AnySQLiteColumn, SQLiteColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { SQLiteUpdateSetSource } from './update.ts';\n\nexport interface SQLiteInsertConfig<TTable extends SQLiteTable = SQLiteTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | SQLiteInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL[];\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n}\n\nexport type SQLiteInsertValue<\n\tTTable extends SQLiteTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> = Simplify<\n\t{\n\t\t[Key in keyof TModel]: TModel[Key] | SQL | Placeholder;\n\t}\n>;\n\nexport type SQLiteInsertSelectQueryBuilder<\n\tTTable extends SQLiteTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnySQLiteColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class SQLiteInsertBuilder<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n> {\n\tstatic readonly [entityKind]: string = 'SQLiteInsertBuilder';\n\n\tconstructor(\n\t\tprotected table: TTable,\n\t\tprotected session: SQLiteSession<any, any, any, any, any>,\n\t\tprotected dialect: SQLiteDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tvalues(value: SQLiteInsertValue<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(values: SQLiteInsertValue<TTable>[]): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(\n\t\tvalues: SQLiteInsertValue<TTable> | SQLiteInsertValue<TTable>[],\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\t// if (mappedValues.length > 1 && mappedValues.some((t) => Object.keys(t).length === 0)) {\n\t\t// \tthrow new Error(\n\t\t// \t\t`One of the values you want to insert is empty. In SQLite you can insert only one empty object per statement. For this case Drizzle with use \"INSERT INTO ... DEFAULT VALUES\" syntax`,\n\t\t// \t);\n\t\t// }\n\n\t\treturn new SQLiteInsertBase(this.table, mappedValues, this.session, this.dialect, this.withList);\n\t}\n\n\tselect(\n\t\tselectQuery: (qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable>,\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQLiteInsertSelectQueryBuilder<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| SQLiteInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable> | SQL),\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new SQLiteInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type SQLiteInsertWithout<T extends AnySQLiteInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tSQLiteInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['resultType'],\n\t\t\t\tT['_']['runResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type SQLiteInsertReturning<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tSelectResultFields<TSelectedFields>,\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertReturningAll<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tT['_']['table']['$inferSelect'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertOnConflictDoUpdateConfig<T extends AnySQLiteInsert> = {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated - use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: SQLiteUpdateSetSource<T['_']['table']>;\n};\n\nexport type SQLiteInsertDynamic<T extends AnySQLiteInsert> = SQLiteInsert<\n\tT['_']['table'],\n\tT['_']['resultType'],\n\tT['_']['runResult'],\n\tT['_']['returning']\n>;\n\nexport type SQLiteInsertExecute<T extends AnySQLiteInsert> = T['_']['returning'] extends undefined ? T['_']['runResult']\n\t: T['_']['returning'][];\n\nexport type SQLiteInsertPrepare<T extends AnySQLiteInsert> = SQLitePreparedQuery<\n\t{\n\t\ttype: T['_']['resultType'];\n\t\trun: T['_']['runResult'];\n\t\tall: T['_']['returning'] extends undefined ? DrizzleTypeError<'.all() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'][];\n\t\tget: T['_']['returning'] extends undefined ? DrizzleTypeError<'.get() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'];\n\t\tvalues: T['_']['returning'] extends undefined ? DrizzleTypeError<'.values() cannot be used without .returning()'>\n\t\t\t: any[][];\n\t\texecute: SQLiteInsertExecute<T>;\n\t}\n>;\n\nexport type AnySQLiteInsert = SQLiteInsertBase<any, any, any, any, any, any>;\n\nexport type SQLiteInsert<\n\tTTable extends SQLiteTable = SQLiteTable,\n\tTResultType extends 'sync' | 'async' = 'sync' | 'async',\n\tTRunResult = unknown,\n\tTReturning = any,\n> = SQLiteInsertBase<TTable, TResultType, TRunResult, TReturning, true, never>;\n\nexport interface SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tSQLWrapper,\n\tQueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>\n{\n\treadonly _: {\n\t\treadonly dialect: 'sqlite';\n\t\treadonly table: TTable;\n\t\treadonly resultType: TResultType;\n\t\treadonly runResult: TRunResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? TRunResult : TReturning[];\n\t};\n}\n\nexport class SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>\n\timplements RunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>, SQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteInsert';\n\n\t/** @internal */\n\tconfig: SQLiteInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: SQLiteInsertConfig['values'],\n\t\tprivate session: SQLiteSession<any, any, any, any, any>,\n\t\tprivate dialect: SQLiteDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): SQLiteInsertReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): SQLiteInsertReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[SQLiteTable.Symbol.Columns],\n\t): SQLiteInsertWithout<AnySQLiteInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<SQLiteColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\tonConflictDoNothing(config: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {}): this {\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tif (config.target === undefined) {\n\t\t\tthis.config.onConflict.push(sql` on conflict do nothing`);\n\t\t} else {\n\t\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\t\tconst whereSql = config.where ? sql` where ${config.where}` : sql``;\n\t\t\tthis.config.onConflict.push(sql` on conflict ${targetSql} do nothing${whereSql}`);\n\t\t}\n\t\treturn this;\n\t}\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * where: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\tonConflictDoUpdate(config: SQLiteInsertOnConflictDoUpdateConfig<this>): this {\n\t\tif (config.where && (config.targetWhere || config.setWhere)) {\n\t\t\tthrow new Error(\n\t\t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t\t\t);\n\t\t}\n\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t\tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t\tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t\tthis.config.onConflict.push(\n\t\t\tsql` on conflict ${targetSql}${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`,\n\t\t);\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(isOneTimeQuery = true): SQLiteInsertPrepare<this> {\n\t\treturn this.session[isOneTimeQuery ? 'prepareOneTimeQuery' : 'prepareQuery'](\n\t\t\tthis.dialect.sqlToQuery(this.getSQL()),\n\t\t\tthis.config.returning,\n\t\t\tthis.config.returning ? 'all' : 'run',\n\t\t\ttrue,\n\t\t\tundefined,\n\t\t\t{\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t},\n\t\t) as SQLiteInsertPrepare<this>;\n\t}\n\n\tprepare(): SQLiteInsertPrepare<this> {\n\t\treturn this._prepare(false);\n\t}\n\n\trun: ReturnType<this['prepare']>['run'] = (placeholderValues) => {\n\t\treturn this._prepare().run(placeholderValues);\n\t};\n\n\tall: ReturnType<this['prepare']>['all'] = (placeholderValues) => {\n\t\treturn this._prepare().all(placeholderValues);\n\t};\n\n\tget: ReturnType<this['prepare']>['get'] = (placeholderValues) => {\n\t\treturn this._prepare().get(placeholderValues);\n\t};\n\n\tvalues: ReturnType<this['prepare']>['values'] = (placeholderValues) => {\n\t\treturn this._prepare().values(placeholderValues);\n\t};\n\n\toverride async execute(): Promise<SQLiteInsertExecute<this>> {\n\t\treturn (this.config.returning ? this.all() : this.run()) as SQLiteInsertExecute<this>;\n\t}\n\n\t$dynamic(): SQLiteInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":["import_table","import_utils"]}
@@ -24,10 +24,10 @@ export interface SQLiteInsertConfig<TTable extends SQLiteTable = SQLiteTable> {
24
24
  returning?: SelectedFieldsOrdered;
25
25
  select?: boolean;
26
26
  }
27
- export type SQLiteInsertValue<TTable extends SQLiteTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = Simplify<{
27
+ export type SQLiteInsertValue<TTable extends SQLiteTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = Simplify<{
28
28
  [Key in keyof TModel]: TModel[Key] | SQL | Placeholder;
29
29
  }>;
30
- export type SQLiteInsertSelectQueryBuilder<TTable extends SQLiteTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = TypedQueryBuilder<{
30
+ export type SQLiteInsertSelectQueryBuilder<TTable extends SQLiteTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = TypedQueryBuilder<{
31
31
  [K in keyof TModel]: AnySQLiteColumn | SQL | SQL.Aliased | TModel[K];
32
32
  }>;
33
33
  export declare class SQLiteInsertBuilder<TTable extends SQLiteTable, TResultType extends 'sync' | 'async', TRunResult> {
@@ -24,10 +24,10 @@ export interface SQLiteInsertConfig<TTable extends SQLiteTable = SQLiteTable> {
24
24
  returning?: SelectedFieldsOrdered;
25
25
  select?: boolean;
26
26
  }
27
- export type SQLiteInsertValue<TTable extends SQLiteTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = Simplify<{
27
+ export type SQLiteInsertValue<TTable extends SQLiteTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = Simplify<{
28
28
  [Key in keyof TModel]: TModel[Key] | SQL | Placeholder;
29
29
  }>;
30
- export type SQLiteInsertSelectQueryBuilder<TTable extends SQLiteTable, TModel extends Record<string, any> = InferInsertModel<TTable>> = TypedQueryBuilder<{
30
+ export type SQLiteInsertSelectQueryBuilder<TTable extends SQLiteTable, TModel extends InferInsertModel<TTable> = InferInsertModel<TTable>> = TypedQueryBuilder<{
31
31
  [K in keyof TModel]: AnySQLiteColumn | SQL | SQL.Aliased | TModel[K];
32
32
  }>;
33
33
  export declare class SQLiteInsertBuilder<TTable extends SQLiteTable, TResultType extends 'sync' | 'async', TRunResult> {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sqlite-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL, sql } from '~/sql/sql.ts';\nimport type { SQLiteDialect } from '~/sqlite-core/dialect.ts';\nimport type { IndexColumn } from '~/sqlite-core/indexes.ts';\nimport type { SQLitePreparedQuery, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table, TableColumns } from '~/table.ts';\nimport { type DrizzleTypeError, haveSameKeys, mapUpdateSet, orderSelectedFields, type Simplify } from '~/utils.ts';\nimport type { AnySQLiteColumn, SQLiteColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { SQLiteUpdateSetSource } from './update.ts';\n\nexport interface SQLiteInsertConfig<TTable extends SQLiteTable = SQLiteTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | SQLiteInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL[];\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n}\n\nexport type SQLiteInsertValue<\n\tTTable extends SQLiteTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> = Simplify<\n\t{\n\t\t[Key in keyof TModel]: TModel[Key] | SQL | Placeholder;\n\t}\n>;\n\nexport type SQLiteInsertSelectQueryBuilder<\n\tTTable extends SQLiteTable,\n\tTModel extends Record<string, any> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnySQLiteColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class SQLiteInsertBuilder<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n> {\n\tstatic readonly [entityKind]: string = 'SQLiteInsertBuilder';\n\n\tconstructor(\n\t\tprotected table: TTable,\n\t\tprotected session: SQLiteSession<any, any, any, any, any>,\n\t\tprotected dialect: SQLiteDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tvalues(value: SQLiteInsertValue<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(values: SQLiteInsertValue<TTable>[]): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(\n\t\tvalues: SQLiteInsertValue<TTable> | SQLiteInsertValue<TTable>[],\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\t// if (mappedValues.length > 1 && mappedValues.some((t) => Object.keys(t).length === 0)) {\n\t\t// \tthrow new Error(\n\t\t// \t\t`One of the values you want to insert is empty. In SQLite you can insert only one empty object per statement. For this case Drizzle with use \"INSERT INTO ... DEFAULT VALUES\" syntax`,\n\t\t// \t);\n\t\t// }\n\n\t\treturn new SQLiteInsertBase(this.table, mappedValues, this.session, this.dialect, this.withList);\n\t}\n\n\tselect(\n\t\tselectQuery: (qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable>,\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQLiteInsertSelectQueryBuilder<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| SQLiteInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable> | SQL),\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new SQLiteInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type SQLiteInsertWithout<T extends AnySQLiteInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tSQLiteInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['resultType'],\n\t\t\t\tT['_']['runResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type SQLiteInsertReturning<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tSelectResultFields<TSelectedFields>,\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertReturningAll<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tT['_']['table']['$inferSelect'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertOnConflictDoUpdateConfig<T extends AnySQLiteInsert> = {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated - use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: SQLiteUpdateSetSource<T['_']['table']>;\n};\n\nexport type SQLiteInsertDynamic<T extends AnySQLiteInsert> = SQLiteInsert<\n\tT['_']['table'],\n\tT['_']['resultType'],\n\tT['_']['runResult'],\n\tT['_']['returning']\n>;\n\nexport type SQLiteInsertExecute<T extends AnySQLiteInsert> = T['_']['returning'] extends undefined ? T['_']['runResult']\n\t: T['_']['returning'][];\n\nexport type SQLiteInsertPrepare<T extends AnySQLiteInsert> = SQLitePreparedQuery<\n\t{\n\t\ttype: T['_']['resultType'];\n\t\trun: T['_']['runResult'];\n\t\tall: T['_']['returning'] extends undefined ? DrizzleTypeError<'.all() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'][];\n\t\tget: T['_']['returning'] extends undefined ? DrizzleTypeError<'.get() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'];\n\t\tvalues: T['_']['returning'] extends undefined ? DrizzleTypeError<'.values() cannot be used without .returning()'>\n\t\t\t: any[][];\n\t\texecute: SQLiteInsertExecute<T>;\n\t}\n>;\n\nexport type AnySQLiteInsert = SQLiteInsertBase<any, any, any, any, any, any>;\n\nexport type SQLiteInsert<\n\tTTable extends SQLiteTable = SQLiteTable,\n\tTResultType extends 'sync' | 'async' = 'sync' | 'async',\n\tTRunResult = unknown,\n\tTReturning = any,\n> = SQLiteInsertBase<TTable, TResultType, TRunResult, TReturning, true, never>;\n\nexport interface SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tSQLWrapper,\n\tQueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>\n{\n\treadonly _: {\n\t\treadonly dialect: 'sqlite';\n\t\treadonly table: TTable;\n\t\treadonly resultType: TResultType;\n\t\treadonly runResult: TRunResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? TRunResult : TReturning[];\n\t};\n}\n\nexport class SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>\n\timplements RunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>, SQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteInsert';\n\n\t/** @internal */\n\tconfig: SQLiteInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: SQLiteInsertConfig['values'],\n\t\tprivate session: SQLiteSession<any, any, any, any, any>,\n\t\tprivate dialect: SQLiteDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): SQLiteInsertReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): SQLiteInsertReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[SQLiteTable.Symbol.Columns],\n\t): SQLiteInsertWithout<AnySQLiteInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<SQLiteColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\tonConflictDoNothing(config: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {}): this {\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tif (config.target === undefined) {\n\t\t\tthis.config.onConflict.push(sql` on conflict do nothing`);\n\t\t} else {\n\t\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\t\tconst whereSql = config.where ? sql` where ${config.where}` : sql``;\n\t\t\tthis.config.onConflict.push(sql` on conflict ${targetSql} do nothing${whereSql}`);\n\t\t}\n\t\treturn this;\n\t}\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * where: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\tonConflictDoUpdate(config: SQLiteInsertOnConflictDoUpdateConfig<this>): this {\n\t\tif (config.where && (config.targetWhere || config.setWhere)) {\n\t\t\tthrow new Error(\n\t\t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t\t\t);\n\t\t}\n\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t\tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t\tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t\tthis.config.onConflict.push(\n\t\t\tsql` on conflict ${targetSql}${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`,\n\t\t);\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(isOneTimeQuery = true): SQLiteInsertPrepare<this> {\n\t\treturn this.session[isOneTimeQuery ? 'prepareOneTimeQuery' : 'prepareQuery'](\n\t\t\tthis.dialect.sqlToQuery(this.getSQL()),\n\t\t\tthis.config.returning,\n\t\t\tthis.config.returning ? 'all' : 'run',\n\t\t\ttrue,\n\t\t\tundefined,\n\t\t\t{\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t},\n\t\t) as SQLiteInsertPrepare<this>;\n\t}\n\n\tprepare(): SQLiteInsertPrepare<this> {\n\t\treturn this._prepare(false);\n\t}\n\n\trun: ReturnType<this['prepare']>['run'] = (placeholderValues) => {\n\t\treturn this._prepare().run(placeholderValues);\n\t};\n\n\tall: ReturnType<this['prepare']>['all'] = (placeholderValues) => {\n\t\treturn this._prepare().all(placeholderValues);\n\t};\n\n\tget: ReturnType<this['prepare']>['get'] = (placeholderValues) => {\n\t\treturn this._prepare().get(placeholderValues);\n\t};\n\n\tvalues: ReturnType<this['prepare']>['values'] = (placeholderValues) => {\n\t\treturn this._prepare().values(placeholderValues);\n\t};\n\n\toverride async execute(): Promise<SQLiteInsertExecute<this>> {\n\t\treturn (this.config.returning ? this.all() : this.run()) as SQLiteInsertExecute<this>;\n\t}\n\n\t$dynamic(): SQLiteInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/sqlite-core/query-builders/insert.ts"],"sourcesContent":["import { entityKind, is } from '~/entity.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { SelectResultFields } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { Placeholder, Query, SQLWrapper } from '~/sql/sql.ts';\nimport { Param, SQL, sql } from '~/sql/sql.ts';\nimport type { SQLiteDialect } from '~/sqlite-core/dialect.ts';\nimport type { IndexColumn } from '~/sqlite-core/indexes.ts';\nimport type { SQLitePreparedQuery, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { type InferInsertModel, Table, TableColumns } from '~/table.ts';\nimport { type DrizzleTypeError, haveSameKeys, mapUpdateSet, orderSelectedFields, type Simplify } from '~/utils.ts';\nimport type { AnySQLiteColumn, SQLiteColumn } from '../columns/common.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport { QueryBuilder } from './query-builder.ts';\nimport type { SelectedFieldsFlat, SelectedFieldsOrdered } from './select.types.ts';\nimport type { SQLiteUpdateSetSource } from './update.ts';\n\nexport interface SQLiteInsertConfig<TTable extends SQLiteTable = SQLiteTable> {\n\ttable: TTable;\n\tvalues: Record<string, Param | SQL>[] | SQLiteInsertSelectQueryBuilder<TTable> | SQL;\n\twithList?: Subquery[];\n\tonConflict?: SQL[];\n\treturning?: SelectedFieldsOrdered;\n\tselect?: boolean;\n}\n\nexport type SQLiteInsertValue<\n\tTTable extends SQLiteTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> = Simplify<\n\t{\n\t\t[Key in keyof TModel]: TModel[Key] | SQL | Placeholder;\n\t}\n>;\n\nexport type SQLiteInsertSelectQueryBuilder<\n\tTTable extends SQLiteTable,\n\tTModel extends InferInsertModel<TTable> = InferInsertModel<TTable>,\n> = TypedQueryBuilder<\n\t{ [K in keyof TModel]: AnySQLiteColumn | SQL | SQL.Aliased | TModel[K] }\n>;\n\nexport class SQLiteInsertBuilder<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n> {\n\tstatic readonly [entityKind]: string = 'SQLiteInsertBuilder';\n\n\tconstructor(\n\t\tprotected table: TTable,\n\t\tprotected session: SQLiteSession<any, any, any, any, any>,\n\t\tprotected dialect: SQLiteDialect,\n\t\tprivate withList?: Subquery[],\n\t) {}\n\n\tvalues(value: SQLiteInsertValue<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(values: SQLiteInsertValue<TTable>[]): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tvalues(\n\t\tvalues: SQLiteInsertValue<TTable> | SQLiteInsertValue<TTable>[],\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tvalues = Array.isArray(values) ? values : [values];\n\t\tif (values.length === 0) {\n\t\t\tthrow new Error('values() must be called with at least one value');\n\t\t}\n\t\tconst mappedValues = values.map((entry) => {\n\t\t\tconst result: Record<string, Param | SQL> = {};\n\t\t\tconst cols = this.table[Table.Symbol.Columns];\n\t\t\tfor (const colKey of Object.keys(entry)) {\n\t\t\t\tconst colValue = entry[colKey as keyof typeof entry];\n\t\t\t\tresult[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);\n\t\t\t}\n\t\t\treturn result;\n\t\t});\n\n\t\t// if (mappedValues.length > 1 && mappedValues.some((t) => Object.keys(t).length === 0)) {\n\t\t// \tthrow new Error(\n\t\t// \t\t`One of the values you want to insert is empty. In SQLite you can insert only one empty object per statement. For this case Drizzle with use \"INSERT INTO ... DEFAULT VALUES\" syntax`,\n\t\t// \t);\n\t\t// }\n\n\t\treturn new SQLiteInsertBase(this.table, mappedValues, this.session, this.dialect, this.withList);\n\t}\n\n\tselect(\n\t\tselectQuery: (qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable>,\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: (qb: QueryBuilder) => SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQL): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(selectQuery: SQLiteInsertSelectQueryBuilder<TTable>): SQLiteInsertBase<TTable, TResultType, TRunResult>;\n\tselect(\n\t\tselectQuery:\n\t\t\t| SQL\n\t\t\t| SQLiteInsertSelectQueryBuilder<TTable>\n\t\t\t| ((qb: QueryBuilder) => SQLiteInsertSelectQueryBuilder<TTable> | SQL),\n\t): SQLiteInsertBase<TTable, TResultType, TRunResult> {\n\t\tconst select = typeof selectQuery === 'function' ? selectQuery(new QueryBuilder()) : selectQuery;\n\n\t\tif (\n\t\t\t!is(select, SQL)\n\t\t\t&& !haveSameKeys(this.table[TableColumns], select._.selectedFields)\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t'Insert select error: selected fields are not the same or are in a different order compared to the table definition',\n\t\t\t);\n\t\t}\n\n\t\treturn new SQLiteInsertBase(this.table, select, this.session, this.dialect, this.withList, true);\n\t}\n}\n\nexport type SQLiteInsertWithout<T extends AnySQLiteInsert, TDynamic extends boolean, K extends keyof T & string> =\n\tTDynamic extends true ? T\n\t\t: Omit<\n\t\t\tSQLiteInsertBase<\n\t\t\t\tT['_']['table'],\n\t\t\t\tT['_']['resultType'],\n\t\t\t\tT['_']['runResult'],\n\t\t\t\tT['_']['returning'],\n\t\t\t\tTDynamic,\n\t\t\t\tT['_']['excludedMethods'] | K\n\t\t\t>,\n\t\t\tT['_']['excludedMethods'] | K\n\t\t>;\n\nexport type SQLiteInsertReturning<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n\tTSelectedFields extends SelectedFieldsFlat,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tSelectResultFields<TSelectedFields>,\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertReturningAll<\n\tT extends AnySQLiteInsert,\n\tTDynamic extends boolean,\n> = SQLiteInsertWithout<\n\tSQLiteInsertBase<\n\t\tT['_']['table'],\n\t\tT['_']['resultType'],\n\t\tT['_']['runResult'],\n\t\tT['_']['table']['$inferSelect'],\n\t\tTDynamic,\n\t\tT['_']['excludedMethods']\n\t>,\n\tTDynamic,\n\t'returning'\n>;\n\nexport type SQLiteInsertOnConflictDoUpdateConfig<T extends AnySQLiteInsert> = {\n\ttarget: IndexColumn | IndexColumn[];\n\t/** @deprecated - use either `targetWhere` or `setWhere` */\n\twhere?: SQL;\n\t// TODO: add tests for targetWhere and setWhere\n\ttargetWhere?: SQL;\n\tsetWhere?: SQL;\n\tset: SQLiteUpdateSetSource<T['_']['table']>;\n};\n\nexport type SQLiteInsertDynamic<T extends AnySQLiteInsert> = SQLiteInsert<\n\tT['_']['table'],\n\tT['_']['resultType'],\n\tT['_']['runResult'],\n\tT['_']['returning']\n>;\n\nexport type SQLiteInsertExecute<T extends AnySQLiteInsert> = T['_']['returning'] extends undefined ? T['_']['runResult']\n\t: T['_']['returning'][];\n\nexport type SQLiteInsertPrepare<T extends AnySQLiteInsert> = SQLitePreparedQuery<\n\t{\n\t\ttype: T['_']['resultType'];\n\t\trun: T['_']['runResult'];\n\t\tall: T['_']['returning'] extends undefined ? DrizzleTypeError<'.all() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'][];\n\t\tget: T['_']['returning'] extends undefined ? DrizzleTypeError<'.get() cannot be used without .returning()'>\n\t\t\t: T['_']['returning'];\n\t\tvalues: T['_']['returning'] extends undefined ? DrizzleTypeError<'.values() cannot be used without .returning()'>\n\t\t\t: any[][];\n\t\texecute: SQLiteInsertExecute<T>;\n\t}\n>;\n\nexport type AnySQLiteInsert = SQLiteInsertBase<any, any, any, any, any, any>;\n\nexport type SQLiteInsert<\n\tTTable extends SQLiteTable = SQLiteTable,\n\tTResultType extends 'sync' | 'async' = 'sync' | 'async',\n\tTRunResult = unknown,\n\tTReturning = any,\n> = SQLiteInsertBase<TTable, TResultType, TRunResult, TReturning, true, never>;\n\nexport interface SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends\n\tSQLWrapper,\n\tQueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>,\n\tRunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>\n{\n\treadonly _: {\n\t\treadonly dialect: 'sqlite';\n\t\treadonly table: TTable;\n\t\treadonly resultType: TResultType;\n\t\treadonly runResult: TRunResult;\n\t\treadonly returning: TReturning;\n\t\treadonly dynamic: TDynamic;\n\t\treadonly excludedMethods: TExcludedMethods;\n\t\treadonly result: TReturning extends undefined ? TRunResult : TReturning[];\n\t};\n}\n\nexport class SQLiteInsertBase<\n\tTTable extends SQLiteTable,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTResultType extends 'sync' | 'async',\n\tTRunResult,\n\tTReturning = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? TRunResult : TReturning[]>\n\timplements RunnableQuery<TReturning extends undefined ? TRunResult : TReturning[], 'sqlite'>, SQLWrapper\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteInsert';\n\n\t/** @internal */\n\tconfig: SQLiteInsertConfig<TTable>;\n\n\tconstructor(\n\t\ttable: TTable,\n\t\tvalues: SQLiteInsertConfig['values'],\n\t\tprivate session: SQLiteSession<any, any, any, any, any>,\n\t\tprivate dialect: SQLiteDialect,\n\t\twithList?: Subquery[],\n\t\tselect?: boolean,\n\t) {\n\t\tsuper();\n\t\tthis.config = { table, values: values as any, withList, select };\n\t}\n\n\t/**\n\t * Adds a `returning` clause to the query.\n\t *\n\t * Calling this method will return the specified fields of the inserted rows. If no fields are specified, all fields will be returned.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#insert-returning}\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and return all fields\n\t * const insertedCar: Car[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning();\n\t *\n\t * // Insert one row and return only the id\n\t * const insertedCarId: { id: number }[] = await db.insert(cars)\n\t * .values({ brand: 'BMW' })\n\t * .returning({ id: cars.id });\n\t * ```\n\t */\n\treturning(): SQLiteInsertReturningAll<this, TDynamic>;\n\treturning<TSelectedFields extends SelectedFieldsFlat>(\n\t\tfields: TSelectedFields,\n\t): SQLiteInsertReturning<this, TDynamic, TSelectedFields>;\n\treturning(\n\t\tfields: SelectedFieldsFlat = this.config.table[SQLiteTable.Symbol.Columns],\n\t): SQLiteInsertWithout<AnySQLiteInsert, TDynamic, 'returning'> {\n\t\tthis.config.returning = orderSelectedFields<SQLiteColumn>(fields);\n\t\treturn this as any;\n\t}\n\n\t/**\n\t * Adds an `on conflict do nothing` clause to the query.\n\t *\n\t * Calling this method simply avoids inserting a row as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#on-conflict-do-nothing}\n\t *\n\t * @param config The `target` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Insert one row and cancel the insert if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing();\n\t *\n\t * // Explicitly specify conflict target\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoNothing({ target: cars.id });\n\t * ```\n\t */\n\tonConflictDoNothing(config: { target?: IndexColumn | IndexColumn[]; where?: SQL } = {}): this {\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tif (config.target === undefined) {\n\t\t\tthis.config.onConflict.push(sql` on conflict do nothing`);\n\t\t} else {\n\t\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\t\tconst whereSql = config.where ? sql` where ${config.where}` : sql``;\n\t\t\tthis.config.onConflict.push(sql` on conflict ${targetSql} do nothing${whereSql}`);\n\t\t}\n\t\treturn this;\n\t}\n\n\t/**\n\t * Adds an `on conflict do update` clause to the query.\n\t *\n\t * Calling this method will update the existing row that conflicts with the row proposed for insertion as its alternative action.\n\t *\n\t * See docs: {@link https://orm.drizzle.team/docs/insert#upserts-and-conflicts}\n\t *\n\t * @param config The `target`, `set` and `where` clauses.\n\t *\n\t * @example\n\t * ```ts\n\t * // Update the row if there's a conflict\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'Porsche' }\n\t * });\n\t *\n\t * // Upsert with 'where' clause\n\t * await db.insert(cars)\n\t * .values({ id: 1, brand: 'BMW' })\n\t * .onConflictDoUpdate({\n\t * target: cars.id,\n\t * set: { brand: 'newBMW' },\n\t * where: sql`${cars.createdAt} > '2023-01-01'::date`,\n\t * });\n\t * ```\n\t */\n\tonConflictDoUpdate(config: SQLiteInsertOnConflictDoUpdateConfig<this>): this {\n\t\tif (config.where && (config.targetWhere || config.setWhere)) {\n\t\t\tthrow new Error(\n\t\t\t\t'You cannot use both \"where\" and \"targetWhere\"/\"setWhere\" at the same time - \"where\" is deprecated, use \"targetWhere\" or \"setWhere\" instead.',\n\t\t\t);\n\t\t}\n\n\t\tif (!this.config.onConflict) this.config.onConflict = [];\n\n\t\tconst whereSql = config.where ? sql` where ${config.where}` : undefined;\n\t\tconst targetWhereSql = config.targetWhere ? sql` where ${config.targetWhere}` : undefined;\n\t\tconst setWhereSql = config.setWhere ? sql` where ${config.setWhere}` : undefined;\n\t\tconst targetSql = Array.isArray(config.target) ? sql`${config.target}` : sql`${[config.target]}`;\n\t\tconst setSql = this.dialect.buildUpdateSet(this.config.table, mapUpdateSet(this.config.table, config.set));\n\t\tthis.config.onConflict.push(\n\t\t\tsql` on conflict ${targetSql}${targetWhereSql} do update set ${setSql}${whereSql}${setWhereSql}`,\n\t\t);\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tgetSQL(): SQL {\n\t\treturn this.dialect.buildInsertQuery(this.config);\n\t}\n\n\ttoSQL(): Query {\n\t\tconst { typings: _typings, ...rest } = this.dialect.sqlToQuery(this.getSQL());\n\t\treturn rest;\n\t}\n\n\t/** @internal */\n\t_prepare(isOneTimeQuery = true): SQLiteInsertPrepare<this> {\n\t\treturn this.session[isOneTimeQuery ? 'prepareOneTimeQuery' : 'prepareQuery'](\n\t\t\tthis.dialect.sqlToQuery(this.getSQL()),\n\t\t\tthis.config.returning,\n\t\t\tthis.config.returning ? 'all' : 'run',\n\t\t\ttrue,\n\t\t\tundefined,\n\t\t\t{\n\t\t\t\ttype: 'insert',\n\t\t\t\ttables: extractUsedTable(this.config.table),\n\t\t\t},\n\t\t) as SQLiteInsertPrepare<this>;\n\t}\n\n\tprepare(): SQLiteInsertPrepare<this> {\n\t\treturn this._prepare(false);\n\t}\n\n\trun: ReturnType<this['prepare']>['run'] = (placeholderValues) => {\n\t\treturn this._prepare().run(placeholderValues);\n\t};\n\n\tall: ReturnType<this['prepare']>['all'] = (placeholderValues) => {\n\t\treturn this._prepare().all(placeholderValues);\n\t};\n\n\tget: ReturnType<this['prepare']>['get'] = (placeholderValues) => {\n\t\treturn this._prepare().get(placeholderValues);\n\t};\n\n\tvalues: ReturnType<this['prepare']>['values'] = (placeholderValues) => {\n\t\treturn this._prepare().values(placeholderValues);\n\t};\n\n\toverride async execute(): Promise<SQLiteInsertExecute<this>> {\n\t\treturn (this.config.returning ? this.all() : this.run()) as SQLiteInsertExecute<this>;\n\t}\n\n\t$dynamic(): SQLiteInsertDynamic<this> {\n\t\treturn this as any;\n\t}\n}\n"],"mappings":"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","names":[]}