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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1794) hide show
  1. package/_relations.cjs +6 -50
  2. package/_relations.cjs.map +1 -1
  3. package/_relations.d.cts +0 -1
  4. package/_relations.d.ts +0 -1
  5. package/_relations.js +6 -49
  6. package/_relations.js.map +1 -1
  7. package/aws-data-api/common/index.cjs.map +1 -1
  8. package/aws-data-api/common/index.js.map +1 -1
  9. package/aws-data-api/pg/driver.cjs +4 -1
  10. package/aws-data-api/pg/driver.cjs.map +1 -1
  11. package/aws-data-api/pg/driver.d.cts +3 -0
  12. package/aws-data-api/pg/driver.d.ts +3 -0
  13. package/aws-data-api/pg/driver.js +4 -1
  14. package/aws-data-api/pg/driver.js.map +1 -1
  15. package/aws-data-api/pg/session.cjs +12 -3
  16. package/aws-data-api/pg/session.cjs.map +1 -1
  17. package/aws-data-api/pg/session.d.cts +1 -0
  18. package/aws-data-api/pg/session.d.ts +1 -0
  19. package/aws-data-api/pg/session.js +12 -3
  20. package/aws-data-api/pg/session.js.map +1 -1
  21. package/better-sqlite3/driver.cjs +14 -10
  22. package/better-sqlite3/driver.cjs.map +1 -1
  23. package/better-sqlite3/driver.d.cts +3 -3
  24. package/better-sqlite3/driver.d.ts +3 -3
  25. package/better-sqlite3/driver.js +14 -10
  26. package/better-sqlite3/driver.js.map +1 -1
  27. package/bun-sql/driver.cjs.map +1 -1
  28. package/bun-sql/driver.d.cts +8 -8
  29. package/bun-sql/driver.d.ts +8 -8
  30. package/bun-sql/driver.js.map +1 -1
  31. package/bun-sql/mysql/driver.cjs +14 -10
  32. package/bun-sql/mysql/driver.cjs.map +1 -1
  33. package/bun-sql/mysql/driver.d.cts +3 -3
  34. package/bun-sql/mysql/driver.d.ts +3 -3
  35. package/bun-sql/mysql/driver.js +14 -10
  36. package/bun-sql/mysql/driver.js.map +1 -1
  37. package/bun-sql/postgres/driver.cjs +14 -10
  38. package/bun-sql/postgres/driver.cjs.map +1 -1
  39. package/bun-sql/postgres/driver.d.cts +3 -3
  40. package/bun-sql/postgres/driver.d.ts +3 -3
  41. package/bun-sql/postgres/driver.js +14 -10
  42. package/bun-sql/postgres/driver.js.map +1 -1
  43. package/bun-sql/sqlite/driver.cjs +14 -10
  44. package/bun-sql/sqlite/driver.cjs.map +1 -1
  45. package/bun-sql/sqlite/driver.d.cts +3 -3
  46. package/bun-sql/sqlite/driver.d.ts +3 -3
  47. package/bun-sql/sqlite/driver.js +14 -10
  48. package/bun-sql/sqlite/driver.js.map +1 -1
  49. package/bun-sql/sqlite/session.cjs +2 -0
  50. package/bun-sql/sqlite/session.cjs.map +1 -1
  51. package/bun-sql/sqlite/session.js +2 -0
  52. package/bun-sql/sqlite/session.js.map +1 -1
  53. package/bun-sqlite/driver.cjs +15 -11
  54. package/bun-sqlite/driver.cjs.map +1 -1
  55. package/bun-sqlite/driver.d.cts +3 -3
  56. package/bun-sqlite/driver.d.ts +3 -3
  57. package/bun-sqlite/driver.js +15 -11
  58. package/bun-sqlite/driver.js.map +1 -1
  59. package/column-builder.cjs.map +1 -1
  60. package/column-builder.d.cts +8 -9
  61. package/column-builder.d.ts +8 -9
  62. package/column-builder.js.map +1 -1
  63. package/durable-sqlite/migrator.cjs +7 -10
  64. package/durable-sqlite/migrator.cjs.map +1 -1
  65. package/durable-sqlite/migrator.d.cts +8 -0
  66. package/durable-sqlite/migrator.d.ts +8 -0
  67. package/durable-sqlite/migrator.js +7 -10
  68. package/durable-sqlite/migrator.js.map +1 -1
  69. package/durable-sqlite/session.cjs +3 -6
  70. package/durable-sqlite/session.cjs.map +1 -1
  71. package/durable-sqlite/session.d.cts +2 -1
  72. package/durable-sqlite/session.d.ts +2 -1
  73. package/durable-sqlite/session.js +2 -6
  74. package/durable-sqlite/session.js.map +1 -1
  75. package/entity.cjs.map +1 -1
  76. package/entity.js.map +1 -1
  77. package/expo-sqlite/migrator.cjs +7 -10
  78. package/expo-sqlite/migrator.cjs.map +1 -1
  79. package/expo-sqlite/migrator.d.cts +8 -0
  80. package/expo-sqlite/migrator.d.ts +8 -0
  81. package/expo-sqlite/migrator.js +7 -10
  82. package/expo-sqlite/migrator.js.map +1 -1
  83. package/gel/driver.cjs +10 -6
  84. package/gel/driver.cjs.map +1 -1
  85. package/gel/driver.d.cts +2 -2
  86. package/gel/driver.d.ts +2 -2
  87. package/gel/driver.js +10 -6
  88. package/gel/driver.js.map +1 -1
  89. package/gel-core/columns/bigint.cjs.map +1 -1
  90. package/gel-core/columns/bigint.d.cts +1 -0
  91. package/gel-core/columns/bigint.d.ts +1 -0
  92. package/gel-core/columns/bigint.js.map +1 -1
  93. package/gel-core/columns/bigintT.cjs.map +1 -1
  94. package/gel-core/columns/bigintT.d.cts +1 -0
  95. package/gel-core/columns/bigintT.d.ts +1 -0
  96. package/gel-core/columns/bigintT.js.map +1 -1
  97. package/gel-core/columns/boolean.cjs.map +1 -1
  98. package/gel-core/columns/boolean.d.cts +1 -0
  99. package/gel-core/columns/boolean.d.ts +1 -0
  100. package/gel-core/columns/boolean.js.map +1 -1
  101. package/gel-core/columns/bytes.cjs.map +1 -1
  102. package/gel-core/columns/bytes.d.cts +1 -0
  103. package/gel-core/columns/bytes.d.ts +1 -0
  104. package/gel-core/columns/bytes.js.map +1 -1
  105. package/gel-core/columns/common.cjs +4 -0
  106. package/gel-core/columns/common.cjs.map +1 -1
  107. package/gel-core/columns/common.d.cts +1 -1
  108. package/gel-core/columns/common.d.ts +1 -1
  109. package/gel-core/columns/common.js +4 -0
  110. package/gel-core/columns/common.js.map +1 -1
  111. package/gel-core/columns/custom.cjs.map +1 -1
  112. package/gel-core/columns/custom.d.cts +1 -0
  113. package/gel-core/columns/custom.d.ts +1 -0
  114. package/gel-core/columns/custom.js.map +1 -1
  115. package/gel-core/columns/date-duration.cjs.map +1 -1
  116. package/gel-core/columns/date-duration.d.cts +1 -0
  117. package/gel-core/columns/date-duration.d.ts +1 -0
  118. package/gel-core/columns/date-duration.js.map +1 -1
  119. package/gel-core/columns/decimal.cjs.map +1 -1
  120. package/gel-core/columns/decimal.d.cts +1 -0
  121. package/gel-core/columns/decimal.d.ts +1 -0
  122. package/gel-core/columns/decimal.js.map +1 -1
  123. package/gel-core/columns/double-precision.cjs.map +1 -1
  124. package/gel-core/columns/double-precision.d.cts +1 -0
  125. package/gel-core/columns/double-precision.d.ts +1 -0
  126. package/gel-core/columns/double-precision.js.map +1 -1
  127. package/gel-core/columns/duration.cjs.map +1 -1
  128. package/gel-core/columns/duration.d.cts +1 -0
  129. package/gel-core/columns/duration.d.ts +1 -0
  130. package/gel-core/columns/duration.js.map +1 -1
  131. package/gel-core/columns/integer.cjs.map +1 -1
  132. package/gel-core/columns/integer.d.cts +1 -0
  133. package/gel-core/columns/integer.d.ts +1 -0
  134. package/gel-core/columns/integer.js.map +1 -1
  135. package/gel-core/columns/json.cjs.map +1 -1
  136. package/gel-core/columns/json.d.cts +1 -0
  137. package/gel-core/columns/json.d.ts +1 -0
  138. package/gel-core/columns/json.js.map +1 -1
  139. package/gel-core/columns/localdate.cjs.map +1 -1
  140. package/gel-core/columns/localdate.d.cts +1 -0
  141. package/gel-core/columns/localdate.d.ts +1 -0
  142. package/gel-core/columns/localdate.js.map +1 -1
  143. package/gel-core/columns/localtime.cjs.map +1 -1
  144. package/gel-core/columns/localtime.d.cts +1 -0
  145. package/gel-core/columns/localtime.d.ts +1 -0
  146. package/gel-core/columns/localtime.js.map +1 -1
  147. package/gel-core/columns/real.cjs.map +1 -1
  148. package/gel-core/columns/real.d.cts +1 -0
  149. package/gel-core/columns/real.d.ts +1 -0
  150. package/gel-core/columns/real.js.map +1 -1
  151. package/gel-core/columns/relative-duration.cjs.map +1 -1
  152. package/gel-core/columns/relative-duration.d.cts +1 -0
  153. package/gel-core/columns/relative-duration.d.ts +1 -0
  154. package/gel-core/columns/relative-duration.js.map +1 -1
  155. package/gel-core/columns/smallint.cjs.map +1 -1
  156. package/gel-core/columns/smallint.d.cts +1 -0
  157. package/gel-core/columns/smallint.d.ts +1 -0
  158. package/gel-core/columns/smallint.js.map +1 -1
  159. package/gel-core/columns/text.cjs.map +1 -1
  160. package/gel-core/columns/text.d.cts +1 -0
  161. package/gel-core/columns/text.d.ts +1 -0
  162. package/gel-core/columns/text.js.map +1 -1
  163. package/gel-core/columns/timestamp.cjs.map +1 -1
  164. package/gel-core/columns/timestamp.d.cts +1 -0
  165. package/gel-core/columns/timestamp.d.ts +1 -0
  166. package/gel-core/columns/timestamp.js.map +1 -1
  167. package/gel-core/columns/timestamptz.cjs.map +1 -1
  168. package/gel-core/columns/timestamptz.d.cts +1 -0
  169. package/gel-core/columns/timestamptz.d.ts +1 -0
  170. package/gel-core/columns/timestamptz.js.map +1 -1
  171. package/gel-core/columns/uuid.cjs.map +1 -1
  172. package/gel-core/columns/uuid.d.cts +1 -0
  173. package/gel-core/columns/uuid.d.ts +1 -0
  174. package/gel-core/columns/uuid.js.map +1 -1
  175. package/gel-core/query-builders/count.cjs.map +1 -1
  176. package/gel-core/query-builders/count.d.cts +3 -4
  177. package/gel-core/query-builders/count.d.ts +3 -4
  178. package/gel-core/query-builders/count.js.map +1 -1
  179. package/gel-core/query-builders/insert.cjs.map +1 -1
  180. package/gel-core/query-builders/insert.d.cts +9 -6
  181. package/gel-core/query-builders/insert.d.ts +9 -6
  182. package/gel-core/query-builders/insert.js.map +1 -1
  183. package/gel-core/query-builders/select.cjs +9 -8
  184. package/gel-core/query-builders/select.cjs.map +1 -1
  185. package/gel-core/query-builders/select.js +4 -4
  186. package/gel-core/query-builders/select.js.map +1 -1
  187. package/gel-core/query-builders/update.cjs +2 -2
  188. package/gel-core/query-builders/update.cjs.map +1 -1
  189. package/gel-core/query-builders/update.d.cts +1 -1
  190. package/gel-core/query-builders/update.d.ts +1 -1
  191. package/gel-core/query-builders/update.js +2 -2
  192. package/gel-core/query-builders/update.js.map +1 -1
  193. package/gel-core/schema.cjs +4 -4
  194. package/gel-core/schema.cjs.map +1 -1
  195. package/gel-core/schema.js +4 -4
  196. package/gel-core/schema.js.map +1 -1
  197. package/gel-core/utils.cjs +2 -1
  198. package/gel-core/utils.cjs.map +1 -1
  199. package/gel-core/utils.d.cts +1 -1
  200. package/gel-core/utils.d.ts +1 -1
  201. package/gel-core/utils.js +2 -1
  202. package/gel-core/utils.js.map +1 -1
  203. package/gel-core/view-common.cjs +0 -3
  204. package/gel-core/view-common.cjs.map +1 -1
  205. package/gel-core/view-common.d.cts +0 -1
  206. package/gel-core/view-common.d.ts +0 -1
  207. package/gel-core/view-common.js +0 -2
  208. package/gel-core/view-common.js.map +1 -1
  209. package/gel-core/view.cjs +5 -2
  210. package/gel-core/view.cjs.map +1 -1
  211. package/gel-core/view.d.cts +2 -1
  212. package/gel-core/view.d.ts +2 -1
  213. package/gel-core/view.js +3 -1
  214. package/gel-core/view.js.map +1 -1
  215. package/libsql/driver.cjs +10 -6
  216. package/libsql/driver.cjs.map +1 -1
  217. package/libsql/driver.d.cts +3 -3
  218. package/libsql/driver.d.ts +3 -3
  219. package/libsql/driver.js +10 -6
  220. package/libsql/driver.js.map +1 -1
  221. package/libsql/http/index.cjs +10 -6
  222. package/libsql/http/index.cjs.map +1 -1
  223. package/libsql/http/index.d.cts +3 -3
  224. package/libsql/http/index.d.ts +3 -3
  225. package/libsql/http/index.js +10 -6
  226. package/libsql/http/index.js.map +1 -1
  227. package/libsql/node/index.cjs +10 -6
  228. package/libsql/node/index.cjs.map +1 -1
  229. package/libsql/node/index.d.cts +3 -3
  230. package/libsql/node/index.d.ts +3 -3
  231. package/libsql/node/index.js +10 -6
  232. package/libsql/node/index.js.map +1 -1
  233. package/libsql/session.cjs +2 -0
  234. package/libsql/session.cjs.map +1 -1
  235. package/libsql/session.d.cts +1 -1
  236. package/libsql/session.d.ts +1 -1
  237. package/libsql/session.js +2 -0
  238. package/libsql/session.js.map +1 -1
  239. package/libsql/sqlite3/index.cjs +10 -6
  240. package/libsql/sqlite3/index.cjs.map +1 -1
  241. package/libsql/sqlite3/index.d.cts +3 -3
  242. package/libsql/sqlite3/index.d.ts +3 -3
  243. package/libsql/sqlite3/index.js +10 -6
  244. package/libsql/sqlite3/index.js.map +1 -1
  245. package/libsql/wasm/index.cjs +10 -6
  246. package/libsql/wasm/index.cjs.map +1 -1
  247. package/libsql/wasm/index.d.cts +3 -3
  248. package/libsql/wasm/index.d.ts +3 -3
  249. package/libsql/wasm/index.js +10 -6
  250. package/libsql/wasm/index.js.map +1 -1
  251. package/libsql/web/index.cjs +10 -6
  252. package/libsql/web/index.cjs.map +1 -1
  253. package/libsql/web/index.d.cts +3 -3
  254. package/libsql/web/index.d.ts +3 -3
  255. package/libsql/web/index.js +10 -6
  256. package/libsql/web/index.js.map +1 -1
  257. package/libsql/ws/index.cjs +10 -6
  258. package/libsql/ws/index.cjs.map +1 -1
  259. package/libsql/ws/index.d.cts +3 -3
  260. package/libsql/ws/index.d.ts +3 -3
  261. package/libsql/ws/index.js +10 -6
  262. package/libsql/ws/index.js.map +1 -1
  263. package/migrator.cjs +5 -42
  264. package/migrator.cjs.map +1 -1
  265. package/migrator.d.cts +0 -1
  266. package/migrator.d.ts +0 -1
  267. package/migrator.js +6 -42
  268. package/migrator.js.map +1 -1
  269. package/mysql-core/columns/all.cjs +1 -6
  270. package/mysql-core/columns/all.cjs.map +1 -1
  271. package/mysql-core/columns/all.d.cts +0 -5
  272. package/mysql-core/columns/all.d.ts +0 -5
  273. package/mysql-core/columns/all.js +1 -6
  274. package/mysql-core/columns/all.js.map +1 -1
  275. package/mysql-core/columns/bigint.cjs.map +1 -1
  276. package/mysql-core/columns/bigint.d.cts +2 -0
  277. package/mysql-core/columns/bigint.d.ts +2 -0
  278. package/mysql-core/columns/bigint.js.map +1 -1
  279. package/mysql-core/columns/binary.cjs +1 -0
  280. package/mysql-core/columns/binary.cjs.map +1 -1
  281. package/mysql-core/columns/binary.d.cts +2 -0
  282. package/mysql-core/columns/binary.d.ts +2 -0
  283. package/mysql-core/columns/binary.js +1 -0
  284. package/mysql-core/columns/binary.js.map +1 -1
  285. package/mysql-core/columns/boolean.cjs.map +1 -1
  286. package/mysql-core/columns/boolean.d.cts +1 -0
  287. package/mysql-core/columns/boolean.d.ts +1 -0
  288. package/mysql-core/columns/boolean.js.map +1 -1
  289. package/mysql-core/columns/char.cjs +4 -3
  290. package/mysql-core/columns/char.cjs.map +1 -1
  291. package/mysql-core/columns/char.d.cts +5 -3
  292. package/mysql-core/columns/char.d.ts +5 -3
  293. package/mysql-core/columns/char.js +4 -3
  294. package/mysql-core/columns/char.js.map +1 -1
  295. package/mysql-core/columns/common.cjs +4 -0
  296. package/mysql-core/columns/common.cjs.map +1 -1
  297. package/mysql-core/columns/common.d.cts +1 -1
  298. package/mysql-core/columns/common.d.ts +1 -1
  299. package/mysql-core/columns/common.js +4 -0
  300. package/mysql-core/columns/common.js.map +1 -1
  301. package/mysql-core/columns/custom.cjs.map +1 -1
  302. package/mysql-core/columns/custom.d.cts +1 -0
  303. package/mysql-core/columns/custom.d.ts +1 -0
  304. package/mysql-core/columns/custom.js.map +1 -1
  305. package/mysql-core/columns/date.cjs.map +1 -1
  306. package/mysql-core/columns/date.common.cjs +1 -3
  307. package/mysql-core/columns/date.common.cjs.map +1 -1
  308. package/mysql-core/columns/date.common.d.cts +1 -6
  309. package/mysql-core/columns/date.common.d.ts +1 -6
  310. package/mysql-core/columns/date.common.js +1 -3
  311. package/mysql-core/columns/date.common.js.map +1 -1
  312. package/mysql-core/columns/date.d.cts +2 -0
  313. package/mysql-core/columns/date.d.ts +2 -0
  314. package/mysql-core/columns/date.js.map +1 -1
  315. package/mysql-core/columns/datetime.cjs.map +1 -1
  316. package/mysql-core/columns/datetime.d.cts +2 -0
  317. package/mysql-core/columns/datetime.d.ts +2 -0
  318. package/mysql-core/columns/datetime.js.map +1 -1
  319. package/mysql-core/columns/decimal.cjs.map +1 -1
  320. package/mysql-core/columns/decimal.d.cts +3 -0
  321. package/mysql-core/columns/decimal.d.ts +3 -0
  322. package/mysql-core/columns/decimal.js.map +1 -1
  323. package/mysql-core/columns/double.cjs.map +1 -1
  324. package/mysql-core/columns/double.d.cts +1 -0
  325. package/mysql-core/columns/double.d.ts +1 -0
  326. package/mysql-core/columns/double.js.map +1 -1
  327. package/mysql-core/columns/enum.cjs +5 -5
  328. package/mysql-core/columns/enum.cjs.map +1 -1
  329. package/mysql-core/columns/enum.d.cts +7 -5
  330. package/mysql-core/columns/enum.d.ts +7 -5
  331. package/mysql-core/columns/enum.js +5 -5
  332. package/mysql-core/columns/enum.js.map +1 -1
  333. package/mysql-core/columns/float.cjs.map +1 -1
  334. package/mysql-core/columns/float.d.cts +1 -0
  335. package/mysql-core/columns/float.d.ts +1 -0
  336. package/mysql-core/columns/float.js.map +1 -1
  337. package/mysql-core/columns/index.cjs +0 -2
  338. package/mysql-core/columns/index.cjs.map +1 -1
  339. package/mysql-core/columns/index.d.cts +0 -1
  340. package/mysql-core/columns/index.d.ts +0 -1
  341. package/mysql-core/columns/index.js +0 -1
  342. package/mysql-core/columns/index.js.map +1 -1
  343. package/mysql-core/columns/int.cjs.map +1 -1
  344. package/mysql-core/columns/int.d.cts +1 -0
  345. package/mysql-core/columns/int.d.ts +1 -0
  346. package/mysql-core/columns/int.js.map +1 -1
  347. package/mysql-core/columns/json.cjs.map +1 -1
  348. package/mysql-core/columns/json.d.cts +1 -0
  349. package/mysql-core/columns/json.d.ts +1 -0
  350. package/mysql-core/columns/json.js.map +1 -1
  351. package/mysql-core/columns/mediumint.cjs.map +1 -1
  352. package/mysql-core/columns/mediumint.d.cts +1 -0
  353. package/mysql-core/columns/mediumint.d.ts +1 -0
  354. package/mysql-core/columns/mediumint.js.map +1 -1
  355. package/mysql-core/columns/real.cjs.map +1 -1
  356. package/mysql-core/columns/real.d.cts +1 -0
  357. package/mysql-core/columns/real.d.ts +1 -0
  358. package/mysql-core/columns/real.js.map +1 -1
  359. package/mysql-core/columns/serial.cjs.map +1 -1
  360. package/mysql-core/columns/serial.d.cts +1 -0
  361. package/mysql-core/columns/serial.d.ts +1 -0
  362. package/mysql-core/columns/serial.js.map +1 -1
  363. package/mysql-core/columns/smallint.cjs.map +1 -1
  364. package/mysql-core/columns/smallint.d.cts +1 -0
  365. package/mysql-core/columns/smallint.d.ts +1 -0
  366. package/mysql-core/columns/smallint.js.map +1 -1
  367. package/mysql-core/columns/text.cjs +3 -3
  368. package/mysql-core/columns/text.cjs.map +1 -1
  369. package/mysql-core/columns/text.d.cts +4 -3
  370. package/mysql-core/columns/text.d.ts +4 -3
  371. package/mysql-core/columns/text.js +3 -3
  372. package/mysql-core/columns/text.js.map +1 -1
  373. package/mysql-core/columns/time.cjs.map +1 -1
  374. package/mysql-core/columns/time.d.cts +1 -0
  375. package/mysql-core/columns/time.d.ts +1 -0
  376. package/mysql-core/columns/time.js.map +1 -1
  377. package/mysql-core/columns/timestamp.cjs.map +1 -1
  378. package/mysql-core/columns/timestamp.d.cts +2 -0
  379. package/mysql-core/columns/timestamp.d.ts +2 -0
  380. package/mysql-core/columns/timestamp.js.map +1 -1
  381. package/mysql-core/columns/tinyint.cjs.map +1 -1
  382. package/mysql-core/columns/tinyint.d.cts +1 -0
  383. package/mysql-core/columns/tinyint.d.ts +1 -0
  384. package/mysql-core/columns/tinyint.js.map +1 -1
  385. package/mysql-core/columns/varbinary.cjs.map +1 -1
  386. package/mysql-core/columns/varbinary.d.cts +1 -0
  387. package/mysql-core/columns/varbinary.d.ts +1 -0
  388. package/mysql-core/columns/varbinary.js.map +1 -1
  389. package/mysql-core/columns/varchar.cjs +4 -4
  390. package/mysql-core/columns/varchar.cjs.map +1 -1
  391. package/mysql-core/columns/varchar.d.cts +5 -4
  392. package/mysql-core/columns/varchar.d.ts +5 -4
  393. package/mysql-core/columns/varchar.js +4 -4
  394. package/mysql-core/columns/varchar.js.map +1 -1
  395. package/mysql-core/columns/year.cjs.map +1 -1
  396. package/mysql-core/columns/year.d.cts +1 -0
  397. package/mysql-core/columns/year.d.ts +1 -0
  398. package/mysql-core/columns/year.js.map +1 -1
  399. package/mysql-core/dialect.cjs +0 -3
  400. package/mysql-core/dialect.cjs.map +1 -1
  401. package/mysql-core/dialect.d.cts +0 -1
  402. package/mysql-core/dialect.d.ts +0 -1
  403. package/mysql-core/dialect.js +0 -3
  404. package/mysql-core/dialect.js.map +1 -1
  405. package/mysql-core/foreign-keys.cjs +0 -3
  406. package/mysql-core/foreign-keys.cjs.map +1 -1
  407. package/mysql-core/foreign-keys.d.cts +0 -1
  408. package/mysql-core/foreign-keys.d.ts +0 -1
  409. package/mysql-core/foreign-keys.js +0 -3
  410. package/mysql-core/foreign-keys.js.map +1 -1
  411. package/mysql-core/indexes.cjs +0 -2
  412. package/mysql-core/indexes.cjs.map +1 -1
  413. package/mysql-core/indexes.d.cts +0 -1
  414. package/mysql-core/indexes.d.ts +0 -1
  415. package/mysql-core/indexes.js +0 -2
  416. package/mysql-core/indexes.js.map +1 -1
  417. package/mysql-core/primary-keys.cjs +13 -4
  418. package/mysql-core/primary-keys.cjs.map +1 -1
  419. package/mysql-core/primary-keys.d.cts +6 -3
  420. package/mysql-core/primary-keys.d.ts +6 -3
  421. package/mysql-core/primary-keys.js +13 -4
  422. package/mysql-core/primary-keys.js.map +1 -1
  423. package/mysql-core/query-builders/count.cjs.map +1 -1
  424. package/mysql-core/query-builders/count.d.cts +1 -1
  425. package/mysql-core/query-builders/count.d.ts +1 -1
  426. package/mysql-core/query-builders/count.js.map +1 -1
  427. package/mysql-core/query-builders/insert.cjs.map +1 -1
  428. package/mysql-core/query-builders/insert.d.cts +2 -2
  429. package/mysql-core/query-builders/insert.d.ts +2 -2
  430. package/mysql-core/query-builders/insert.js.map +1 -1
  431. package/mysql-core/query-builders/select.cjs +2 -2
  432. package/mysql-core/query-builders/select.cjs.map +1 -1
  433. package/mysql-core/query-builders/select.js +2 -2
  434. package/mysql-core/query-builders/select.js.map +1 -1
  435. package/mysql-core/query-builders/update.cjs.map +1 -1
  436. package/mysql-core/query-builders/update.d.cts +1 -1
  437. package/mysql-core/query-builders/update.d.ts +1 -1
  438. package/mysql-core/query-builders/update.js.map +1 -1
  439. package/mysql-core/schema.cjs +2 -2
  440. package/mysql-core/schema.cjs.map +1 -1
  441. package/mysql-core/schema.js +2 -2
  442. package/mysql-core/schema.js.map +1 -1
  443. package/mysql-core/unique-constraint.cjs +0 -2
  444. package/mysql-core/unique-constraint.cjs.map +1 -1
  445. package/mysql-core/unique-constraint.d.cts +2 -3
  446. package/mysql-core/unique-constraint.d.ts +2 -3
  447. package/mysql-core/unique-constraint.js +0 -2
  448. package/mysql-core/unique-constraint.js.map +1 -1
  449. package/mysql-proxy/driver.cjs +2 -2
  450. package/mysql-proxy/driver.cjs.map +1 -1
  451. package/mysql-proxy/driver.d.cts +1 -2
  452. package/mysql-proxy/driver.d.ts +1 -2
  453. package/mysql-proxy/driver.js +2 -2
  454. package/mysql-proxy/driver.js.map +1 -1
  455. package/mysql2/driver.cjs +14 -10
  456. package/mysql2/driver.cjs.map +1 -1
  457. package/mysql2/driver.d.cts +3 -3
  458. package/mysql2/driver.d.ts +3 -3
  459. package/mysql2/driver.js +14 -10
  460. package/mysql2/driver.js.map +1 -1
  461. package/mysql2/session.cjs.map +1 -1
  462. package/mysql2/session.js.map +1 -1
  463. package/neon-http/driver.cjs +14 -10
  464. package/neon-http/driver.cjs.map +1 -1
  465. package/neon-http/driver.d.cts +3 -3
  466. package/neon-http/driver.d.ts +3 -3
  467. package/neon-http/driver.js +14 -10
  468. package/neon-http/driver.js.map +1 -1
  469. package/neon-http/session.cjs.map +1 -1
  470. package/neon-http/session.d.cts +1 -1
  471. package/neon-http/session.d.ts +1 -1
  472. package/neon-http/session.js.map +1 -1
  473. package/neon-serverless/driver.cjs +14 -10
  474. package/neon-serverless/driver.cjs.map +1 -1
  475. package/neon-serverless/driver.d.cts +3 -3
  476. package/neon-serverless/driver.d.ts +3 -3
  477. package/neon-serverless/driver.js +14 -10
  478. package/neon-serverless/driver.js.map +1 -1
  479. package/neon-serverless/session.cjs.map +1 -1
  480. package/neon-serverless/session.js.map +1 -1
  481. package/node-postgres/driver.cjs +12 -8
  482. package/node-postgres/driver.cjs.map +1 -1
  483. package/node-postgres/driver.d.cts +3 -3
  484. package/node-postgres/driver.d.ts +3 -3
  485. package/node-postgres/driver.js +12 -8
  486. package/node-postgres/driver.js.map +1 -1
  487. package/node-postgres/session.cjs.map +1 -1
  488. package/node-postgres/session.js.map +1 -1
  489. package/op-sqlite/migrator.cjs +7 -10
  490. package/op-sqlite/migrator.cjs.map +1 -1
  491. package/op-sqlite/migrator.d.cts +16 -0
  492. package/op-sqlite/migrator.d.ts +16 -0
  493. package/op-sqlite/migrator.js +7 -10
  494. package/op-sqlite/migrator.js.map +1 -1
  495. package/package.json +75 -1488
  496. package/pg-core/columns/bigint.cjs.map +1 -1
  497. package/pg-core/columns/bigint.d.cts +2 -0
  498. package/pg-core/columns/bigint.d.ts +2 -0
  499. package/pg-core/columns/bigint.js.map +1 -1
  500. package/pg-core/columns/bigserial.cjs +0 -1
  501. package/pg-core/columns/bigserial.cjs.map +1 -1
  502. package/pg-core/columns/bigserial.d.cts +2 -0
  503. package/pg-core/columns/bigserial.d.ts +2 -0
  504. package/pg-core/columns/bigserial.js +0 -1
  505. package/pg-core/columns/bigserial.js.map +1 -1
  506. package/pg-core/columns/boolean.cjs.map +1 -1
  507. package/pg-core/columns/boolean.d.cts +1 -0
  508. package/pg-core/columns/boolean.d.ts +1 -0
  509. package/pg-core/columns/boolean.js.map +1 -1
  510. package/pg-core/columns/bytea.cjs.map +1 -1
  511. package/pg-core/columns/bytea.d.cts +1 -0
  512. package/pg-core/columns/bytea.d.ts +1 -0
  513. package/pg-core/columns/bytea.js.map +1 -1
  514. package/pg-core/columns/char.cjs +1 -0
  515. package/pg-core/columns/char.cjs.map +1 -1
  516. package/pg-core/columns/char.d.cts +2 -0
  517. package/pg-core/columns/char.d.ts +2 -0
  518. package/pg-core/columns/char.js +1 -0
  519. package/pg-core/columns/char.js.map +1 -1
  520. package/pg-core/columns/cidr.cjs.map +1 -1
  521. package/pg-core/columns/cidr.d.cts +1 -0
  522. package/pg-core/columns/cidr.d.ts +1 -0
  523. package/pg-core/columns/cidr.js.map +1 -1
  524. package/pg-core/columns/common.cjs +14 -10
  525. package/pg-core/columns/common.cjs.map +1 -1
  526. package/pg-core/columns/common.d.cts +3 -4
  527. package/pg-core/columns/common.d.ts +3 -4
  528. package/pg-core/columns/common.js +14 -10
  529. package/pg-core/columns/common.js.map +1 -1
  530. package/pg-core/columns/custom.cjs.map +1 -1
  531. package/pg-core/columns/custom.d.cts +1 -0
  532. package/pg-core/columns/custom.d.ts +1 -0
  533. package/pg-core/columns/custom.js.map +1 -1
  534. package/pg-core/columns/date.cjs.map +1 -1
  535. package/pg-core/columns/date.d.cts +2 -0
  536. package/pg-core/columns/date.d.ts +2 -0
  537. package/pg-core/columns/date.js.map +1 -1
  538. package/pg-core/columns/double-precision.cjs.map +1 -1
  539. package/pg-core/columns/double-precision.d.cts +1 -0
  540. package/pg-core/columns/double-precision.d.ts +1 -0
  541. package/pg-core/columns/double-precision.js.map +1 -1
  542. package/pg-core/columns/enum.cjs.map +1 -1
  543. package/pg-core/columns/enum.d.cts +2 -0
  544. package/pg-core/columns/enum.d.ts +2 -0
  545. package/pg-core/columns/enum.js.map +1 -1
  546. package/pg-core/columns/inet.cjs.map +1 -1
  547. package/pg-core/columns/inet.d.cts +1 -0
  548. package/pg-core/columns/inet.d.ts +1 -0
  549. package/pg-core/columns/inet.js.map +1 -1
  550. package/pg-core/columns/integer.cjs.map +1 -1
  551. package/pg-core/columns/integer.d.cts +1 -0
  552. package/pg-core/columns/integer.d.ts +1 -0
  553. package/pg-core/columns/integer.js.map +1 -1
  554. package/pg-core/columns/interval.cjs.map +1 -1
  555. package/pg-core/columns/interval.d.cts +1 -0
  556. package/pg-core/columns/interval.d.ts +1 -0
  557. package/pg-core/columns/interval.js.map +1 -1
  558. package/pg-core/columns/json.cjs.map +1 -1
  559. package/pg-core/columns/json.d.cts +1 -0
  560. package/pg-core/columns/json.d.ts +1 -0
  561. package/pg-core/columns/json.js.map +1 -1
  562. package/pg-core/columns/jsonb.cjs.map +1 -1
  563. package/pg-core/columns/jsonb.d.cts +1 -0
  564. package/pg-core/columns/jsonb.d.ts +1 -0
  565. package/pg-core/columns/jsonb.js.map +1 -1
  566. package/pg-core/columns/line.cjs +0 -2
  567. package/pg-core/columns/line.cjs.map +1 -1
  568. package/pg-core/columns/line.d.cts +2 -2
  569. package/pg-core/columns/line.d.ts +2 -2
  570. package/pg-core/columns/line.js +0 -2
  571. package/pg-core/columns/line.js.map +1 -1
  572. package/pg-core/columns/macaddr.cjs.map +1 -1
  573. package/pg-core/columns/macaddr.d.cts +1 -0
  574. package/pg-core/columns/macaddr.d.ts +1 -0
  575. package/pg-core/columns/macaddr.js.map +1 -1
  576. package/pg-core/columns/macaddr8.cjs.map +1 -1
  577. package/pg-core/columns/macaddr8.d.cts +1 -0
  578. package/pg-core/columns/macaddr8.d.ts +1 -0
  579. package/pg-core/columns/macaddr8.js.map +1 -1
  580. package/pg-core/columns/numeric.cjs.map +1 -1
  581. package/pg-core/columns/numeric.d.cts +3 -0
  582. package/pg-core/columns/numeric.d.ts +3 -0
  583. package/pg-core/columns/numeric.js.map +1 -1
  584. package/pg-core/columns/point.cjs +0 -2
  585. package/pg-core/columns/point.cjs.map +1 -1
  586. package/pg-core/columns/point.d.cts +2 -2
  587. package/pg-core/columns/point.d.ts +2 -2
  588. package/pg-core/columns/point.js +0 -2
  589. package/pg-core/columns/point.js.map +1 -1
  590. package/pg-core/columns/postgis_extension/geometry.cjs +8 -14
  591. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  592. package/pg-core/columns/postgis_extension/geometry.d.cts +6 -16
  593. package/pg-core/columns/postgis_extension/geometry.d.ts +6 -16
  594. package/pg-core/columns/postgis_extension/geometry.js +8 -14
  595. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  596. package/pg-core/columns/postgis_extension/utils.cjs +3 -3
  597. package/pg-core/columns/postgis_extension/utils.cjs.map +1 -1
  598. package/pg-core/columns/postgis_extension/utils.d.cts +1 -4
  599. package/pg-core/columns/postgis_extension/utils.d.ts +1 -4
  600. package/pg-core/columns/postgis_extension/utils.js +3 -3
  601. package/pg-core/columns/postgis_extension/utils.js.map +1 -1
  602. package/pg-core/columns/real.cjs.map +1 -1
  603. package/pg-core/columns/real.d.cts +1 -0
  604. package/pg-core/columns/real.d.ts +1 -0
  605. package/pg-core/columns/real.js.map +1 -1
  606. package/pg-core/columns/serial.cjs.map +1 -1
  607. package/pg-core/columns/serial.d.cts +1 -0
  608. package/pg-core/columns/serial.d.ts +1 -0
  609. package/pg-core/columns/serial.js.map +1 -1
  610. package/pg-core/columns/smallint.cjs.map +1 -1
  611. package/pg-core/columns/smallint.d.cts +1 -0
  612. package/pg-core/columns/smallint.d.ts +1 -0
  613. package/pg-core/columns/smallint.js.map +1 -1
  614. package/pg-core/columns/smallserial.cjs.map +1 -1
  615. package/pg-core/columns/smallserial.d.cts +1 -0
  616. package/pg-core/columns/smallserial.d.ts +1 -0
  617. package/pg-core/columns/smallserial.js.map +1 -1
  618. package/pg-core/columns/text.cjs.map +1 -1
  619. package/pg-core/columns/text.d.cts +1 -0
  620. package/pg-core/columns/text.d.ts +1 -0
  621. package/pg-core/columns/text.js.map +1 -1
  622. package/pg-core/columns/time.cjs.map +1 -1
  623. package/pg-core/columns/time.d.cts +1 -0
  624. package/pg-core/columns/time.d.ts +1 -0
  625. package/pg-core/columns/time.js.map +1 -1
  626. package/pg-core/columns/timestamp.cjs.map +1 -1
  627. package/pg-core/columns/timestamp.d.cts +2 -0
  628. package/pg-core/columns/timestamp.d.ts +2 -0
  629. package/pg-core/columns/timestamp.js.map +1 -1
  630. package/pg-core/columns/uuid.cjs.map +1 -1
  631. package/pg-core/columns/uuid.d.cts +1 -0
  632. package/pg-core/columns/uuid.d.ts +1 -0
  633. package/pg-core/columns/uuid.js.map +1 -1
  634. package/pg-core/columns/varchar.cjs.map +1 -1
  635. package/pg-core/columns/varchar.d.cts +1 -0
  636. package/pg-core/columns/varchar.d.ts +1 -0
  637. package/pg-core/columns/varchar.js.map +1 -1
  638. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  639. package/pg-core/columns/vector_extension/bit.d.cts +1 -0
  640. package/pg-core/columns/vector_extension/bit.d.ts +1 -0
  641. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  642. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  643. package/pg-core/columns/vector_extension/halfvec.d.cts +1 -0
  644. package/pg-core/columns/vector_extension/halfvec.d.ts +1 -0
  645. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  646. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  647. package/pg-core/columns/vector_extension/sparsevec.d.cts +1 -0
  648. package/pg-core/columns/vector_extension/sparsevec.d.ts +1 -0
  649. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  650. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  651. package/pg-core/columns/vector_extension/vector.d.cts +1 -0
  652. package/pg-core/columns/vector_extension/vector.d.ts +1 -0
  653. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  654. package/pg-core/db.cjs +3 -2
  655. package/pg-core/db.cjs.map +1 -1
  656. package/pg-core/db.d.cts +1 -1
  657. package/pg-core/db.d.ts +1 -1
  658. package/pg-core/db.js +3 -2
  659. package/pg-core/db.js.map +1 -1
  660. package/pg-core/foreign-keys.cjs +0 -4
  661. package/pg-core/foreign-keys.cjs.map +1 -1
  662. package/pg-core/foreign-keys.d.cts +0 -2
  663. package/pg-core/foreign-keys.d.ts +0 -2
  664. package/pg-core/foreign-keys.js +0 -4
  665. package/pg-core/foreign-keys.js.map +1 -1
  666. package/pg-core/indexes.cjs +0 -2
  667. package/pg-core/indexes.cjs.map +1 -1
  668. package/pg-core/indexes.d.cts +0 -1
  669. package/pg-core/indexes.d.ts +0 -1
  670. package/pg-core/indexes.js +0 -2
  671. package/pg-core/indexes.js.map +1 -1
  672. package/pg-core/primary-keys.cjs +0 -2
  673. package/pg-core/primary-keys.cjs.map +1 -1
  674. package/pg-core/primary-keys.d.cts +0 -1
  675. package/pg-core/primary-keys.d.ts +0 -1
  676. package/pg-core/primary-keys.js +0 -2
  677. package/pg-core/primary-keys.js.map +1 -1
  678. package/pg-core/query-builders/count.cjs.map +1 -1
  679. package/pg-core/query-builders/count.d.cts +3 -4
  680. package/pg-core/query-builders/count.d.ts +3 -4
  681. package/pg-core/query-builders/count.js.map +1 -1
  682. package/pg-core/query-builders/insert.cjs.map +1 -1
  683. package/pg-core/query-builders/insert.d.cts +9 -6
  684. package/pg-core/query-builders/insert.d.ts +9 -6
  685. package/pg-core/query-builders/insert.js.map +1 -1
  686. package/pg-core/query-builders/query.cjs +9 -5
  687. package/pg-core/query-builders/query.cjs.map +1 -1
  688. package/pg-core/query-builders/query.d.cts +4 -2
  689. package/pg-core/query-builders/query.d.ts +4 -2
  690. package/pg-core/query-builders/query.js +9 -5
  691. package/pg-core/query-builders/query.js.map +1 -1
  692. package/pg-core/query-builders/select.cjs +9 -8
  693. package/pg-core/query-builders/select.cjs.map +1 -1
  694. package/pg-core/query-builders/select.js +4 -4
  695. package/pg-core/query-builders/select.js.map +1 -1
  696. package/pg-core/query-builders/update.cjs +2 -2
  697. package/pg-core/query-builders/update.cjs.map +1 -1
  698. package/pg-core/query-builders/update.d.cts +1 -1
  699. package/pg-core/query-builders/update.d.ts +1 -1
  700. package/pg-core/query-builders/update.js +2 -2
  701. package/pg-core/query-builders/update.js.map +1 -1
  702. package/pg-core/schema.cjs +8 -20
  703. package/pg-core/schema.cjs.map +1 -1
  704. package/pg-core/schema.d.cts +0 -2
  705. package/pg-core/schema.d.ts +0 -2
  706. package/pg-core/schema.js +9 -21
  707. package/pg-core/schema.js.map +1 -1
  708. package/pg-core/session.cjs +2 -2
  709. package/pg-core/session.cjs.map +1 -1
  710. package/pg-core/session.d.cts +1 -1
  711. package/pg-core/session.d.ts +1 -1
  712. package/pg-core/session.js +2 -2
  713. package/pg-core/session.js.map +1 -1
  714. package/pg-core/table.cjs +8 -16
  715. package/pg-core/table.cjs.map +1 -1
  716. package/pg-core/table.d.cts +4 -5
  717. package/pg-core/table.d.ts +4 -5
  718. package/pg-core/table.js +8 -16
  719. package/pg-core/table.js.map +1 -1
  720. package/pg-core/unique-constraint.cjs +0 -2
  721. package/pg-core/unique-constraint.cjs.map +1 -1
  722. package/pg-core/unique-constraint.d.cts +0 -1
  723. package/pg-core/unique-constraint.d.ts +0 -1
  724. package/pg-core/unique-constraint.js +0 -2
  725. package/pg-core/unique-constraint.js.map +1 -1
  726. package/pg-core/utils.cjs +2 -1
  727. package/pg-core/utils.cjs.map +1 -1
  728. package/pg-core/utils.d.cts +1 -1
  729. package/pg-core/utils.d.ts +1 -1
  730. package/pg-core/utils.js +2 -1
  731. package/pg-core/utils.js.map +1 -1
  732. package/pg-core/view-common.cjs +0 -3
  733. package/pg-core/view-common.cjs.map +1 -1
  734. package/pg-core/view-common.d.cts +0 -1
  735. package/pg-core/view-common.d.ts +0 -1
  736. package/pg-core/view-common.js +0 -2
  737. package/pg-core/view-common.js.map +1 -1
  738. package/pg-core/view.cjs +5 -2
  739. package/pg-core/view.cjs.map +1 -1
  740. package/pg-core/view.d.cts +2 -1
  741. package/pg-core/view.d.ts +2 -1
  742. package/pg-core/view.js +3 -1
  743. package/pg-core/view.js.map +1 -1
  744. package/pglite/driver.cjs +14 -10
  745. package/pglite/driver.cjs.map +1 -1
  746. package/pglite/driver.d.cts +3 -3
  747. package/pglite/driver.d.ts +3 -3
  748. package/pglite/driver.js +14 -10
  749. package/pglite/driver.js.map +1 -1
  750. package/planetscale-serverless/driver.cjs +15 -11
  751. package/planetscale-serverless/driver.cjs.map +1 -1
  752. package/planetscale-serverless/driver.d.cts +3 -3
  753. package/planetscale-serverless/driver.d.ts +3 -3
  754. package/planetscale-serverless/driver.js +15 -11
  755. package/planetscale-serverless/driver.js.map +1 -1
  756. package/postgres-js/driver.cjs +14 -10
  757. package/postgres-js/driver.cjs.map +1 -1
  758. package/postgres-js/driver.d.cts +3 -3
  759. package/postgres-js/driver.d.ts +3 -3
  760. package/postgres-js/driver.js +14 -10
  761. package/postgres-js/driver.js.map +1 -1
  762. package/relations.cjs +0 -2
  763. package/relations.cjs.map +1 -1
  764. package/relations.d.cts +3 -3
  765. package/relations.d.ts +3 -3
  766. package/relations.js +1 -3
  767. package/relations.js.map +1 -1
  768. package/singlestore/driver.cjs +26 -19
  769. package/singlestore/driver.cjs.map +1 -1
  770. package/singlestore/driver.d.cts +3 -3
  771. package/singlestore/driver.d.ts +3 -3
  772. package/singlestore/driver.js +26 -19
  773. package/singlestore/driver.js.map +1 -1
  774. package/singlestore/session.cjs.map +1 -1
  775. package/singlestore/session.js.map +1 -1
  776. package/singlestore-core/columns/bigint.cjs.map +1 -1
  777. package/singlestore-core/columns/bigint.d.cts +2 -0
  778. package/singlestore-core/columns/bigint.d.ts +2 -0
  779. package/singlestore-core/columns/bigint.js.map +1 -1
  780. package/singlestore-core/columns/binary.cjs +1 -0
  781. package/singlestore-core/columns/binary.cjs.map +1 -1
  782. package/singlestore-core/columns/binary.d.cts +2 -0
  783. package/singlestore-core/columns/binary.d.ts +2 -0
  784. package/singlestore-core/columns/binary.js +1 -0
  785. package/singlestore-core/columns/binary.js.map +1 -1
  786. package/singlestore-core/columns/boolean.cjs.map +1 -1
  787. package/singlestore-core/columns/boolean.d.cts +1 -0
  788. package/singlestore-core/columns/boolean.d.ts +1 -0
  789. package/singlestore-core/columns/boolean.js.map +1 -1
  790. package/singlestore-core/columns/char.cjs +1 -0
  791. package/singlestore-core/columns/char.cjs.map +1 -1
  792. package/singlestore-core/columns/char.d.cts +2 -0
  793. package/singlestore-core/columns/char.d.ts +2 -0
  794. package/singlestore-core/columns/char.js +1 -0
  795. package/singlestore-core/columns/char.js.map +1 -1
  796. package/singlestore-core/columns/common.cjs +4 -0
  797. package/singlestore-core/columns/common.cjs.map +1 -1
  798. package/singlestore-core/columns/common.d.cts +1 -1
  799. package/singlestore-core/columns/common.d.ts +1 -1
  800. package/singlestore-core/columns/common.js +4 -0
  801. package/singlestore-core/columns/common.js.map +1 -1
  802. package/singlestore-core/columns/custom.cjs.map +1 -1
  803. package/singlestore-core/columns/custom.d.cts +1 -0
  804. package/singlestore-core/columns/custom.d.ts +1 -0
  805. package/singlestore-core/columns/custom.js.map +1 -1
  806. package/singlestore-core/columns/date.cjs.map +1 -1
  807. package/singlestore-core/columns/date.d.cts +2 -0
  808. package/singlestore-core/columns/date.d.ts +2 -0
  809. package/singlestore-core/columns/date.js.map +1 -1
  810. package/singlestore-core/columns/datetime.cjs.map +1 -1
  811. package/singlestore-core/columns/datetime.d.cts +2 -0
  812. package/singlestore-core/columns/datetime.d.ts +2 -0
  813. package/singlestore-core/columns/datetime.js.map +1 -1
  814. package/singlestore-core/columns/decimal.cjs.map +1 -1
  815. package/singlestore-core/columns/decimal.d.cts +3 -0
  816. package/singlestore-core/columns/decimal.d.ts +3 -0
  817. package/singlestore-core/columns/decimal.js.map +1 -1
  818. package/singlestore-core/columns/double.cjs.map +1 -1
  819. package/singlestore-core/columns/double.d.cts +1 -0
  820. package/singlestore-core/columns/double.d.ts +1 -0
  821. package/singlestore-core/columns/double.js.map +1 -1
  822. package/singlestore-core/columns/enum.cjs.map +1 -1
  823. package/singlestore-core/columns/enum.d.cts +1 -0
  824. package/singlestore-core/columns/enum.d.ts +1 -0
  825. package/singlestore-core/columns/enum.js.map +1 -1
  826. package/singlestore-core/columns/float.cjs.map +1 -1
  827. package/singlestore-core/columns/float.d.cts +1 -0
  828. package/singlestore-core/columns/float.d.ts +1 -0
  829. package/singlestore-core/columns/float.js.map +1 -1
  830. package/singlestore-core/columns/int.cjs.map +1 -1
  831. package/singlestore-core/columns/int.d.cts +1 -0
  832. package/singlestore-core/columns/int.d.ts +1 -0
  833. package/singlestore-core/columns/int.js.map +1 -1
  834. package/singlestore-core/columns/json.cjs.map +1 -1
  835. package/singlestore-core/columns/json.d.cts +1 -0
  836. package/singlestore-core/columns/json.d.ts +1 -0
  837. package/singlestore-core/columns/json.js.map +1 -1
  838. package/singlestore-core/columns/mediumint.cjs.map +1 -1
  839. package/singlestore-core/columns/mediumint.d.cts +1 -0
  840. package/singlestore-core/columns/mediumint.d.ts +1 -0
  841. package/singlestore-core/columns/mediumint.js.map +1 -1
  842. package/singlestore-core/columns/real.cjs.map +1 -1
  843. package/singlestore-core/columns/real.d.cts +1 -0
  844. package/singlestore-core/columns/real.d.ts +1 -0
  845. package/singlestore-core/columns/real.js.map +1 -1
  846. package/singlestore-core/columns/serial.cjs.map +1 -1
  847. package/singlestore-core/columns/serial.d.cts +1 -0
  848. package/singlestore-core/columns/serial.d.ts +1 -0
  849. package/singlestore-core/columns/serial.js.map +1 -1
  850. package/singlestore-core/columns/smallint.cjs.map +1 -1
  851. package/singlestore-core/columns/smallint.d.cts +1 -0
  852. package/singlestore-core/columns/smallint.d.ts +1 -0
  853. package/singlestore-core/columns/smallint.js.map +1 -1
  854. package/singlestore-core/columns/text.cjs.map +1 -1
  855. package/singlestore-core/columns/text.d.cts +1 -0
  856. package/singlestore-core/columns/text.d.ts +1 -0
  857. package/singlestore-core/columns/text.js.map +1 -1
  858. package/singlestore-core/columns/time.cjs.map +1 -1
  859. package/singlestore-core/columns/time.d.cts +1 -0
  860. package/singlestore-core/columns/time.d.ts +1 -0
  861. package/singlestore-core/columns/time.js.map +1 -1
  862. package/singlestore-core/columns/timestamp.cjs.map +1 -1
  863. package/singlestore-core/columns/timestamp.d.cts +2 -0
  864. package/singlestore-core/columns/timestamp.d.ts +2 -0
  865. package/singlestore-core/columns/timestamp.js.map +1 -1
  866. package/singlestore-core/columns/tinyint.cjs.map +1 -1
  867. package/singlestore-core/columns/tinyint.d.cts +1 -0
  868. package/singlestore-core/columns/tinyint.d.ts +1 -0
  869. package/singlestore-core/columns/tinyint.js.map +1 -1
  870. package/singlestore-core/columns/varbinary.cjs.map +1 -1
  871. package/singlestore-core/columns/varbinary.d.cts +1 -0
  872. package/singlestore-core/columns/varbinary.d.ts +1 -0
  873. package/singlestore-core/columns/varbinary.js.map +1 -1
  874. package/singlestore-core/columns/varchar.cjs.map +1 -1
  875. package/singlestore-core/columns/varchar.d.cts +1 -0
  876. package/singlestore-core/columns/varchar.d.ts +1 -0
  877. package/singlestore-core/columns/varchar.js.map +1 -1
  878. package/singlestore-core/columns/vector.cjs.map +1 -1
  879. package/singlestore-core/columns/vector.d.cts +2 -0
  880. package/singlestore-core/columns/vector.d.ts +2 -0
  881. package/singlestore-core/columns/vector.js.map +1 -1
  882. package/singlestore-core/columns/year.cjs.map +1 -1
  883. package/singlestore-core/columns/year.d.cts +1 -0
  884. package/singlestore-core/columns/year.d.ts +1 -0
  885. package/singlestore-core/columns/year.js.map +1 -1
  886. package/singlestore-core/indexes.cjs +0 -2
  887. package/singlestore-core/indexes.cjs.map +1 -1
  888. package/singlestore-core/indexes.d.cts +0 -1
  889. package/singlestore-core/indexes.d.ts +0 -1
  890. package/singlestore-core/indexes.js +0 -2
  891. package/singlestore-core/indexes.js.map +1 -1
  892. package/singlestore-core/primary-keys.cjs +0 -2
  893. package/singlestore-core/primary-keys.cjs.map +1 -1
  894. package/singlestore-core/primary-keys.d.cts +0 -1
  895. package/singlestore-core/primary-keys.d.ts +0 -1
  896. package/singlestore-core/primary-keys.js +0 -2
  897. package/singlestore-core/primary-keys.js.map +1 -1
  898. package/singlestore-core/query-builders/count.cjs.map +1 -1
  899. package/singlestore-core/query-builders/count.d.cts +1 -1
  900. package/singlestore-core/query-builders/count.d.ts +1 -1
  901. package/singlestore-core/query-builders/count.js.map +1 -1
  902. package/singlestore-core/query-builders/insert.cjs.map +1 -1
  903. package/singlestore-core/query-builders/insert.d.cts +1 -1
  904. package/singlestore-core/query-builders/insert.d.ts +1 -1
  905. package/singlestore-core/query-builders/insert.js.map +1 -1
  906. package/singlestore-core/query-builders/select.cjs +2 -2
  907. package/singlestore-core/query-builders/select.cjs.map +1 -1
  908. package/singlestore-core/query-builders/select.js +2 -2
  909. package/singlestore-core/query-builders/select.js.map +1 -1
  910. package/singlestore-core/query-builders/update.cjs.map +1 -1
  911. package/singlestore-core/query-builders/update.d.cts +1 -1
  912. package/singlestore-core/query-builders/update.d.ts +1 -1
  913. package/singlestore-core/query-builders/update.js.map +1 -1
  914. package/singlestore-core/unique-constraint.cjs +0 -2
  915. package/singlestore-core/unique-constraint.cjs.map +1 -1
  916. package/singlestore-core/unique-constraint.d.cts +2 -3
  917. package/singlestore-core/unique-constraint.d.ts +2 -3
  918. package/singlestore-core/unique-constraint.js +0 -2
  919. package/singlestore-core/unique-constraint.js.map +1 -1
  920. package/sql/sql.cjs +9 -10
  921. package/sql/sql.cjs.map +1 -1
  922. package/sql/sql.d.cts +3 -3
  923. package/sql/sql.d.ts +3 -3
  924. package/sql/sql.js +9 -10
  925. package/sql/sql.js.map +1 -1
  926. package/sql-js/session.cjs.map +1 -1
  927. package/sql-js/session.js.map +1 -1
  928. package/{cockroach → sqlite-cloud}/driver.cjs +39 -34
  929. package/sqlite-cloud/driver.cjs.map +1 -0
  930. package/sqlite-cloud/driver.d.cts +33 -0
  931. package/sqlite-cloud/driver.d.ts +33 -0
  932. package/sqlite-cloud/driver.js +78 -0
  933. package/sqlite-cloud/driver.js.map +1 -0
  934. package/{node-mssql → sqlite-cloud}/index.cjs +4 -4
  935. package/sqlite-cloud/index.cjs.map +1 -0
  936. package/sqlite-cloud/index.js.map +1 -0
  937. package/sqlite-cloud/migrator.cjs +69 -0
  938. package/sqlite-cloud/migrator.cjs.map +1 -0
  939. package/sqlite-cloud/migrator.d.cts +4 -0
  940. package/sqlite-cloud/migrator.d.ts +4 -0
  941. package/sqlite-cloud/migrator.js +45 -0
  942. package/sqlite-cloud/migrator.js.map +1 -0
  943. package/sqlite-cloud/session.cjs +254 -0
  944. package/sqlite-cloud/session.cjs.map +1 -0
  945. package/sqlite-cloud/session.d.cts +70 -0
  946. package/sqlite-cloud/session.d.ts +70 -0
  947. package/sqlite-cloud/session.js +228 -0
  948. package/sqlite-cloud/session.js.map +1 -0
  949. package/sqlite-core/columns/blob.cjs.map +1 -1
  950. package/sqlite-core/columns/blob.d.cts +3 -0
  951. package/sqlite-core/columns/blob.d.ts +3 -0
  952. package/sqlite-core/columns/blob.js.map +1 -1
  953. package/sqlite-core/columns/common.cjs +4 -0
  954. package/sqlite-core/columns/common.cjs.map +1 -1
  955. package/sqlite-core/columns/common.js +4 -0
  956. package/sqlite-core/columns/common.js.map +1 -1
  957. package/sqlite-core/columns/custom.cjs.map +1 -1
  958. package/sqlite-core/columns/custom.d.cts +1 -0
  959. package/sqlite-core/columns/custom.d.ts +1 -0
  960. package/sqlite-core/columns/custom.js.map +1 -1
  961. package/sqlite-core/columns/integer.cjs.map +1 -1
  962. package/sqlite-core/columns/integer.d.cts +3 -0
  963. package/sqlite-core/columns/integer.d.ts +3 -0
  964. package/sqlite-core/columns/integer.js.map +1 -1
  965. package/sqlite-core/columns/numeric.cjs.map +1 -1
  966. package/sqlite-core/columns/numeric.d.cts +3 -0
  967. package/sqlite-core/columns/numeric.d.ts +3 -0
  968. package/sqlite-core/columns/numeric.js.map +1 -1
  969. package/sqlite-core/columns/real.cjs.map +1 -1
  970. package/sqlite-core/columns/real.d.cts +1 -0
  971. package/sqlite-core/columns/real.d.ts +1 -0
  972. package/sqlite-core/columns/real.js.map +1 -1
  973. package/sqlite-core/columns/text.cjs.map +1 -1
  974. package/sqlite-core/columns/text.d.cts +2 -0
  975. package/sqlite-core/columns/text.d.ts +2 -0
  976. package/sqlite-core/columns/text.js.map +1 -1
  977. package/sqlite-core/foreign-keys.cjs +0 -3
  978. package/sqlite-core/foreign-keys.cjs.map +1 -1
  979. package/sqlite-core/foreign-keys.d.cts +14 -1
  980. package/sqlite-core/foreign-keys.d.ts +14 -1
  981. package/sqlite-core/foreign-keys.js +0 -3
  982. package/sqlite-core/foreign-keys.js.map +1 -1
  983. package/sqlite-core/indexes.cjs +0 -2
  984. package/sqlite-core/indexes.cjs.map +1 -1
  985. package/sqlite-core/indexes.d.cts +0 -1
  986. package/sqlite-core/indexes.d.ts +0 -1
  987. package/sqlite-core/indexes.js +0 -2
  988. package/sqlite-core/indexes.js.map +1 -1
  989. package/sqlite-core/primary-keys.cjs +0 -2
  990. package/sqlite-core/primary-keys.cjs.map +1 -1
  991. package/sqlite-core/primary-keys.d.cts +0 -1
  992. package/sqlite-core/primary-keys.d.ts +0 -1
  993. package/sqlite-core/primary-keys.js +0 -2
  994. package/sqlite-core/primary-keys.js.map +1 -1
  995. package/sqlite-core/query-builders/count.cjs.map +1 -1
  996. package/sqlite-core/query-builders/count.d.cts +1 -1
  997. package/sqlite-core/query-builders/count.d.ts +1 -1
  998. package/sqlite-core/query-builders/count.js.map +1 -1
  999. package/sqlite-core/query-builders/insert.cjs.map +1 -1
  1000. package/sqlite-core/query-builders/insert.d.cts +2 -2
  1001. package/sqlite-core/query-builders/insert.d.ts +2 -2
  1002. package/sqlite-core/query-builders/insert.js.map +1 -1
  1003. package/sqlite-core/query-builders/update.cjs +2 -2
  1004. package/sqlite-core/query-builders/update.cjs.map +1 -1
  1005. package/sqlite-core/query-builders/update.d.cts +1 -1
  1006. package/sqlite-core/query-builders/update.d.ts +1 -1
  1007. package/sqlite-core/query-builders/update.js +2 -2
  1008. package/sqlite-core/query-builders/update.js.map +1 -1
  1009. package/sqlite-core/unique-constraint.cjs +0 -2
  1010. package/sqlite-core/unique-constraint.cjs.map +1 -1
  1011. package/sqlite-core/unique-constraint.d.cts +2 -3
  1012. package/sqlite-core/unique-constraint.d.ts +2 -3
  1013. package/sqlite-core/unique-constraint.js +0 -2
  1014. package/sqlite-core/unique-constraint.js.map +1 -1
  1015. package/sqlite-proxy/session.cjs +1 -0
  1016. package/sqlite-proxy/session.cjs.map +1 -1
  1017. package/sqlite-proxy/session.js +1 -0
  1018. package/sqlite-proxy/session.js.map +1 -1
  1019. package/table.cjs +1 -0
  1020. package/table.cjs.map +1 -1
  1021. package/table.d.cts +3 -2
  1022. package/table.d.ts +3 -2
  1023. package/table.js +1 -0
  1024. package/table.js.map +1 -1
  1025. package/tidb-serverless/driver.cjs +12 -8
  1026. package/tidb-serverless/driver.cjs.map +1 -1
  1027. package/tidb-serverless/driver.d.cts +3 -3
  1028. package/tidb-serverless/driver.d.ts +3 -3
  1029. package/tidb-serverless/driver.js +12 -8
  1030. package/tidb-serverless/driver.js.map +1 -1
  1031. package/tracing.cjs +3 -3
  1032. package/tracing.cjs.map +1 -1
  1033. package/tracing.js +3 -3
  1034. package/tracing.js.map +1 -1
  1035. package/tursodatabase/database.cjs +10 -6
  1036. package/tursodatabase/database.cjs.map +1 -1
  1037. package/tursodatabase/database.d.cts +3 -3
  1038. package/tursodatabase/database.d.ts +3 -3
  1039. package/tursodatabase/database.js +10 -6
  1040. package/tursodatabase/database.js.map +1 -1
  1041. package/tursodatabase/session.cjs +2 -0
  1042. package/tursodatabase/session.cjs.map +1 -1
  1043. package/tursodatabase/session.js +2 -0
  1044. package/tursodatabase/session.js.map +1 -1
  1045. package/tursodatabase/wasm.cjs +10 -6
  1046. package/tursodatabase/wasm.cjs.map +1 -1
  1047. package/tursodatabase/wasm.d.cts +3 -3
  1048. package/tursodatabase/wasm.d.ts +3 -3
  1049. package/tursodatabase/wasm.js +10 -6
  1050. package/tursodatabase/wasm.js.map +1 -1
  1051. package/vercel-postgres/session.cjs.map +1 -1
  1052. package/vercel-postgres/session.js.map +1 -1
  1053. package/version.cjs +2 -2
  1054. package/version.cjs.map +1 -1
  1055. package/version.d.cts +2 -2
  1056. package/version.d.ts +2 -2
  1057. package/version.js +2 -2
  1058. package/version.js.map +1 -1
  1059. package/cockroach/driver.cjs.map +0 -1
  1060. package/cockroach/driver.d.cts +0 -42
  1061. package/cockroach/driver.d.ts +0 -42
  1062. package/cockroach/driver.js +0 -73
  1063. package/cockroach/driver.js.map +0 -1
  1064. package/cockroach/index.cjs +0 -25
  1065. package/cockroach/index.cjs.map +0 -1
  1066. package/cockroach/index.js.map +0 -1
  1067. package/cockroach/migrator.cjs +0 -33
  1068. package/cockroach/migrator.cjs.map +0 -1
  1069. package/cockroach/migrator.d.cts +0 -3
  1070. package/cockroach/migrator.d.ts +0 -3
  1071. package/cockroach/migrator.js +0 -9
  1072. package/cockroach/migrator.js.map +0 -1
  1073. package/cockroach/session.cjs +0 -253
  1074. package/cockroach/session.cjs.map +0 -1
  1075. package/cockroach/session.d.cts +0 -48
  1076. package/cockroach/session.d.ts +0 -48
  1077. package/cockroach/session.js +0 -217
  1078. package/cockroach/session.js.map +0 -1
  1079. package/cockroach-core/alias.cjs +0 -32
  1080. package/cockroach-core/alias.cjs.map +0 -1
  1081. package/cockroach-core/alias.d.cts +0 -4
  1082. package/cockroach-core/alias.d.ts +0 -4
  1083. package/cockroach-core/alias.js +0 -8
  1084. package/cockroach-core/alias.js.map +0 -1
  1085. package/cockroach-core/checks.cjs +0 -58
  1086. package/cockroach-core/checks.cjs.map +0 -1
  1087. package/cockroach-core/checks.d.cts +0 -18
  1088. package/cockroach-core/checks.d.ts +0 -18
  1089. package/cockroach-core/checks.js +0 -32
  1090. package/cockroach-core/checks.js.map +0 -1
  1091. package/cockroach-core/columns/all.cjs +0 -81
  1092. package/cockroach-core/columns/all.cjs.map +0 -1
  1093. package/cockroach-core/columns/all.d.cts +0 -52
  1094. package/cockroach-core/columns/all.d.ts +0 -52
  1095. package/cockroach-core/columns/all.js +0 -57
  1096. package/cockroach-core/columns/all.js.map +0 -1
  1097. package/cockroach-core/columns/bigint.cjs +0 -104
  1098. package/cockroach-core/columns/bigint.cjs.map +0 -1
  1099. package/cockroach-core/columns/bigint.d.cts +0 -37
  1100. package/cockroach-core/columns/bigint.d.ts +0 -37
  1101. package/cockroach-core/columns/bigint.js +0 -75
  1102. package/cockroach-core/columns/bigint.js.map +0 -1
  1103. package/cockroach-core/columns/bit.cjs +0 -61
  1104. package/cockroach-core/columns/bit.cjs.map +0 -1
  1105. package/cockroach-core/columns/bit.d.cts +0 -29
  1106. package/cockroach-core/columns/bit.d.ts +0 -29
  1107. package/cockroach-core/columns/bit.js +0 -35
  1108. package/cockroach-core/columns/bit.js.map +0 -1
  1109. package/cockroach-core/columns/bool.cjs +0 -59
  1110. package/cockroach-core/columns/bool.cjs.map +0 -1
  1111. package/cockroach-core/columns/bool.d.cts +0 -17
  1112. package/cockroach-core/columns/bool.d.ts +0 -17
  1113. package/cockroach-core/columns/bool.js +0 -32
  1114. package/cockroach-core/columns/bool.js.map +0 -1
  1115. package/cockroach-core/columns/char.cjs +0 -62
  1116. package/cockroach-core/columns/char.cjs.map +0 -1
  1117. package/cockroach-core/columns/char.d.cts +0 -31
  1118. package/cockroach-core/columns/char.d.ts +0 -31
  1119. package/cockroach-core/columns/char.js +0 -36
  1120. package/cockroach-core/columns/char.js.map +0 -1
  1121. package/cockroach-core/columns/common.cjs +0 -198
  1122. package/cockroach-core/columns/common.cjs.map +0 -1
  1123. package/cockroach-core/columns/common.d.cts +0 -98
  1124. package/cockroach-core/columns/common.d.ts +0 -98
  1125. package/cockroach-core/columns/common.js +0 -168
  1126. package/cockroach-core/columns/common.js.map +0 -1
  1127. package/cockroach-core/columns/custom.cjs +0 -102
  1128. package/cockroach-core/columns/custom.cjs.map +0 -1
  1129. package/cockroach-core/columns/custom.d.cts +0 -261
  1130. package/cockroach-core/columns/custom.d.ts +0 -261
  1131. package/cockroach-core/columns/custom.js +0 -76
  1132. package/cockroach-core/columns/custom.js.map +0 -1
  1133. package/cockroach-core/columns/date.cjs +0 -91
  1134. package/cockroach-core/columns/date.cjs.map +0 -1
  1135. package/cockroach-core/columns/date.common.cjs +0 -37
  1136. package/cockroach-core/columns/date.common.cjs.map +0 -1
  1137. package/cockroach-core/columns/date.common.d.cts +0 -7
  1138. package/cockroach-core/columns/date.common.d.ts +0 -7
  1139. package/cockroach-core/columns/date.common.js +0 -13
  1140. package/cockroach-core/columns/date.common.js.map +0 -1
  1141. package/cockroach-core/columns/date.d.cts +0 -36
  1142. package/cockroach-core/columns/date.d.ts +0 -36
  1143. package/cockroach-core/columns/date.js +0 -63
  1144. package/cockroach-core/columns/date.js.map +0 -1
  1145. package/cockroach-core/columns/decimal.cjs +0 -164
  1146. package/cockroach-core/columns/decimal.cjs.map +0 -1
  1147. package/cockroach-core/columns/decimal.d.cts +0 -80
  1148. package/cockroach-core/columns/decimal.d.ts +0 -80
  1149. package/cockroach-core/columns/decimal.js +0 -133
  1150. package/cockroach-core/columns/decimal.js.map +0 -1
  1151. package/cockroach-core/columns/enum.cjs +0 -127
  1152. package/cockroach-core/columns/enum.cjs.map +0 -1
  1153. package/cockroach-core/columns/enum.d.cts +0 -64
  1154. package/cockroach-core/columns/enum.d.ts +0 -64
  1155. package/cockroach-core/columns/enum.js +0 -96
  1156. package/cockroach-core/columns/enum.js.map +0 -1
  1157. package/cockroach-core/columns/float.cjs +0 -65
  1158. package/cockroach-core/columns/float.cjs.map +0 -1
  1159. package/cockroach-core/columns/float.d.cts +0 -18
  1160. package/cockroach-core/columns/float.d.ts +0 -18
  1161. package/cockroach-core/columns/float.js +0 -38
  1162. package/cockroach-core/columns/float.js.map +0 -1
  1163. package/cockroach-core/columns/geometry.cjs +0 -105
  1164. package/cockroach-core/columns/geometry.cjs.map +0 -1
  1165. package/cockroach-core/columns/geometry.d.cts +0 -60
  1166. package/cockroach-core/columns/geometry.d.ts +0 -60
  1167. package/cockroach-core/columns/geometry.js +0 -77
  1168. package/cockroach-core/columns/geometry.js.map +0 -1
  1169. package/cockroach-core/columns/index.cjs +0 -71
  1170. package/cockroach-core/columns/index.cjs.map +0 -1
  1171. package/cockroach-core/columns/index.d.cts +0 -25
  1172. package/cockroach-core/columns/index.d.ts +0 -25
  1173. package/cockroach-core/columns/index.js +0 -26
  1174. package/cockroach-core/columns/index.js.map +0 -1
  1175. package/cockroach-core/columns/inet.cjs +0 -56
  1176. package/cockroach-core/columns/inet.cjs.map +0 -1
  1177. package/cockroach-core/columns/inet.d.cts +0 -16
  1178. package/cockroach-core/columns/inet.d.ts +0 -16
  1179. package/cockroach-core/columns/inet.js +0 -30
  1180. package/cockroach-core/columns/inet.js.map +0 -1
  1181. package/cockroach-core/columns/int.common.cjs +0 -55
  1182. package/cockroach-core/columns/int.common.cjs.map +0 -1
  1183. package/cockroach-core/columns/int.common.d.cts +0 -11
  1184. package/cockroach-core/columns/int.common.d.ts +0 -11
  1185. package/cockroach-core/columns/int.common.js +0 -31
  1186. package/cockroach-core/columns/int.common.js.map +0 -1
  1187. package/cockroach-core/columns/integer.cjs +0 -63
  1188. package/cockroach-core/columns/integer.cjs.map +0 -1
  1189. package/cockroach-core/columns/integer.d.cts +0 -18
  1190. package/cockroach-core/columns/integer.d.ts +0 -18
  1191. package/cockroach-core/columns/integer.js +0 -37
  1192. package/cockroach-core/columns/integer.js.map +0 -1
  1193. package/cockroach-core/columns/interval.cjs +0 -63
  1194. package/cockroach-core/columns/interval.cjs.map +0 -1
  1195. package/cockroach-core/columns/interval.d.cts +0 -28
  1196. package/cockroach-core/columns/interval.d.ts +0 -28
  1197. package/cockroach-core/columns/interval.js +0 -37
  1198. package/cockroach-core/columns/interval.js.map +0 -1
  1199. package/cockroach-core/columns/jsonb.cjs +0 -72
  1200. package/cockroach-core/columns/jsonb.cjs.map +0 -1
  1201. package/cockroach-core/columns/jsonb.d.cts +0 -20
  1202. package/cockroach-core/columns/jsonb.d.ts +0 -20
  1203. package/cockroach-core/columns/jsonb.js +0 -46
  1204. package/cockroach-core/columns/jsonb.js.map +0 -1
  1205. package/cockroach-core/columns/real.cjs +0 -66
  1206. package/cockroach-core/columns/real.cjs.map +0 -1
  1207. package/cockroach-core/columns/real.d.cts +0 -21
  1208. package/cockroach-core/columns/real.d.ts +0 -21
  1209. package/cockroach-core/columns/real.js +0 -40
  1210. package/cockroach-core/columns/real.js.map +0 -1
  1211. package/cockroach-core/columns/smallint.cjs +0 -68
  1212. package/cockroach-core/columns/smallint.cjs.map +0 -1
  1213. package/cockroach-core/columns/smallint.d.cts +0 -19
  1214. package/cockroach-core/columns/smallint.d.ts +0 -19
  1215. package/cockroach-core/columns/smallint.js +0 -41
  1216. package/cockroach-core/columns/smallint.js.map +0 -1
  1217. package/cockroach-core/columns/string.cjs +0 -67
  1218. package/cockroach-core/columns/string.cjs.map +0 -1
  1219. package/cockroach-core/columns/string.d.cts +0 -36
  1220. package/cockroach-core/columns/string.d.ts +0 -36
  1221. package/cockroach-core/columns/string.js +0 -40
  1222. package/cockroach-core/columns/string.js.map +0 -1
  1223. package/cockroach-core/columns/time.cjs +0 -70
  1224. package/cockroach-core/columns/time.cjs.map +0 -1
  1225. package/cockroach-core/columns/time.d.cts +0 -31
  1226. package/cockroach-core/columns/time.d.ts +0 -31
  1227. package/cockroach-core/columns/time.js +0 -44
  1228. package/cockroach-core/columns/time.js.map +0 -1
  1229. package/cockroach-core/columns/timestamp.cjs +0 -111
  1230. package/cockroach-core/columns/timestamp.cjs.map +0 -1
  1231. package/cockroach-core/columns/timestamp.d.cts +0 -52
  1232. package/cockroach-core/columns/timestamp.d.ts +0 -52
  1233. package/cockroach-core/columns/timestamp.js +0 -83
  1234. package/cockroach-core/columns/timestamp.js.map +0 -1
  1235. package/cockroach-core/columns/utils.cjs +0 -65
  1236. package/cockroach-core/columns/utils.cjs.map +0 -1
  1237. package/cockroach-core/columns/utils.d.cts +0 -4
  1238. package/cockroach-core/columns/utils.d.ts +0 -4
  1239. package/cockroach-core/columns/utils.js +0 -41
  1240. package/cockroach-core/columns/utils.js.map +0 -1
  1241. package/cockroach-core/columns/uuid.cjs +0 -63
  1242. package/cockroach-core/columns/uuid.cjs.map +0 -1
  1243. package/cockroach-core/columns/uuid.d.cts +0 -20
  1244. package/cockroach-core/columns/uuid.d.ts +0 -20
  1245. package/cockroach-core/columns/uuid.js +0 -37
  1246. package/cockroach-core/columns/uuid.js.map +0 -1
  1247. package/cockroach-core/columns/varbit.cjs +0 -59
  1248. package/cockroach-core/columns/varbit.cjs.map +0 -1
  1249. package/cockroach-core/columns/varbit.d.cts +0 -24
  1250. package/cockroach-core/columns/varbit.d.ts +0 -24
  1251. package/cockroach-core/columns/varbit.js +0 -33
  1252. package/cockroach-core/columns/varbit.js.map +0 -1
  1253. package/cockroach-core/columns/varchar.cjs +0 -61
  1254. package/cockroach-core/columns/varchar.cjs.map +0 -1
  1255. package/cockroach-core/columns/varchar.d.cts +0 -30
  1256. package/cockroach-core/columns/varchar.d.ts +0 -30
  1257. package/cockroach-core/columns/varchar.js +0 -35
  1258. package/cockroach-core/columns/varchar.js.map +0 -1
  1259. package/cockroach-core/columns/vector.cjs +0 -65
  1260. package/cockroach-core/columns/vector.cjs.map +0 -1
  1261. package/cockroach-core/columns/vector.d.cts +0 -26
  1262. package/cockroach-core/columns/vector.d.ts +0 -26
  1263. package/cockroach-core/columns/vector.js +0 -39
  1264. package/cockroach-core/columns/vector.js.map +0 -1
  1265. package/cockroach-core/db.cjs +0 -346
  1266. package/cockroach-core/db.cjs.map +0 -1
  1267. package/cockroach-core/db.d.cts +0 -282
  1268. package/cockroach-core/db.d.ts +0 -282
  1269. package/cockroach-core/db.js +0 -327
  1270. package/cockroach-core/db.js.map +0 -1
  1271. package/cockroach-core/dialect.cjs +0 -1146
  1272. package/cockroach-core/dialect.cjs.map +0 -1
  1273. package/cockroach-core/dialect.d.cts +0 -65
  1274. package/cockroach-core/dialect.d.ts +0 -65
  1275. package/cockroach-core/dialect.js +0 -1126
  1276. package/cockroach-core/dialect.js.map +0 -1
  1277. package/cockroach-core/expressions.cjs +0 -49
  1278. package/cockroach-core/expressions.cjs.map +0 -1
  1279. package/cockroach-core/expressions.d.cts +0 -8
  1280. package/cockroach-core/expressions.d.ts +0 -8
  1281. package/cockroach-core/expressions.js +0 -22
  1282. package/cockroach-core/expressions.js.map +0 -1
  1283. package/cockroach-core/foreign-keys.cjs +0 -95
  1284. package/cockroach-core/foreign-keys.cjs.map +0 -1
  1285. package/cockroach-core/foreign-keys.d.cts +0 -53
  1286. package/cockroach-core/foreign-keys.d.ts +0 -53
  1287. package/cockroach-core/foreign-keys.js +0 -69
  1288. package/cockroach-core/foreign-keys.js.map +0 -1
  1289. package/cockroach-core/index.cjs +0 -61
  1290. package/cockroach-core/index.cjs.map +0 -1
  1291. package/cockroach-core/index.d.cts +0 -20
  1292. package/cockroach-core/index.d.ts +0 -20
  1293. package/cockroach-core/index.js +0 -21
  1294. package/cockroach-core/index.js.map +0 -1
  1295. package/cockroach-core/indexes.cjs +0 -139
  1296. package/cockroach-core/indexes.cjs.map +0 -1
  1297. package/cockroach-core/indexes.d.cts +0 -65
  1298. package/cockroach-core/indexes.d.ts +0 -65
  1299. package/cockroach-core/indexes.js +0 -111
  1300. package/cockroach-core/indexes.js.map +0 -1
  1301. package/cockroach-core/policies.cjs +0 -58
  1302. package/cockroach-core/policies.cjs.map +0 -1
  1303. package/cockroach-core/policies.d.cts +0 -24
  1304. package/cockroach-core/policies.d.ts +0 -24
  1305. package/cockroach-core/policies.js +0 -33
  1306. package/cockroach-core/policies.js.map +0 -1
  1307. package/cockroach-core/primary-keys.cjs +0 -66
  1308. package/cockroach-core/primary-keys.cjs.map +0 -1
  1309. package/cockroach-core/primary-keys.d.cts +0 -24
  1310. package/cockroach-core/primary-keys.d.ts +0 -24
  1311. package/cockroach-core/primary-keys.js +0 -40
  1312. package/cockroach-core/primary-keys.js.map +0 -1
  1313. package/cockroach-core/query-builders/count.cjs +0 -79
  1314. package/cockroach-core/query-builders/count.cjs.map +0 -1
  1315. package/cockroach-core/query-builders/count.d.cts +0 -30
  1316. package/cockroach-core/query-builders/count.d.ts +0 -30
  1317. package/cockroach-core/query-builders/count.js +0 -55
  1318. package/cockroach-core/query-builders/count.js.map +0 -1
  1319. package/cockroach-core/query-builders/delete.cjs +0 -124
  1320. package/cockroach-core/query-builders/delete.cjs.map +0 -1
  1321. package/cockroach-core/query-builders/delete.d.cts +0 -103
  1322. package/cockroach-core/query-builders/delete.d.ts +0 -103
  1323. package/cockroach-core/query-builders/delete.js +0 -100
  1324. package/cockroach-core/query-builders/delete.js.map +0 -1
  1325. package/cockroach-core/query-builders/index.cjs +0 -35
  1326. package/cockroach-core/query-builders/index.cjs.map +0 -1
  1327. package/cockroach-core/query-builders/index.d.cts +0 -7
  1328. package/cockroach-core/query-builders/index.d.ts +0 -7
  1329. package/cockroach-core/query-builders/index.js +0 -8
  1330. package/cockroach-core/query-builders/index.js.map +0 -1
  1331. package/cockroach-core/query-builders/insert.cjs +0 -213
  1332. package/cockroach-core/query-builders/insert.cjs.map +0 -1
  1333. package/cockroach-core/query-builders/insert.d.cts +0 -168
  1334. package/cockroach-core/query-builders/insert.d.ts +0 -168
  1335. package/cockroach-core/query-builders/insert.js +0 -188
  1336. package/cockroach-core/query-builders/insert.js.map +0 -1
  1337. package/cockroach-core/query-builders/query-builder.cjs +0 -118
  1338. package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
  1339. package/cockroach-core/query-builders/query-builder.d.cts +0 -37
  1340. package/cockroach-core/query-builders/query-builder.d.ts +0 -37
  1341. package/cockroach-core/query-builders/query-builder.js +0 -94
  1342. package/cockroach-core/query-builders/query-builder.js.map +0 -1
  1343. package/cockroach-core/query-builders/query.cjs +0 -145
  1344. package/cockroach-core/query-builders/query.cjs.map +0 -1
  1345. package/cockroach-core/query-builders/query.d.cts +0 -47
  1346. package/cockroach-core/query-builders/query.d.ts +0 -47
  1347. package/cockroach-core/query-builders/query.js +0 -122
  1348. package/cockroach-core/query-builders/query.js.map +0 -1
  1349. package/cockroach-core/query-builders/raw.cjs +0 -57
  1350. package/cockroach-core/query-builders/raw.cjs.map +0 -1
  1351. package/cockroach-core/query-builders/raw.d.cts +0 -22
  1352. package/cockroach-core/query-builders/raw.d.ts +0 -22
  1353. package/cockroach-core/query-builders/raw.js +0 -33
  1354. package/cockroach-core/query-builders/raw.js.map +0 -1
  1355. package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
  1356. package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
  1357. package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
  1358. package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
  1359. package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
  1360. package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
  1361. package/cockroach-core/query-builders/select.cjs +0 -847
  1362. package/cockroach-core/query-builders/select.cjs.map +0 -1
  1363. package/cockroach-core/query-builders/select.d.cts +0 -787
  1364. package/cockroach-core/query-builders/select.d.ts +0 -787
  1365. package/cockroach-core/query-builders/select.js +0 -821
  1366. package/cockroach-core/query-builders/select.js.map +0 -1
  1367. package/cockroach-core/query-builders/select.types.cjs +0 -17
  1368. package/cockroach-core/query-builders/select.types.cjs.map +0 -1
  1369. package/cockroach-core/query-builders/select.types.d.cts +0 -140
  1370. package/cockroach-core/query-builders/select.types.d.ts +0 -140
  1371. package/cockroach-core/query-builders/select.types.js +0 -1
  1372. package/cockroach-core/query-builders/select.types.js.map +0 -1
  1373. package/cockroach-core/query-builders/update.cjs +0 -240
  1374. package/cockroach-core/query-builders/update.cjs.map +0 -1
  1375. package/cockroach-core/query-builders/update.d.cts +0 -170
  1376. package/cockroach-core/query-builders/update.d.ts +0 -170
  1377. package/cockroach-core/query-builders/update.js +0 -219
  1378. package/cockroach-core/query-builders/update.js.map +0 -1
  1379. package/cockroach-core/roles.cjs +0 -54
  1380. package/cockroach-core/roles.cjs.map +0 -1
  1381. package/cockroach-core/roles.d.cts +0 -12
  1382. package/cockroach-core/roles.d.ts +0 -12
  1383. package/cockroach-core/roles.js +0 -29
  1384. package/cockroach-core/roles.js.map +0 -1
  1385. package/cockroach-core/schema.cjs +0 -92
  1386. package/cockroach-core/schema.cjs.map +0 -1
  1387. package/cockroach-core/schema.d.cts +0 -24
  1388. package/cockroach-core/schema.d.ts +0 -24
  1389. package/cockroach-core/schema.js +0 -72
  1390. package/cockroach-core/schema.js.map +0 -1
  1391. package/cockroach-core/sequence.cjs +0 -52
  1392. package/cockroach-core/sequence.cjs.map +0 -1
  1393. package/cockroach-core/sequence.d.cts +0 -17
  1394. package/cockroach-core/sequence.d.ts +0 -17
  1395. package/cockroach-core/sequence.js +0 -25
  1396. package/cockroach-core/sequence.js.map +0 -1
  1397. package/cockroach-core/session.cjs +0 -120
  1398. package/cockroach-core/session.cjs.map +0 -1
  1399. package/cockroach-core/session.d.cts +0 -62
  1400. package/cockroach-core/session.d.ts +0 -62
  1401. package/cockroach-core/session.js +0 -94
  1402. package/cockroach-core/session.js.map +0 -1
  1403. package/cockroach-core/subquery.cjs +0 -17
  1404. package/cockroach-core/subquery.cjs.map +0 -1
  1405. package/cockroach-core/subquery.d.cts +0 -18
  1406. package/cockroach-core/subquery.d.ts +0 -18
  1407. package/cockroach-core/subquery.js +0 -1
  1408. package/cockroach-core/subquery.js.map +0 -1
  1409. package/cockroach-core/table.cjs +0 -121
  1410. package/cockroach-core/table.cjs.map +0 -1
  1411. package/cockroach-core/table.d.cts +0 -40
  1412. package/cockroach-core/table.d.ts +0 -40
  1413. package/cockroach-core/table.js +0 -94
  1414. package/cockroach-core/table.js.map +0 -1
  1415. package/cockroach-core/unique-constraint.cjs +0 -77
  1416. package/cockroach-core/unique-constraint.cjs.map +0 -1
  1417. package/cockroach-core/unique-constraint.d.cts +0 -23
  1418. package/cockroach-core/unique-constraint.d.ts +0 -23
  1419. package/cockroach-core/unique-constraint.js +0 -50
  1420. package/cockroach-core/unique-constraint.js.map +0 -1
  1421. package/cockroach-core/utils/array.cjs +0 -106
  1422. package/cockroach-core/utils/array.cjs.map +0 -1
  1423. package/cockroach-core/utils/array.d.cts +0 -3
  1424. package/cockroach-core/utils/array.d.ts +0 -3
  1425. package/cockroach-core/utils/array.js +0 -80
  1426. package/cockroach-core/utils/array.js.map +0 -1
  1427. package/cockroach-core/utils/index.cjs +0 -23
  1428. package/cockroach-core/utils/index.cjs.map +0 -1
  1429. package/cockroach-core/utils/index.d.cts +0 -1
  1430. package/cockroach-core/utils/index.d.ts +0 -1
  1431. package/cockroach-core/utils/index.js +0 -2
  1432. package/cockroach-core/utils/index.js.map +0 -1
  1433. package/cockroach-core/utils.cjs +0 -98
  1434. package/cockroach-core/utils.cjs.map +0 -1
  1435. package/cockroach-core/utils.d.cts +0 -47
  1436. package/cockroach-core/utils.d.ts +0 -47
  1437. package/cockroach-core/utils.js +0 -72
  1438. package/cockroach-core/utils.js.map +0 -1
  1439. package/cockroach-core/view-base.cjs +0 -33
  1440. package/cockroach-core/view-base.cjs.map +0 -1
  1441. package/cockroach-core/view-base.d.cts +0 -8
  1442. package/cockroach-core/view-base.d.ts +0 -8
  1443. package/cockroach-core/view-base.js +0 -9
  1444. package/cockroach-core/view-base.js.map +0 -1
  1445. package/cockroach-core/view.cjs +0 -271
  1446. package/cockroach-core/view.cjs.map +0 -1
  1447. package/cockroach-core/view.d.cts +0 -106
  1448. package/cockroach-core/view.d.ts +0 -106
  1449. package/cockroach-core/view.js +0 -233
  1450. package/cockroach-core/view.js.map +0 -1
  1451. package/mssql-core/alias.cjs +0 -32
  1452. package/mssql-core/alias.cjs.map +0 -1
  1453. package/mssql-core/alias.d.cts +0 -4
  1454. package/mssql-core/alias.d.ts +0 -4
  1455. package/mssql-core/alias.js +0 -8
  1456. package/mssql-core/alias.js.map +0 -1
  1457. package/mssql-core/checks.cjs +0 -58
  1458. package/mssql-core/checks.cjs.map +0 -1
  1459. package/mssql-core/checks.d.cts +0 -18
  1460. package/mssql-core/checks.d.ts +0 -18
  1461. package/mssql-core/checks.js +0 -32
  1462. package/mssql-core/checks.js.map +0 -1
  1463. package/mssql-core/columns/all.cjs +0 -74
  1464. package/mssql-core/columns/all.cjs.map +0 -1
  1465. package/mssql-core/columns/all.d.cts +0 -45
  1466. package/mssql-core/columns/all.d.ts +0 -45
  1467. package/mssql-core/columns/all.js +0 -50
  1468. package/mssql-core/columns/all.js.map +0 -1
  1469. package/mssql-core/columns/bigint.cjs +0 -72
  1470. package/mssql-core/columns/bigint.cjs.map +0 -1
  1471. package/mssql-core/columns/bigint.d.cts +0 -25
  1472. package/mssql-core/columns/bigint.d.ts +0 -25
  1473. package/mssql-core/columns/bigint.js +0 -46
  1474. package/mssql-core/columns/bigint.js.map +0 -1
  1475. package/mssql-core/columns/binary.cjs +0 -57
  1476. package/mssql-core/columns/binary.cjs.map +0 -1
  1477. package/mssql-core/columns/binary.d.cts +0 -24
  1478. package/mssql-core/columns/binary.d.ts +0 -24
  1479. package/mssql-core/columns/binary.js +0 -31
  1480. package/mssql-core/columns/binary.js.map +0 -1
  1481. package/mssql-core/columns/bit.cjs +0 -54
  1482. package/mssql-core/columns/bit.cjs.map +0 -1
  1483. package/mssql-core/columns/bit.d.cts +0 -17
  1484. package/mssql-core/columns/bit.d.ts +0 -17
  1485. package/mssql-core/columns/bit.js +0 -28
  1486. package/mssql-core/columns/bit.js.map +0 -1
  1487. package/mssql-core/columns/char.cjs +0 -73
  1488. package/mssql-core/columns/char.cjs.map +0 -1
  1489. package/mssql-core/columns/char.d.cts +0 -29
  1490. package/mssql-core/columns/char.d.ts +0 -29
  1491. package/mssql-core/columns/char.js +0 -46
  1492. package/mssql-core/columns/char.js.map +0 -1
  1493. package/mssql-core/columns/common.cjs +0 -112
  1494. package/mssql-core/columns/common.cjs.map +0 -1
  1495. package/mssql-core/columns/common.d.cts +0 -57
  1496. package/mssql-core/columns/common.d.ts +0 -57
  1497. package/mssql-core/columns/common.js +0 -85
  1498. package/mssql-core/columns/common.js.map +0 -1
  1499. package/mssql-core/columns/custom.cjs +0 -105
  1500. package/mssql-core/columns/custom.cjs.map +0 -1
  1501. package/mssql-core/columns/custom.d.cts +0 -261
  1502. package/mssql-core/columns/custom.d.ts +0 -261
  1503. package/mssql-core/columns/custom.js +0 -79
  1504. package/mssql-core/columns/custom.js.map +0 -1
  1505. package/mssql-core/columns/date.cjs +0 -94
  1506. package/mssql-core/columns/date.cjs.map +0 -1
  1507. package/mssql-core/columns/date.common.cjs +0 -37
  1508. package/mssql-core/columns/date.common.cjs.map +0 -1
  1509. package/mssql-core/columns/date.common.d.cts +0 -12
  1510. package/mssql-core/columns/date.common.d.ts +0 -12
  1511. package/mssql-core/columns/date.common.js +0 -13
  1512. package/mssql-core/columns/date.common.js.map +0 -1
  1513. package/mssql-core/columns/date.d.cts +0 -39
  1514. package/mssql-core/columns/date.d.ts +0 -39
  1515. package/mssql-core/columns/date.js +0 -66
  1516. package/mssql-core/columns/date.js.map +0 -1
  1517. package/mssql-core/columns/datetime.cjs +0 -94
  1518. package/mssql-core/columns/datetime.cjs.map +0 -1
  1519. package/mssql-core/columns/datetime.d.cts +0 -38
  1520. package/mssql-core/columns/datetime.d.ts +0 -38
  1521. package/mssql-core/columns/datetime.js +0 -66
  1522. package/mssql-core/columns/datetime.js.map +0 -1
  1523. package/mssql-core/columns/datetime2.cjs +0 -102
  1524. package/mssql-core/columns/datetime2.cjs.map +0 -1
  1525. package/mssql-core/columns/datetime2.d.cts +0 -38
  1526. package/mssql-core/columns/datetime2.d.ts +0 -38
  1527. package/mssql-core/columns/datetime2.js +0 -74
  1528. package/mssql-core/columns/datetime2.js.map +0 -1
  1529. package/mssql-core/columns/datetimeoffset.cjs +0 -102
  1530. package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
  1531. package/mssql-core/columns/datetimeoffset.d.cts +0 -39
  1532. package/mssql-core/columns/datetimeoffset.d.ts +0 -39
  1533. package/mssql-core/columns/datetimeoffset.js +0 -74
  1534. package/mssql-core/columns/datetimeoffset.js.map +0 -1
  1535. package/mssql-core/columns/decimal.cjs +0 -146
  1536. package/mssql-core/columns/decimal.cjs.map +0 -1
  1537. package/mssql-core/columns/decimal.d.cts +0 -58
  1538. package/mssql-core/columns/decimal.d.ts +0 -58
  1539. package/mssql-core/columns/decimal.js +0 -116
  1540. package/mssql-core/columns/decimal.js.map +0 -1
  1541. package/mssql-core/columns/float.cjs +0 -58
  1542. package/mssql-core/columns/float.cjs.map +0 -1
  1543. package/mssql-core/columns/float.d.cts +0 -21
  1544. package/mssql-core/columns/float.d.ts +0 -21
  1545. package/mssql-core/columns/float.js +0 -32
  1546. package/mssql-core/columns/float.js.map +0 -1
  1547. package/mssql-core/columns/index.cjs +0 -63
  1548. package/mssql-core/columns/index.cjs.map +0 -1
  1549. package/mssql-core/columns/index.d.cts +0 -21
  1550. package/mssql-core/columns/index.d.ts +0 -21
  1551. package/mssql-core/columns/index.js +0 -22
  1552. package/mssql-core/columns/index.js.map +0 -1
  1553. package/mssql-core/columns/int.cjs +0 -53
  1554. package/mssql-core/columns/int.cjs.map +0 -1
  1555. package/mssql-core/columns/int.d.cts +0 -16
  1556. package/mssql-core/columns/int.d.ts +0 -16
  1557. package/mssql-core/columns/int.js +0 -27
  1558. package/mssql-core/columns/int.js.map +0 -1
  1559. package/mssql-core/columns/numeric.cjs +0 -146
  1560. package/mssql-core/columns/numeric.cjs.map +0 -1
  1561. package/mssql-core/columns/numeric.d.cts +0 -58
  1562. package/mssql-core/columns/numeric.d.ts +0 -58
  1563. package/mssql-core/columns/numeric.js +0 -116
  1564. package/mssql-core/columns/numeric.js.map +0 -1
  1565. package/mssql-core/columns/real.cjs +0 -53
  1566. package/mssql-core/columns/real.cjs.map +0 -1
  1567. package/mssql-core/columns/real.d.cts +0 -16
  1568. package/mssql-core/columns/real.d.ts +0 -16
  1569. package/mssql-core/columns/real.js +0 -27
  1570. package/mssql-core/columns/real.js.map +0 -1
  1571. package/mssql-core/columns/smallint.cjs +0 -62
  1572. package/mssql-core/columns/smallint.cjs.map +0 -1
  1573. package/mssql-core/columns/smallint.d.cts +0 -17
  1574. package/mssql-core/columns/smallint.d.ts +0 -17
  1575. package/mssql-core/columns/smallint.js +0 -36
  1576. package/mssql-core/columns/smallint.js.map +0 -1
  1577. package/mssql-core/columns/text.cjs +0 -68
  1578. package/mssql-core/columns/text.cjs.map +0 -1
  1579. package/mssql-core/columns/text.d.cts +0 -36
  1580. package/mssql-core/columns/text.d.ts +0 -36
  1581. package/mssql-core/columns/text.js +0 -41
  1582. package/mssql-core/columns/text.js.map +0 -1
  1583. package/mssql-core/columns/time.cjs +0 -90
  1584. package/mssql-core/columns/time.cjs.map +0 -1
  1585. package/mssql-core/columns/time.d.cts +0 -37
  1586. package/mssql-core/columns/time.d.ts +0 -37
  1587. package/mssql-core/columns/time.js +0 -62
  1588. package/mssql-core/columns/time.js.map +0 -1
  1589. package/mssql-core/columns/tinyint.cjs +0 -62
  1590. package/mssql-core/columns/tinyint.cjs.map +0 -1
  1591. package/mssql-core/columns/tinyint.d.cts +0 -17
  1592. package/mssql-core/columns/tinyint.d.ts +0 -17
  1593. package/mssql-core/columns/tinyint.js +0 -36
  1594. package/mssql-core/columns/tinyint.js.map +0 -1
  1595. package/mssql-core/columns/varbinary.cjs +0 -61
  1596. package/mssql-core/columns/varbinary.cjs.map +0 -1
  1597. package/mssql-core/columns/varbinary.d.cts +0 -23
  1598. package/mssql-core/columns/varbinary.d.ts +0 -23
  1599. package/mssql-core/columns/varbinary.js +0 -35
  1600. package/mssql-core/columns/varbinary.js.map +0 -1
  1601. package/mssql-core/columns/varchar.cjs +0 -117
  1602. package/mssql-core/columns/varchar.cjs.map +0 -1
  1603. package/mssql-core/columns/varchar.d.cts +0 -59
  1604. package/mssql-core/columns/varchar.d.ts +0 -59
  1605. package/mssql-core/columns/varchar.js +0 -88
  1606. package/mssql-core/columns/varchar.js.map +0 -1
  1607. package/mssql-core/db.cjs +0 -254
  1608. package/mssql-core/db.cjs.map +0 -1
  1609. package/mssql-core/db.d.cts +0 -228
  1610. package/mssql-core/db.d.ts +0 -228
  1611. package/mssql-core/db.js +0 -235
  1612. package/mssql-core/db.js.map +0 -1
  1613. package/mssql-core/dialect.cjs +0 -633
  1614. package/mssql-core/dialect.cjs.map +0 -1
  1615. package/mssql-core/dialect.d.cts +0 -58
  1616. package/mssql-core/dialect.d.ts +0 -58
  1617. package/mssql-core/dialect.js +0 -599
  1618. package/mssql-core/dialect.js.map +0 -1
  1619. package/mssql-core/expressions.cjs +0 -49
  1620. package/mssql-core/expressions.cjs.map +0 -1
  1621. package/mssql-core/expressions.d.cts +0 -8
  1622. package/mssql-core/expressions.d.ts +0 -8
  1623. package/mssql-core/expressions.js +0 -22
  1624. package/mssql-core/expressions.js.map +0 -1
  1625. package/mssql-core/foreign-keys.cjs +0 -94
  1626. package/mssql-core/foreign-keys.cjs.map +0 -1
  1627. package/mssql-core/foreign-keys.d.cts +0 -52
  1628. package/mssql-core/foreign-keys.d.ts +0 -52
  1629. package/mssql-core/foreign-keys.js +0 -68
  1630. package/mssql-core/foreign-keys.js.map +0 -1
  1631. package/mssql-core/index.cjs +0 -55
  1632. package/mssql-core/index.cjs.map +0 -1
  1633. package/mssql-core/index.d.cts +0 -17
  1634. package/mssql-core/index.d.ts +0 -17
  1635. package/mssql-core/index.js +0 -18
  1636. package/mssql-core/index.js.map +0 -1
  1637. package/mssql-core/indexes.cjs +0 -82
  1638. package/mssql-core/indexes.cjs.map +0 -1
  1639. package/mssql-core/indexes.d.cts +0 -50
  1640. package/mssql-core/indexes.d.ts +0 -50
  1641. package/mssql-core/indexes.js +0 -54
  1642. package/mssql-core/indexes.js.map +0 -1
  1643. package/mssql-core/primary-keys.cjs +0 -66
  1644. package/mssql-core/primary-keys.cjs.map +0 -1
  1645. package/mssql-core/primary-keys.d.cts +0 -24
  1646. package/mssql-core/primary-keys.d.ts +0 -24
  1647. package/mssql-core/primary-keys.js +0 -40
  1648. package/mssql-core/primary-keys.js.map +0 -1
  1649. package/mssql-core/query-builders/delete.cjs +0 -107
  1650. package/mssql-core/query-builders/delete.cjs.map +0 -1
  1651. package/mssql-core/query-builders/delete.d.cts +0 -98
  1652. package/mssql-core/query-builders/delete.d.ts +0 -98
  1653. package/mssql-core/query-builders/delete.js +0 -83
  1654. package/mssql-core/query-builders/delete.js.map +0 -1
  1655. package/mssql-core/query-builders/index.cjs +0 -33
  1656. package/mssql-core/query-builders/index.cjs.map +0 -1
  1657. package/mssql-core/query-builders/index.d.cts +0 -6
  1658. package/mssql-core/query-builders/index.d.ts +0 -6
  1659. package/mssql-core/query-builders/index.js +0 -7
  1660. package/mssql-core/query-builders/index.js.map +0 -1
  1661. package/mssql-core/query-builders/insert.cjs +0 -105
  1662. package/mssql-core/query-builders/insert.cjs.map +0 -1
  1663. package/mssql-core/query-builders/insert.d.cts +0 -79
  1664. package/mssql-core/query-builders/insert.d.ts +0 -79
  1665. package/mssql-core/query-builders/insert.js +0 -80
  1666. package/mssql-core/query-builders/insert.js.map +0 -1
  1667. package/mssql-core/query-builders/query-builder.cjs +0 -95
  1668. package/mssql-core/query-builders/query-builder.cjs.map +0 -1
  1669. package/mssql-core/query-builders/query-builder.d.cts +0 -32
  1670. package/mssql-core/query-builders/query-builder.d.ts +0 -32
  1671. package/mssql-core/query-builders/query-builder.js +0 -71
  1672. package/mssql-core/query-builders/query-builder.js.map +0 -1
  1673. package/mssql-core/query-builders/query.cjs +0 -126
  1674. package/mssql-core/query-builders/query.cjs.map +0 -1
  1675. package/mssql-core/query-builders/query.d.cts +0 -42
  1676. package/mssql-core/query-builders/query.d.ts +0 -42
  1677. package/mssql-core/query-builders/query.js +0 -103
  1678. package/mssql-core/query-builders/query.js.map +0 -1
  1679. package/mssql-core/query-builders/select.cjs +0 -678
  1680. package/mssql-core/query-builders/select.cjs.map +0 -1
  1681. package/mssql-core/query-builders/select.d.cts +0 -549
  1682. package/mssql-core/query-builders/select.d.ts +0 -549
  1683. package/mssql-core/query-builders/select.js +0 -654
  1684. package/mssql-core/query-builders/select.js.map +0 -1
  1685. package/mssql-core/query-builders/select.types.cjs +0 -17
  1686. package/mssql-core/query-builders/select.types.cjs.map +0 -1
  1687. package/mssql-core/query-builders/select.types.d.cts +0 -142
  1688. package/mssql-core/query-builders/select.types.d.ts +0 -142
  1689. package/mssql-core/query-builders/select.types.js +0 -1
  1690. package/mssql-core/query-builders/select.types.js.map +0 -1
  1691. package/mssql-core/query-builders/update.cjs +0 -138
  1692. package/mssql-core/query-builders/update.cjs.map +0 -1
  1693. package/mssql-core/query-builders/update.d.cts +0 -142
  1694. package/mssql-core/query-builders/update.d.ts +0 -142
  1695. package/mssql-core/query-builders/update.js +0 -113
  1696. package/mssql-core/query-builders/update.js.map +0 -1
  1697. package/mssql-core/schema.cjs +0 -53
  1698. package/mssql-core/schema.cjs.map +0 -1
  1699. package/mssql-core/schema.d.cts +0 -13
  1700. package/mssql-core/schema.d.ts +0 -13
  1701. package/mssql-core/schema.js +0 -28
  1702. package/mssql-core/schema.js.map +0 -1
  1703. package/mssql-core/session.cjs +0 -74
  1704. package/mssql-core/session.cjs.map +0 -1
  1705. package/mssql-core/session.d.cts +0 -63
  1706. package/mssql-core/session.d.ts +0 -63
  1707. package/mssql-core/session.js +0 -48
  1708. package/mssql-core/session.js.map +0 -1
  1709. package/mssql-core/subquery.cjs +0 -17
  1710. package/mssql-core/subquery.cjs.map +0 -1
  1711. package/mssql-core/subquery.d.cts +0 -18
  1712. package/mssql-core/subquery.d.ts +0 -18
  1713. package/mssql-core/subquery.js +0 -1
  1714. package/mssql-core/subquery.js.map +0 -1
  1715. package/mssql-core/table.cjs +0 -81
  1716. package/mssql-core/table.cjs.map +0 -1
  1717. package/mssql-core/table.d.cts +0 -40
  1718. package/mssql-core/table.d.ts +0 -40
  1719. package/mssql-core/table.js +0 -55
  1720. package/mssql-core/table.js.map +0 -1
  1721. package/mssql-core/unique-constraint.cjs +0 -78
  1722. package/mssql-core/unique-constraint.cjs.map +0 -1
  1723. package/mssql-core/unique-constraint.d.cts +0 -24
  1724. package/mssql-core/unique-constraint.d.ts +0 -24
  1725. package/mssql-core/unique-constraint.js +0 -51
  1726. package/mssql-core/unique-constraint.js.map +0 -1
  1727. package/mssql-core/utils.cjs +0 -85
  1728. package/mssql-core/utils.cjs.map +0 -1
  1729. package/mssql-core/utils.d.cts +0 -31
  1730. package/mssql-core/utils.d.ts +0 -31
  1731. package/mssql-core/utils.js +0 -60
  1732. package/mssql-core/utils.js.map +0 -1
  1733. package/mssql-core/view-base.cjs +0 -33
  1734. package/mssql-core/view-base.cjs.map +0 -1
  1735. package/mssql-core/view-base.d.cts +0 -9
  1736. package/mssql-core/view-base.d.ts +0 -9
  1737. package/mssql-core/view-base.js +0 -9
  1738. package/mssql-core/view-base.js.map +0 -1
  1739. package/mssql-core/view-common.cjs +0 -29
  1740. package/mssql-core/view-common.cjs.map +0 -1
  1741. package/mssql-core/view-common.d.cts +0 -1
  1742. package/mssql-core/view-common.d.ts +0 -1
  1743. package/mssql-core/view-common.js +0 -5
  1744. package/mssql-core/view-common.js.map +0 -1
  1745. package/mssql-core/view.cjs +0 -154
  1746. package/mssql-core/view.cjs.map +0 -1
  1747. package/mssql-core/view.d.cts +0 -63
  1748. package/mssql-core/view.d.ts +0 -63
  1749. package/mssql-core/view.js +0 -125
  1750. package/mssql-core/view.js.map +0 -1
  1751. package/mysql-core/columns/blob.cjs +0 -158
  1752. package/mysql-core/columns/blob.cjs.map +0 -1
  1753. package/mysql-core/columns/blob.d.cts +0 -54
  1754. package/mysql-core/columns/blob.d.ts +0 -54
  1755. package/mysql-core/columns/blob.js +0 -127
  1756. package/mysql-core/columns/blob.js.map +0 -1
  1757. package/mysql-core/columns/string.common.cjs +0 -48
  1758. package/mysql-core/columns/string.common.cjs.map +0 -1
  1759. package/mysql-core/columns/string.common.d.cts +0 -21
  1760. package/mysql-core/columns/string.common.d.ts +0 -21
  1761. package/mysql-core/columns/string.common.js +0 -23
  1762. package/mysql-core/columns/string.common.js.map +0 -1
  1763. package/node-mssql/driver.cjs +0 -113
  1764. package/node-mssql/driver.cjs.map +0 -1
  1765. package/node-mssql/driver.d.cts +0 -46
  1766. package/node-mssql/driver.d.ts +0 -46
  1767. package/node-mssql/driver.js +0 -77
  1768. package/node-mssql/driver.js.map +0 -1
  1769. package/node-mssql/index.cjs.map +0 -1
  1770. package/node-mssql/index.d.cts +0 -2
  1771. package/node-mssql/index.d.ts +0 -2
  1772. package/node-mssql/index.js +0 -3
  1773. package/node-mssql/index.js.map +0 -1
  1774. package/node-mssql/migrator.cjs +0 -33
  1775. package/node-mssql/migrator.cjs.map +0 -1
  1776. package/node-mssql/migrator.d.cts +0 -3
  1777. package/node-mssql/migrator.d.ts +0 -3
  1778. package/node-mssql/migrator.js +0 -9
  1779. package/node-mssql/migrator.js.map +0 -1
  1780. package/node-mssql/pool.cjs +0 -54
  1781. package/node-mssql/pool.cjs.map +0 -1
  1782. package/node-mssql/pool.d.cts +0 -8
  1783. package/node-mssql/pool.d.ts +0 -8
  1784. package/node-mssql/pool.js +0 -20
  1785. package/node-mssql/pool.js.map +0 -1
  1786. package/node-mssql/session.cjs +0 -256
  1787. package/node-mssql/session.cjs.map +0 -1
  1788. package/node-mssql/session.d.cts +0 -48
  1789. package/node-mssql/session.d.ts +0 -48
  1790. package/node-mssql/session.js +0 -224
  1791. package/node-mssql/session.js.map +0 -1
  1792. /package/{cockroach → sqlite-cloud}/index.d.cts +0 -0
  1793. /package/{cockroach → sqlite-cloud}/index.d.ts +0 -0
  1794. /package/{cockroach → sqlite-cloud}/index.js +0 -0
@@ -1,8 +1,6 @@
1
1
  import { entityKind } from "./entity.cjs";
2
- import type { CockroachColumn, ExtraConfigColumn as CockroachExtraConfigColumn } from "./cockroach-core/index.cjs";
3
2
  import type { Column, ColumnBaseConfig } from "./column.cjs";
4
3
  import type { GelColumn, GelExtraConfigColumn } from "./gel-core/index.cjs";
5
- import type { MsSqlColumn } from "./mssql-core/index.cjs";
6
4
  import type { MySqlColumn } from "./mysql-core/index.cjs";
7
5
  import type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from "./pg-core/index.cjs";
8
6
  import type { SingleStoreColumn } from "./singlestore-core/index.cjs";
@@ -14,7 +12,7 @@ export type ColumnDataArrayConstraint = 'vector' | 'int64vector' | 'halfvector'
14
12
  export type ColumnDataBigIntConstraint = 'int64' | 'uint64';
15
13
  export type ColumnDataNumberConstraint = 'double' | 'float' | 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'udouble' | 'ufloat' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'unsigned' | 'year';
16
14
  export type ColumnDataObjectConstraint = 'buffer' | 'date' | 'geometry' | 'json' | 'line' | 'point' | 'dateDuration' | 'duration' | 'localDate' | 'localDateTime' | 'localTime' | 'relDuration';
17
- export type ColumnDataStringConstraint = 'binary' | 'cidr' | 'date' | 'datetime' | 'enum' | 'inet' | 'int64' | 'interval' | 'macaddr' | 'macaddr8' | 'numeric' | 'sparsevec' | 'time' | 'timestamp' | 'unumeric' | 'uuid';
15
+ export type ColumnDataStringConstraint = 'text' | 'binary' | 'cidr' | 'date' | 'datetime' | 'enum' | 'inet' | 'interval' | 'macaddr' | 'macaddr8' | 'numeric' | 'sparsevec' | 'time' | 'timestamp' | 'unumeric' | 'uuid';
18
16
  export type ColumnDataConstraint = ColumnDataArrayConstraint | ColumnDataBigIntConstraint | ColumnDataNumberConstraint | ColumnDataObjectConstraint | ColumnDataStringConstraint;
19
17
  export type ColumnType = ColumnDataType | `array ${ColumnDataArrayConstraint}` | `bigint ${ColumnDataBigIntConstraint}` | `number ${ColumnDataNumberConstraint}` | `object ${ColumnDataObjectConstraint}` | `string ${ColumnDataStringConstraint}`;
20
18
  export interface ColumnTypeData<TType extends ColumnDataType = ColumnDataType, TConstraint extends ColumnDataConstraint | undefined = ColumnDataConstraint | undefined> {
@@ -23,8 +21,8 @@ export interface ColumnTypeData<TType extends ColumnDataType = ColumnDataType, T
23
21
  }
24
22
  export type ExtractColumnTypeData<T extends ColumnType> = T extends `${infer Type extends ColumnDataType} ${infer Constraint extends ColumnDataConstraint}` ? ColumnTypeData<Type, Constraint> : ColumnTypeData<Assume<T, ColumnDataType>, undefined>;
25
23
  export declare function extractExtendedColumnType<TColumn extends Column>(column: TColumn): ExtractColumnTypeData<TColumn['_']['dataType']>;
26
- export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'mssql' | 'common' | 'gel' | 'cockroach';
27
- export type GeneratedStorageMode = 'virtual' | 'stored' | 'persisted';
24
+ export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'common' | 'gel';
25
+ export type GeneratedStorageMode = 'virtual' | 'stored';
28
26
  export type GeneratedType = 'always' | 'byDefault';
29
27
  export interface GeneratedColumnConfig<TDataType> {
30
28
  as: TDataType | SQL | (() => SQL);
@@ -37,6 +35,7 @@ export interface GeneratedIdentityConfig {
37
35
  type: 'always' | 'byDefault';
38
36
  }
39
37
  export interface ColumnBuilderBaseConfig<TDataType extends ColumnType> {
38
+ name: string;
40
39
  dataType: TDataType;
41
40
  data: unknown;
42
41
  driverParam: unknown;
@@ -128,7 +127,7 @@ export type $Type<T, TType> = T & {
128
127
  $type: TType;
129
128
  };
130
129
  };
131
- export type HasGenerated<T, TGenerated = {}> = T & {
130
+ export type HasGenerated<T, TGenerated> = T & {
132
131
  _: {
133
132
  hasDefault: true;
134
133
  generated: TGenerated;
@@ -217,12 +216,12 @@ export declare abstract class ColumnBuilder<T extends ColumnBuilderBaseConfig<Co
217
216
  type: 'always';
218
217
  }>;
219
218
  }
220
- export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect, TBuiltConfig extends ColumnBaseConfig<ColumnType> = MakeColumnConfig<TBuilder['_'], TTableName, TDialect>> = TDialect extends 'pg' ? PgColumn<TBuiltConfig, {}> : TDialect extends 'mysql' ? MySqlColumn<TBuiltConfig, {}> : TDialect extends 'mssql' ? MsSqlColumn<TBuiltConfig, {}> : TDialect extends 'sqlite' ? SQLiteColumn<TBuiltConfig, {}> : TDialect extends 'singlestore' ? SingleStoreColumn<TBuiltConfig, {}> : TDialect extends 'gel' ? GelColumn<TBuiltConfig, {}> : TDialect extends 'cockroach' ? CockroachColumn<TBuiltConfig, {}> : TDialect extends 'common' ? Column<TBuiltConfig, {}> : never;
221
- export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'cockroach' ? CockroachExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
219
+ export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect, TBuiltConfig extends ColumnBaseConfig<ColumnType> = MakeColumnConfig<TBuilder['_'], TTableName, TDialect>> = TDialect extends 'pg' ? PgColumn<TBuiltConfig, {}> : TDialect extends 'mysql' ? MySqlColumn<TBuiltConfig, {}> : TDialect extends 'sqlite' ? SQLiteColumn<TBuiltConfig, {}> : TDialect extends 'common' ? Column<TBuiltConfig, {}> : TDialect extends 'singlestore' ? SingleStoreColumn<TBuiltConfig, {}> : TDialect extends 'gel' ? GelColumn<TBuiltConfig, {}> : never;
220
+ export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
222
221
  export type BuildColumns<TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
223
222
  [Key in keyof TConfigMap]: BuildColumn<TTableName, TConfigMap[Key], TDialect>;
224
223
  } & {};
225
224
  export type BuildExtraConfigColumns<_TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
226
225
  [Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;
227
226
  } & {};
228
- export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
227
+ export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
@@ -1,8 +1,6 @@
1
1
  import { entityKind } from "./entity.js";
2
- import type { CockroachColumn, ExtraConfigColumn as CockroachExtraConfigColumn } from "./cockroach-core/index.js";
3
2
  import type { Column, ColumnBaseConfig } from "./column.js";
4
3
  import type { GelColumn, GelExtraConfigColumn } from "./gel-core/index.js";
5
- import type { MsSqlColumn } from "./mssql-core/index.js";
6
4
  import type { MySqlColumn } from "./mysql-core/index.js";
7
5
  import type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from "./pg-core/index.js";
8
6
  import type { SingleStoreColumn } from "./singlestore-core/index.js";
@@ -14,7 +12,7 @@ export type ColumnDataArrayConstraint = 'vector' | 'int64vector' | 'halfvector'
14
12
  export type ColumnDataBigIntConstraint = 'int64' | 'uint64';
15
13
  export type ColumnDataNumberConstraint = 'double' | 'float' | 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'udouble' | 'ufloat' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'unsigned' | 'year';
16
14
  export type ColumnDataObjectConstraint = 'buffer' | 'date' | 'geometry' | 'json' | 'line' | 'point' | 'dateDuration' | 'duration' | 'localDate' | 'localDateTime' | 'localTime' | 'relDuration';
17
- export type ColumnDataStringConstraint = 'binary' | 'cidr' | 'date' | 'datetime' | 'enum' | 'inet' | 'int64' | 'interval' | 'macaddr' | 'macaddr8' | 'numeric' | 'sparsevec' | 'time' | 'timestamp' | 'unumeric' | 'uuid';
15
+ export type ColumnDataStringConstraint = 'text' | 'binary' | 'cidr' | 'date' | 'datetime' | 'enum' | 'inet' | 'interval' | 'macaddr' | 'macaddr8' | 'numeric' | 'sparsevec' | 'time' | 'timestamp' | 'unumeric' | 'uuid';
18
16
  export type ColumnDataConstraint = ColumnDataArrayConstraint | ColumnDataBigIntConstraint | ColumnDataNumberConstraint | ColumnDataObjectConstraint | ColumnDataStringConstraint;
19
17
  export type ColumnType = ColumnDataType | `array ${ColumnDataArrayConstraint}` | `bigint ${ColumnDataBigIntConstraint}` | `number ${ColumnDataNumberConstraint}` | `object ${ColumnDataObjectConstraint}` | `string ${ColumnDataStringConstraint}`;
20
18
  export interface ColumnTypeData<TType extends ColumnDataType = ColumnDataType, TConstraint extends ColumnDataConstraint | undefined = ColumnDataConstraint | undefined> {
@@ -23,8 +21,8 @@ export interface ColumnTypeData<TType extends ColumnDataType = ColumnDataType, T
23
21
  }
24
22
  export type ExtractColumnTypeData<T extends ColumnType> = T extends `${infer Type extends ColumnDataType} ${infer Constraint extends ColumnDataConstraint}` ? ColumnTypeData<Type, Constraint> : ColumnTypeData<Assume<T, ColumnDataType>, undefined>;
25
23
  export declare function extractExtendedColumnType<TColumn extends Column>(column: TColumn): ExtractColumnTypeData<TColumn['_']['dataType']>;
26
- export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'mssql' | 'common' | 'gel' | 'cockroach';
27
- export type GeneratedStorageMode = 'virtual' | 'stored' | 'persisted';
24
+ export type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'common' | 'gel';
25
+ export type GeneratedStorageMode = 'virtual' | 'stored';
28
26
  export type GeneratedType = 'always' | 'byDefault';
29
27
  export interface GeneratedColumnConfig<TDataType> {
30
28
  as: TDataType | SQL | (() => SQL);
@@ -37,6 +35,7 @@ export interface GeneratedIdentityConfig {
37
35
  type: 'always' | 'byDefault';
38
36
  }
39
37
  export interface ColumnBuilderBaseConfig<TDataType extends ColumnType> {
38
+ name: string;
40
39
  dataType: TDataType;
41
40
  data: unknown;
42
41
  driverParam: unknown;
@@ -128,7 +127,7 @@ export type $Type<T, TType> = T & {
128
127
  $type: TType;
129
128
  };
130
129
  };
131
- export type HasGenerated<T, TGenerated = {}> = T & {
130
+ export type HasGenerated<T, TGenerated> = T & {
132
131
  _: {
133
132
  hasDefault: true;
134
133
  generated: TGenerated;
@@ -217,12 +216,12 @@ export declare abstract class ColumnBuilder<T extends ColumnBuilderBaseConfig<Co
217
216
  type: 'always';
218
217
  }>;
219
218
  }
220
- export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect, TBuiltConfig extends ColumnBaseConfig<ColumnType> = MakeColumnConfig<TBuilder['_'], TTableName, TDialect>> = TDialect extends 'pg' ? PgColumn<TBuiltConfig, {}> : TDialect extends 'mysql' ? MySqlColumn<TBuiltConfig, {}> : TDialect extends 'mssql' ? MsSqlColumn<TBuiltConfig, {}> : TDialect extends 'sqlite' ? SQLiteColumn<TBuiltConfig, {}> : TDialect extends 'singlestore' ? SingleStoreColumn<TBuiltConfig, {}> : TDialect extends 'gel' ? GelColumn<TBuiltConfig, {}> : TDialect extends 'cockroach' ? CockroachColumn<TBuiltConfig, {}> : TDialect extends 'common' ? Column<TBuiltConfig, {}> : never;
221
- export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'cockroach' ? CockroachExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
219
+ export type BuildColumn<TTableName extends string, TBuilder extends ColumnBuilderBase, TDialect extends Dialect, TBuiltConfig extends ColumnBaseConfig<ColumnType> = MakeColumnConfig<TBuilder['_'], TTableName, TDialect>> = TDialect extends 'pg' ? PgColumn<TBuiltConfig, {}> : TDialect extends 'mysql' ? MySqlColumn<TBuiltConfig, {}> : TDialect extends 'sqlite' ? SQLiteColumn<TBuiltConfig, {}> : TDialect extends 'common' ? Column<TBuiltConfig, {}> : TDialect extends 'singlestore' ? SingleStoreColumn<TBuiltConfig, {}> : TDialect extends 'gel' ? GelColumn<TBuiltConfig, {}> : never;
220
+ export type BuildIndexColumn<TDialect extends Dialect> = TDialect extends 'pg' ? ExtraConfigColumn : TDialect extends 'gel' ? GelExtraConfigColumn : never;
222
221
  export type BuildColumns<TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
223
222
  [Key in keyof TConfigMap]: BuildColumn<TTableName, TConfigMap[Key], TDialect>;
224
223
  } & {};
225
224
  export type BuildExtraConfigColumns<_TTableName extends string, TConfigMap extends Record<string, ColumnBuilderBase>, TDialect extends Dialect> = {
226
225
  [Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;
227
226
  } & {};
228
- export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
227
+ export type ChangeColumnTableName<TColumn extends Column, TAlias extends string, TDialect extends Dialect> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>> : TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>> : never;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/column-builder.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { CockroachColumn, ExtraConfigColumn as CockroachExtraConfigColumn } from './cockroach-core/index.ts';\nimport type { Column, ColumnBaseConfig } from './column.ts';\nimport type { GelColumn, GelExtraConfigColumn } from './gel-core/index.ts';\nimport type { MsSqlColumn } from './mssql-core/index.ts';\nimport type { MySqlColumn } from './mysql-core/index.ts';\nimport type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from './pg-core/index.ts';\nimport type { SingleStoreColumn } from './singlestore-core/index.ts';\nimport type { SQL } from './sql/sql.ts';\nimport type { SQLiteColumn } from './sqlite-core/index.ts';\nimport type { Assume } from './utils.ts';\n\nexport type ColumnDataType =\n\t| 'array'\n\t| 'bigint'\n\t| 'boolean'\n\t| 'custom'\n\t| 'number'\n\t| 'object'\n\t| 'string';\n\nexport type ColumnDataArrayConstraint =\n\t| 'vector'\n\t| 'int64vector'\n\t| 'halfvector'\n\t| 'basecolumn'\n\t| 'point'\n\t| 'geometry'\n\t| 'line';\n\nexport type ColumnDataBigIntConstraint = 'int64' | 'uint64';\n\nexport type ColumnDataNumberConstraint =\n\t| 'double'\n\t| 'float'\n\t| 'int8'\n\t| 'int16'\n\t| 'int24'\n\t| 'int32'\n\t| 'int53'\n\t| 'udouble'\n\t| 'ufloat'\n\t| 'uint8'\n\t| 'uint16'\n\t| 'uint24'\n\t| 'uint32'\n\t| 'uint53'\n\t| 'unsigned'\n\t| 'year';\n\nexport type ColumnDataObjectConstraint =\n\t| 'buffer'\n\t| 'date'\n\t| 'geometry'\n\t| 'json'\n\t| 'line'\n\t| 'point'\n\t// Gel-specific\n\t| 'dateDuration'\n\t| 'duration'\n\t| 'localDate'\n\t| 'localDateTime'\n\t| 'localTime'\n\t| 'relDuration';\n\nexport type ColumnDataStringConstraint =\n\t| 'binary'\n\t| 'cidr'\n\t| 'date'\n\t| 'datetime'\n\t| 'enum'\n\t| 'inet'\n\t| 'int64'\n\t| 'interval'\n\t| 'macaddr'\n\t| 'macaddr8'\n\t| 'numeric'\n\t| 'sparsevec'\n\t| 'time'\n\t| 'timestamp'\n\t| 'unumeric'\n\t| 'uuid';\n\nexport type ColumnDataConstraint =\n\t| ColumnDataArrayConstraint\n\t| ColumnDataBigIntConstraint\n\t| ColumnDataNumberConstraint\n\t| ColumnDataObjectConstraint\n\t| ColumnDataStringConstraint;\n\nexport type ColumnType =\n\t| ColumnDataType\n\t| `array ${ColumnDataArrayConstraint}`\n\t| `bigint ${ColumnDataBigIntConstraint}`\n\t| `number ${ColumnDataNumberConstraint}`\n\t| `object ${ColumnDataObjectConstraint}`\n\t| `string ${ColumnDataStringConstraint}`;\n\nexport interface ColumnTypeData<\n\tTType extends ColumnDataType = ColumnDataType,\n\tTConstraint extends ColumnDataConstraint | undefined = ColumnDataConstraint | undefined,\n> {\n\ttype: TType;\n\tconstraint: TConstraint;\n}\n\nexport type ExtractColumnTypeData<T extends ColumnType> = T extends\n\t`${infer Type extends ColumnDataType} ${infer Constraint extends ColumnDataConstraint}`\n\t? ColumnTypeData<Type, Constraint>\n\t: ColumnTypeData<Assume<T, ColumnDataType>, undefined>;\n\nexport function extractExtendedColumnType<TColumn extends Column>(\n\tcolumn: TColumn,\n): ExtractColumnTypeData<TColumn['_']['dataType']> {\n\tconst [type, constraint] = column.dataType.split(' ');\n\n\treturn { type, constraint } as any;\n}\n\nexport type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'mssql' | 'common' | 'gel' | 'cockroach';\n\n// TODO update description\n// 'virtual' | 'stored' for postgres\n// 'stored' for mysql\n// 'virtual' | 'persisted' for mssql\n// We should remove this option from common Column and store it per dialect common\n// Was discussed with Andrew\nexport type GeneratedStorageMode = 'virtual' | 'stored' | 'persisted';\n\nexport type GeneratedType = 'always' | 'byDefault';\n\nexport interface GeneratedColumnConfig<TDataType> {\n\tas: TDataType | SQL | (() => SQL);\n\ttype?: GeneratedType;\n\tmode?: GeneratedStorageMode;\n}\n\nexport interface GeneratedIdentityConfig {\n\tsequenceName?: string;\n\tsequenceOptions?: PgSequenceOptions;\n\ttype: 'always' | 'byDefault';\n}\n\nexport interface ColumnBuilderBaseConfig<TDataType extends ColumnType> {\n\tdataType: TDataType;\n\tdata: unknown;\n\tdriverParam: unknown;\n\tnotNull?: boolean;\n\thasDefault?: boolean;\n}\n\nexport type MakeColumnConfig<\n\tT extends ColumnBuilderBaseConfig<ColumnType>,\n\tTTableName extends string,\n\tTDialect extends Dialect = 'common',\n\tTData = T extends { $type: infer U } ? U : T['data'],\n> = {\n\tname: string;\n\ttableName: TTableName;\n\tdataType: T['dataType'];\n\tdata: TData;\n\tdriverParam: T['driverParam'];\n\tnotNull: T['notNull'] extends true ? true : false;\n\thasDefault: T['hasDefault'] extends true ? true : false;\n\tisPrimaryKey: T extends { isPrimaryKey: true } ? true : false;\n\tisAutoincrement: T extends { isAutoincrement: true } ? true : false;\n\thasRuntimeDefault: T extends { hasRuntimeDefault: true } ? true : false;\n\tenumValues: T extends { enumValues: [string, ...string[]] } ? T['enumValues'] : undefined;\n\tbaseColumn: T extends { baseBuilder: infer U extends ColumnBuilderBase } ? BuildColumn<TTableName, U, TDialect>\n\t\t: never;\n\tidentity: T extends { identity: 'always' } ? 'always' : T extends { identity: 'byDefault' } ? 'byDefault' : undefined;\n\tgenerated: T extends { generated: infer G } ? unknown extends G ? undefined\n\t\t: G extends undefined ? undefined\n\t\t: G\n\t\t: undefined;\n} & {};\n\nexport interface ColumnBuilderRuntimeConfig<TData> {\n\tname: string;\n\tkeyAsName: boolean;\n\tnotNull: boolean;\n\tdefault: TData | SQL | undefined;\n\tdefaultFn: (() => TData | SQL) | undefined;\n\tonUpdateFn: (() => TData | SQL) | undefined;\n\thasDefault: boolean;\n\tprimaryKey: boolean;\n\tisUnique: boolean;\n\tuniqueName: string | undefined;\n\tuniqueType: string | undefined;\n\tdataType: string;\n\tcolumnType: string;\n\tgenerated: GeneratedColumnConfig<TData> | undefined;\n\tgeneratedIdentity: GeneratedIdentityConfig | undefined;\n}\n\nexport interface ColumnBuilderExtraConfig {\n\tprimaryKeyHasDefault?: boolean;\n}\n\nexport type NotNull<T> = T & {\n\t_: {\n\t\tnotNull: true;\n\t};\n};\n\nexport type HasDefault<T> = T & {\n\t_: {\n\t\thasDefault: true;\n\t};\n};\n\nexport type IsPrimaryKey<T> = T & {\n\t_: {\n\t\tisPrimaryKey: true;\n\t\tnotNull: true;\n\t};\n};\n\nexport type IsAutoincrement<T> = T & {\n\t_: {\n\t\tisAutoincrement: true;\n\t};\n};\n\nexport type HasRuntimeDefault<T> = T & {\n\t_: {\n\t\thasRuntimeDefault: true;\n\t};\n};\n\nexport type $Type<T, TType> = T & {\n\t_: {\n\t\t$type: TType;\n\t};\n};\n\nexport type HasGenerated<T, TGenerated = {}> = T & {\n\t_: {\n\t\thasDefault: true;\n\t\tgenerated: TGenerated;\n\t};\n};\n\nexport type IsIdentity<T, TType extends 'always' | 'byDefault'> = T & {\n\t_: {\n\t\tnotNull: true;\n\t\thasDefault: true;\n\t\tidentity: TType;\n\t};\n};\n\nexport interface ColumnBuilderBase<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n> {\n\t_: T;\n}\n\n// To understand how to use `ColumnBuilder` and `AnyColumnBuilder`, see `Column` and `AnyColumn` documentation.\nexport abstract class ColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> implements ColumnBuilderBase<T> {\n\tstatic readonly [entityKind]: string = 'ColumnBuilder';\n\n\tdeclare _: T;\n\n\t/** @internal */\n\tprotected config: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig;\n\n\tconstructor(name: string, dataType: ColumnType, columnType: string) {\n\t\tthis.config = {\n\t\t\tname,\n\t\t\tkeyAsName: name === '',\n\t\t\tnotNull: false,\n\t\t\tdefault: undefined,\n\t\t\thasDefault: false,\n\t\t\tprimaryKey: false,\n\t\t\tisUnique: false,\n\t\t\tuniqueName: undefined,\n\t\t\tuniqueType: undefined,\n\t\t\tdataType,\n\t\t\tcolumnType,\n\t\t\tgenerated: undefined,\n\t\t} as ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig; // TODO: ??\n\t}\n\n\t/**\n\t * Changes the data type of the column. Commonly used with `json` columns. Also, useful for branded types.\n\t *\n\t * @example\n\t * ```ts\n\t * const users = pgTable('users', {\n\t * \tid: integer('id').$type<UserId>().primaryKey(),\n\t * \tdetails: json('details').$type<UserDetails>().notNull(),\n\t * });\n\t * ```\n\t */\n\t$type<TType>(): $Type<this, TType> {\n\t\treturn this as $Type<this, TType>;\n\t}\n\n\t/**\n\t * Adds a `not null` clause to the column definition.\n\t *\n\t * Affects the `select` model of the table - columns *without* `not null` will be nullable on select.\n\t */\n\tnotNull(): NotNull<this> {\n\t\tthis.config.notNull = true;\n\t\treturn this as NotNull<this>;\n\t}\n\n\t/**\n\t * Adds a `default <value>` clause to the column definition.\n\t *\n\t * Affects the `insert` model of the table - columns *with* `default` are optional on insert.\n\t *\n\t * If you need to set a dynamic default value, use {@link $defaultFn} instead.\n\t */\n\tdefault(value: (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL): HasDefault<this> {\n\t\tthis.config.default = value;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Adds a dynamic default value to the column.\n\t * The function will be called when the row is inserted, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$defaultFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasRuntimeDefault<HasDefault<this>> {\n\t\tthis.config.defaultFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasRuntimeDefault<HasDefault<this>>;\n\t}\n\n\t/**\n\t * Alias for {@link $defaultFn}.\n\t */\n\t$default = this.$defaultFn;\n\n\t/**\n\t * Adds a dynamic update value to the column.\n\t * The function will be called when the row is updated, and the returned value will be used as the column value if none is provided.\n\t * If no `default` (or `$defaultFn`) value is provided, the function will be called when the row is inserted as well, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$onUpdateFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasDefault<this> {\n\t\tthis.config.onUpdateFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Alias for {@link $onUpdateFn}.\n\t */\n\t$onUpdate = this.$onUpdateFn;\n\n\t/**\n\t * Adds a `primary key` clause to the column definition. This implicitly makes the column `not null`.\n\t *\n\t * In SQLite, `integer primary key` implicitly makes the column auto-incrementing.\n\t */\n\tprimaryKey(): TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<this>>\n\t\t: IsPrimaryKey<this>\n\t{\n\t\tthis.config.primaryKey = true;\n\t\tthis.config.notNull = true;\n\t\treturn this as TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<this>>\n\t\t\t: IsPrimaryKey<this>;\n\t}\n\n\tabstract generatedAlwaysAs(\n\t\tas: SQL | T['data'] | (() => SQL),\n\t\tconfig?: Partial<GeneratedColumnConfig<unknown>>,\n\t): HasGenerated<this, {\n\t\ttype: 'always';\n\t}>;\n\n\t/** @internal Sets the name of the column to the key within the table definition if a name was not given. */\n\tsetName(name: string) {\n\t\tif (this.config.name !== '') return;\n\t\tthis.config.name = name;\n\t}\n}\n\nexport type BuildColumn<\n\tTTableName extends string,\n\tTBuilder extends ColumnBuilderBase,\n\tTDialect extends Dialect,\n\tTBuiltConfig extends ColumnBaseConfig<ColumnType> = MakeColumnConfig<TBuilder['_'], TTableName, TDialect>,\n> = TDialect extends 'pg' ? PgColumn<TBuiltConfig, {}>\n\t: TDialect extends 'mysql' ? MySqlColumn<TBuiltConfig, {}>\n\t: TDialect extends 'mssql' ? MsSqlColumn<TBuiltConfig, {}>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<TBuiltConfig, {}>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<TBuiltConfig, {}>\n\t: TDialect extends 'gel' ? GelColumn<TBuiltConfig, {}>\n\t: TDialect extends 'cockroach' ? CockroachColumn<TBuiltConfig, {}>\n\t: TDialect extends 'common' ? Column<TBuiltConfig, {}>\n\t: never;\n\nexport type BuildIndexColumn<\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? ExtraConfigColumn\n\t: TDialect extends 'cockroach' ? CockroachExtraConfigColumn\n\t: TDialect extends 'gel' ? GelExtraConfigColumn\n\t: never;\n\n// TODO\n// try to make sql as well + indexRaw\n\n// optional after everything will be working as expected\n// also try to leave only needed methods for extraConfig\n// make an error if I pass .asc() to fk and so on\n\nexport type BuildColumns<\n\tTTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildColumn<\n\t\t\tTTableName,\n\t\t\tTConfigMap[Key],\n\t\t\tTDialect\n\t\t>;\n\t}\n\t& {};\n\nexport type BuildExtraConfigColumns<\n\t_TTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;\n\t}\n\t& {};\n\nexport type ChangeColumnTableName<\n\tTColumn extends Column,\n\tTAlias extends string,\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'mssql' ? MsSqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'cockroach' ? CockroachColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: never;\n"],"mappings":"AAAA,SAAS,kBAAkB;AA+GpB,SAAS,0BACf,QACkD;AAClD,QAAM,CAAC,MAAM,UAAU,IAAI,OAAO,SAAS,MAAM,GAAG;AAEpD,SAAO,EAAE,MAAM,WAAW;AAC3B;AA6IO,MAAe,cAIY;AAAA,EACjC,QAAiB,UAAU,IAAY;AAAA;AAAA,EAK7B;AAAA,EAEV,YAAY,MAAc,UAAsB,YAAoB;AACnE,SAAK,SAAS;AAAA,MACb;AAAA,MACA,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,MACT,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IACZ;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,QAAmC;AAClC,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAyB;AACxB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,OAA+F;AACtG,SAAK,OAAO,UAAU;AACtB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WACC,IACsC;AACtC,SAAK,OAAO,YAAY;AACxB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAShB,YACC,IACmB;AACnB,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjB,aAEA;AACC,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EAER;AAAA;AAAA,EAUA,QAAQ,MAAc;AACrB,QAAI,KAAK,OAAO,SAAS,GAAI;AAC7B,SAAK,OAAO,OAAO;AAAA,EACpB;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/column-builder.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { Column, ColumnBaseConfig } from './column.ts';\nimport type { GelColumn, GelExtraConfigColumn } from './gel-core/index.ts';\nimport type { MySqlColumn } from './mysql-core/index.ts';\nimport type { ExtraConfigColumn, PgColumn, PgSequenceOptions } from './pg-core/index.ts';\nimport type { SingleStoreColumn } from './singlestore-core/index.ts';\nimport type { SQL } from './sql/sql.ts';\nimport type { SQLiteColumn } from './sqlite-core/index.ts';\nimport type { Assume } from './utils.ts';\n\nexport type ColumnDataType =\n\t| 'array'\n\t| 'bigint'\n\t| 'boolean'\n\t| 'custom'\n\t| 'number'\n\t| 'object'\n\t| 'string';\n\nexport type ColumnDataArrayConstraint =\n\t| 'vector'\n\t| 'int64vector'\n\t| 'halfvector'\n\t| 'basecolumn'\n\t| 'point'\n\t| 'geometry'\n\t| 'line';\n\nexport type ColumnDataBigIntConstraint = 'int64' | 'uint64';\n\nexport type ColumnDataNumberConstraint =\n\t| 'double'\n\t| 'float'\n\t| 'int8'\n\t| 'int16'\n\t| 'int24'\n\t| 'int32'\n\t| 'int53'\n\t| 'udouble'\n\t| 'ufloat'\n\t| 'uint8'\n\t| 'uint16'\n\t| 'uint24'\n\t| 'uint32'\n\t| 'uint53'\n\t| 'unsigned'\n\t| 'year';\n\nexport type ColumnDataObjectConstraint =\n\t| 'buffer'\n\t| 'date'\n\t| 'geometry'\n\t| 'json'\n\t| 'line'\n\t| 'point'\n\t// Gel-specific\n\t| 'dateDuration'\n\t| 'duration'\n\t| 'localDate'\n\t| 'localDateTime'\n\t| 'localTime'\n\t| 'relDuration';\n\nexport type ColumnDataStringConstraint =\n\t| 'text'\n\t| 'binary'\n\t| 'cidr'\n\t| 'date'\n\t| 'datetime'\n\t| 'enum'\n\t| 'inet'\n\t| 'interval'\n\t| 'macaddr'\n\t| 'macaddr8'\n\t| 'numeric'\n\t| 'sparsevec'\n\t| 'time'\n\t| 'timestamp'\n\t| 'unumeric'\n\t| 'uuid';\n\nexport type ColumnDataConstraint =\n\t| ColumnDataArrayConstraint\n\t| ColumnDataBigIntConstraint\n\t| ColumnDataNumberConstraint\n\t| ColumnDataObjectConstraint\n\t| ColumnDataStringConstraint;\n\nexport type ColumnType =\n\t| ColumnDataType\n\t| `array ${ColumnDataArrayConstraint}`\n\t| `bigint ${ColumnDataBigIntConstraint}`\n\t| `number ${ColumnDataNumberConstraint}`\n\t| `object ${ColumnDataObjectConstraint}`\n\t| `string ${ColumnDataStringConstraint}`;\n\nexport interface ColumnTypeData<\n\tTType extends ColumnDataType = ColumnDataType,\n\tTConstraint extends ColumnDataConstraint | undefined = ColumnDataConstraint | undefined,\n> {\n\ttype: TType;\n\tconstraint: TConstraint;\n}\n\nexport type ExtractColumnTypeData<T extends ColumnType> = T extends\n\t`${infer Type extends ColumnDataType} ${infer Constraint extends ColumnDataConstraint}`\n\t? ColumnTypeData<Type, Constraint>\n\t: ColumnTypeData<Assume<T, ColumnDataType>, undefined>;\n\nexport function extractExtendedColumnType<TColumn extends Column>(\n\tcolumn: TColumn,\n): ExtractColumnTypeData<TColumn['_']['dataType']> {\n\tconst [type, constraint] = column.dataType.split(' ');\n\n\treturn { type, constraint } as any;\n}\n\nexport type Dialect = 'pg' | 'mysql' | 'sqlite' | 'singlestore' | 'common' | 'gel';\n\nexport type GeneratedStorageMode = 'virtual' | 'stored';\n\nexport type GeneratedType = 'always' | 'byDefault';\n\nexport interface GeneratedColumnConfig<TDataType> {\n\tas: TDataType | SQL | (() => SQL);\n\ttype?: GeneratedType;\n\tmode?: GeneratedStorageMode;\n}\n\nexport interface GeneratedIdentityConfig {\n\tsequenceName?: string;\n\tsequenceOptions?: PgSequenceOptions;\n\ttype: 'always' | 'byDefault';\n}\n\nexport interface ColumnBuilderBaseConfig<TDataType extends ColumnType> {\n\tname: string;\n\tdataType: TDataType;\n\tdata: unknown;\n\tdriverParam: unknown;\n\tnotNull?: boolean;\n\thasDefault?: boolean;\n}\n\nexport type MakeColumnConfig<\n\tT extends ColumnBuilderBaseConfig<ColumnType>,\n\tTTableName extends string,\n\tTDialect extends Dialect = 'common',\n\tTData = T extends { $type: infer U } ? U : T['data'],\n> = {\n\tname: string;\n\ttableName: TTableName;\n\tdataType: T['dataType'];\n\tdata: TData;\n\tdriverParam: T['driverParam'];\n\tnotNull: T['notNull'] extends true ? true : false;\n\thasDefault: T['hasDefault'] extends true ? true : false;\n\tisPrimaryKey: T extends { isPrimaryKey: true } ? true : false;\n\tisAutoincrement: T extends { isAutoincrement: true } ? true : false;\n\thasRuntimeDefault: T extends { hasRuntimeDefault: true } ? true : false;\n\tenumValues: T extends { enumValues: [string, ...string[]] } ? T['enumValues'] : undefined;\n\tbaseColumn: T extends { baseBuilder: infer U extends ColumnBuilderBase } ? BuildColumn<TTableName, U, TDialect>\n\t\t: never;\n\tidentity: T extends { identity: 'always' } ? 'always' : T extends { identity: 'byDefault' } ? 'byDefault' : undefined;\n\tgenerated: T extends { generated: infer G } ? unknown extends G ? undefined\n\t\t: G extends undefined ? undefined\n\t\t: G\n\t\t: undefined;\n} & {};\n\nexport interface ColumnBuilderRuntimeConfig<TData> {\n\tname: string;\n\tkeyAsName: boolean;\n\tnotNull: boolean;\n\tdefault: TData | SQL | undefined;\n\tdefaultFn: (() => TData | SQL) | undefined;\n\tonUpdateFn: (() => TData | SQL) | undefined;\n\thasDefault: boolean;\n\tprimaryKey: boolean;\n\tisUnique: boolean;\n\tuniqueName: string | undefined;\n\tuniqueType: string | undefined;\n\tdataType: string;\n\tcolumnType: string;\n\tgenerated: GeneratedColumnConfig<TData> | undefined;\n\tgeneratedIdentity: GeneratedIdentityConfig | undefined;\n}\n\nexport interface ColumnBuilderExtraConfig {\n\tprimaryKeyHasDefault?: boolean;\n}\n\nexport type NotNull<T> = T & {\n\t_: {\n\t\tnotNull: true;\n\t};\n};\n\nexport type HasDefault<T> = T & {\n\t_: {\n\t\thasDefault: true;\n\t};\n};\n\nexport type IsPrimaryKey<T> = T & {\n\t_: {\n\t\tisPrimaryKey: true;\n\t\tnotNull: true;\n\t};\n};\n\nexport type IsAutoincrement<T> = T & {\n\t_: {\n\t\tisAutoincrement: true;\n\t};\n};\n\nexport type HasRuntimeDefault<T> = T & {\n\t_: {\n\t\thasRuntimeDefault: true;\n\t};\n};\n\nexport type $Type<T, TType> = T & {\n\t_: {\n\t\t$type: TType;\n\t};\n};\n\nexport type HasGenerated<T, TGenerated> = T & {\n\t_: {\n\t\thasDefault: true;\n\t\tgenerated: TGenerated;\n\t};\n};\n\nexport type IsIdentity<T, TType extends 'always' | 'byDefault'> = T & {\n\t_: {\n\t\tnotNull: true;\n\t\thasDefault: true;\n\t\tidentity: TType;\n\t};\n};\n\nexport interface ColumnBuilderBase<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n> {\n\t_: T;\n}\n\n// To understand how to use `ColumnBuilder` and `AnyColumnBuilder`, see `Column` and `AnyColumn` documentation.\nexport abstract class ColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> implements ColumnBuilderBase<T> {\n\tstatic readonly [entityKind]: string = 'ColumnBuilder';\n\n\tdeclare _: T;\n\n\t/** @internal */\n\tprotected config: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig;\n\n\tconstructor(name: string, dataType: ColumnType, columnType: string) {\n\t\tthis.config = {\n\t\t\tname,\n\t\t\tkeyAsName: name === '',\n\t\t\tnotNull: false,\n\t\t\tdefault: undefined,\n\t\t\thasDefault: false,\n\t\t\tprimaryKey: false,\n\t\t\tisUnique: false,\n\t\t\tuniqueName: undefined,\n\t\t\tuniqueType: undefined,\n\t\t\tdataType,\n\t\t\tcolumnType,\n\t\t\tgenerated: undefined,\n\t\t} as ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig; // TODO: ??\n\t}\n\n\t/**\n\t * Changes the data type of the column. Commonly used with `json` columns. Also, useful for branded types.\n\t *\n\t * @example\n\t * ```ts\n\t * const users = pgTable('users', {\n\t * \tid: integer('id').$type<UserId>().primaryKey(),\n\t * \tdetails: json('details').$type<UserDetails>().notNull(),\n\t * });\n\t * ```\n\t */\n\t$type<TType>(): $Type<this, TType> {\n\t\treturn this as $Type<this, TType>;\n\t}\n\n\t/**\n\t * Adds a `not null` clause to the column definition.\n\t *\n\t * Affects the `select` model of the table - columns *without* `not null` will be nullable on select.\n\t */\n\tnotNull(): NotNull<this> {\n\t\tthis.config.notNull = true;\n\t\treturn this as NotNull<this>;\n\t}\n\n\t/**\n\t * Adds a `default <value>` clause to the column definition.\n\t *\n\t * Affects the `insert` model of the table - columns *with* `default` are optional on insert.\n\t *\n\t * If you need to set a dynamic default value, use {@link $defaultFn} instead.\n\t */\n\tdefault(value: (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL): HasDefault<this> {\n\t\tthis.config.default = value;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Adds a dynamic default value to the column.\n\t * The function will be called when the row is inserted, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$defaultFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasRuntimeDefault<HasDefault<this>> {\n\t\tthis.config.defaultFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasRuntimeDefault<HasDefault<this>>;\n\t}\n\n\t/**\n\t * Alias for {@link $defaultFn}.\n\t */\n\t$default = this.$defaultFn;\n\n\t/**\n\t * Adds a dynamic update value to the column.\n\t * The function will be called when the row is updated, and the returned value will be used as the column value if none is provided.\n\t * If no `default` (or `$defaultFn`) value is provided, the function will be called when the row is inserted as well, and the returned value will be used as the column value.\n\t *\n\t * **Note:** This value does not affect the `drizzle-kit` behavior, it is only used at runtime in `drizzle-orm`.\n\t */\n\t$onUpdateFn(\n\t\tfn: () => (this['_'] extends { $type: infer U } ? U : this['_']['data']) | SQL,\n\t): HasDefault<this> {\n\t\tthis.config.onUpdateFn = fn;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n\n\t/**\n\t * Alias for {@link $onUpdateFn}.\n\t */\n\t$onUpdate = this.$onUpdateFn;\n\n\t/**\n\t * Adds a `primary key` clause to the column definition. This implicitly makes the column `not null`.\n\t *\n\t * In SQLite, `integer primary key` implicitly makes the column auto-incrementing.\n\t */\n\tprimaryKey(): TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<this>>\n\t\t: IsPrimaryKey<this>\n\t{\n\t\tthis.config.primaryKey = true;\n\t\tthis.config.notNull = true;\n\t\treturn this as TExtraConfig['primaryKeyHasDefault'] extends true ? IsPrimaryKey<HasDefault<this>>\n\t\t\t: IsPrimaryKey<this>;\n\t}\n\n\tabstract generatedAlwaysAs(\n\t\tas: SQL | T['data'] | (() => SQL),\n\t\tconfig?: Partial<GeneratedColumnConfig<unknown>>,\n\t): HasGenerated<this, {\n\t\ttype: 'always';\n\t}>;\n\n\t/** @internal Sets the name of the column to the key within the table definition if a name was not given. */\n\tsetName(name: string) {\n\t\tif (this.config.name !== '') return;\n\t\tthis.config.name = name;\n\t}\n}\n\nexport type BuildColumn<\n\tTTableName extends string,\n\tTBuilder extends ColumnBuilderBase,\n\tTDialect extends Dialect,\n\tTBuiltConfig extends ColumnBaseConfig<ColumnType> = MakeColumnConfig<TBuilder['_'], TTableName, TDialect>,\n> = TDialect extends 'pg' ? PgColumn<TBuiltConfig, {}>\n\t: TDialect extends 'mysql' ? MySqlColumn<TBuiltConfig, {}>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<TBuiltConfig, {}>\n\t: TDialect extends 'common' ? Column<TBuiltConfig, {}>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<TBuiltConfig, {}>\n\t: TDialect extends 'gel' ? GelColumn<TBuiltConfig, {}>\n\t: never;\n\nexport type BuildIndexColumn<\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? ExtraConfigColumn\n\t: TDialect extends 'gel' ? GelExtraConfigColumn\n\t: never;\n\n// TODO\n// try to make sql as well + indexRaw\n\n// optional after everything will be working as expected\n// also try to leave only needed methods for extraConfig\n// make an error if I pass .asc() to fk and so on\n\nexport type BuildColumns<\n\tTTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildColumn<\n\t\t\tTTableName,\n\t\t\tTConfigMap[Key],\n\t\t\tTDialect\n\t\t>;\n\t}\n\t& {};\n\nexport type BuildExtraConfigColumns<\n\t_TTableName extends string,\n\tTConfigMap extends Record<string, ColumnBuilderBase>,\n\tTDialect extends Dialect,\n> =\n\t& {\n\t\t[Key in keyof TConfigMap]: BuildIndexColumn<TDialect>;\n\t}\n\t& {};\n\nexport type ChangeColumnTableName<\n\tTColumn extends Column,\n\tTAlias extends string,\n\tTDialect extends Dialect,\n> = TDialect extends 'pg' ? PgColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'mysql' ? MySqlColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'singlestore' ? SingleStoreColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'sqlite' ? SQLiteColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: TDialect extends 'gel' ? GelColumn<MakeColumnConfig<TColumn['_'], TAlias>>\n\t: never;\n"],"mappings":"AAAA,SAAS,kBAAkB;AA6GpB,SAAS,0BACf,QACkD;AAClD,QAAM,CAAC,MAAM,UAAU,IAAI,OAAO,SAAS,MAAM,GAAG;AAEpD,SAAO,EAAE,MAAM,WAAW;AAC3B;AAwIO,MAAe,cAIY;AAAA,EACjC,QAAiB,UAAU,IAAY;AAAA;AAAA,EAK7B;AAAA,EAEV,YAAY,MAAc,UAAsB,YAAoB;AACnE,SAAK,SAAS;AAAA,MACb;AAAA,MACA,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,MACT,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IACZ;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,QAAmC;AAClC,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAyB;AACxB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,OAA+F;AACtG,SAAK,OAAO,UAAU;AACtB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WACC,IACsC;AACtC,SAAK,OAAO,YAAY;AACxB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAShB,YACC,IACmB;AACnB,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjB,aAEA;AACC,SAAK,OAAO,aAAa;AACzB,SAAK,OAAO,UAAU;AACtB,WAAO;AAAA,EAER;AAAA;AAAA,EAUA,QAAQ,MAAc;AACrB,QAAI,KAAK,OAAO,SAAS,GAAI;AAC7B,SAAK,OAAO,OAAO;AAAA,EACpB;AACD;","names":[]}
@@ -21,29 +21,26 @@ __export(migrator_exports, {
21
21
  migrate: () => migrate
22
22
  });
23
23
  module.exports = __toCommonJS(migrator_exports);
24
- var import_migrator = require("../migrator.cjs");
25
24
  var import_sql = require("../sql/index.cjs");
26
- function readMigrationFiles({ migrations }) {
25
+ function readMigrationFiles({ journal, migrations }) {
27
26
  const migrationQueries = [];
28
- const sortedMigrations = Object.keys(migrations).sort();
29
- for (const key of sortedMigrations) {
30
- const query = migrations[key];
27
+ for (const journalEntry of journal.entries) {
28
+ const query = migrations[`m${journalEntry.idx.toString().padStart(4, "0")}`];
31
29
  if (!query) {
32
- throw new Error(`Missing migration: ${key}`);
30
+ throw new Error(`Missing migration: ${journalEntry.tag}`);
33
31
  }
34
32
  try {
35
33
  const result = query.split("--> statement-breakpoint").map((it) => {
36
34
  return it;
37
35
  });
38
- const migrationDate = (0, import_migrator.formatToMillis)(key.slice(0, 14));
39
36
  migrationQueries.push({
40
37
  sql: result,
41
- bps: true,
42
- folderMillis: migrationDate,
38
+ bps: journalEntry.breakpoints,
39
+ folderMillis: journalEntry.when,
43
40
  hash: ""
44
41
  });
45
42
  } catch {
46
- throw new Error(`Failed to parse migration: ${key}`);
43
+ throw new Error(`Failed to parse migration: ${journalEntry.tag}`);
47
44
  }
48
45
  }
49
46
  return migrationQueries;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/durable-sqlite/migrator.ts"],"sourcesContent":["import { formatToMillis, type MigrationMeta } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { sql } from '~/sql/index.ts';\nimport type { DrizzleSqliteDODatabase } from './driver.ts';\n\ninterface MigrationConfig {\n\tmigrations: Record<string, string>;\n}\n\nfunction readMigrationFiles({ migrations }: MigrationConfig): MigrationMeta[] {\n\tconst migrationQueries: MigrationMeta[] = [];\n\n\tconst sortedMigrations = Object.keys(migrations).sort();\n\n\tfor (const key of sortedMigrations) {\n\t\tconst query = migrations[key];\n\t\tif (!query) {\n\t\t\tthrow new Error(`Missing migration: ${key}`);\n\t\t}\n\n\t\ttry {\n\t\t\tconst result = query.split('--> statement-breakpoint').map((it) => {\n\t\t\t\treturn it;\n\t\t\t});\n\n\t\t\tconst migrationDate = formatToMillis(key.slice(0, 14));\n\n\t\t\tmigrationQueries.push({\n\t\t\t\tsql: result,\n\t\t\t\tbps: true,\n\t\t\t\tfolderMillis: migrationDate,\n\t\t\t\thash: '',\n\t\t\t});\n\t\t} catch {\n\t\t\tthrow new Error(`Failed to parse migration: ${key}`);\n\t\t}\n\t}\n\n\treturn migrationQueries;\n}\n\nexport async function migrate<\n\tTSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n>(\n\tdb: DrizzleSqliteDODatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n): Promise<void> {\n\tconst migrations = readMigrationFiles(config);\n\n\tdb.transaction((tx) => {\n\t\ttry {\n\t\t\tconst migrationsTable = '__drizzle_migrations';\n\n\t\t\tconst migrationTableCreate = sql`\n\t\t\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\t\t\tid SERIAL PRIMARY KEY,\n\t\t\t\t\thash text NOT NULL,\n\t\t\t\t\tcreated_at numeric\n\t\t\t\t)\n\t\t\t`;\n\t\t\tdb.run(migrationTableCreate);\n\n\t\t\tconst dbMigrations = db.values<[number, string, string]>(\n\t\t\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t\t\t);\n\n\t\t\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\t\t\tfor (const migration of migrations) {\n\t\t\t\tif (!lastDbMigration || Number(lastDbMigration[2])! < migration.folderMillis) {\n\t\t\t\t\tfor (const stmt of migration.sql) {\n\t\t\t\t\t\tdb.run(sql.raw(stmt));\n\t\t\t\t\t}\n\t\t\t\t\tdb.run(\n\t\t\t\t\t\tsql`INSERT INTO ${\n\t\t\t\t\t\t\tsql.identifier(migrationsTable)\n\t\t\t\t\t\t} (\"hash\", \"created_at\") VALUES(${migration.hash}, ${migration.folderMillis})`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error: any) {\n\t\t\ttx.rollback();\n\t\t\tthrow error;\n\t\t}\n\t});\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAmD;AAEnD,iBAAoB;AAOpB,SAAS,mBAAmB,EAAE,WAAW,GAAqC;AAC7E,QAAM,mBAAoC,CAAC;AAE3C,QAAM,mBAAmB,OAAO,KAAK,UAAU,EAAE,KAAK;AAEtD,aAAW,OAAO,kBAAkB;AACnC,UAAM,QAAQ,WAAW,GAAG;AAC5B,QAAI,CAAC,OAAO;AACX,YAAM,IAAI,MAAM,sBAAsB,GAAG,EAAE;AAAA,IAC5C;AAEA,QAAI;AACH,YAAM,SAAS,MAAM,MAAM,0BAA0B,EAAE,IAAI,CAAC,OAAO;AAClE,eAAO;AAAA,MACR,CAAC;AAED,YAAM,oBAAgB,gCAAe,IAAI,MAAM,GAAG,EAAE,CAAC;AAErD,uBAAiB,KAAK;AAAA,QACrB,KAAK;AAAA,QACL,KAAK;AAAA,QACL,cAAc;AAAA,QACd,MAAM;AAAA,MACP,CAAC;AAAA,IACF,QAAQ;AACP,YAAM,IAAI,MAAM,8BAA8B,GAAG,EAAE;AAAA,IACpD;AAAA,EACD;AAEA,SAAO;AACR;AAEA,eAAsB,QAIrB,IACA,QACgB;AAChB,QAAM,aAAa,mBAAmB,MAAM;AAE5C,KAAG,YAAY,CAAC,OAAO;AACtB,QAAI;AACH,YAAM,kBAAkB;AAExB,YAAM,uBAAuB;AAAA,iCACC,eAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAM7D,SAAG,IAAI,oBAAoB;AAE3B,YAAM,eAAe,GAAG;AAAA,QACvB,kDAAuC,eAAI,WAAW,eAAe,CAAC;AAAA,MACvE;AAEA,YAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,iBAAW,aAAa,YAAY;AACnC,YAAI,CAAC,mBAAmB,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAAc;AAC7E,qBAAW,QAAQ,UAAU,KAAK;AACjC,eAAG,IAAI,eAAI,IAAI,IAAI,CAAC;AAAA,UACrB;AACA,aAAG;AAAA,YACF,6BACC,eAAI,WAAW,eAAe,CAC/B,kCAAkC,UAAU,IAAI,KAAK,UAAU,YAAY;AAAA,UAC5E;AAAA,QACD;AAAA,MACD;AAAA,IACD,SAAS,OAAY;AACpB,SAAG,SAAS;AACZ,YAAM;AAAA,IACP;AAAA,EACD,CAAC;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/durable-sqlite/migrator.ts"],"sourcesContent":["import type { MigrationMeta } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { sql } from '~/sql/index.ts';\nimport type { DrizzleSqliteDODatabase } from './driver.ts';\n\ninterface MigrationConfig {\n\tjournal: {\n\t\tentries: { idx: number; when: number; tag: string; breakpoints: boolean }[];\n\t};\n\tmigrations: Record<string, string>;\n}\n\nfunction readMigrationFiles({ journal, migrations }: MigrationConfig): MigrationMeta[] {\n\tconst migrationQueries: MigrationMeta[] = [];\n\n\tfor (const journalEntry of journal.entries) {\n\t\tconst query = migrations[`m${journalEntry.idx.toString().padStart(4, '0')}`];\n\n\t\tif (!query) {\n\t\t\tthrow new Error(`Missing migration: ${journalEntry.tag}`);\n\t\t}\n\n\t\ttry {\n\t\t\tconst result = query.split('--> statement-breakpoint').map((it) => {\n\t\t\t\treturn it;\n\t\t\t});\n\n\t\t\tmigrationQueries.push({\n\t\t\t\tsql: result,\n\t\t\t\tbps: journalEntry.breakpoints,\n\t\t\t\tfolderMillis: journalEntry.when,\n\t\t\t\thash: '',\n\t\t\t});\n\t\t} catch {\n\t\t\tthrow new Error(`Failed to parse migration: ${journalEntry.tag}`);\n\t\t}\n\t}\n\n\treturn migrationQueries;\n}\n\nexport async function migrate<\n\tTSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n>(\n\tdb: DrizzleSqliteDODatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n): Promise<void> {\n\tconst migrations = readMigrationFiles(config);\n\n\tdb.transaction((tx) => {\n\t\ttry {\n\t\t\tconst migrationsTable = '__drizzle_migrations';\n\n\t\t\tconst migrationTableCreate = sql`\n\t\t\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\t\t\tid SERIAL PRIMARY KEY,\n\t\t\t\t\thash text NOT NULL,\n\t\t\t\t\tcreated_at numeric\n\t\t\t\t)\n\t\t\t`;\n\t\t\tdb.run(migrationTableCreate);\n\n\t\t\tconst dbMigrations = db.values<[number, string, string]>(\n\t\t\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t\t\t);\n\n\t\t\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\t\t\tfor (const migration of migrations) {\n\t\t\t\tif (!lastDbMigration || Number(lastDbMigration[2])! < migration.folderMillis) {\n\t\t\t\t\tfor (const stmt of migration.sql) {\n\t\t\t\t\t\tdb.run(sql.raw(stmt));\n\t\t\t\t\t}\n\t\t\t\t\tdb.run(\n\t\t\t\t\t\tsql`INSERT INTO ${\n\t\t\t\t\t\t\tsql.identifier(migrationsTable)\n\t\t\t\t\t\t} (\"hash\", \"created_at\") VALUES(${migration.hash}, ${migration.folderMillis})`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error: any) {\n\t\t\ttx.rollback();\n\t\t\tthrow error;\n\t\t}\n\t});\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,iBAAoB;AAUpB,SAAS,mBAAmB,EAAE,SAAS,WAAW,GAAqC;AACtF,QAAM,mBAAoC,CAAC;AAE3C,aAAW,gBAAgB,QAAQ,SAAS;AAC3C,UAAM,QAAQ,WAAW,IAAI,aAAa,IAAI,SAAS,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE;AAE3E,QAAI,CAAC,OAAO;AACX,YAAM,IAAI,MAAM,sBAAsB,aAAa,GAAG,EAAE;AAAA,IACzD;AAEA,QAAI;AACH,YAAM,SAAS,MAAM,MAAM,0BAA0B,EAAE,IAAI,CAAC,OAAO;AAClE,eAAO;AAAA,MACR,CAAC;AAED,uBAAiB,KAAK;AAAA,QACrB,KAAK;AAAA,QACL,KAAK,aAAa;AAAA,QAClB,cAAc,aAAa;AAAA,QAC3B,MAAM;AAAA,MACP,CAAC;AAAA,IACF,QAAQ;AACP,YAAM,IAAI,MAAM,8BAA8B,aAAa,GAAG,EAAE;AAAA,IACjE;AAAA,EACD;AAEA,SAAO;AACR;AAEA,eAAsB,QAIrB,IACA,QACgB;AAChB,QAAM,aAAa,mBAAmB,MAAM;AAE5C,KAAG,YAAY,CAAC,OAAO;AACtB,QAAI;AACH,YAAM,kBAAkB;AAExB,YAAM,uBAAuB;AAAA,iCACC,eAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAM7D,SAAG,IAAI,oBAAoB;AAE3B,YAAM,eAAe,GAAG;AAAA,QACvB,kDAAuC,eAAI,WAAW,eAAe,CAAC;AAAA,MACvE;AAEA,YAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,iBAAW,aAAa,YAAY;AACnC,YAAI,CAAC,mBAAmB,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAAc;AAC7E,qBAAW,QAAQ,UAAU,KAAK;AACjC,eAAG,IAAI,eAAI,IAAI,IAAI,CAAC;AAAA,UACrB;AACA,aAAG;AAAA,YACF,6BACC,eAAI,WAAW,eAAe,CAC/B,kCAAkC,UAAU,IAAI,KAAK,UAAU,YAAY;AAAA,UAC5E;AAAA,QACD;AAAA,MACD;AAAA,IACD,SAAS,OAAY;AACpB,SAAG,SAAS;AACZ,YAAM;AAAA,IACP;AAAA,EACD,CAAC;AACF;","names":[]}
@@ -1,6 +1,14 @@
1
1
  import type { AnyRelations } from "../relations.cjs";
2
2
  import type { DrizzleSqliteDODatabase } from "./driver.cjs";
3
3
  interface MigrationConfig {
4
+ journal: {
5
+ entries: {
6
+ idx: number;
7
+ when: number;
8
+ tag: string;
9
+ breakpoints: boolean;
10
+ }[];
11
+ };
4
12
  migrations: Record<string, string>;
5
13
  }
6
14
  export declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: DrizzleSqliteDODatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void>;
@@ -1,6 +1,14 @@
1
1
  import type { AnyRelations } from "../relations.js";
2
2
  import type { DrizzleSqliteDODatabase } from "./driver.js";
3
3
  interface MigrationConfig {
4
+ journal: {
5
+ entries: {
6
+ idx: number;
7
+ when: number;
8
+ tag: string;
9
+ breakpoints: boolean;
10
+ }[];
11
+ };
4
12
  migrations: Record<string, string>;
5
13
  }
6
14
  export declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: DrizzleSqliteDODatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void>;
@@ -1,26 +1,23 @@
1
- import { formatToMillis } from "../migrator.js";
2
1
  import { sql } from "../sql/index.js";
3
- function readMigrationFiles({ migrations }) {
2
+ function readMigrationFiles({ journal, migrations }) {
4
3
  const migrationQueries = [];
5
- const sortedMigrations = Object.keys(migrations).sort();
6
- for (const key of sortedMigrations) {
7
- const query = migrations[key];
4
+ for (const journalEntry of journal.entries) {
5
+ const query = migrations[`m${journalEntry.idx.toString().padStart(4, "0")}`];
8
6
  if (!query) {
9
- throw new Error(`Missing migration: ${key}`);
7
+ throw new Error(`Missing migration: ${journalEntry.tag}`);
10
8
  }
11
9
  try {
12
10
  const result = query.split("--> statement-breakpoint").map((it) => {
13
11
  return it;
14
12
  });
15
- const migrationDate = formatToMillis(key.slice(0, 14));
16
13
  migrationQueries.push({
17
14
  sql: result,
18
- bps: true,
19
- folderMillis: migrationDate,
15
+ bps: journalEntry.breakpoints,
16
+ folderMillis: journalEntry.when,
20
17
  hash: ""
21
18
  });
22
19
  } catch {
23
- throw new Error(`Failed to parse migration: ${key}`);
20
+ throw new Error(`Failed to parse migration: ${journalEntry.tag}`);
24
21
  }
25
22
  }
26
23
  return migrationQueries;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/durable-sqlite/migrator.ts"],"sourcesContent":["import { formatToMillis, type MigrationMeta } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { sql } from '~/sql/index.ts';\nimport type { DrizzleSqliteDODatabase } from './driver.ts';\n\ninterface MigrationConfig {\n\tmigrations: Record<string, string>;\n}\n\nfunction readMigrationFiles({ migrations }: MigrationConfig): MigrationMeta[] {\n\tconst migrationQueries: MigrationMeta[] = [];\n\n\tconst sortedMigrations = Object.keys(migrations).sort();\n\n\tfor (const key of sortedMigrations) {\n\t\tconst query = migrations[key];\n\t\tif (!query) {\n\t\t\tthrow new Error(`Missing migration: ${key}`);\n\t\t}\n\n\t\ttry {\n\t\t\tconst result = query.split('--> statement-breakpoint').map((it) => {\n\t\t\t\treturn it;\n\t\t\t});\n\n\t\t\tconst migrationDate = formatToMillis(key.slice(0, 14));\n\n\t\t\tmigrationQueries.push({\n\t\t\t\tsql: result,\n\t\t\t\tbps: true,\n\t\t\t\tfolderMillis: migrationDate,\n\t\t\t\thash: '',\n\t\t\t});\n\t\t} catch {\n\t\t\tthrow new Error(`Failed to parse migration: ${key}`);\n\t\t}\n\t}\n\n\treturn migrationQueries;\n}\n\nexport async function migrate<\n\tTSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n>(\n\tdb: DrizzleSqliteDODatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n): Promise<void> {\n\tconst migrations = readMigrationFiles(config);\n\n\tdb.transaction((tx) => {\n\t\ttry {\n\t\t\tconst migrationsTable = '__drizzle_migrations';\n\n\t\t\tconst migrationTableCreate = sql`\n\t\t\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\t\t\tid SERIAL PRIMARY KEY,\n\t\t\t\t\thash text NOT NULL,\n\t\t\t\t\tcreated_at numeric\n\t\t\t\t)\n\t\t\t`;\n\t\t\tdb.run(migrationTableCreate);\n\n\t\t\tconst dbMigrations = db.values<[number, string, string]>(\n\t\t\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t\t\t);\n\n\t\t\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\t\t\tfor (const migration of migrations) {\n\t\t\t\tif (!lastDbMigration || Number(lastDbMigration[2])! < migration.folderMillis) {\n\t\t\t\t\tfor (const stmt of migration.sql) {\n\t\t\t\t\t\tdb.run(sql.raw(stmt));\n\t\t\t\t\t}\n\t\t\t\t\tdb.run(\n\t\t\t\t\t\tsql`INSERT INTO ${\n\t\t\t\t\t\t\tsql.identifier(migrationsTable)\n\t\t\t\t\t\t} (\"hash\", \"created_at\") VALUES(${migration.hash}, ${migration.folderMillis})`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error: any) {\n\t\t\ttx.rollback();\n\t\t\tthrow error;\n\t\t}\n\t});\n}\n"],"mappings":"AAAA,SAAS,sBAA0C;AAEnD,SAAS,WAAW;AAOpB,SAAS,mBAAmB,EAAE,WAAW,GAAqC;AAC7E,QAAM,mBAAoC,CAAC;AAE3C,QAAM,mBAAmB,OAAO,KAAK,UAAU,EAAE,KAAK;AAEtD,aAAW,OAAO,kBAAkB;AACnC,UAAM,QAAQ,WAAW,GAAG;AAC5B,QAAI,CAAC,OAAO;AACX,YAAM,IAAI,MAAM,sBAAsB,GAAG,EAAE;AAAA,IAC5C;AAEA,QAAI;AACH,YAAM,SAAS,MAAM,MAAM,0BAA0B,EAAE,IAAI,CAAC,OAAO;AAClE,eAAO;AAAA,MACR,CAAC;AAED,YAAM,gBAAgB,eAAe,IAAI,MAAM,GAAG,EAAE,CAAC;AAErD,uBAAiB,KAAK;AAAA,QACrB,KAAK;AAAA,QACL,KAAK;AAAA,QACL,cAAc;AAAA,QACd,MAAM;AAAA,MACP,CAAC;AAAA,IACF,QAAQ;AACP,YAAM,IAAI,MAAM,8BAA8B,GAAG,EAAE;AAAA,IACpD;AAAA,EACD;AAEA,SAAO;AACR;AAEA,eAAsB,QAIrB,IACA,QACgB;AAChB,QAAM,aAAa,mBAAmB,MAAM;AAE5C,KAAG,YAAY,CAAC,OAAO;AACtB,QAAI;AACH,YAAM,kBAAkB;AAExB,YAAM,uBAAuB;AAAA,iCACC,IAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAM7D,SAAG,IAAI,oBAAoB;AAE3B,YAAM,eAAe,GAAG;AAAA,QACvB,uCAAuC,IAAI,WAAW,eAAe,CAAC;AAAA,MACvE;AAEA,YAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,iBAAW,aAAa,YAAY;AACnC,YAAI,CAAC,mBAAmB,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAAc;AAC7E,qBAAW,QAAQ,UAAU,KAAK;AACjC,eAAG,IAAI,IAAI,IAAI,IAAI,CAAC;AAAA,UACrB;AACA,aAAG;AAAA,YACF,kBACC,IAAI,WAAW,eAAe,CAC/B,kCAAkC,UAAU,IAAI,KAAK,UAAU,YAAY;AAAA,UAC5E;AAAA,QACD;AAAA,MACD;AAAA,IACD,SAAS,OAAY;AACpB,SAAG,SAAS;AACZ,YAAM;AAAA,IACP;AAAA,EACD,CAAC;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/durable-sqlite/migrator.ts"],"sourcesContent":["import type { MigrationMeta } from '~/migrator.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { sql } from '~/sql/index.ts';\nimport type { DrizzleSqliteDODatabase } from './driver.ts';\n\ninterface MigrationConfig {\n\tjournal: {\n\t\tentries: { idx: number; when: number; tag: string; breakpoints: boolean }[];\n\t};\n\tmigrations: Record<string, string>;\n}\n\nfunction readMigrationFiles({ journal, migrations }: MigrationConfig): MigrationMeta[] {\n\tconst migrationQueries: MigrationMeta[] = [];\n\n\tfor (const journalEntry of journal.entries) {\n\t\tconst query = migrations[`m${journalEntry.idx.toString().padStart(4, '0')}`];\n\n\t\tif (!query) {\n\t\t\tthrow new Error(`Missing migration: ${journalEntry.tag}`);\n\t\t}\n\n\t\ttry {\n\t\t\tconst result = query.split('--> statement-breakpoint').map((it) => {\n\t\t\t\treturn it;\n\t\t\t});\n\n\t\t\tmigrationQueries.push({\n\t\t\t\tsql: result,\n\t\t\t\tbps: journalEntry.breakpoints,\n\t\t\t\tfolderMillis: journalEntry.when,\n\t\t\t\thash: '',\n\t\t\t});\n\t\t} catch {\n\t\t\tthrow new Error(`Failed to parse migration: ${journalEntry.tag}`);\n\t\t}\n\t}\n\n\treturn migrationQueries;\n}\n\nexport async function migrate<\n\tTSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n>(\n\tdb: DrizzleSqliteDODatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n): Promise<void> {\n\tconst migrations = readMigrationFiles(config);\n\n\tdb.transaction((tx) => {\n\t\ttry {\n\t\t\tconst migrationsTable = '__drizzle_migrations';\n\n\t\t\tconst migrationTableCreate = sql`\n\t\t\t\tCREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (\n\t\t\t\t\tid SERIAL PRIMARY KEY,\n\t\t\t\t\thash text NOT NULL,\n\t\t\t\t\tcreated_at numeric\n\t\t\t\t)\n\t\t\t`;\n\t\t\tdb.run(migrationTableCreate);\n\n\t\t\tconst dbMigrations = db.values<[number, string, string]>(\n\t\t\t\tsql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,\n\t\t\t);\n\n\t\t\tconst lastDbMigration = dbMigrations[0] ?? undefined;\n\n\t\t\tfor (const migration of migrations) {\n\t\t\t\tif (!lastDbMigration || Number(lastDbMigration[2])! < migration.folderMillis) {\n\t\t\t\t\tfor (const stmt of migration.sql) {\n\t\t\t\t\t\tdb.run(sql.raw(stmt));\n\t\t\t\t\t}\n\t\t\t\t\tdb.run(\n\t\t\t\t\t\tsql`INSERT INTO ${\n\t\t\t\t\t\t\tsql.identifier(migrationsTable)\n\t\t\t\t\t\t} (\"hash\", \"created_at\") VALUES(${migration.hash}, ${migration.folderMillis})`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error: any) {\n\t\t\ttx.rollback();\n\t\t\tthrow error;\n\t\t}\n\t});\n}\n"],"mappings":"AAEA,SAAS,WAAW;AAUpB,SAAS,mBAAmB,EAAE,SAAS,WAAW,GAAqC;AACtF,QAAM,mBAAoC,CAAC;AAE3C,aAAW,gBAAgB,QAAQ,SAAS;AAC3C,UAAM,QAAQ,WAAW,IAAI,aAAa,IAAI,SAAS,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE;AAE3E,QAAI,CAAC,OAAO;AACX,YAAM,IAAI,MAAM,sBAAsB,aAAa,GAAG,EAAE;AAAA,IACzD;AAEA,QAAI;AACH,YAAM,SAAS,MAAM,MAAM,0BAA0B,EAAE,IAAI,CAAC,OAAO;AAClE,eAAO;AAAA,MACR,CAAC;AAED,uBAAiB,KAAK;AAAA,QACrB,KAAK;AAAA,QACL,KAAK,aAAa;AAAA,QAClB,cAAc,aAAa;AAAA,QAC3B,MAAM;AAAA,MACP,CAAC;AAAA,IACF,QAAQ;AACP,YAAM,IAAI,MAAM,8BAA8B,aAAa,GAAG,EAAE;AAAA,IACjE;AAAA,EACD;AAEA,SAAO;AACR;AAEA,eAAsB,QAIrB,IACA,QACgB;AAChB,QAAM,aAAa,mBAAmB,MAAM;AAE5C,KAAG,YAAY,CAAC,OAAO;AACtB,QAAI;AACH,YAAM,kBAAkB;AAExB,YAAM,uBAAuB;AAAA,iCACC,IAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAM7D,SAAG,IAAI,oBAAoB;AAE3B,YAAM,eAAe,GAAG;AAAA,QACvB,uCAAuC,IAAI,WAAW,eAAe,CAAC;AAAA,MACvE;AAEA,YAAM,kBAAkB,aAAa,CAAC,KAAK;AAE3C,iBAAW,aAAa,YAAY;AACnC,YAAI,CAAC,mBAAmB,OAAO,gBAAgB,CAAC,CAAC,IAAK,UAAU,cAAc;AAC7E,qBAAW,QAAQ,UAAU,KAAK;AACjC,eAAG,IAAI,IAAI,IAAI,IAAI,CAAC;AAAA,UACrB;AACA,aAAG;AAAA,YACF,kBACC,IAAI,WAAW,eAAe,CAC/B,kCAAkC,UAAU,IAAI,KAAK,UAAU,YAAY;AAAA,UAC5E;AAAA,QACD;AAAA,MACD;AAAA,IACD,SAAS,OAAY;AACpB,SAAG,SAAS;AACZ,YAAM;AAAA,IACP;AAAA,EACD,CAAC;AACF;","names":[]}
@@ -28,6 +28,7 @@ var import_logger = require("../logger.cjs");
28
28
  var import_sql = require("../sql/sql.cjs");
29
29
  var import_sqlite_core = require("../sqlite-core/index.cjs");
30
30
  var import_session = require("../sqlite-core/session.cjs");
31
+ var import_session2 = require("../sqlite-core/session.cjs");
31
32
  var import_utils = require("../utils.cjs");
32
33
  class SQLiteDOSession extends import_session.SQLiteSession {
33
34
  constructor(client, dialect, relations, schema, options = {}) {
@@ -83,7 +84,7 @@ class SQLiteDOTransaction extends import_sqlite_core.SQLiteTransaction {
83
84
  return this.session.transaction(() => transaction(tx));
84
85
  }
85
86
  }
86
- class SQLiteDOPreparedQuery extends import_session.SQLitePreparedQuery {
87
+ class SQLiteDOPreparedQuery extends import_session2.SQLitePreparedQuery {
87
88
  constructor(client, query, logger, fields, executeMethod, _isResponseInArrayMode, customResultMapper, isRqbV2Query) {
88
89
  super("sync", executeMethod, query, void 0, void 0, void 0);
89
90
  this.client = client;
@@ -97,11 +98,7 @@ class SQLiteDOPreparedQuery extends import_session.SQLitePreparedQuery {
97
98
  run(placeholderValues) {
98
99
  const params = (0, import_sql.fillPlaceholders)(this.query.params, placeholderValues ?? {});
99
100
  this.logger.logQuery(this.query.sql, params);
100
- if (params.length > 0) {
101
- this.client.sql.exec(this.query.sql, ...params);
102
- return;
103
- }
104
- this.client.sql.exec(this.query.sql);
101
+ params.length > 0 ? this.client.sql.exec(this.query.sql, ...params) : this.client.sql.exec(this.query.sql);
105
102
  }
106
103
  all(placeholderValues) {
107
104
  if (this.isRqbV2Query) return this.allRqbV2(placeholderValues);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/durable-sqlite/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query } from '~/sql/sql.ts';\nimport { type SQLiteSyncDialect, SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery as PreparedQueryBase,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteDOSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class SQLiteDOSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteDOSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): SQLiteDOPreparedQuery<T> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): SQLiteDOPreparedQuery<T, true> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SQLiteTransaction<\n\t\t\t\t'sync',\n\t\t\t\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\t\t\t\tTFullSchema,\n\t\t\t\tTRelations,\n\t\t\t\tTSchema\n\t\t\t>,\n\t\t) => T,\n\t\t_config?: SQLiteTransactionConfig,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction('sync', this.dialect, this, this.relations, this.schema, undefined, false, true);\n\t\treturn this.client.transactionSync(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteDOTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t\tfalse,\n\t\t\ttrue,\n\t\t);\n\t\treturn this.session.transaction(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOPreparedQuery<\n\tT extends PreparedQueryConfig = PreparedQueryConfig,\n\tTIsRqbV2 extends boolean = false,\n> extends PreparedQueryBase<{\n\ttype: 'sync';\n\trun: void;\n\tall: T['all'];\n\tget: T['get'];\n\tvalues: T['values'];\n\texecute: T['execute'];\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\t// 3-6 params are for cache. As long as we don't support sync cache - it will be skipped here\n\t\tsuper('sync', executeMethod, query, undefined, undefined, undefined);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): void {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tif (params.length > 0) {\n\t\t\tthis.client.sql.exec(this.query.sql, ...params);\n\t\t\treturn;\n\t\t}\n\t\tthis.client.sql.exec(this.query.sql);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, joinsNotNullableMap, query, logger, client, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn params.length > 0 ? client.sql.exec(query.sql, ...params).toArray() : client.sql.exec(query.sql).toArray();\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, client, customResultMapper } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst rows = params.length > 0\n\t\t\t? client.sql.exec(query.sql, ...params).toArray()\n\t\t\t: client.sql.exec(query.sql).toArray();\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(rows);\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, joinsNotNullableMap, customResultMapper, query } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, customResultMapper, query } = this;\n\n\t\tconst row = (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)([row]) as T['get'];\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst res = params.length > 0\n\t\t\t? this.client.sql.exec(this.query.sql, ...params)\n\t\t\t: this.client.sql.exec(this.query.sql);\n\n\t\t// @ts-ignore .raw().toArray() exists\n\t\treturn res.raw().toArray();\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":["PreparedQueryBase"]}
1
+ {"version":3,"sources":["../../src/durable-sqlite/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query } from '~/sql/sql.ts';\nimport { type SQLiteSyncDialect, SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery as PreparedQueryBase } from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteDOSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class SQLiteDOSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteDOSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): SQLiteDOPreparedQuery<T> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): SQLiteDOPreparedQuery<T, true> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SQLiteTransaction<\n\t\t\t\t'sync',\n\t\t\t\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\t\t\t\tTFullSchema,\n\t\t\t\tTRelations,\n\t\t\t\tTSchema\n\t\t\t>,\n\t\t) => T,\n\t\t_config?: SQLiteTransactionConfig,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction('sync', this.dialect, this, this.relations, this.schema, undefined, false, true);\n\t\treturn this.client.transactionSync(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteDOTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t\tfalse,\n\t\t\ttrue,\n\t\t);\n\t\treturn this.session.transaction(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOPreparedQuery<\n\tT extends PreparedQueryConfig = PreparedQueryConfig,\n\tTIsRqbV2 extends boolean = false,\n> extends PreparedQueryBase<{\n\ttype: 'sync';\n\trun: void;\n\tall: T['all'];\n\tget: T['get'];\n\tvalues: T['values'];\n\texecute: T['execute'];\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\t// 3-6 params are for cache. As long as we don't support sync cache - it will be skipped here\n\t\tsuper('sync', executeMethod, query, undefined, undefined, undefined);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): void {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\t// oxlint-disable-next-line no-unused-expressions\n\t\tparams.length > 0 ? this.client.sql.exec(this.query.sql, ...params) : this.client.sql.exec(this.query.sql);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, joinsNotNullableMap, query, logger, client, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn params.length > 0 ? client.sql.exec(query.sql, ...params).toArray() : client.sql.exec(query.sql).toArray();\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, client, customResultMapper } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst rows = params.length > 0\n\t\t\t? client.sql.exec(query.sql, ...params).toArray()\n\t\t\t: client.sql.exec(query.sql).toArray();\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(rows);\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, joinsNotNullableMap, customResultMapper, query } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, customResultMapper, query } = this;\n\n\t\tconst row = (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)([row]) as T['get'];\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst res = params.length > 0\n\t\t\t? this.client.sql.exec(this.query.sql, ...params)\n\t\t\t: this.client.sql.exec(this.query.sql);\n\n\t\t// @ts-ignore .raw().toArray() exists\n\t\treturn res.raw().toArray();\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":["import_session","PreparedQueryBase"]}
@@ -5,7 +5,8 @@ import type { AnyRelations } from "../relations.cjs";
5
5
  import { type Query } from "../sql/sql.cjs";
6
6
  import { type SQLiteSyncDialect, SQLiteTransaction } from "../sqlite-core/index.cjs";
7
7
  import type { SelectedFieldsOrdered } from "../sqlite-core/query-builders/select.types.cjs";
8
- import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLitePreparedQuery as PreparedQueryBase, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.cjs";
8
+ import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.cjs";
9
+ import { SQLitePreparedQuery as PreparedQueryBase } from "../sqlite-core/session.cjs";
9
10
  export interface SQLiteDOSessionOptions {
10
11
  logger?: Logger;
11
12
  }
@@ -5,7 +5,8 @@ import type { AnyRelations } from "../relations.js";
5
5
  import { type Query } from "../sql/sql.js";
6
6
  import { type SQLiteSyncDialect, SQLiteTransaction } from "../sqlite-core/index.js";
7
7
  import type { SelectedFieldsOrdered } from "../sqlite-core/query-builders/select.types.js";
8
- import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLitePreparedQuery as PreparedQueryBase, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.js";
8
+ import { type PreparedQueryConfig as PreparedQueryConfigBase, type SQLiteExecuteMethod, SQLiteSession, type SQLiteTransactionConfig } from "../sqlite-core/session.js";
9
+ import { SQLitePreparedQuery as PreparedQueryBase } from "../sqlite-core/session.js";
9
10
  export interface SQLiteDOSessionOptions {
10
11
  logger?: Logger;
11
12
  }
@@ -3,9 +3,9 @@ import { NoopLogger } from "../logger.js";
3
3
  import { fillPlaceholders } from "../sql/sql.js";
4
4
  import { SQLiteTransaction } from "../sqlite-core/index.js";
5
5
  import {
6
- SQLitePreparedQuery as PreparedQueryBase,
7
6
  SQLiteSession
8
7
  } from "../sqlite-core/session.js";
8
+ import { SQLitePreparedQuery as PreparedQueryBase } from "../sqlite-core/session.js";
9
9
  import { mapResultRow } from "../utils.js";
10
10
  class SQLiteDOSession extends SQLiteSession {
11
11
  constructor(client, dialect, relations, schema, options = {}) {
@@ -75,11 +75,7 @@ class SQLiteDOPreparedQuery extends PreparedQueryBase {
75
75
  run(placeholderValues) {
76
76
  const params = fillPlaceholders(this.query.params, placeholderValues ?? {});
77
77
  this.logger.logQuery(this.query.sql, params);
78
- if (params.length > 0) {
79
- this.client.sql.exec(this.query.sql, ...params);
80
- return;
81
- }
82
- this.client.sql.exec(this.query.sql);
78
+ params.length > 0 ? this.client.sql.exec(this.query.sql, ...params) : this.client.sql.exec(this.query.sql);
83
79
  }
84
80
  all(placeholderValues) {
85
81
  if (this.isRqbV2Query) return this.allRqbV2(placeholderValues);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/durable-sqlite/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query } from '~/sql/sql.ts';\nimport { type SQLiteSyncDialect, SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLitePreparedQuery as PreparedQueryBase,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteDOSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class SQLiteDOSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteDOSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): SQLiteDOPreparedQuery<T> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): SQLiteDOPreparedQuery<T, true> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SQLiteTransaction<\n\t\t\t\t'sync',\n\t\t\t\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\t\t\t\tTFullSchema,\n\t\t\t\tTRelations,\n\t\t\t\tTSchema\n\t\t\t>,\n\t\t) => T,\n\t\t_config?: SQLiteTransactionConfig,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction('sync', this.dialect, this, this.relations, this.schema, undefined, false, true);\n\t\treturn this.client.transactionSync(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteDOTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t\tfalse,\n\t\t\ttrue,\n\t\t);\n\t\treturn this.session.transaction(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOPreparedQuery<\n\tT extends PreparedQueryConfig = PreparedQueryConfig,\n\tTIsRqbV2 extends boolean = false,\n> extends PreparedQueryBase<{\n\ttype: 'sync';\n\trun: void;\n\tall: T['all'];\n\tget: T['get'];\n\tvalues: T['values'];\n\texecute: T['execute'];\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\t// 3-6 params are for cache. As long as we don't support sync cache - it will be skipped here\n\t\tsuper('sync', executeMethod, query, undefined, undefined, undefined);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): void {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tif (params.length > 0) {\n\t\t\tthis.client.sql.exec(this.query.sql, ...params);\n\t\t\treturn;\n\t\t}\n\t\tthis.client.sql.exec(this.query.sql);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, joinsNotNullableMap, query, logger, client, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn params.length > 0 ? client.sql.exec(query.sql, ...params).toArray() : client.sql.exec(query.sql).toArray();\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, client, customResultMapper } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst rows = params.length > 0\n\t\t\t? client.sql.exec(query.sql, ...params).toArray()\n\t\t\t: client.sql.exec(query.sql).toArray();\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(rows);\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, joinsNotNullableMap, customResultMapper, query } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, customResultMapper, query } = this;\n\n\t\tconst row = (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)([row]) as T['get'];\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst res = params.length > 0\n\t\t\t? this.client.sql.exec(this.query.sql, ...params)\n\t\t\t: this.client.sql.exec(this.query.sql);\n\n\t\t// @ts-ignore .raw().toArray() exists\n\t\treturn res.raw().toArray();\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/durable-sqlite/session.ts"],"sourcesContent":["import type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query } from '~/sql/sql.ts';\nimport { type SQLiteSyncDialect, SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport {\n\ttype PreparedQueryConfig as PreparedQueryConfigBase,\n\ttype SQLiteExecuteMethod,\n\tSQLiteSession,\n\ttype SQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery as PreparedQueryBase } from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteDOSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\n\nexport class SQLiteDOSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteDOSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): SQLiteDOPreparedQuery<T> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): SQLiteDOPreparedQuery<T, true> {\n\t\treturn new SQLiteDOPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (\n\t\t\ttx: SQLiteTransaction<\n\t\t\t\t'sync',\n\t\t\t\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\t\t\t\tTFullSchema,\n\t\t\t\tTRelations,\n\t\t\t\tTSchema\n\t\t\t>,\n\t\t) => T,\n\t\t_config?: SQLiteTransactionConfig,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction('sync', this.dialect, this, this.relations, this.schema, undefined, false, true);\n\t\treturn this.client.transactionSync(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<\n\t'sync',\n\tSqlStorageCursor<Record<string, SqlStorageValue>>,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteDOTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst tx = new SQLiteDOTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t\tfalse,\n\t\t\ttrue,\n\t\t);\n\t\treturn this.session.transaction(() => transaction(tx));\n\t}\n}\n\nexport class SQLiteDOPreparedQuery<\n\tT extends PreparedQueryConfig = PreparedQueryConfig,\n\tTIsRqbV2 extends boolean = false,\n> extends PreparedQueryBase<{\n\ttype: 'sync';\n\trun: void;\n\tall: T['all'];\n\tget: T['get'];\n\tvalues: T['values'];\n\texecute: T['execute'];\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteDOPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: DurableObjectStorage,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\t// 3-6 params are for cache. As long as we don't support sync cache - it will be skipped here\n\t\tsuper('sync', executeMethod, query, undefined, undefined, undefined);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>): void {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\t// oxlint-disable-next-line no-unused-expressions\n\t\tparams.length > 0 ? this.client.sql.exec(this.query.sql, ...params) : this.client.sql.exec(this.query.sql);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, joinsNotNullableMap, query, logger, client, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\n\t\t\treturn params.length > 0 ? client.sql.exec(query.sql, ...params).toArray() : client.sql.exec(query.sql).toArray();\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, client, customResultMapper } = this;\n\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tconst rows = params.length > 0\n\t\t\t? client.sql.exec(query.sql, ...params).toArray()\n\t\t\t: client.sql.exec(query.sql).toArray();\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(rows);\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, client, joinsNotNullableMap, customResultMapper, query } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\t\tconst row = rows[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, customResultMapper, query } = this;\n\n\t\tconst row = (params.length > 0 ? client.sql.exec(query.sql, ...params) : client.sql.exec(query.sql)).next().value;\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)([row]) as T['get'];\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst res = params.length > 0\n\t\t\t? this.client.sql.exec(this.query.sql, ...params)\n\t\t\t: this.client.sql.exec(this.query.sql);\n\n\t\t// @ts-ignore .raw().toArray() exists\n\t\treturn res.raw().toArray();\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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","names":[]}
package/entity.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/entity.ts"],"sourcesContent":["export const entityKind = Symbol.for('drizzle:entityKind');\nexport const hasOwnEntityKind = Symbol.for('drizzle:hasOwnEntityKind');\n\nexport interface DrizzleEntity {\n\t[entityKind]: string;\n}\n\nexport type DrizzleEntityClass<T> =\n\t& ((abstract new(...args: any[]) => T) | (new(...args: any[]) => T))\n\t& DrizzleEntity;\n\nexport function is<T extends DrizzleEntityClass<any>>(value: any, type: T): value is InstanceType<T> {\n\tif (!value || typeof value !== 'object') {\n\t\treturn false;\n\t}\n\n\tif (value instanceof type) { // oxlint-disable-line drizzle-internal/no-instanceof\n\t\treturn true;\n\t}\n\n\tif (!Object.prototype.hasOwnProperty.call(type, entityKind)) {\n\t\tthrow new Error(\n\t\t\t`Class \"${\n\t\t\t\ttype.name ?? '<unknown>'\n\t\t\t}\" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`,\n\t\t);\n\t}\n\n\tlet cls = Object.getPrototypeOf(value).constructor;\n\tif (cls) {\n\t\t// Traverse the prototype chain to find the entityKind\n\t\twhile (cls) {\n\t\t\tif (entityKind in cls && cls[entityKind] === type[entityKind]) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcls = Object.getPrototypeOf(cls);\n\t\t}\n\t}\n\n\treturn false;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,aAAa,OAAO,IAAI,oBAAoB;AAClD,MAAM,mBAAmB,OAAO,IAAI,0BAA0B;AAU9D,SAAS,GAAsC,OAAY,MAAmC;AACpG,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACxC,WAAO;AAAA,EACR;AAEA,MAAI,iBAAiB,MAAM;AAC1B,WAAO;AAAA,EACR;AAEA,MAAI,CAAC,OAAO,UAAU,eAAe,KAAK,MAAM,UAAU,GAAG;AAC5D,UAAM,IAAI;AAAA,MACT,UACC,KAAK,QAAQ,WACd;AAAA,IACD;AAAA,EACD;AAEA,MAAI,MAAM,OAAO,eAAe,KAAK,EAAE;AACvC,MAAI,KAAK;AAER,WAAO,KAAK;AACX,UAAI,cAAc,OAAO,IAAI,UAAU,MAAM,KAAK,UAAU,GAAG;AAC9D,eAAO;AAAA,MACR;AAEA,YAAM,OAAO,eAAe,GAAG;AAAA,IAChC;AAAA,EACD;AAEA,SAAO;AACR;","names":[]}
1
+ {"version":3,"sources":["../src/entity.ts"],"sourcesContent":["export const entityKind = Symbol.for('drizzle:entityKind');\nexport const hasOwnEntityKind = Symbol.for('drizzle:hasOwnEntityKind');\n\nexport interface DrizzleEntity {\n\t[entityKind]: string;\n}\n\nexport type DrizzleEntityClass<T> =\n\t& ((abstract new(...args: any[]) => T) | (new(...args: any[]) => T))\n\t& DrizzleEntity;\n\nexport function is<T extends DrizzleEntityClass<any>>(value: any, type: T): value is InstanceType<T> {\n\tif (!value || typeof value !== 'object') {\n\t\treturn false;\n\t}\n\n\tif (value instanceof type) { // eslint-disable-line no-instanceof/no-instanceof\n\t\treturn true;\n\t}\n\n\tif (!Object.prototype.hasOwnProperty.call(type, entityKind)) {\n\t\tthrow new Error(\n\t\t\t`Class \"${\n\t\t\t\ttype.name ?? '<unknown>'\n\t\t\t}\" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`,\n\t\t);\n\t}\n\n\tlet cls = Object.getPrototypeOf(value).constructor;\n\tif (cls) {\n\t\t// Traverse the prototype chain to find the entityKind\n\t\twhile (cls) {\n\t\t\tif (entityKind in cls && cls[entityKind] === type[entityKind]) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcls = Object.getPrototypeOf(cls);\n\t\t}\n\t}\n\n\treturn false;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,aAAa,OAAO,IAAI,oBAAoB;AAClD,MAAM,mBAAmB,OAAO,IAAI,0BAA0B;AAU9D,SAAS,GAAsC,OAAY,MAAmC;AACpG,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACxC,WAAO;AAAA,EACR;AAEA,MAAI,iBAAiB,MAAM;AAC1B,WAAO;AAAA,EACR;AAEA,MAAI,CAAC,OAAO,UAAU,eAAe,KAAK,MAAM,UAAU,GAAG;AAC5D,UAAM,IAAI;AAAA,MACT,UACC,KAAK,QAAQ,WACd;AAAA,IACD;AAAA,EACD;AAEA,MAAI,MAAM,OAAO,eAAe,KAAK,EAAE;AACvC,MAAI,KAAK;AAER,WAAO,KAAK;AACX,UAAI,cAAc,OAAO,IAAI,UAAU,MAAM,KAAK,UAAU,GAAG;AAC9D,eAAO;AAAA,MACR;AAEA,YAAM,OAAO,eAAe,GAAG;AAAA,IAChC;AAAA,EACD;AAEA,SAAO;AACR;","names":[]}
package/entity.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/entity.ts"],"sourcesContent":["export const entityKind = Symbol.for('drizzle:entityKind');\nexport const hasOwnEntityKind = Symbol.for('drizzle:hasOwnEntityKind');\n\nexport interface DrizzleEntity {\n\t[entityKind]: string;\n}\n\nexport type DrizzleEntityClass<T> =\n\t& ((abstract new(...args: any[]) => T) | (new(...args: any[]) => T))\n\t& DrizzleEntity;\n\nexport function is<T extends DrizzleEntityClass<any>>(value: any, type: T): value is InstanceType<T> {\n\tif (!value || typeof value !== 'object') {\n\t\treturn false;\n\t}\n\n\tif (value instanceof type) { // oxlint-disable-line drizzle-internal/no-instanceof\n\t\treturn true;\n\t}\n\n\tif (!Object.prototype.hasOwnProperty.call(type, entityKind)) {\n\t\tthrow new Error(\n\t\t\t`Class \"${\n\t\t\t\ttype.name ?? '<unknown>'\n\t\t\t}\" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`,\n\t\t);\n\t}\n\n\tlet cls = Object.getPrototypeOf(value).constructor;\n\tif (cls) {\n\t\t// Traverse the prototype chain to find the entityKind\n\t\twhile (cls) {\n\t\t\tif (entityKind in cls && cls[entityKind] === type[entityKind]) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcls = Object.getPrototypeOf(cls);\n\t\t}\n\t}\n\n\treturn false;\n}\n"],"mappings":"AAAO,MAAM,aAAa,OAAO,IAAI,oBAAoB;AAClD,MAAM,mBAAmB,OAAO,IAAI,0BAA0B;AAU9D,SAAS,GAAsC,OAAY,MAAmC;AACpG,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACxC,WAAO;AAAA,EACR;AAEA,MAAI,iBAAiB,MAAM;AAC1B,WAAO;AAAA,EACR;AAEA,MAAI,CAAC,OAAO,UAAU,eAAe,KAAK,MAAM,UAAU,GAAG;AAC5D,UAAM,IAAI;AAAA,MACT,UACC,KAAK,QAAQ,WACd;AAAA,IACD;AAAA,EACD;AAEA,MAAI,MAAM,OAAO,eAAe,KAAK,EAAE;AACvC,MAAI,KAAK;AAER,WAAO,KAAK;AACX,UAAI,cAAc,OAAO,IAAI,UAAU,MAAM,KAAK,UAAU,GAAG;AAC9D,eAAO;AAAA,MACR;AAEA,YAAM,OAAO,eAAe,GAAG;AAAA,IAChC;AAAA,EACD;AAEA,SAAO;AACR;","names":[]}
1
+ {"version":3,"sources":["../src/entity.ts"],"sourcesContent":["export const entityKind = Symbol.for('drizzle:entityKind');\nexport const hasOwnEntityKind = Symbol.for('drizzle:hasOwnEntityKind');\n\nexport interface DrizzleEntity {\n\t[entityKind]: string;\n}\n\nexport type DrizzleEntityClass<T> =\n\t& ((abstract new(...args: any[]) => T) | (new(...args: any[]) => T))\n\t& DrizzleEntity;\n\nexport function is<T extends DrizzleEntityClass<any>>(value: any, type: T): value is InstanceType<T> {\n\tif (!value || typeof value !== 'object') {\n\t\treturn false;\n\t}\n\n\tif (value instanceof type) { // eslint-disable-line no-instanceof/no-instanceof\n\t\treturn true;\n\t}\n\n\tif (!Object.prototype.hasOwnProperty.call(type, entityKind)) {\n\t\tthrow new Error(\n\t\t\t`Class \"${\n\t\t\t\ttype.name ?? '<unknown>'\n\t\t\t}\" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`,\n\t\t);\n\t}\n\n\tlet cls = Object.getPrototypeOf(value).constructor;\n\tif (cls) {\n\t\t// Traverse the prototype chain to find the entityKind\n\t\twhile (cls) {\n\t\t\tif (entityKind in cls && cls[entityKind] === type[entityKind]) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcls = Object.getPrototypeOf(cls);\n\t\t}\n\t}\n\n\treturn false;\n}\n"],"mappings":"AAAO,MAAM,aAAa,OAAO,IAAI,oBAAoB;AAClD,MAAM,mBAAmB,OAAO,IAAI,0BAA0B;AAU9D,SAAS,GAAsC,OAAY,MAAmC;AACpG,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACxC,WAAO;AAAA,EACR;AAEA,MAAI,iBAAiB,MAAM;AAC1B,WAAO;AAAA,EACR;AAEA,MAAI,CAAC,OAAO,UAAU,eAAe,KAAK,MAAM,UAAU,GAAG;AAC5D,UAAM,IAAI;AAAA,MACT,UACC,KAAK,QAAQ,WACd;AAAA,IACD;AAAA,EACD;AAEA,MAAI,MAAM,OAAO,eAAe,KAAK,EAAE;AACvC,MAAI,KAAK;AAER,WAAO,KAAK;AACX,UAAI,cAAc,OAAO,IAAI,UAAU,MAAM,KAAK,UAAU,GAAG;AAC9D,eAAO;AAAA,MACR;AAEA,YAAM,OAAO,eAAe,GAAG;AAAA,IAChC;AAAA,EACD;AAEA,SAAO;AACR;","names":[]}