drizzle-orm 0.34.0-8dece56 → 0.34.0-b75016b

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 (727) hide show
  1. package/aws-data-api/common/index.d.cts +1 -1
  2. package/aws-data-api/common/index.d.ts +1 -1
  3. package/aws-data-api/pg/driver.cjs +9 -8
  4. package/aws-data-api/pg/driver.cjs.map +1 -1
  5. package/aws-data-api/pg/driver.d.cts +1 -1
  6. package/aws-data-api/pg/driver.d.ts +1 -1
  7. package/aws-data-api/pg/driver.js +3 -2
  8. package/aws-data-api/pg/driver.js.map +1 -1
  9. package/better-sqlite3/driver.cjs +1 -1
  10. package/better-sqlite3/driver.cjs.map +1 -1
  11. package/better-sqlite3/driver.js +1 -1
  12. package/better-sqlite3/driver.js.map +1 -1
  13. package/bun-sqlite/driver.cjs +1 -1
  14. package/bun-sqlite/driver.cjs.map +1 -1
  15. package/bun-sqlite/driver.js +1 -1
  16. package/bun-sqlite/driver.js.map +1 -1
  17. package/casing.cjs +85 -0
  18. package/casing.cjs.map +1 -0
  19. package/casing.d.cts +14 -0
  20. package/casing.d.ts +14 -0
  21. package/casing.js +59 -0
  22. package/casing.js.map +1 -0
  23. package/column-builder.cjs +7 -0
  24. package/column-builder.cjs.map +1 -1
  25. package/column-builder.d.cts +7 -2
  26. package/column-builder.d.ts +7 -2
  27. package/column-builder.js +7 -0
  28. package/column-builder.js.map +1 -1
  29. package/column.cjs +3 -0
  30. package/column.cjs.map +1 -1
  31. package/column.js +3 -0
  32. package/column.js.map +1 -1
  33. package/connect.cjs +25 -0
  34. package/connect.cjs.map +1 -0
  35. package/connect.d.cts +2 -0
  36. package/connect.d.ts +2 -0
  37. package/connect.js +3 -0
  38. package/connect.js.map +1 -0
  39. package/d1/driver.cjs +1 -1
  40. package/d1/driver.cjs.map +1 -1
  41. package/d1/driver.js +1 -1
  42. package/d1/driver.js.map +1 -1
  43. package/expo-sqlite/driver.cjs +1 -1
  44. package/expo-sqlite/driver.cjs.map +1 -1
  45. package/expo-sqlite/driver.js +1 -1
  46. package/expo-sqlite/driver.js.map +1 -1
  47. package/expo-sqlite/query.cjs +8 -6
  48. package/expo-sqlite/query.cjs.map +1 -1
  49. package/expo-sqlite/query.js +3 -1
  50. package/expo-sqlite/query.js.map +1 -1
  51. package/index.cjs +0 -4
  52. package/index.cjs.map +1 -1
  53. package/index.d.cts +0 -2
  54. package/index.d.ts +0 -2
  55. package/index.js +0 -2
  56. package/index.js.map +1 -1
  57. package/libsql/driver.cjs +1 -1
  58. package/libsql/driver.cjs.map +1 -1
  59. package/libsql/driver.js +1 -1
  60. package/libsql/driver.js.map +1 -1
  61. package/monodriver.cjs +1 -1
  62. package/monodriver.cjs.map +1 -1
  63. package/monodriver.d.cts +1 -1
  64. package/monodriver.d.ts +1 -1
  65. package/monodriver.js +1 -1
  66. package/monodriver.js.map +1 -1
  67. package/mysql-core/columns/all.cjs +80 -0
  68. package/mysql-core/columns/all.cjs.map +1 -0
  69. package/mysql-core/columns/all.d.cts +51 -0
  70. package/mysql-core/columns/all.d.ts +51 -0
  71. package/mysql-core/columns/all.js +56 -0
  72. package/mysql-core/columns/all.js.map +1 -0
  73. package/mysql-core/columns/bigint.cjs +3 -1
  74. package/mysql-core/columns/bigint.cjs.map +1 -1
  75. package/mysql-core/columns/bigint.d.cts +2 -2
  76. package/mysql-core/columns/bigint.d.ts +2 -2
  77. package/mysql-core/columns/bigint.js +3 -1
  78. package/mysql-core/columns/bigint.js.map +1 -1
  79. package/mysql-core/columns/binary.cjs +3 -1
  80. package/mysql-core/columns/binary.cjs.map +1 -1
  81. package/mysql-core/columns/binary.d.cts +2 -0
  82. package/mysql-core/columns/binary.d.ts +2 -0
  83. package/mysql-core/columns/binary.js +3 -1
  84. package/mysql-core/columns/binary.js.map +1 -1
  85. package/mysql-core/columns/boolean.cjs +1 -1
  86. package/mysql-core/columns/boolean.cjs.map +1 -1
  87. package/mysql-core/columns/boolean.d.cts +1 -0
  88. package/mysql-core/columns/boolean.d.ts +1 -0
  89. package/mysql-core/columns/boolean.js +1 -1
  90. package/mysql-core/columns/boolean.js.map +1 -1
  91. package/mysql-core/columns/char.cjs +3 -1
  92. package/mysql-core/columns/char.cjs.map +1 -1
  93. package/mysql-core/columns/char.d.cts +4 -2
  94. package/mysql-core/columns/char.d.ts +4 -2
  95. package/mysql-core/columns/char.js +3 -1
  96. package/mysql-core/columns/char.js.map +1 -1
  97. package/mysql-core/columns/custom.cjs +4 -2
  98. package/mysql-core/columns/custom.cjs.map +1 -1
  99. package/mysql-core/columns/custom.d.cts +10 -3
  100. package/mysql-core/columns/custom.d.ts +10 -3
  101. package/mysql-core/columns/custom.js +4 -2
  102. package/mysql-core/columns/custom.js.map +1 -1
  103. package/mysql-core/columns/date.cjs +4 -2
  104. package/mysql-core/columns/date.cjs.map +1 -1
  105. package/mysql-core/columns/date.d.cts +3 -1
  106. package/mysql-core/columns/date.d.ts +3 -1
  107. package/mysql-core/columns/date.js +4 -2
  108. package/mysql-core/columns/date.js.map +1 -1
  109. package/mysql-core/columns/datetime.cjs +4 -2
  110. package/mysql-core/columns/datetime.cjs.map +1 -1
  111. package/mysql-core/columns/datetime.d.cts +3 -1
  112. package/mysql-core/columns/datetime.d.ts +3 -1
  113. package/mysql-core/columns/datetime.js +4 -2
  114. package/mysql-core/columns/datetime.js.map +1 -1
  115. package/mysql-core/columns/decimal.cjs +3 -1
  116. package/mysql-core/columns/decimal.cjs.map +1 -1
  117. package/mysql-core/columns/decimal.d.cts +2 -0
  118. package/mysql-core/columns/decimal.d.ts +2 -0
  119. package/mysql-core/columns/decimal.js +3 -1
  120. package/mysql-core/columns/decimal.js.map +1 -1
  121. package/mysql-core/columns/double.cjs +3 -1
  122. package/mysql-core/columns/double.cjs.map +1 -1
  123. package/mysql-core/columns/double.d.cts +2 -0
  124. package/mysql-core/columns/double.d.ts +2 -0
  125. package/mysql-core/columns/double.js +3 -1
  126. package/mysql-core/columns/double.js.map +1 -1
  127. package/mysql-core/columns/enum.cjs +3 -1
  128. package/mysql-core/columns/enum.cjs.map +1 -1
  129. package/mysql-core/columns/enum.d.cts +2 -1
  130. package/mysql-core/columns/enum.d.ts +2 -1
  131. package/mysql-core/columns/enum.js +3 -1
  132. package/mysql-core/columns/enum.js.map +1 -1
  133. package/mysql-core/columns/float.cjs +1 -1
  134. package/mysql-core/columns/float.cjs.map +1 -1
  135. package/mysql-core/columns/float.d.cts +1 -0
  136. package/mysql-core/columns/float.d.ts +1 -0
  137. package/mysql-core/columns/float.js +1 -1
  138. package/mysql-core/columns/float.js.map +1 -1
  139. package/mysql-core/columns/int.cjs +3 -1
  140. package/mysql-core/columns/int.cjs.map +1 -1
  141. package/mysql-core/columns/int.d.cts +2 -0
  142. package/mysql-core/columns/int.d.ts +2 -0
  143. package/mysql-core/columns/int.js +3 -1
  144. package/mysql-core/columns/int.js.map +1 -1
  145. package/mysql-core/columns/json.cjs +1 -1
  146. package/mysql-core/columns/json.cjs.map +1 -1
  147. package/mysql-core/columns/json.d.cts +1 -0
  148. package/mysql-core/columns/json.d.ts +1 -0
  149. package/mysql-core/columns/json.js +1 -1
  150. package/mysql-core/columns/json.js.map +1 -1
  151. package/mysql-core/columns/mediumint.cjs +3 -1
  152. package/mysql-core/columns/mediumint.cjs.map +1 -1
  153. package/mysql-core/columns/mediumint.d.cts +2 -0
  154. package/mysql-core/columns/mediumint.d.ts +2 -0
  155. package/mysql-core/columns/mediumint.js +3 -1
  156. package/mysql-core/columns/mediumint.js.map +1 -1
  157. package/mysql-core/columns/real.cjs +3 -1
  158. package/mysql-core/columns/real.cjs.map +1 -1
  159. package/mysql-core/columns/real.d.cts +2 -0
  160. package/mysql-core/columns/real.d.ts +2 -0
  161. package/mysql-core/columns/real.js +3 -1
  162. package/mysql-core/columns/real.js.map +1 -1
  163. package/mysql-core/columns/serial.cjs +1 -1
  164. package/mysql-core/columns/serial.cjs.map +1 -1
  165. package/mysql-core/columns/serial.d.cts +1 -0
  166. package/mysql-core/columns/serial.d.ts +1 -0
  167. package/mysql-core/columns/serial.js +1 -1
  168. package/mysql-core/columns/serial.js.map +1 -1
  169. package/mysql-core/columns/smallint.cjs +3 -1
  170. package/mysql-core/columns/smallint.cjs.map +1 -1
  171. package/mysql-core/columns/smallint.d.cts +2 -0
  172. package/mysql-core/columns/smallint.d.ts +2 -0
  173. package/mysql-core/columns/smallint.js +3 -1
  174. package/mysql-core/columns/smallint.js.map +1 -1
  175. package/mysql-core/columns/text.cjs +9 -4
  176. package/mysql-core/columns/text.cjs.map +1 -1
  177. package/mysql-core/columns/text.d.cts +10 -2
  178. package/mysql-core/columns/text.d.ts +10 -2
  179. package/mysql-core/columns/text.js +9 -4
  180. package/mysql-core/columns/text.js.map +1 -1
  181. package/mysql-core/columns/time.cjs +3 -1
  182. package/mysql-core/columns/time.cjs.map +1 -1
  183. package/mysql-core/columns/time.d.cts +2 -0
  184. package/mysql-core/columns/time.d.ts +2 -0
  185. package/mysql-core/columns/time.js +3 -1
  186. package/mysql-core/columns/time.js.map +1 -1
  187. package/mysql-core/columns/timestamp.cjs +4 -2
  188. package/mysql-core/columns/timestamp.cjs.map +1 -1
  189. package/mysql-core/columns/timestamp.d.cts +3 -1
  190. package/mysql-core/columns/timestamp.d.ts +3 -1
  191. package/mysql-core/columns/timestamp.js +4 -2
  192. package/mysql-core/columns/timestamp.js.map +1 -1
  193. package/mysql-core/columns/tinyint.cjs +3 -1
  194. package/mysql-core/columns/tinyint.cjs.map +1 -1
  195. package/mysql-core/columns/tinyint.d.cts +2 -0
  196. package/mysql-core/columns/tinyint.d.ts +2 -0
  197. package/mysql-core/columns/tinyint.js +3 -1
  198. package/mysql-core/columns/tinyint.js.map +1 -1
  199. package/mysql-core/columns/varbinary.cjs +4 -2
  200. package/mysql-core/columns/varbinary.cjs.map +1 -1
  201. package/mysql-core/columns/varbinary.d.cts +2 -1
  202. package/mysql-core/columns/varbinary.d.ts +2 -1
  203. package/mysql-core/columns/varbinary.js +4 -2
  204. package/mysql-core/columns/varbinary.js.map +1 -1
  205. package/mysql-core/columns/varchar.cjs +3 -1
  206. package/mysql-core/columns/varchar.cjs.map +1 -1
  207. package/mysql-core/columns/varchar.d.cts +3 -2
  208. package/mysql-core/columns/varchar.d.ts +3 -2
  209. package/mysql-core/columns/varchar.js +3 -1
  210. package/mysql-core/columns/varchar.js.map +1 -1
  211. package/mysql-core/columns/year.cjs +1 -1
  212. package/mysql-core/columns/year.cjs.map +1 -1
  213. package/mysql-core/columns/year.d.cts +1 -0
  214. package/mysql-core/columns/year.d.ts +1 -0
  215. package/mysql-core/columns/year.js +1 -1
  216. package/mysql-core/columns/year.js.map +1 -1
  217. package/mysql-core/db.cjs +2 -1
  218. package/mysql-core/db.cjs.map +1 -1
  219. package/mysql-core/db.js +2 -1
  220. package/mysql-core/db.js.map +1 -1
  221. package/mysql-core/dialect.cjs +14 -7
  222. package/mysql-core/dialect.cjs.map +1 -1
  223. package/mysql-core/dialect.d.cts +5 -1
  224. package/mysql-core/dialect.d.ts +5 -1
  225. package/mysql-core/dialect.js +14 -7
  226. package/mysql-core/dialect.js.map +1 -1
  227. package/mysql-core/foreign-keys.cjs +3 -3
  228. package/mysql-core/foreign-keys.cjs.map +1 -1
  229. package/mysql-core/foreign-keys.d.cts +1 -1
  230. package/mysql-core/foreign-keys.d.ts +1 -1
  231. package/mysql-core/foreign-keys.js +3 -3
  232. package/mysql-core/foreign-keys.js.map +1 -1
  233. package/mysql-core/query-builders/count.cjs +4 -4
  234. package/mysql-core/query-builders/count.cjs.map +1 -1
  235. package/mysql-core/query-builders/count.d.cts +2 -3
  236. package/mysql-core/query-builders/count.d.ts +2 -3
  237. package/mysql-core/query-builders/count.js +2 -2
  238. package/mysql-core/query-builders/count.js.map +1 -1
  239. package/mysql-core/query-builders/query-builder.cjs +6 -1
  240. package/mysql-core/query-builders/query-builder.cjs.map +1 -1
  241. package/mysql-core/query-builders/query-builder.d.cts +4 -0
  242. package/mysql-core/query-builders/query-builder.d.ts +4 -0
  243. package/mysql-core/query-builders/query-builder.js +7 -2
  244. package/mysql-core/query-builders/query-builder.js.map +1 -1
  245. package/mysql-core/table.cjs +4 -1
  246. package/mysql-core/table.cjs.map +1 -1
  247. package/mysql-core/table.d.cts +8 -1
  248. package/mysql-core/table.d.ts +8 -1
  249. package/mysql-core/table.js +4 -1
  250. package/mysql-core/table.js.map +1 -1
  251. package/mysql-core/unique-constraint.cjs +2 -2
  252. package/mysql-core/unique-constraint.cjs.map +1 -1
  253. package/mysql-core/unique-constraint.d.cts +1 -1
  254. package/mysql-core/unique-constraint.d.ts +1 -1
  255. package/mysql-core/unique-constraint.js +2 -2
  256. package/mysql-core/unique-constraint.js.map +1 -1
  257. package/mysql-proxy/driver.cjs +1 -1
  258. package/mysql-proxy/driver.cjs.map +1 -1
  259. package/mysql-proxy/driver.js +1 -1
  260. package/mysql-proxy/driver.js.map +1 -1
  261. package/mysql2/driver.cjs +3 -3
  262. package/mysql2/driver.cjs.map +1 -1
  263. package/mysql2/driver.js +2 -2
  264. package/mysql2/driver.js.map +1 -1
  265. package/neon/index.cjs +23 -0
  266. package/neon/index.cjs.map +1 -0
  267. package/neon/index.d.cts +1 -0
  268. package/neon/index.d.ts +1 -0
  269. package/neon/index.js +2 -0
  270. package/neon/index.js.map +1 -0
  271. package/neon/rls.cjs +81 -0
  272. package/neon/rls.cjs.map +1 -0
  273. package/neon/rls.d.cts +13 -0
  274. package/neon/rls.d.ts +13 -0
  275. package/neon/rls.js +54 -0
  276. package/neon/rls.js.map +1 -0
  277. package/neon-http/driver.cjs +1 -1
  278. package/neon-http/driver.cjs.map +1 -1
  279. package/neon-http/driver.js +1 -1
  280. package/neon-http/driver.js.map +1 -1
  281. package/neon-serverless/driver.cjs +1 -1
  282. package/neon-serverless/driver.cjs.map +1 -1
  283. package/neon-serverless/driver.js +1 -1
  284. package/neon-serverless/driver.js.map +1 -1
  285. package/node-postgres/driver.cjs +1 -1
  286. package/node-postgres/driver.cjs.map +1 -1
  287. package/node-postgres/driver.js +1 -1
  288. package/node-postgres/driver.js.map +1 -1
  289. package/op-sqlite/driver.cjs +1 -1
  290. package/op-sqlite/driver.cjs.map +1 -1
  291. package/op-sqlite/driver.js +1 -1
  292. package/op-sqlite/driver.js.map +1 -1
  293. package/package.json +123 -3
  294. package/pg-core/columns/all.cjs +96 -0
  295. package/pg-core/columns/all.cjs.map +1 -0
  296. package/pg-core/columns/all.d.cts +67 -0
  297. package/pg-core/columns/all.d.ts +67 -0
  298. package/pg-core/columns/all.js +72 -0
  299. package/pg-core/columns/all.js.map +1 -0
  300. package/pg-core/columns/bigint.cjs +3 -1
  301. package/pg-core/columns/bigint.cjs.map +1 -1
  302. package/pg-core/columns/bigint.d.cts +2 -2
  303. package/pg-core/columns/bigint.d.ts +2 -2
  304. package/pg-core/columns/bigint.js +3 -1
  305. package/pg-core/columns/bigint.js.map +1 -1
  306. package/pg-core/columns/bigserial.cjs +4 -2
  307. package/pg-core/columns/bigserial.cjs.map +1 -1
  308. package/pg-core/columns/bigserial.d.cts +2 -2
  309. package/pg-core/columns/bigserial.d.ts +2 -2
  310. package/pg-core/columns/bigserial.js +4 -2
  311. package/pg-core/columns/bigserial.js.map +1 -1
  312. package/pg-core/columns/boolean.cjs +1 -1
  313. package/pg-core/columns/boolean.cjs.map +1 -1
  314. package/pg-core/columns/boolean.d.cts +1 -0
  315. package/pg-core/columns/boolean.d.ts +1 -0
  316. package/pg-core/columns/boolean.js +1 -1
  317. package/pg-core/columns/boolean.js.map +1 -1
  318. package/pg-core/columns/char.cjs +3 -1
  319. package/pg-core/columns/char.cjs.map +1 -1
  320. package/pg-core/columns/char.d.cts +5 -3
  321. package/pg-core/columns/char.d.ts +5 -3
  322. package/pg-core/columns/char.js +3 -1
  323. package/pg-core/columns/char.js.map +1 -1
  324. package/pg-core/columns/cidr.cjs +1 -1
  325. package/pg-core/columns/cidr.cjs.map +1 -1
  326. package/pg-core/columns/cidr.d.cts +1 -0
  327. package/pg-core/columns/cidr.d.ts +1 -0
  328. package/pg-core/columns/cidr.js +1 -1
  329. package/pg-core/columns/cidr.js.map +1 -1
  330. package/pg-core/columns/common.cjs.map +1 -1
  331. package/pg-core/columns/common.d.cts +1 -1
  332. package/pg-core/columns/common.d.ts +1 -1
  333. package/pg-core/columns/common.js.map +1 -1
  334. package/pg-core/columns/custom.cjs +4 -2
  335. package/pg-core/columns/custom.cjs.map +1 -1
  336. package/pg-core/columns/custom.d.cts +10 -3
  337. package/pg-core/columns/custom.d.ts +10 -3
  338. package/pg-core/columns/custom.js +4 -2
  339. package/pg-core/columns/custom.js.map +1 -1
  340. package/pg-core/columns/date.cjs +3 -1
  341. package/pg-core/columns/date.cjs.map +1 -1
  342. package/pg-core/columns/date.d.cts +7 -6
  343. package/pg-core/columns/date.d.ts +7 -6
  344. package/pg-core/columns/date.js +3 -1
  345. package/pg-core/columns/date.js.map +1 -1
  346. package/pg-core/columns/double-precision.cjs +1 -1
  347. package/pg-core/columns/double-precision.cjs.map +1 -1
  348. package/pg-core/columns/double-precision.d.cts +1 -0
  349. package/pg-core/columns/double-precision.d.ts +1 -0
  350. package/pg-core/columns/double-precision.js +1 -1
  351. package/pg-core/columns/double-precision.js.map +1 -1
  352. package/pg-core/columns/enum.cjs +1 -1
  353. package/pg-core/columns/enum.cjs.map +1 -1
  354. package/pg-core/columns/enum.d.cts +3 -1
  355. package/pg-core/columns/enum.d.ts +3 -1
  356. package/pg-core/columns/enum.js +1 -1
  357. package/pg-core/columns/enum.js.map +1 -1
  358. package/pg-core/columns/index.cjs +2 -0
  359. package/pg-core/columns/index.cjs.map +1 -1
  360. package/pg-core/columns/index.d.cts +1 -0
  361. package/pg-core/columns/index.d.ts +1 -0
  362. package/pg-core/columns/index.js +1 -0
  363. package/pg-core/columns/index.js.map +1 -1
  364. package/pg-core/columns/inet.cjs +1 -1
  365. package/pg-core/columns/inet.cjs.map +1 -1
  366. package/pg-core/columns/inet.d.cts +1 -0
  367. package/pg-core/columns/inet.d.ts +1 -0
  368. package/pg-core/columns/inet.js +1 -1
  369. package/pg-core/columns/inet.js.map +1 -1
  370. package/pg-core/columns/integer.cjs +1 -1
  371. package/pg-core/columns/integer.cjs.map +1 -1
  372. package/pg-core/columns/integer.d.cts +1 -0
  373. package/pg-core/columns/integer.d.ts +1 -0
  374. package/pg-core/columns/integer.js +1 -1
  375. package/pg-core/columns/integer.js.map +1 -1
  376. package/pg-core/columns/interval.cjs +3 -1
  377. package/pg-core/columns/interval.cjs.map +1 -1
  378. package/pg-core/columns/interval.d.cts +2 -0
  379. package/pg-core/columns/interval.d.ts +2 -0
  380. package/pg-core/columns/interval.js +3 -1
  381. package/pg-core/columns/interval.js.map +1 -1
  382. package/pg-core/columns/json.cjs +1 -1
  383. package/pg-core/columns/json.cjs.map +1 -1
  384. package/pg-core/columns/json.d.cts +1 -0
  385. package/pg-core/columns/json.d.ts +1 -0
  386. package/pg-core/columns/json.js +1 -1
  387. package/pg-core/columns/json.js.map +1 -1
  388. package/pg-core/columns/jsonb.cjs +1 -1
  389. package/pg-core/columns/jsonb.cjs.map +1 -1
  390. package/pg-core/columns/jsonb.d.cts +1 -0
  391. package/pg-core/columns/jsonb.d.ts +1 -0
  392. package/pg-core/columns/jsonb.js +1 -1
  393. package/pg-core/columns/jsonb.js.map +1 -1
  394. package/pg-core/columns/line.cjs +3 -1
  395. package/pg-core/columns/line.cjs.map +1 -1
  396. package/pg-core/columns/line.d.cts +3 -1
  397. package/pg-core/columns/line.d.ts +3 -1
  398. package/pg-core/columns/line.js +3 -1
  399. package/pg-core/columns/line.js.map +1 -1
  400. package/pg-core/columns/macaddr.cjs +1 -1
  401. package/pg-core/columns/macaddr.cjs.map +1 -1
  402. package/pg-core/columns/macaddr.d.cts +1 -0
  403. package/pg-core/columns/macaddr.d.ts +1 -0
  404. package/pg-core/columns/macaddr.js +1 -1
  405. package/pg-core/columns/macaddr.js.map +1 -1
  406. package/pg-core/columns/macaddr8.cjs +1 -1
  407. package/pg-core/columns/macaddr8.cjs.map +1 -1
  408. package/pg-core/columns/macaddr8.d.cts +1 -0
  409. package/pg-core/columns/macaddr8.d.ts +1 -0
  410. package/pg-core/columns/macaddr8.js +1 -1
  411. package/pg-core/columns/macaddr8.js.map +1 -1
  412. package/pg-core/columns/numeric.cjs +3 -1
  413. package/pg-core/columns/numeric.cjs.map +1 -1
  414. package/pg-core/columns/numeric.d.cts +6 -3
  415. package/pg-core/columns/numeric.d.ts +6 -3
  416. package/pg-core/columns/numeric.js +3 -1
  417. package/pg-core/columns/numeric.js.map +1 -1
  418. package/pg-core/columns/point.cjs +3 -1
  419. package/pg-core/columns/point.cjs.map +1 -1
  420. package/pg-core/columns/point.d.cts +5 -3
  421. package/pg-core/columns/point.d.ts +5 -3
  422. package/pg-core/columns/point.js +3 -1
  423. package/pg-core/columns/point.js.map +1 -1
  424. package/pg-core/columns/postgis_extension/geometry.cjs +6 -4
  425. package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
  426. package/pg-core/columns/postgis_extension/geometry.d.cts +4 -3
  427. package/pg-core/columns/postgis_extension/geometry.d.ts +4 -3
  428. package/pg-core/columns/postgis_extension/geometry.js +3 -1
  429. package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
  430. package/pg-core/columns/real.cjs +1 -1
  431. package/pg-core/columns/real.cjs.map +1 -1
  432. package/pg-core/columns/real.d.cts +2 -1
  433. package/pg-core/columns/real.d.ts +2 -1
  434. package/pg-core/columns/real.js +1 -1
  435. package/pg-core/columns/real.js.map +1 -1
  436. package/pg-core/columns/serial.cjs +1 -1
  437. package/pg-core/columns/serial.cjs.map +1 -1
  438. package/pg-core/columns/serial.d.cts +2 -1
  439. package/pg-core/columns/serial.d.ts +2 -1
  440. package/pg-core/columns/serial.js +1 -1
  441. package/pg-core/columns/serial.js.map +1 -1
  442. package/pg-core/columns/smallint.cjs +1 -1
  443. package/pg-core/columns/smallint.cjs.map +1 -1
  444. package/pg-core/columns/smallint.d.cts +1 -0
  445. package/pg-core/columns/smallint.d.ts +1 -0
  446. package/pg-core/columns/smallint.js +1 -1
  447. package/pg-core/columns/smallint.js.map +1 -1
  448. package/pg-core/columns/smallserial.cjs +1 -1
  449. package/pg-core/columns/smallserial.cjs.map +1 -1
  450. package/pg-core/columns/smallserial.d.cts +2 -1
  451. package/pg-core/columns/smallserial.d.ts +2 -1
  452. package/pg-core/columns/smallserial.js +1 -1
  453. package/pg-core/columns/smallserial.js.map +1 -1
  454. package/pg-core/columns/text.cjs +3 -1
  455. package/pg-core/columns/text.cjs.map +1 -1
  456. package/pg-core/columns/text.d.cts +4 -2
  457. package/pg-core/columns/text.d.ts +4 -2
  458. package/pg-core/columns/text.js +3 -1
  459. package/pg-core/columns/text.js.map +1 -1
  460. package/pg-core/columns/time.cjs +3 -1
  461. package/pg-core/columns/time.cjs.map +1 -1
  462. package/pg-core/columns/time.d.cts +2 -0
  463. package/pg-core/columns/time.d.ts +2 -0
  464. package/pg-core/columns/time.js +3 -1
  465. package/pg-core/columns/time.js.map +1 -1
  466. package/pg-core/columns/timestamp.cjs +5 -3
  467. package/pg-core/columns/timestamp.cjs.map +1 -1
  468. package/pg-core/columns/timestamp.d.cts +5 -3
  469. package/pg-core/columns/timestamp.d.ts +5 -3
  470. package/pg-core/columns/timestamp.js +5 -3
  471. package/pg-core/columns/timestamp.js.map +1 -1
  472. package/pg-core/columns/uuid.cjs +1 -1
  473. package/pg-core/columns/uuid.cjs.map +1 -1
  474. package/pg-core/columns/uuid.d.cts +1 -0
  475. package/pg-core/columns/uuid.d.ts +1 -0
  476. package/pg-core/columns/uuid.js +1 -1
  477. package/pg-core/columns/uuid.js.map +1 -1
  478. package/pg-core/columns/varchar.cjs +3 -1
  479. package/pg-core/columns/varchar.cjs.map +1 -1
  480. package/pg-core/columns/varchar.d.cts +5 -3
  481. package/pg-core/columns/varchar.d.ts +5 -3
  482. package/pg-core/columns/varchar.js +3 -1
  483. package/pg-core/columns/varchar.js.map +1 -1
  484. package/pg-core/columns/vector_extension/bit.cjs +3 -1
  485. package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
  486. package/pg-core/columns/vector_extension/bit.d.cts +1 -0
  487. package/pg-core/columns/vector_extension/bit.d.ts +1 -0
  488. package/pg-core/columns/vector_extension/bit.js +3 -1
  489. package/pg-core/columns/vector_extension/bit.js.map +1 -1
  490. package/pg-core/columns/vector_extension/halfvec.cjs +3 -1
  491. package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
  492. package/pg-core/columns/vector_extension/halfvec.d.cts +1 -0
  493. package/pg-core/columns/vector_extension/halfvec.d.ts +1 -0
  494. package/pg-core/columns/vector_extension/halfvec.js +3 -1
  495. package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
  496. package/pg-core/columns/vector_extension/sparsevec.cjs +3 -1
  497. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  498. package/pg-core/columns/vector_extension/sparsevec.d.cts +1 -0
  499. package/pg-core/columns/vector_extension/sparsevec.d.ts +1 -0
  500. package/pg-core/columns/vector_extension/sparsevec.js +3 -1
  501. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  502. package/pg-core/columns/vector_extension/vector.cjs +3 -1
  503. package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
  504. package/pg-core/columns/vector_extension/vector.d.cts +1 -0
  505. package/pg-core/columns/vector_extension/vector.d.ts +1 -0
  506. package/pg-core/columns/vector_extension/vector.js +3 -1
  507. package/pg-core/columns/vector_extension/vector.js.map +1 -1
  508. package/pg-core/db.cjs +2 -1
  509. package/pg-core/db.cjs.map +1 -1
  510. package/pg-core/db.js +2 -1
  511. package/pg-core/db.js.map +1 -1
  512. package/pg-core/dialect.cjs +13 -4
  513. package/pg-core/dialect.cjs.map +1 -1
  514. package/pg-core/dialect.d.cts +5 -1
  515. package/pg-core/dialect.d.ts +5 -1
  516. package/pg-core/dialect.js +13 -4
  517. package/pg-core/dialect.js.map +1 -1
  518. package/pg-core/foreign-keys.cjs +3 -3
  519. package/pg-core/foreign-keys.cjs.map +1 -1
  520. package/pg-core/foreign-keys.d.cts +1 -1
  521. package/pg-core/foreign-keys.d.ts +1 -1
  522. package/pg-core/foreign-keys.js +3 -3
  523. package/pg-core/foreign-keys.js.map +1 -1
  524. package/pg-core/index.cjs +4 -0
  525. package/pg-core/index.cjs.map +1 -1
  526. package/pg-core/index.d.cts +2 -0
  527. package/pg-core/index.d.ts +2 -0
  528. package/pg-core/index.js +2 -0
  529. package/pg-core/index.js.map +1 -1
  530. package/pg-core/policies.cjs +52 -0
  531. package/pg-core/policies.cjs.map +1 -0
  532. package/pg-core/policies.d.cts +22 -0
  533. package/pg-core/policies.d.ts +22 -0
  534. package/pg-core/policies.js +27 -0
  535. package/pg-core/policies.js.map +1 -0
  536. package/pg-core/query-builders/count.cjs +4 -4
  537. package/pg-core/query-builders/count.cjs.map +1 -1
  538. package/pg-core/query-builders/count.d.cts +2 -3
  539. package/pg-core/query-builders/count.d.ts +2 -3
  540. package/pg-core/query-builders/count.js +2 -2
  541. package/pg-core/query-builders/count.js.map +1 -1
  542. package/pg-core/query-builders/insert.cjs +2 -2
  543. package/pg-core/query-builders/insert.cjs.map +1 -1
  544. package/pg-core/query-builders/insert.js +2 -2
  545. package/pg-core/query-builders/insert.js.map +1 -1
  546. package/pg-core/query-builders/query-builder.cjs +6 -1
  547. package/pg-core/query-builders/query-builder.cjs.map +1 -1
  548. package/pg-core/query-builders/query-builder.d.cts +4 -0
  549. package/pg-core/query-builders/query-builder.d.ts +4 -0
  550. package/pg-core/query-builders/query-builder.js +7 -2
  551. package/pg-core/query-builders/query-builder.js.map +1 -1
  552. package/pg-core/roles.cjs +57 -0
  553. package/pg-core/roles.cjs.map +1 -0
  554. package/pg-core/roles.d.cts +13 -0
  555. package/pg-core/roles.d.ts +13 -0
  556. package/pg-core/roles.js +32 -0
  557. package/pg-core/roles.js.map +1 -0
  558. package/pg-core/table.cjs +6 -2
  559. package/pg-core/table.cjs.map +1 -1
  560. package/pg-core/table.d.cts +9 -1
  561. package/pg-core/table.d.ts +9 -1
  562. package/pg-core/table.js +6 -2
  563. package/pg-core/table.js.map +1 -1
  564. package/pg-core/unique-constraint.cjs +2 -2
  565. package/pg-core/unique-constraint.cjs.map +1 -1
  566. package/pg-core/unique-constraint.d.cts +1 -1
  567. package/pg-core/unique-constraint.d.ts +1 -1
  568. package/pg-core/unique-constraint.js +2 -2
  569. package/pg-core/unique-constraint.js.map +1 -1
  570. package/pg-core/utils.cjs +23 -2
  571. package/pg-core/utils.cjs.map +1 -1
  572. package/pg-core/utils.d.cts +2 -0
  573. package/pg-core/utils.d.ts +2 -0
  574. package/pg-core/utils.js +23 -2
  575. package/pg-core/utils.js.map +1 -1
  576. package/pg-proxy/driver.cjs +1 -1
  577. package/pg-proxy/driver.cjs.map +1 -1
  578. package/pg-proxy/driver.js +1 -1
  579. package/pg-proxy/driver.js.map +1 -1
  580. package/pglite/driver.cjs +1 -1
  581. package/pglite/driver.cjs.map +1 -1
  582. package/pglite/driver.js +1 -1
  583. package/pglite/driver.js.map +1 -1
  584. package/planetscale-serverless/driver.cjs +1 -1
  585. package/planetscale-serverless/driver.cjs.map +1 -1
  586. package/planetscale-serverless/driver.js +1 -1
  587. package/planetscale-serverless/driver.js.map +1 -1
  588. package/postgres-js/driver.cjs +1 -1
  589. package/postgres-js/driver.cjs.map +1 -1
  590. package/postgres-js/driver.js +1 -1
  591. package/postgres-js/driver.js.map +1 -1
  592. package/sql/functions/vector.cjs.map +1 -1
  593. package/sql/functions/vector.d.cts +1 -1
  594. package/sql/functions/vector.d.ts +1 -1
  595. package/sql/functions/vector.js.map +1 -1
  596. package/sql/sql.cjs +4 -2
  597. package/sql/sql.cjs.map +1 -1
  598. package/sql/sql.d.cts +2 -0
  599. package/sql/sql.d.ts +2 -0
  600. package/sql/sql.js +4 -2
  601. package/sql/sql.js.map +1 -1
  602. package/sql-js/driver.cjs +1 -1
  603. package/sql-js/driver.cjs.map +1 -1
  604. package/sql-js/driver.js +1 -1
  605. package/sql-js/driver.js.map +1 -1
  606. package/sqlite-core/columns/all.cjs +44 -0
  607. package/sqlite-core/columns/all.cjs.map +1 -0
  608. package/sqlite-core/columns/all.d.cts +15 -0
  609. package/sqlite-core/columns/all.d.ts +15 -0
  610. package/sqlite-core/columns/all.js +20 -0
  611. package/sqlite-core/columns/all.js.map +1 -0
  612. package/sqlite-core/columns/blob.cjs +3 -1
  613. package/sqlite-core/columns/blob.cjs.map +1 -1
  614. package/sqlite-core/columns/blob.d.cts +3 -1
  615. package/sqlite-core/columns/blob.d.ts +3 -1
  616. package/sqlite-core/columns/blob.js +3 -1
  617. package/sqlite-core/columns/blob.js.map +1 -1
  618. package/sqlite-core/columns/custom.cjs +5 -3
  619. package/sqlite-core/columns/custom.cjs.map +1 -1
  620. package/sqlite-core/columns/custom.d.cts +10 -3
  621. package/sqlite-core/columns/custom.d.ts +10 -3
  622. package/sqlite-core/columns/custom.js +5 -3
  623. package/sqlite-core/columns/custom.js.map +1 -1
  624. package/sqlite-core/columns/integer.cjs +3 -1
  625. package/sqlite-core/columns/integer.cjs.map +1 -1
  626. package/sqlite-core/columns/integer.d.cts +3 -1
  627. package/sqlite-core/columns/integer.d.ts +3 -1
  628. package/sqlite-core/columns/integer.js +3 -1
  629. package/sqlite-core/columns/integer.js.map +1 -1
  630. package/sqlite-core/columns/numeric.cjs +1 -1
  631. package/sqlite-core/columns/numeric.cjs.map +1 -1
  632. package/sqlite-core/columns/numeric.d.cts +1 -0
  633. package/sqlite-core/columns/numeric.d.ts +1 -0
  634. package/sqlite-core/columns/numeric.js +1 -1
  635. package/sqlite-core/columns/numeric.js.map +1 -1
  636. package/sqlite-core/columns/real.cjs +1 -1
  637. package/sqlite-core/columns/real.cjs.map +1 -1
  638. package/sqlite-core/columns/real.d.cts +1 -0
  639. package/sqlite-core/columns/real.d.ts +1 -0
  640. package/sqlite-core/columns/real.js +1 -1
  641. package/sqlite-core/columns/real.js.map +1 -1
  642. package/sqlite-core/columns/text.cjs +7 -2
  643. package/sqlite-core/columns/text.cjs.map +1 -1
  644. package/sqlite-core/columns/text.d.cts +4 -2
  645. package/sqlite-core/columns/text.d.ts +4 -2
  646. package/sqlite-core/columns/text.js +7 -2
  647. package/sqlite-core/columns/text.js.map +1 -1
  648. package/sqlite-core/db.cjs +2 -1
  649. package/sqlite-core/db.cjs.map +1 -1
  650. package/sqlite-core/db.js +2 -1
  651. package/sqlite-core/db.js.map +1 -1
  652. package/sqlite-core/dialect.cjs +14 -8
  653. package/sqlite-core/dialect.cjs.map +1 -1
  654. package/sqlite-core/dialect.d.cts +5 -1
  655. package/sqlite-core/dialect.d.ts +5 -1
  656. package/sqlite-core/dialect.js +14 -8
  657. package/sqlite-core/dialect.js.map +1 -1
  658. package/sqlite-core/foreign-keys.cjs +3 -3
  659. package/sqlite-core/foreign-keys.cjs.map +1 -1
  660. package/sqlite-core/foreign-keys.d.cts +1 -1
  661. package/sqlite-core/foreign-keys.d.ts +1 -1
  662. package/sqlite-core/foreign-keys.js +3 -3
  663. package/sqlite-core/foreign-keys.js.map +1 -1
  664. package/sqlite-core/query-builders/count.cjs +4 -4
  665. package/sqlite-core/query-builders/count.cjs.map +1 -1
  666. package/sqlite-core/query-builders/count.d.cts +2 -3
  667. package/sqlite-core/query-builders/count.d.ts +2 -3
  668. package/sqlite-core/query-builders/count.js +2 -2
  669. package/sqlite-core/query-builders/count.js.map +1 -1
  670. package/sqlite-core/query-builders/query-builder.cjs +6 -1
  671. package/sqlite-core/query-builders/query-builder.cjs.map +1 -1
  672. package/sqlite-core/query-builders/query-builder.d.cts +4 -0
  673. package/sqlite-core/query-builders/query-builder.d.ts +4 -0
  674. package/sqlite-core/query-builders/query-builder.js +8 -3
  675. package/sqlite-core/query-builders/query-builder.js.map +1 -1
  676. package/sqlite-core/query-builders/raw.cjs.map +1 -1
  677. package/sqlite-core/query-builders/raw.d.cts +2 -2
  678. package/sqlite-core/query-builders/raw.d.ts +2 -2
  679. package/sqlite-core/query-builders/raw.js.map +1 -1
  680. package/sqlite-core/table.cjs +4 -1
  681. package/sqlite-core/table.cjs.map +1 -1
  682. package/sqlite-core/table.d.cts +7 -0
  683. package/sqlite-core/table.d.ts +7 -0
  684. package/sqlite-core/table.js +4 -1
  685. package/sqlite-core/table.js.map +1 -1
  686. package/sqlite-core/unique-constraint.cjs +2 -2
  687. package/sqlite-core/unique-constraint.cjs.map +1 -1
  688. package/sqlite-core/unique-constraint.d.cts +1 -1
  689. package/sqlite-core/unique-constraint.d.ts +1 -1
  690. package/sqlite-core/unique-constraint.js +2 -2
  691. package/sqlite-core/unique-constraint.js.map +1 -1
  692. package/sqlite-proxy/driver.cjs +1 -1
  693. package/sqlite-proxy/driver.cjs.map +1 -1
  694. package/sqlite-proxy/driver.js +1 -1
  695. package/sqlite-proxy/driver.js.map +1 -1
  696. package/table.cjs +6 -8
  697. package/table.cjs.map +1 -1
  698. package/table.js +1 -2
  699. package/table.js.map +1 -1
  700. package/table.utils.cjs +29 -0
  701. package/table.utils.cjs.map +1 -0
  702. package/table.utils.d.cts +1 -0
  703. package/table.utils.d.ts +1 -0
  704. package/table.utils.js +5 -0
  705. package/table.utils.js.map +1 -0
  706. package/tidb-serverless/driver.cjs +1 -1
  707. package/tidb-serverless/driver.cjs.map +1 -1
  708. package/tidb-serverless/driver.js +1 -1
  709. package/tidb-serverless/driver.js.map +1 -1
  710. package/utils.cjs +8 -0
  711. package/utils.cjs.map +1 -1
  712. package/utils.d.cts +2 -0
  713. package/utils.d.ts +2 -0
  714. package/utils.js +7 -0
  715. package/utils.js.map +1 -1
  716. package/vercel-postgres/driver.cjs +1 -1
  717. package/vercel-postgres/driver.cjs.map +1 -1
  718. package/vercel-postgres/driver.js +1 -1
  719. package/vercel-postgres/driver.js.map +1 -1
  720. package/version.cjs +1 -1
  721. package/version.d.cts +1 -1
  722. package/version.d.ts +1 -1
  723. package/version.js +1 -1
  724. package/xata-http/driver.cjs +1 -1
  725. package/xata-http/driver.cjs.map +1 -1
  726. package/xata-http/driver.js +1 -1
  727. package/xata-http/driver.js.map +1 -1
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var roles_exports = {};
20
+ __export(roles_exports, {
21
+ PgRole: () => PgRole,
22
+ pgRole: () => pgRole
23
+ });
24
+ module.exports = __toCommonJS(roles_exports);
25
+ var import_entity = require("../entity.cjs");
26
+ class PgRole {
27
+ constructor(name, config) {
28
+ this.name = name;
29
+ if (config) {
30
+ this.createDb = config.createDb;
31
+ this.createRole = config.createRole;
32
+ this.inherit = config.inherit;
33
+ }
34
+ }
35
+ static [import_entity.entityKind] = "PgRole";
36
+ /** @internal */
37
+ _existing;
38
+ /** @internal */
39
+ createDb;
40
+ /** @internal */
41
+ createRole;
42
+ /** @internal */
43
+ inherit;
44
+ existing() {
45
+ this._existing = true;
46
+ return this;
47
+ }
48
+ }
49
+ function pgRole(name, config) {
50
+ return new PgRole(name, config);
51
+ }
52
+ // Annotate the CommonJS export names for ESM import in node:
53
+ 0 && (module.exports = {
54
+ PgRole,
55
+ pgRole
56
+ });
57
+ //# sourceMappingURL=roles.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/pg-core/roles.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\n\nexport interface PgRoleConfig {\n\tcreateDb?: boolean;\n\tcreateRole?: boolean;\n\tinherit?: boolean;\n}\n\nexport class PgRole implements PgRoleConfig {\n\tstatic readonly [entityKind]: string = 'PgRole';\n\n\t/** @internal */\n\t_existing?: boolean;\n\n\t/** @internal */\n\treadonly createDb: PgRoleConfig['createDb'];\n\t/** @internal */\n\treadonly createRole: PgRoleConfig['createRole'];\n\t/** @internal */\n\treadonly inherit: PgRoleConfig['inherit'];\n\n\tconstructor(\n\t\treadonly name: string,\n\t\tconfig?: PgRoleConfig,\n\t) {\n\t\tif (config) {\n\t\t\tthis.createDb = config.createDb;\n\t\t\tthis.createRole = config.createRole;\n\t\t\tthis.inherit = config.inherit;\n\t\t}\n\t}\n\n\texisting(): this {\n\t\tthis._existing = true;\n\t\treturn this;\n\t}\n}\n\nexport function pgRole(name: string, config?: PgRoleConfig) {\n\treturn new PgRole(name, config);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAQpB,MAAM,OAA+B;AAAA,EAa3C,YACU,MACT,QACC;AAFQ;AAGT,QAAI,QAAQ;AACX,WAAK,WAAW,OAAO;AACvB,WAAK,aAAa,OAAO;AACzB,WAAK,UAAU,OAAO;AAAA,IACvB;AAAA,EACD;AAAA,EArBA,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAGS;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA,EAaT,WAAiB;AAChB,SAAK,YAAY;AACjB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,OAAO,MAAc,QAAuB;AAC3D,SAAO,IAAI,OAAO,MAAM,MAAM;AAC/B;","names":[]}
@@ -0,0 +1,13 @@
1
+ import { entityKind } from "../entity.cjs";
2
+ export interface PgRoleConfig {
3
+ createDb?: boolean;
4
+ createRole?: boolean;
5
+ inherit?: boolean;
6
+ }
7
+ export declare class PgRole implements PgRoleConfig {
8
+ readonly name: string;
9
+ static readonly [entityKind]: string;
10
+ constructor(name: string, config?: PgRoleConfig);
11
+ existing(): this;
12
+ }
13
+ export declare function pgRole(name: string, config?: PgRoleConfig): PgRole;
@@ -0,0 +1,13 @@
1
+ import { entityKind } from "../entity.js";
2
+ export interface PgRoleConfig {
3
+ createDb?: boolean;
4
+ createRole?: boolean;
5
+ inherit?: boolean;
6
+ }
7
+ export declare class PgRole implements PgRoleConfig {
8
+ readonly name: string;
9
+ static readonly [entityKind]: string;
10
+ constructor(name: string, config?: PgRoleConfig);
11
+ existing(): this;
12
+ }
13
+ export declare function pgRole(name: string, config?: PgRoleConfig): PgRole;
@@ -0,0 +1,32 @@
1
+ import { entityKind } from "../entity.js";
2
+ class PgRole {
3
+ constructor(name, config) {
4
+ this.name = name;
5
+ if (config) {
6
+ this.createDb = config.createDb;
7
+ this.createRole = config.createRole;
8
+ this.inherit = config.inherit;
9
+ }
10
+ }
11
+ static [entityKind] = "PgRole";
12
+ /** @internal */
13
+ _existing;
14
+ /** @internal */
15
+ createDb;
16
+ /** @internal */
17
+ createRole;
18
+ /** @internal */
19
+ inherit;
20
+ existing() {
21
+ this._existing = true;
22
+ return this;
23
+ }
24
+ }
25
+ function pgRole(name, config) {
26
+ return new PgRole(name, config);
27
+ }
28
+ export {
29
+ PgRole,
30
+ pgRole
31
+ };
32
+ //# sourceMappingURL=roles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/pg-core/roles.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\n\nexport interface PgRoleConfig {\n\tcreateDb?: boolean;\n\tcreateRole?: boolean;\n\tinherit?: boolean;\n}\n\nexport class PgRole implements PgRoleConfig {\n\tstatic readonly [entityKind]: string = 'PgRole';\n\n\t/** @internal */\n\t_existing?: boolean;\n\n\t/** @internal */\n\treadonly createDb: PgRoleConfig['createDb'];\n\t/** @internal */\n\treadonly createRole: PgRoleConfig['createRole'];\n\t/** @internal */\n\treadonly inherit: PgRoleConfig['inherit'];\n\n\tconstructor(\n\t\treadonly name: string,\n\t\tconfig?: PgRoleConfig,\n\t) {\n\t\tif (config) {\n\t\t\tthis.createDb = config.createDb;\n\t\t\tthis.createRole = config.createRole;\n\t\t\tthis.inherit = config.inherit;\n\t\t}\n\t}\n\n\texisting(): this {\n\t\tthis._existing = true;\n\t\treturn this;\n\t}\n}\n\nexport function pgRole(name: string, config?: PgRoleConfig) {\n\treturn new PgRole(name, config);\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAQpB,MAAM,OAA+B;AAAA,EAa3C,YACU,MACT,QACC;AAFQ;AAGT,QAAI,QAAQ;AACX,WAAK,WAAW,OAAO;AACvB,WAAK,aAAa,OAAO;AACzB,WAAK,UAAU,OAAO;AAAA,IACvB;AAAA,EACD;AAAA,EArBA,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAGS;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA,EAaT,WAAiB;AAChB,SAAK,YAAY;AACjB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,OAAO,MAAc,QAAuB;AAC3D,SAAO,IAAI,OAAO,MAAM,MAAM;AAC/B;","names":[]}
package/pg-core/table.cjs CHANGED
@@ -27,6 +27,7 @@ __export(table_exports, {
27
27
  module.exports = __toCommonJS(table_exports);
28
28
  var import_entity = require("../entity.cjs");
29
29
  var import_table = require("../table.cjs");
30
+ var import_all = require("./columns/all.cjs");
30
31
  const InlineForeignKeys = Symbol.for("drizzle:PgInlineForeignKeys");
31
32
  class PgTable extends import_table.Table {
32
33
  static [import_entity.entityKind] = "PgTable";
@@ -41,17 +42,20 @@ class PgTable extends import_table.Table {
41
42
  }
42
43
  function pgTableWithSchema(name, columns, extraConfig, schema, baseName = name) {
43
44
  const rawTable = new PgTable(name, schema, baseName);
45
+ const parsedColumns = typeof columns === "function" ? columns((0, import_all.getPgColumnBuilders)()) : columns;
44
46
  const builtColumns = Object.fromEntries(
45
- Object.entries(columns).map(([name2, colBuilderBase]) => {
47
+ Object.entries(parsedColumns).map(([name2, colBuilderBase]) => {
46
48
  const colBuilder = colBuilderBase;
49
+ colBuilder.setName(name2);
47
50
  const column = colBuilder.build(rawTable);
48
51
  rawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));
49
52
  return [name2, column];
50
53
  })
51
54
  );
52
55
  const builtColumnsForExtraConfig = Object.fromEntries(
53
- Object.entries(columns).map(([name2, colBuilderBase]) => {
56
+ Object.entries(parsedColumns).map(([name2, colBuilderBase]) => {
54
57
  const colBuilder = colBuilderBase;
58
+ colBuilder.setName(name2);
55
59
  const column = colBuilder.buildExtraConfigColumn(rawTable);
56
60
  return [name2, column];
57
61
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport type { PgColumn, PgColumnBuilder, PgColumnBuilderBase } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type PgTableExtraConfig = Record<\n\tstring,\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder\n>;\n\nexport type TableConfig = TableConfigBase<PgColumn>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:PgInlineForeignKeys');\n\nexport class PgTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic readonly [entityKind]: string = 'PgTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t});\n\n\t/**@internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]: ((self: Record<string, PgColumn>) => PgTableExtraConfig) | undefined =\n\t\tundefined;\n}\n\nexport type AnyPgTable<TPartial extends Partial<TableConfig> = {}> = PgTable<UpdateTableConfig<TableConfig, TPartial>>;\n\nexport type PgTableWithColumns<T extends TableConfig> =\n\t& PgTable<T>\n\t& {\n\t\t[Key in keyof T['columns']]: T['columns'][Key];\n\t};\n\n/** @internal */\nexport function pgTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap,\n\textraConfig: ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig) | undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): PgTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\tdialect: 'pg';\n}> {\n\tconst rawTable = new PgTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>(name, schema, baseName);\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(columns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst builtColumnsForExtraConfig = Object.fromEntries(\n\t\tObject.entries(columns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tconst column = colBuilder.buildExtraConfigColumn(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumnsForExtraConfig;\n\n\tif (extraConfig) {\n\t\ttable[PgTable.Symbol.ExtraConfigBuilder] = extraConfig as any;\n\t}\n\n\treturn table;\n}\n\nexport interface PgTableFn<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n}\n\nexport const pgTable: PgTableFn = (name, columns, extraConfig) => {\n\treturn pgTableWithSchema(name, columns, extraConfig, undefined);\n};\n\nexport function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAC3B,mBAAmF;AAoB5E,MAAM,oBAAoB,OAAO,IAAI,6BAA6B;AAElE,MAAM,gBAAqD,mBAAS;AAAA,EAC1E,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,mBAAM,QAAQ;AAAA,IACjE;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAU,mBAAM,OAAO,kBAAkB,IACxC;AACF;AAWO,SAAS,kBAKf,MACA,SACA,aACA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,QAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,OAAO,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AACvD,YAAM,aAAa;AACnB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,6BAA6B,OAAO;AAAA,IACzC,OAAO,QAAQ,OAAO,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AACvD,YAAM,aAAa;AACnB,YAAM,SAAS,WAAW,uBAAuB,QAAQ;AACzD,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,mBAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,mBAAM,OAAO,kBAAkB,IAAI;AAEzC,MAAI,aAAa;AAChB,UAAM,QAAQ,OAAO,kBAAkB,IAAI;AAAA,EAC5C;AAEA,SAAO;AACR;AAkBO,MAAM,UAAqB,CAAC,MAAM,SAAS,gBAAgB;AACjE,SAAO,kBAAkB,MAAM,SAAS,aAAa,MAAS;AAC/D;AAEO,SAAS,eAAe,oBAAyD;AACvF,SAAO,CAAC,MAAM,SAAS,gBAAgB;AACtC,WAAO,kBAAkB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EACxG;AACD;","names":["name"]}
1
+ {"version":3,"sources":["../../src/pg-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport { getPgColumnBuilders, type PgColumnsBuilders } from './columns/all.ts';\nimport type { PgColumn, PgColumnBuilder, PgColumnBuilderBase } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PgPolicy } from './policies.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type PgTableExtraConfig = Record<\n\tstring,\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder\n\t| PgPolicy\n>;\n\nexport type TableConfig = TableConfigBase<PgColumn>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:PgInlineForeignKeys');\n\nexport class PgTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic readonly [entityKind]: string = 'PgTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t});\n\n\t/**@internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]: ((self: Record<string, PgColumn>) => PgTableExtraConfig) | undefined =\n\t\tundefined;\n}\n\nexport type AnyPgTable<TPartial extends Partial<TableConfig> = {}> = PgTable<UpdateTableConfig<TableConfig, TPartial>>;\n\nexport type PgTableWithColumns<T extends TableConfig> =\n\t& PgTable<T>\n\t& {\n\t\t[Key in keyof T['columns']]: T['columns'][Key];\n\t};\n\n/** @internal */\nexport function pgTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: PgColumnsBuilders) => TColumnsMap),\n\textraConfig: ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig) | undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): PgTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\tdialect: 'pg';\n}> {\n\tconst rawTable = new PgTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getPgColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst builtColumnsForExtraConfig = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.buildExtraConfigColumn(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumnsForExtraConfig;\n\n\tif (extraConfig) {\n\t\ttable[PgTable.Symbol.ExtraConfigBuilder] = extraConfig as any;\n\t}\n\n\treturn table;\n}\n\nexport interface PgTableFn<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: PgColumnsBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n}\n\nexport const pgTable: PgTableFn = (name, columns, extraConfig) => {\n\treturn pgTableWithSchema(name, columns, extraConfig, undefined);\n};\n\nexport function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAC3B,mBAAmF;AAEnF,iBAA4D;AAqBrD,MAAM,oBAAoB,OAAO,IAAI,6BAA6B;AAElE,MAAM,gBAAqD,mBAAS;AAAA,EAC1E,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,mBAAM,QAAQ;AAAA,IACjE;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAU,mBAAM,OAAO,kBAAkB,IACxC;AACF;AAWO,SAAS,kBAKf,MACA,SACA,aACA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,QAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,gBAA6B,OAAO,YAAY,aAAa,YAAQ,gCAAoB,CAAC,IAAI;AAEpG,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,6BAA6B,OAAO;AAAA,IACzC,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,uBAAuB,QAAQ;AACzD,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,mBAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,mBAAM,OAAO,kBAAkB,IAAI;AAEzC,MAAI,aAAa;AAChB,UAAM,QAAQ,OAAO,kBAAkB,IAAI;AAAA,EAC5C;AAEA,SAAO;AACR;AAgCO,MAAM,UAAqB,CAAC,MAAM,SAAS,gBAAgB;AACjE,SAAO,kBAAkB,MAAM,SAAS,aAAa,MAAS;AAC/D;AAEO,SAAS,eAAe,oBAAyD;AACvF,SAAO,CAAC,MAAM,SAAS,gBAAgB;AACtC,WAAO,kBAAkB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EACxG;AACD;","names":["name"]}
@@ -2,12 +2,14 @@ import type { BuildColumns, BuildExtraConfigColumns } from "../column-builder.cj
2
2
  import { entityKind } from "../entity.cjs";
3
3
  import { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from "../table.cjs";
4
4
  import type { CheckBuilder } from "./checks.cjs";
5
+ import { type PgColumnsBuilders } from "./columns/all.cjs";
5
6
  import type { PgColumn, PgColumnBuilderBase } from "./columns/common.cjs";
6
7
  import type { ForeignKeyBuilder } from "./foreign-keys.cjs";
7
8
  import type { AnyIndexBuilder } from "./indexes.cjs";
9
+ import type { PgPolicy } from "./policies.cjs";
8
10
  import type { PrimaryKeyBuilder } from "./primary-keys.cjs";
9
11
  import type { UniqueConstraintBuilder } from "./unique-constraint.cjs";
10
- export type PgTableExtraConfig = Record<string, AnyIndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder>;
12
+ export type PgTableExtraConfig = Record<string, AnyIndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder | PgPolicy>;
11
13
  export type TableConfig = TableConfigBase<PgColumn>;
12
14
  export declare class PgTable<T extends TableConfig = TableConfig> extends Table<T> {
13
15
  static readonly [entityKind]: string;
@@ -23,6 +25,12 @@ export interface PgTableFn<TSchema extends string | undefined = undefined> {
23
25
  columns: BuildColumns<TTableName, TColumnsMap, 'pg'>;
24
26
  dialect: 'pg';
25
27
  }>;
28
+ <TTableName extends string, TColumnsMap extends Record<string, PgColumnBuilderBase>>(name: TTableName, columns: (columnTypes: PgColumnsBuilders) => TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig): PgTableWithColumns<{
29
+ name: TTableName;
30
+ schema: TSchema;
31
+ columns: BuildColumns<TTableName, TColumnsMap, 'pg'>;
32
+ dialect: 'pg';
33
+ }>;
26
34
  }
27
35
  export declare const pgTable: PgTableFn;
28
36
  export declare function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn;
@@ -2,12 +2,14 @@ import type { BuildColumns, BuildExtraConfigColumns } from "../column-builder.js
2
2
  import { entityKind } from "../entity.js";
3
3
  import { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from "../table.js";
4
4
  import type { CheckBuilder } from "./checks.js";
5
+ import { type PgColumnsBuilders } from "./columns/all.js";
5
6
  import type { PgColumn, PgColumnBuilderBase } from "./columns/common.js";
6
7
  import type { ForeignKeyBuilder } from "./foreign-keys.js";
7
8
  import type { AnyIndexBuilder } from "./indexes.js";
9
+ import type { PgPolicy } from "./policies.js";
8
10
  import type { PrimaryKeyBuilder } from "./primary-keys.js";
9
11
  import type { UniqueConstraintBuilder } from "./unique-constraint.js";
10
- export type PgTableExtraConfig = Record<string, AnyIndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder>;
12
+ export type PgTableExtraConfig = Record<string, AnyIndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder | PgPolicy>;
11
13
  export type TableConfig = TableConfigBase<PgColumn>;
12
14
  export declare class PgTable<T extends TableConfig = TableConfig> extends Table<T> {
13
15
  static readonly [entityKind]: string;
@@ -23,6 +25,12 @@ export interface PgTableFn<TSchema extends string | undefined = undefined> {
23
25
  columns: BuildColumns<TTableName, TColumnsMap, 'pg'>;
24
26
  dialect: 'pg';
25
27
  }>;
28
+ <TTableName extends string, TColumnsMap extends Record<string, PgColumnBuilderBase>>(name: TTableName, columns: (columnTypes: PgColumnsBuilders) => TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig): PgTableWithColumns<{
29
+ name: TTableName;
30
+ schema: TSchema;
31
+ columns: BuildColumns<TTableName, TColumnsMap, 'pg'>;
32
+ dialect: 'pg';
33
+ }>;
26
34
  }
27
35
  export declare const pgTable: PgTableFn;
28
36
  export declare function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn;
package/pg-core/table.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { entityKind } from "../entity.js";
2
2
  import { Table } from "../table.js";
3
+ import { getPgColumnBuilders } from "./columns/all.js";
3
4
  const InlineForeignKeys = Symbol.for("drizzle:PgInlineForeignKeys");
4
5
  class PgTable extends Table {
5
6
  static [entityKind] = "PgTable";
@@ -14,17 +15,20 @@ class PgTable extends Table {
14
15
  }
15
16
  function pgTableWithSchema(name, columns, extraConfig, schema, baseName = name) {
16
17
  const rawTable = new PgTable(name, schema, baseName);
18
+ const parsedColumns = typeof columns === "function" ? columns(getPgColumnBuilders()) : columns;
17
19
  const builtColumns = Object.fromEntries(
18
- Object.entries(columns).map(([name2, colBuilderBase]) => {
20
+ Object.entries(parsedColumns).map(([name2, colBuilderBase]) => {
19
21
  const colBuilder = colBuilderBase;
22
+ colBuilder.setName(name2);
20
23
  const column = colBuilder.build(rawTable);
21
24
  rawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));
22
25
  return [name2, column];
23
26
  })
24
27
  );
25
28
  const builtColumnsForExtraConfig = Object.fromEntries(
26
- Object.entries(columns).map(([name2, colBuilderBase]) => {
29
+ Object.entries(parsedColumns).map(([name2, colBuilderBase]) => {
27
30
  const colBuilder = colBuilderBase;
31
+ colBuilder.setName(name2);
28
32
  const column = colBuilder.buildExtraConfigColumn(rawTable);
29
33
  return [name2, column];
30
34
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport type { PgColumn, PgColumnBuilder, PgColumnBuilderBase } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type PgTableExtraConfig = Record<\n\tstring,\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder\n>;\n\nexport type TableConfig = TableConfigBase<PgColumn>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:PgInlineForeignKeys');\n\nexport class PgTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic readonly [entityKind]: string = 'PgTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t});\n\n\t/**@internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]: ((self: Record<string, PgColumn>) => PgTableExtraConfig) | undefined =\n\t\tundefined;\n}\n\nexport type AnyPgTable<TPartial extends Partial<TableConfig> = {}> = PgTable<UpdateTableConfig<TableConfig, TPartial>>;\n\nexport type PgTableWithColumns<T extends TableConfig> =\n\t& PgTable<T>\n\t& {\n\t\t[Key in keyof T['columns']]: T['columns'][Key];\n\t};\n\n/** @internal */\nexport function pgTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap,\n\textraConfig: ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig) | undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): PgTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\tdialect: 'pg';\n}> {\n\tconst rawTable = new PgTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>(name, schema, baseName);\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(columns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst builtColumnsForExtraConfig = Object.fromEntries(\n\t\tObject.entries(columns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tconst column = colBuilder.buildExtraConfigColumn(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumnsForExtraConfig;\n\n\tif (extraConfig) {\n\t\ttable[PgTable.Symbol.ExtraConfigBuilder] = extraConfig as any;\n\t}\n\n\treturn table;\n}\n\nexport interface PgTableFn<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n}\n\nexport const pgTable: PgTableFn = (name, columns, extraConfig) => {\n\treturn pgTableWithSchema(name, columns, extraConfig, undefined);\n};\n\nexport function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAC3B,SAAS,aAA0E;AAoB5E,MAAM,oBAAoB,OAAO,IAAI,6BAA6B;AAElE,MAAM,gBAAqD,MAAS;AAAA,EAC1E,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,MAAM,QAAQ;AAAA,IACjE;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAU,MAAM,OAAO,kBAAkB,IACxC;AACF;AAWO,SAAS,kBAKf,MACA,SACA,aACA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,QAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,OAAO,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AACvD,YAAM,aAAa;AACnB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,6BAA6B,OAAO;AAAA,IACzC,OAAO,QAAQ,OAAO,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AACvD,YAAM,aAAa;AACnB,YAAM,SAAS,WAAW,uBAAuB,QAAQ;AACzD,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,MAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,MAAM,OAAO,kBAAkB,IAAI;AAEzC,MAAI,aAAa;AAChB,UAAM,QAAQ,OAAO,kBAAkB,IAAI;AAAA,EAC5C;AAEA,SAAO;AACR;AAkBO,MAAM,UAAqB,CAAC,MAAM,SAAS,gBAAgB;AACjE,SAAO,kBAAkB,MAAM,SAAS,aAAa,MAAS;AAC/D;AAEO,SAAS,eAAe,oBAAyD;AACvF,SAAO,CAAC,MAAM,SAAS,gBAAgB;AACtC,WAAO,kBAAkB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EACxG;AACD;","names":["name"]}
1
+ {"version":3,"sources":["../../src/pg-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport { getPgColumnBuilders, type PgColumnsBuilders } from './columns/all.ts';\nimport type { PgColumn, PgColumnBuilder, PgColumnBuilderBase } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PgPolicy } from './policies.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type PgTableExtraConfig = Record<\n\tstring,\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder\n\t| PgPolicy\n>;\n\nexport type TableConfig = TableConfigBase<PgColumn>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:PgInlineForeignKeys');\n\nexport class PgTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic readonly [entityKind]: string = 'PgTable';\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t});\n\n\t/**@internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]: ((self: Record<string, PgColumn>) => PgTableExtraConfig) | undefined =\n\t\tundefined;\n}\n\nexport type AnyPgTable<TPartial extends Partial<TableConfig> = {}> = PgTable<UpdateTableConfig<TableConfig, TPartial>>;\n\nexport type PgTableWithColumns<T extends TableConfig> =\n\t& PgTable<T>\n\t& {\n\t\t[Key in keyof T['columns']]: T['columns'][Key];\n\t};\n\n/** @internal */\nexport function pgTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: PgColumnsBuilders) => TColumnsMap),\n\textraConfig: ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig) | undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): PgTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\tdialect: 'pg';\n}> {\n\tconst rawTable = new PgTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getPgColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst builtColumnsForExtraConfig = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as PgColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.buildExtraConfigColumn(rawTable);\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumnsForExtraConfig;\n\n\tif (extraConfig) {\n\t\ttable[PgTable.Symbol.ExtraConfigBuilder] = extraConfig as any;\n\t}\n\n\treturn table;\n}\n\nexport interface PgTableFn<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, PgColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: PgColumnsBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'pg'>) => PgTableExtraConfig,\n\t): PgTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'pg'>;\n\t\tdialect: 'pg';\n\t}>;\n}\n\nexport const pgTable: PgTableFn = (name, columns, extraConfig) => {\n\treturn pgTableWithSchema(name, columns, extraConfig, undefined);\n};\n\nexport function pgTableCreator(customizeTableName: (name: string) => string): PgTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn pgTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAC3B,SAAS,aAA0E;AAEnF,SAAS,2BAAmD;AAqBrD,MAAM,oBAAoB,OAAO,IAAI,6BAA6B;AAElE,MAAM,gBAAqD,MAAS;AAAA,EAC1E,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,MAAM,QAAQ;AAAA,IACjE;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAU,MAAM,OAAO,kBAAkB,IACxC;AACF;AAWO,SAAS,kBAKf,MACA,SACA,aACA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,QAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,gBAA6B,OAAO,YAAY,aAAa,QAAQ,oBAAoB,CAAC,IAAI;AAEpG,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,6BAA6B,OAAO;AAAA,IACzC,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,uBAAuB,QAAQ;AACzD,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,MAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,MAAM,OAAO,kBAAkB,IAAI;AAEzC,MAAI,aAAa;AAChB,UAAM,QAAQ,OAAO,kBAAkB,IAAI;AAAA,EAC5C;AAEA,SAAO;AACR;AAgCO,MAAM,UAAqB,CAAC,MAAM,SAAS,gBAAgB;AACjE,SAAO,kBAAkB,MAAM,SAAS,aAAa,MAAS;AAC/D;AAEO,SAAS,eAAe,oBAAyD;AACvF,SAAO,CAAC,MAAM,SAAS,gBAAgB;AACtC,WAAO,kBAAkB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EACxG;AACD;","names":["name"]}
@@ -26,12 +26,12 @@ __export(unique_constraint_exports, {
26
26
  });
27
27
  module.exports = __toCommonJS(unique_constraint_exports);
28
28
  var import_entity = require("../entity.cjs");
29
- var import_table = require("./table.cjs");
29
+ var import_table_utils = require("../table.utils.cjs");
30
30
  function unique(name) {
31
31
  return new UniqueOnConstraintBuilder(name);
32
32
  }
33
33
  function uniqueKeyName(table, columns) {
34
- return `${table[import_table.PgTable.Symbol.Name]}_${columns.join("_")}_unique`;
34
+ return `${table[import_table_utils.TableName]}_${columns.join("_")}_unique`;
35
35
  }
36
36
  class UniqueConstraintBuilder {
37
37
  constructor(columns, name) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/unique-constraint.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { PgColumn } from './columns/index.ts';\nimport { PgTable } from './table.ts';\n\nexport function unique(name?: string): UniqueOnConstraintBuilder {\n\treturn new UniqueOnConstraintBuilder(name);\n}\n\nexport function uniqueKeyName(table: PgTable, columns: string[]) {\n\treturn `${table[PgTable.Symbol.Name]}_${columns.join('_')}_unique`;\n}\n\nexport class UniqueConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraintBuilder';\n\n\t/** @internal */\n\tcolumns: PgColumn[];\n\t/** @internal */\n\tnullsNotDistinctConfig = false;\n\n\tconstructor(\n\t\tcolumns: PgColumn[],\n\t\tprivate name?: string,\n\t) {\n\t\tthis.columns = columns;\n\t}\n\n\tnullsNotDistinct() {\n\t\tthis.nullsNotDistinctConfig = true;\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tbuild(table: PgTable): UniqueConstraint {\n\t\treturn new UniqueConstraint(table, this.columns, this.nullsNotDistinctConfig, this.name);\n\t}\n}\n\nexport class UniqueOnConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueOnConstraintBuilder';\n\n\t/** @internal */\n\tname?: string;\n\n\tconstructor(\n\t\tname?: string,\n\t) {\n\t\tthis.name = name;\n\t}\n\n\ton(...columns: [PgColumn, ...PgColumn[]]) {\n\t\treturn new UniqueConstraintBuilder(columns, this.name);\n\t}\n}\n\nexport class UniqueConstraint {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraint';\n\n\treadonly columns: PgColumn[];\n\treadonly name?: string;\n\treadonly nullsNotDistinct: boolean = false;\n\n\tconstructor(readonly table: PgTable, columns: PgColumn[], nullsNotDistinct: boolean, name?: string) {\n\t\tthis.columns = columns;\n\t\tthis.name = name ?? uniqueKeyName(this.table, this.columns.map((column) => column.name));\n\t\tthis.nullsNotDistinct = nullsNotDistinct;\n\t}\n\n\tgetName() {\n\t\treturn this.name;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAE3B,mBAAwB;AAEjB,SAAS,OAAO,MAA0C;AAChE,SAAO,IAAI,0BAA0B,IAAI;AAC1C;AAEO,SAAS,cAAc,OAAgB,SAAmB;AAChE,SAAO,GAAG,MAAM,qBAAQ,OAAO,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,CAAC;AAC1D;AAEO,MAAM,wBAAwB;AAAA,EAQpC,YACC,SACQ,MACP;AADO;AAER,SAAK,UAAU;AAAA,EAChB;AAAA,EAZA,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAEA,yBAAyB;AAAA,EASzB,mBAAmB;AAClB,SAAK,yBAAyB;AAC9B,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,MAAM,OAAkC;AACvC,WAAO,IAAI,iBAAiB,OAAO,KAAK,SAAS,KAAK,wBAAwB,KAAK,IAAI;AAAA,EACxF;AACD;AAEO,MAAM,0BAA0B;AAAA,EACtC,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC;AAAA,EAEA,YACC,MACC;AACD,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,MAAM,SAAoC;AACzC,WAAO,IAAI,wBAAwB,SAAS,KAAK,IAAI;AAAA,EACtD;AACD;AAEO,MAAM,iBAAiB;AAAA,EAO7B,YAAqB,OAAgB,SAAqB,kBAA2B,MAAe;AAA/E;AACpB,SAAK,UAAU;AACf,SAAK,OAAO,QAAQ,cAAc,KAAK,OAAO,KAAK,QAAQ,IAAI,CAAC,WAAW,OAAO,IAAI,CAAC;AACvF,SAAK,mBAAmB;AAAA,EACzB;AAAA,EAVA,QAAiB,wBAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA,mBAA4B;AAAA,EAQrC,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AACD;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/unique-constraint.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { TableName } from '~/table.utils.ts';\nimport type { PgColumn } from './columns/index.ts';\nimport type { PgTable } from './table.ts';\n\nexport function unique(name?: string): UniqueOnConstraintBuilder {\n\treturn new UniqueOnConstraintBuilder(name);\n}\n\nexport function uniqueKeyName(table: PgTable, columns: string[]) {\n\treturn `${table[TableName]}_${columns.join('_')}_unique`;\n}\n\nexport class UniqueConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraintBuilder';\n\n\t/** @internal */\n\tcolumns: PgColumn[];\n\t/** @internal */\n\tnullsNotDistinctConfig = false;\n\n\tconstructor(\n\t\tcolumns: PgColumn[],\n\t\tprivate name?: string,\n\t) {\n\t\tthis.columns = columns;\n\t}\n\n\tnullsNotDistinct() {\n\t\tthis.nullsNotDistinctConfig = true;\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tbuild(table: PgTable): UniqueConstraint {\n\t\treturn new UniqueConstraint(table, this.columns, this.nullsNotDistinctConfig, this.name);\n\t}\n}\n\nexport class UniqueOnConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueOnConstraintBuilder';\n\n\t/** @internal */\n\tname?: string;\n\n\tconstructor(\n\t\tname?: string,\n\t) {\n\t\tthis.name = name;\n\t}\n\n\ton(...columns: [PgColumn, ...PgColumn[]]) {\n\t\treturn new UniqueConstraintBuilder(columns, this.name);\n\t}\n}\n\nexport class UniqueConstraint {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraint';\n\n\treadonly columns: PgColumn[];\n\treadonly name?: string;\n\treadonly nullsNotDistinct: boolean = false;\n\n\tconstructor(readonly table: PgTable, columns: PgColumn[], nullsNotDistinct: boolean, name?: string) {\n\t\tthis.columns = columns;\n\t\tthis.name = name ?? uniqueKeyName(this.table, this.columns.map((column) => column.name));\n\t\tthis.nullsNotDistinct = nullsNotDistinct;\n\t}\n\n\tgetName() {\n\t\treturn this.name;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAC3B,yBAA0B;AAInB,SAAS,OAAO,MAA0C;AAChE,SAAO,IAAI,0BAA0B,IAAI;AAC1C;AAEO,SAAS,cAAc,OAAgB,SAAmB;AAChE,SAAO,GAAG,MAAM,4BAAS,CAAC,IAAI,QAAQ,KAAK,GAAG,CAAC;AAChD;AAEO,MAAM,wBAAwB;AAAA,EAQpC,YACC,SACQ,MACP;AADO;AAER,SAAK,UAAU;AAAA,EAChB;AAAA,EAZA,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAEA,yBAAyB;AAAA,EASzB,mBAAmB;AAClB,SAAK,yBAAyB;AAC9B,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,MAAM,OAAkC;AACvC,WAAO,IAAI,iBAAiB,OAAO,KAAK,SAAS,KAAK,wBAAwB,KAAK,IAAI;AAAA,EACxF;AACD;AAEO,MAAM,0BAA0B;AAAA,EACtC,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC;AAAA,EAEA,YACC,MACC;AACD,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,MAAM,SAAoC;AACzC,WAAO,IAAI,wBAAwB,SAAS,KAAK,IAAI;AAAA,EACtD;AACD;AAEO,MAAM,iBAAiB;AAAA,EAO7B,YAAqB,OAAgB,SAAqB,kBAA2B,MAAe;AAA/E;AACpB,SAAK,UAAU;AACf,SAAK,OAAO,QAAQ,cAAc,KAAK,OAAO,KAAK,QAAQ,IAAI,CAAC,WAAW,OAAO,IAAI,CAAC;AACvF,SAAK,mBAAmB;AAAA,EACzB;AAAA,EAVA,QAAiB,wBAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA,mBAA4B;AAAA,EAQrC,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AACD;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import { entityKind } from "../entity.cjs";
2
2
  import type { PgColumn } from "./columns/index.cjs";
3
- import { PgTable } from "./table.cjs";
3
+ import type { PgTable } from "./table.cjs";
4
4
  export declare function unique(name?: string): UniqueOnConstraintBuilder;
5
5
  export declare function uniqueKeyName(table: PgTable, columns: string[]): string;
6
6
  export declare class UniqueConstraintBuilder {
@@ -1,6 +1,6 @@
1
1
  import { entityKind } from "../entity.js";
2
2
  import type { PgColumn } from "./columns/index.js";
3
- import { PgTable } from "./table.js";
3
+ import type { PgTable } from "./table.js";
4
4
  export declare function unique(name?: string): UniqueOnConstraintBuilder;
5
5
  export declare function uniqueKeyName(table: PgTable, columns: string[]): string;
6
6
  export declare class UniqueConstraintBuilder {
@@ -1,10 +1,10 @@
1
1
  import { entityKind } from "../entity.js";
2
- import { PgTable } from "./table.js";
2
+ import { TableName } from "../table.utils.js";
3
3
  function unique(name) {
4
4
  return new UniqueOnConstraintBuilder(name);
5
5
  }
6
6
  function uniqueKeyName(table, columns) {
7
- return `${table[PgTable.Symbol.Name]}_${columns.join("_")}_unique`;
7
+ return `${table[TableName]}_${columns.join("_")}_unique`;
8
8
  }
9
9
  class UniqueConstraintBuilder {
10
10
  constructor(columns, name) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/unique-constraint.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { PgColumn } from './columns/index.ts';\nimport { PgTable } from './table.ts';\n\nexport function unique(name?: string): UniqueOnConstraintBuilder {\n\treturn new UniqueOnConstraintBuilder(name);\n}\n\nexport function uniqueKeyName(table: PgTable, columns: string[]) {\n\treturn `${table[PgTable.Symbol.Name]}_${columns.join('_')}_unique`;\n}\n\nexport class UniqueConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraintBuilder';\n\n\t/** @internal */\n\tcolumns: PgColumn[];\n\t/** @internal */\n\tnullsNotDistinctConfig = false;\n\n\tconstructor(\n\t\tcolumns: PgColumn[],\n\t\tprivate name?: string,\n\t) {\n\t\tthis.columns = columns;\n\t}\n\n\tnullsNotDistinct() {\n\t\tthis.nullsNotDistinctConfig = true;\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tbuild(table: PgTable): UniqueConstraint {\n\t\treturn new UniqueConstraint(table, this.columns, this.nullsNotDistinctConfig, this.name);\n\t}\n}\n\nexport class UniqueOnConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueOnConstraintBuilder';\n\n\t/** @internal */\n\tname?: string;\n\n\tconstructor(\n\t\tname?: string,\n\t) {\n\t\tthis.name = name;\n\t}\n\n\ton(...columns: [PgColumn, ...PgColumn[]]) {\n\t\treturn new UniqueConstraintBuilder(columns, this.name);\n\t}\n}\n\nexport class UniqueConstraint {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraint';\n\n\treadonly columns: PgColumn[];\n\treadonly name?: string;\n\treadonly nullsNotDistinct: boolean = false;\n\n\tconstructor(readonly table: PgTable, columns: PgColumn[], nullsNotDistinct: boolean, name?: string) {\n\t\tthis.columns = columns;\n\t\tthis.name = name ?? uniqueKeyName(this.table, this.columns.map((column) => column.name));\n\t\tthis.nullsNotDistinct = nullsNotDistinct;\n\t}\n\n\tgetName() {\n\t\treturn this.name;\n\t}\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAE3B,SAAS,eAAe;AAEjB,SAAS,OAAO,MAA0C;AAChE,SAAO,IAAI,0BAA0B,IAAI;AAC1C;AAEO,SAAS,cAAc,OAAgB,SAAmB;AAChE,SAAO,GAAG,MAAM,QAAQ,OAAO,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,CAAC;AAC1D;AAEO,MAAM,wBAAwB;AAAA,EAQpC,YACC,SACQ,MACP;AADO;AAER,SAAK,UAAU;AAAA,EAChB;AAAA,EAZA,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAEA,yBAAyB;AAAA,EASzB,mBAAmB;AAClB,SAAK,yBAAyB;AAC9B,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,MAAM,OAAkC;AACvC,WAAO,IAAI,iBAAiB,OAAO,KAAK,SAAS,KAAK,wBAAwB,KAAK,IAAI;AAAA,EACxF;AACD;AAEO,MAAM,0BAA0B;AAAA,EACtC,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAAA,EAEA,YACC,MACC;AACD,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,MAAM,SAAoC;AACzC,WAAO,IAAI,wBAAwB,SAAS,KAAK,IAAI;AAAA,EACtD;AACD;AAEO,MAAM,iBAAiB;AAAA,EAO7B,YAAqB,OAAgB,SAAqB,kBAA2B,MAAe;AAA/E;AACpB,SAAK,UAAU;AACf,SAAK,OAAO,QAAQ,cAAc,KAAK,OAAO,KAAK,QAAQ,IAAI,CAAC,WAAW,OAAO,IAAI,CAAC;AACvF,SAAK,mBAAmB;AAAA,EACzB;AAAA,EAVA,QAAiB,UAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA,mBAA4B;AAAA,EAQrC,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AACD;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/unique-constraint.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { TableName } from '~/table.utils.ts';\nimport type { PgColumn } from './columns/index.ts';\nimport type { PgTable } from './table.ts';\n\nexport function unique(name?: string): UniqueOnConstraintBuilder {\n\treturn new UniqueOnConstraintBuilder(name);\n}\n\nexport function uniqueKeyName(table: PgTable, columns: string[]) {\n\treturn `${table[TableName]}_${columns.join('_')}_unique`;\n}\n\nexport class UniqueConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraintBuilder';\n\n\t/** @internal */\n\tcolumns: PgColumn[];\n\t/** @internal */\n\tnullsNotDistinctConfig = false;\n\n\tconstructor(\n\t\tcolumns: PgColumn[],\n\t\tprivate name?: string,\n\t) {\n\t\tthis.columns = columns;\n\t}\n\n\tnullsNotDistinct() {\n\t\tthis.nullsNotDistinctConfig = true;\n\t\treturn this;\n\t}\n\n\t/** @internal */\n\tbuild(table: PgTable): UniqueConstraint {\n\t\treturn new UniqueConstraint(table, this.columns, this.nullsNotDistinctConfig, this.name);\n\t}\n}\n\nexport class UniqueOnConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'PgUniqueOnConstraintBuilder';\n\n\t/** @internal */\n\tname?: string;\n\n\tconstructor(\n\t\tname?: string,\n\t) {\n\t\tthis.name = name;\n\t}\n\n\ton(...columns: [PgColumn, ...PgColumn[]]) {\n\t\treturn new UniqueConstraintBuilder(columns, this.name);\n\t}\n}\n\nexport class UniqueConstraint {\n\tstatic readonly [entityKind]: string = 'PgUniqueConstraint';\n\n\treadonly columns: PgColumn[];\n\treadonly name?: string;\n\treadonly nullsNotDistinct: boolean = false;\n\n\tconstructor(readonly table: PgTable, columns: PgColumn[], nullsNotDistinct: boolean, name?: string) {\n\t\tthis.columns = columns;\n\t\tthis.name = name ?? uniqueKeyName(this.table, this.columns.map((column) => column.name));\n\t\tthis.nullsNotDistinct = nullsNotDistinct;\n\t}\n\n\tgetName() {\n\t\treturn this.name;\n\t}\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAC3B,SAAS,iBAAiB;AAInB,SAAS,OAAO,MAA0C;AAChE,SAAO,IAAI,0BAA0B,IAAI;AAC1C;AAEO,SAAS,cAAc,OAAgB,SAAmB;AAChE,SAAO,GAAG,MAAM,SAAS,CAAC,IAAI,QAAQ,KAAK,GAAG,CAAC;AAChD;AAEO,MAAM,wBAAwB;AAAA,EAQpC,YACC,SACQ,MACP;AADO;AAER,SAAK,UAAU;AAAA,EAChB;AAAA,EAZA,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAEA,yBAAyB;AAAA,EASzB,mBAAmB;AAClB,SAAK,yBAAyB;AAC9B,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,MAAM,OAAkC;AACvC,WAAO,IAAI,iBAAiB,OAAO,KAAK,SAAS,KAAK,wBAAwB,KAAK,IAAI;AAAA,EACxF;AACD;AAEO,MAAM,0BAA0B;AAAA,EACtC,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAAA,EAEA,YACC,MACC;AACD,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,MAAM,SAAoC;AACzC,WAAO,IAAI,wBAAwB,SAAS,KAAK,IAAI;AAAA,EACtD;AACD;AAEO,MAAM,iBAAiB;AAAA,EAO7B,YAAqB,OAAgB,SAAqB,kBAA2B,MAAe;AAA/E;AACpB,SAAK,UAAU;AACf,SAAK,OAAO,QAAQ,cAAc,KAAK,OAAO,KAAK,QAAQ,IAAI,CAAC,WAAW,OAAO,IAAI,CAAC;AACvF,SAAK,mBAAmB;AAAA,EACzB;AAAA,EAVA,QAAiB,UAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA,mBAA4B;AAAA,EAQrC,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AACD;","names":[]}
package/pg-core/utils.cjs CHANGED
@@ -30,10 +30,27 @@ var import_view_common = require("../view-common.cjs");
30
30
  var import_checks = require("./checks.cjs");
31
31
  var import_foreign_keys = require("./foreign-keys.cjs");
32
32
  var import_indexes = require("./indexes.cjs");
33
+ var import_policies = require("./policies.cjs");
33
34
  var import_primary_keys = require("./primary-keys.cjs");
34
35
  var import_unique_constraint = require("./unique-constraint.cjs");
35
36
  var import_view_common2 = require("./view-common.cjs");
36
37
  var import_view = require("./view.cjs");
38
+ function flattenValues(obj) {
39
+ const values = [];
40
+ for (const key in obj) {
41
+ if (typeof obj[key] === "object" && obj[key] !== null) {
42
+ const internalNestedKeys = Object.keys(obj[key]).filter((it) => it.startsWith("_drizzle_internal"));
43
+ if (internalNestedKeys.length > 0) {
44
+ for (const nestedKey of internalNestedKeys) {
45
+ values.push(obj[key][nestedKey]);
46
+ }
47
+ } else {
48
+ values.push(obj[key]);
49
+ }
50
+ }
51
+ }
52
+ return values;
53
+ }
37
54
  function getTableConfig(table) {
38
55
  const columns = Object.values(table[import_table2.Table.Symbol.Columns]);
39
56
  const indexes = [];
@@ -43,10 +60,11 @@ function getTableConfig(table) {
43
60
  const uniqueConstraints = [];
44
61
  const name = table[import_table2.Table.Symbol.Name];
45
62
  const schema = table[import_table2.Table.Symbol.Schema];
63
+ const policies = [];
46
64
  const extraConfigBuilder = table[import_table.PgTable.Symbol.ExtraConfigBuilder];
47
65
  if (extraConfigBuilder !== void 0) {
48
66
  const extraConfig = extraConfigBuilder(table[import_table2.Table.Symbol.ExtraConfigColumns]);
49
- for (const builder of Object.values(extraConfig)) {
67
+ for (const builder of flattenValues(extraConfig)) {
50
68
  if ((0, import_entity.is)(builder, import_indexes.IndexBuilder)) {
51
69
  indexes.push(builder.build(table));
52
70
  } else if ((0, import_entity.is)(builder, import_checks.CheckBuilder)) {
@@ -57,6 +75,8 @@ function getTableConfig(table) {
57
75
  primaryKeys.push(builder.build(table));
58
76
  } else if ((0, import_entity.is)(builder, import_foreign_keys.ForeignKeyBuilder)) {
59
77
  foreignKeys.push(builder.build(table));
78
+ } else if ((0, import_entity.is)(builder, import_policies.PgPolicy)) {
79
+ policies.push(builder);
60
80
  }
61
81
  }
62
82
  }
@@ -68,7 +88,8 @@ function getTableConfig(table) {
68
88
  primaryKeys,
69
89
  uniqueConstraints,
70
90
  name,
71
- schema
91
+ schema,
92
+ policies
72
93
  };
73
94
  }
74
95
  function getViewConfig(view) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/utils.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport { PgTable } from '~/pg-core/table.ts';\nimport { Table } from '~/table.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport { type Check, CheckBuilder } from './checks.ts';\nimport type { AnyPgColumn } from './columns/index.ts';\nimport { type ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { Index } from './indexes.ts';\nimport { IndexBuilder } from './indexes.ts';\nimport { type PrimaryKey, PrimaryKeyBuilder } from './primary-keys.ts';\nimport { type UniqueConstraint, UniqueConstraintBuilder } from './unique-constraint.ts';\nimport { PgViewConfig } from './view-common.ts';\nimport { type PgMaterializedView, PgMaterializedViewConfig, type PgView } from './view.ts';\n\nexport function getTableConfig<TTable extends PgTable>(table: TTable) {\n\tconst columns = Object.values(table[Table.Symbol.Columns]);\n\tconst indexes: Index[] = [];\n\tconst checks: Check[] = [];\n\tconst primaryKeys: PrimaryKey[] = [];\n\tconst foreignKeys: ForeignKey[] = Object.values(table[PgTable.Symbol.InlineForeignKeys]);\n\tconst uniqueConstraints: UniqueConstraint[] = [];\n\tconst name = table[Table.Symbol.Name];\n\tconst schema = table[Table.Symbol.Schema];\n\n\tconst extraConfigBuilder = table[PgTable.Symbol.ExtraConfigBuilder];\n\n\tif (extraConfigBuilder !== undefined) {\n\t\tconst extraConfig = extraConfigBuilder(table[Table.Symbol.ExtraConfigColumns]);\n\t\tfor (const builder of Object.values(extraConfig)) {\n\t\t\tif (is(builder, IndexBuilder)) {\n\t\t\t\tindexes.push(builder.build(table));\n\t\t\t} else if (is(builder, CheckBuilder)) {\n\t\t\t\tchecks.push(builder.build(table));\n\t\t\t} else if (is(builder, UniqueConstraintBuilder)) {\n\t\t\t\tuniqueConstraints.push(builder.build(table));\n\t\t\t} else if (is(builder, PrimaryKeyBuilder)) {\n\t\t\t\tprimaryKeys.push(builder.build(table));\n\t\t\t} else if (is(builder, ForeignKeyBuilder)) {\n\t\t\t\tforeignKeys.push(builder.build(table));\n\t\t\t}\n\t\t}\n\t}\n\n\treturn {\n\t\tcolumns,\n\t\tindexes,\n\t\tforeignKeys,\n\t\tchecks,\n\t\tprimaryKeys,\n\t\tuniqueConstraints,\n\t\tname,\n\t\tschema,\n\t};\n}\n\nexport function getViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgViewConfig],\n\t};\n}\n\nexport function getMaterializedViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgMaterializedView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgMaterializedViewConfig],\n\t};\n}\n\nexport type ColumnsWithTable<\n\tTTableName extends string,\n\tTForeignTableName extends string,\n\tTColumns extends AnyPgColumn<{ tableName: TTableName }>[],\n> = { [Key in keyof TColumns]: AnyPgColumn<{ tableName: TForeignTableName }> };\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAmB;AACnB,mBAAwB;AACxB,IAAAA,gBAAsB;AACtB,yBAA+B;AAC/B,oBAAyC;AAEzC,0BAAmD;AAEnD,qBAA6B;AAC7B,0BAAmD;AACnD,+BAA+D;AAC/D,IAAAC,sBAA6B;AAC7B,kBAA+E;AAExE,SAAS,eAAuC,OAAe;AACrE,QAAM,UAAU,OAAO,OAAO,MAAM,oBAAM,OAAO,OAAO,CAAC;AACzD,QAAM,UAAmB,CAAC;AAC1B,QAAM,SAAkB,CAAC;AACzB,QAAM,cAA4B,CAAC;AACnC,QAAM,cAA4B,OAAO,OAAO,MAAM,qBAAQ,OAAO,iBAAiB,CAAC;AACvF,QAAM,oBAAwC,CAAC;AAC/C,QAAM,OAAO,MAAM,oBAAM,OAAO,IAAI;AACpC,QAAM,SAAS,MAAM,oBAAM,OAAO,MAAM;AAExC,QAAM,qBAAqB,MAAM,qBAAQ,OAAO,kBAAkB;AAElE,MAAI,uBAAuB,QAAW;AACrC,UAAM,cAAc,mBAAmB,MAAM,oBAAM,OAAO,kBAAkB,CAAC;AAC7E,eAAW,WAAW,OAAO,OAAO,WAAW,GAAG;AACjD,cAAI,kBAAG,SAAS,2BAAY,GAAG;AAC9B,gBAAQ,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAClC,eAAW,kBAAG,SAAS,0BAAY,GAAG;AACrC,eAAO,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACjC,eAAW,kBAAG,SAAS,gDAAuB,GAAG;AAChD,0BAAkB,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAC5C,eAAW,kBAAG,SAAS,qCAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC,eAAW,kBAAG,SAAS,qCAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,cAGd,MAAgC;AACjC,SAAO;AAAA,IACN,GAAG,KAAK,iCAAc;AAAA,IACtB,GAAG,KAAK,gCAAY;AAAA,EACrB;AACD;AAEO,SAAS,0BAGd,MAA4C;AAC7C,SAAO;AAAA,IACN,GAAG,KAAK,iCAAc;AAAA,IACtB,GAAG,KAAK,oCAAwB;AAAA,EACjC;AACD;","names":["import_table","import_view_common"]}
1
+ {"version":3,"sources":["../../src/pg-core/utils.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport type { PgTableExtraConfig } from '~/pg-core/table.ts';\nimport { PgTable } from '~/pg-core/table.ts';\nimport { Table } from '~/table.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport { type Check, CheckBuilder } from './checks.ts';\nimport type { AnyPgColumn } from './columns/index.ts';\nimport { type ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { Index } from './indexes.ts';\nimport { IndexBuilder } from './indexes.ts';\nimport { PgPolicy } from './policies.ts';\nimport { type PrimaryKey, PrimaryKeyBuilder } from './primary-keys.ts';\nimport { type UniqueConstraint, UniqueConstraintBuilder } from './unique-constraint.ts';\nimport { PgViewConfig } from './view-common.ts';\nimport { type PgMaterializedView, PgMaterializedViewConfig, type PgView } from './view.ts';\n\nfunction flattenValues(obj: Record<string, any>): PgTableExtraConfig[string][] {\n\tconst values = [];\n\tfor (const key in obj) {\n\t\tif (typeof obj[key] === 'object' && obj[key] !== null) {\n\t\t\tconst internalNestedKeys = Object.keys(obj[key]).filter((it) => it.startsWith('_drizzle_internal'));\n\t\t\tif (internalNestedKeys.length > 0) {\n\t\t\t\tfor (const nestedKey of internalNestedKeys) {\n\t\t\t\t\tvalues.push(obj[key][nestedKey]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tvalues.push(obj[key]);\n\t\t\t}\n\t\t}\n\t}\n\treturn values;\n}\n\nexport function getTableConfig<TTable extends PgTable>(table: TTable) {\n\tconst columns = Object.values(table[Table.Symbol.Columns]);\n\tconst indexes: Index[] = [];\n\tconst checks: Check[] = [];\n\tconst primaryKeys: PrimaryKey[] = [];\n\tconst foreignKeys: ForeignKey[] = Object.values(table[PgTable.Symbol.InlineForeignKeys]);\n\tconst uniqueConstraints: UniqueConstraint[] = [];\n\tconst name = table[Table.Symbol.Name];\n\tconst schema = table[Table.Symbol.Schema];\n\tconst policies: PgPolicy[] = [];\n\n\tconst extraConfigBuilder = table[PgTable.Symbol.ExtraConfigBuilder];\n\n\tif (extraConfigBuilder !== undefined) {\n\t\tconst extraConfig = extraConfigBuilder(table[Table.Symbol.ExtraConfigColumns]);\n\t\tfor (const builder of flattenValues(extraConfig)) {\n\t\t\tif (is(builder, IndexBuilder)) {\n\t\t\t\tindexes.push(builder.build(table));\n\t\t\t} else if (is(builder, CheckBuilder)) {\n\t\t\t\tchecks.push(builder.build(table));\n\t\t\t} else if (is(builder, UniqueConstraintBuilder)) {\n\t\t\t\tuniqueConstraints.push(builder.build(table));\n\t\t\t} else if (is(builder, PrimaryKeyBuilder)) {\n\t\t\t\tprimaryKeys.push(builder.build(table));\n\t\t\t} else if (is(builder, ForeignKeyBuilder)) {\n\t\t\t\tforeignKeys.push(builder.build(table));\n\t\t\t} else if (is(builder, PgPolicy)) {\n\t\t\t\tpolicies.push(builder);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn {\n\t\tcolumns,\n\t\tindexes,\n\t\tforeignKeys,\n\t\tchecks,\n\t\tprimaryKeys,\n\t\tuniqueConstraints,\n\t\tname,\n\t\tschema,\n\t\tpolicies,\n\t};\n}\n\nexport function getViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgViewConfig],\n\t};\n}\n\nexport function getMaterializedViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgMaterializedView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgMaterializedViewConfig],\n\t};\n}\n\nexport type ColumnsWithTable<\n\tTTableName extends string,\n\tTForeignTableName extends string,\n\tTColumns extends AnyPgColumn<{ tableName: TTableName }>[],\n> = { [Key in keyof TColumns]: AnyPgColumn<{ tableName: TForeignTableName }> };\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAmB;AAEnB,mBAAwB;AACxB,IAAAA,gBAAsB;AACtB,yBAA+B;AAC/B,oBAAyC;AAEzC,0BAAmD;AAEnD,qBAA6B;AAC7B,sBAAyB;AACzB,0BAAmD;AACnD,+BAA+D;AAC/D,IAAAC,sBAA6B;AAC7B,kBAA+E;AAE/E,SAAS,cAAc,KAAwD;AAC9E,QAAM,SAAS,CAAC;AAChB,aAAW,OAAO,KAAK;AACtB,QAAI,OAAO,IAAI,GAAG,MAAM,YAAY,IAAI,GAAG,MAAM,MAAM;AACtD,YAAM,qBAAqB,OAAO,KAAK,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,WAAW,mBAAmB,CAAC;AAClG,UAAI,mBAAmB,SAAS,GAAG;AAClC,mBAAW,aAAa,oBAAoB;AAC3C,iBAAO,KAAK,IAAI,GAAG,EAAE,SAAS,CAAC;AAAA,QAChC;AAAA,MACD,OAAO;AACN,eAAO,KAAK,IAAI,GAAG,CAAC;AAAA,MACrB;AAAA,IACD;AAAA,EACD;AACA,SAAO;AACR;AAEO,SAAS,eAAuC,OAAe;AACrE,QAAM,UAAU,OAAO,OAAO,MAAM,oBAAM,OAAO,OAAO,CAAC;AACzD,QAAM,UAAmB,CAAC;AAC1B,QAAM,SAAkB,CAAC;AACzB,QAAM,cAA4B,CAAC;AACnC,QAAM,cAA4B,OAAO,OAAO,MAAM,qBAAQ,OAAO,iBAAiB,CAAC;AACvF,QAAM,oBAAwC,CAAC;AAC/C,QAAM,OAAO,MAAM,oBAAM,OAAO,IAAI;AACpC,QAAM,SAAS,MAAM,oBAAM,OAAO,MAAM;AACxC,QAAM,WAAuB,CAAC;AAE9B,QAAM,qBAAqB,MAAM,qBAAQ,OAAO,kBAAkB;AAElE,MAAI,uBAAuB,QAAW;AACrC,UAAM,cAAc,mBAAmB,MAAM,oBAAM,OAAO,kBAAkB,CAAC;AAC7E,eAAW,WAAW,cAAc,WAAW,GAAG;AACjD,cAAI,kBAAG,SAAS,2BAAY,GAAG;AAC9B,gBAAQ,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAClC,eAAW,kBAAG,SAAS,0BAAY,GAAG;AACrC,eAAO,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACjC,eAAW,kBAAG,SAAS,gDAAuB,GAAG;AAChD,0BAAkB,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAC5C,eAAW,kBAAG,SAAS,qCAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC,eAAW,kBAAG,SAAS,qCAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC,eAAW,kBAAG,SAAS,wBAAQ,GAAG;AACjC,iBAAS,KAAK,OAAO;AAAA,MACtB;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,cAGd,MAAgC;AACjC,SAAO;AAAA,IACN,GAAG,KAAK,iCAAc;AAAA,IACtB,GAAG,KAAK,gCAAY;AAAA,EACrB;AACD;AAEO,SAAS,0BAGd,MAA4C;AAC7C,SAAO;AAAA,IACN,GAAG,KAAK,iCAAc;AAAA,IACtB,GAAG,KAAK,oCAAwB;AAAA,EACjC;AACD;","names":["import_table","import_view_common"]}
@@ -4,6 +4,7 @@ import { type Check } from "./checks.cjs";
4
4
  import type { AnyPgColumn } from "./columns/index.cjs";
5
5
  import { type ForeignKey } from "./foreign-keys.cjs";
6
6
  import type { Index } from "./indexes.cjs";
7
+ import { PgPolicy } from "./policies.cjs";
7
8
  import { type PrimaryKey } from "./primary-keys.cjs";
8
9
  import { type UniqueConstraint } from "./unique-constraint.cjs";
9
10
  import { type PgMaterializedView, type PgView } from "./view.cjs";
@@ -16,6 +17,7 @@ export declare function getTableConfig<TTable extends PgTable>(table: TTable): {
16
17
  uniqueConstraints: UniqueConstraint[];
17
18
  name: string;
18
19
  schema: string | undefined;
20
+ policies: PgPolicy[];
19
21
  };
20
22
  export declare function getViewConfig<TName extends string = string, TExisting extends boolean = boolean>(view: PgView<TName, TExisting>): {
21
23
  with?: import("./view.ts").ViewWithConfig | undefined;
@@ -4,6 +4,7 @@ import { type Check } from "./checks.js";
4
4
  import type { AnyPgColumn } from "./columns/index.js";
5
5
  import { type ForeignKey } from "./foreign-keys.js";
6
6
  import type { Index } from "./indexes.js";
7
+ import { PgPolicy } from "./policies.js";
7
8
  import { type PrimaryKey } from "./primary-keys.js";
8
9
  import { type UniqueConstraint } from "./unique-constraint.js";
9
10
  import { type PgMaterializedView, type PgView } from "./view.js";
@@ -16,6 +17,7 @@ export declare function getTableConfig<TTable extends PgTable>(table: TTable): {
16
17
  uniqueConstraints: UniqueConstraint[];
17
18
  name: string;
18
19
  schema: string | undefined;
20
+ policies: PgPolicy[];
19
21
  };
20
22
  export declare function getViewConfig<TName extends string = string, TExisting extends boolean = boolean>(view: PgView<TName, TExisting>): {
21
23
  with?: import("./view.js").ViewWithConfig | undefined;
package/pg-core/utils.js CHANGED
@@ -5,10 +5,27 @@ import { ViewBaseConfig } from "../view-common.js";
5
5
  import { CheckBuilder } from "./checks.js";
6
6
  import { ForeignKeyBuilder } from "./foreign-keys.js";
7
7
  import { IndexBuilder } from "./indexes.js";
8
+ import { PgPolicy } from "./policies.js";
8
9
  import { PrimaryKeyBuilder } from "./primary-keys.js";
9
10
  import { UniqueConstraintBuilder } from "./unique-constraint.js";
10
11
  import { PgViewConfig } from "./view-common.js";
11
12
  import { PgMaterializedViewConfig } from "./view.js";
13
+ function flattenValues(obj) {
14
+ const values = [];
15
+ for (const key in obj) {
16
+ if (typeof obj[key] === "object" && obj[key] !== null) {
17
+ const internalNestedKeys = Object.keys(obj[key]).filter((it) => it.startsWith("_drizzle_internal"));
18
+ if (internalNestedKeys.length > 0) {
19
+ for (const nestedKey of internalNestedKeys) {
20
+ values.push(obj[key][nestedKey]);
21
+ }
22
+ } else {
23
+ values.push(obj[key]);
24
+ }
25
+ }
26
+ }
27
+ return values;
28
+ }
12
29
  function getTableConfig(table) {
13
30
  const columns = Object.values(table[Table.Symbol.Columns]);
14
31
  const indexes = [];
@@ -18,10 +35,11 @@ function getTableConfig(table) {
18
35
  const uniqueConstraints = [];
19
36
  const name = table[Table.Symbol.Name];
20
37
  const schema = table[Table.Symbol.Schema];
38
+ const policies = [];
21
39
  const extraConfigBuilder = table[PgTable.Symbol.ExtraConfigBuilder];
22
40
  if (extraConfigBuilder !== void 0) {
23
41
  const extraConfig = extraConfigBuilder(table[Table.Symbol.ExtraConfigColumns]);
24
- for (const builder of Object.values(extraConfig)) {
42
+ for (const builder of flattenValues(extraConfig)) {
25
43
  if (is(builder, IndexBuilder)) {
26
44
  indexes.push(builder.build(table));
27
45
  } else if (is(builder, CheckBuilder)) {
@@ -32,6 +50,8 @@ function getTableConfig(table) {
32
50
  primaryKeys.push(builder.build(table));
33
51
  } else if (is(builder, ForeignKeyBuilder)) {
34
52
  foreignKeys.push(builder.build(table));
53
+ } else if (is(builder, PgPolicy)) {
54
+ policies.push(builder);
35
55
  }
36
56
  }
37
57
  }
@@ -43,7 +63,8 @@ function getTableConfig(table) {
43
63
  primaryKeys,
44
64
  uniqueConstraints,
45
65
  name,
46
- schema
66
+ schema,
67
+ policies
47
68
  };
48
69
  }
49
70
  function getViewConfig(view) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/utils.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport { PgTable } from '~/pg-core/table.ts';\nimport { Table } from '~/table.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport { type Check, CheckBuilder } from './checks.ts';\nimport type { AnyPgColumn } from './columns/index.ts';\nimport { type ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { Index } from './indexes.ts';\nimport { IndexBuilder } from './indexes.ts';\nimport { type PrimaryKey, PrimaryKeyBuilder } from './primary-keys.ts';\nimport { type UniqueConstraint, UniqueConstraintBuilder } from './unique-constraint.ts';\nimport { PgViewConfig } from './view-common.ts';\nimport { type PgMaterializedView, PgMaterializedViewConfig, type PgView } from './view.ts';\n\nexport function getTableConfig<TTable extends PgTable>(table: TTable) {\n\tconst columns = Object.values(table[Table.Symbol.Columns]);\n\tconst indexes: Index[] = [];\n\tconst checks: Check[] = [];\n\tconst primaryKeys: PrimaryKey[] = [];\n\tconst foreignKeys: ForeignKey[] = Object.values(table[PgTable.Symbol.InlineForeignKeys]);\n\tconst uniqueConstraints: UniqueConstraint[] = [];\n\tconst name = table[Table.Symbol.Name];\n\tconst schema = table[Table.Symbol.Schema];\n\n\tconst extraConfigBuilder = table[PgTable.Symbol.ExtraConfigBuilder];\n\n\tif (extraConfigBuilder !== undefined) {\n\t\tconst extraConfig = extraConfigBuilder(table[Table.Symbol.ExtraConfigColumns]);\n\t\tfor (const builder of Object.values(extraConfig)) {\n\t\t\tif (is(builder, IndexBuilder)) {\n\t\t\t\tindexes.push(builder.build(table));\n\t\t\t} else if (is(builder, CheckBuilder)) {\n\t\t\t\tchecks.push(builder.build(table));\n\t\t\t} else if (is(builder, UniqueConstraintBuilder)) {\n\t\t\t\tuniqueConstraints.push(builder.build(table));\n\t\t\t} else if (is(builder, PrimaryKeyBuilder)) {\n\t\t\t\tprimaryKeys.push(builder.build(table));\n\t\t\t} else if (is(builder, ForeignKeyBuilder)) {\n\t\t\t\tforeignKeys.push(builder.build(table));\n\t\t\t}\n\t\t}\n\t}\n\n\treturn {\n\t\tcolumns,\n\t\tindexes,\n\t\tforeignKeys,\n\t\tchecks,\n\t\tprimaryKeys,\n\t\tuniqueConstraints,\n\t\tname,\n\t\tschema,\n\t};\n}\n\nexport function getViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgViewConfig],\n\t};\n}\n\nexport function getMaterializedViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgMaterializedView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgMaterializedViewConfig],\n\t};\n}\n\nexport type ColumnsWithTable<\n\tTTableName extends string,\n\tTForeignTableName extends string,\n\tTColumns extends AnyPgColumn<{ tableName: TTableName }>[],\n> = { [Key in keyof TColumns]: AnyPgColumn<{ tableName: TForeignTableName }> };\n"],"mappings":"AAAA,SAAS,UAAU;AACnB,SAAS,eAAe;AACxB,SAAS,aAAa;AACtB,SAAS,sBAAsB;AAC/B,SAAqB,oBAAoB;AAEzC,SAA0B,yBAAyB;AAEnD,SAAS,oBAAoB;AAC7B,SAA0B,yBAAyB;AACnD,SAAgC,+BAA+B;AAC/D,SAAS,oBAAoB;AAC7B,SAAkC,gCAA6C;AAExE,SAAS,eAAuC,OAAe;AACrE,QAAM,UAAU,OAAO,OAAO,MAAM,MAAM,OAAO,OAAO,CAAC;AACzD,QAAM,UAAmB,CAAC;AAC1B,QAAM,SAAkB,CAAC;AACzB,QAAM,cAA4B,CAAC;AACnC,QAAM,cAA4B,OAAO,OAAO,MAAM,QAAQ,OAAO,iBAAiB,CAAC;AACvF,QAAM,oBAAwC,CAAC;AAC/C,QAAM,OAAO,MAAM,MAAM,OAAO,IAAI;AACpC,QAAM,SAAS,MAAM,MAAM,OAAO,MAAM;AAExC,QAAM,qBAAqB,MAAM,QAAQ,OAAO,kBAAkB;AAElE,MAAI,uBAAuB,QAAW;AACrC,UAAM,cAAc,mBAAmB,MAAM,MAAM,OAAO,kBAAkB,CAAC;AAC7E,eAAW,WAAW,OAAO,OAAO,WAAW,GAAG;AACjD,UAAI,GAAG,SAAS,YAAY,GAAG;AAC9B,gBAAQ,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAClC,WAAW,GAAG,SAAS,YAAY,GAAG;AACrC,eAAO,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACjC,WAAW,GAAG,SAAS,uBAAuB,GAAG;AAChD,0BAAkB,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAC5C,WAAW,GAAG,SAAS,iBAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC,WAAW,GAAG,SAAS,iBAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,cAGd,MAAgC;AACjC,SAAO;AAAA,IACN,GAAG,KAAK,cAAc;AAAA,IACtB,GAAG,KAAK,YAAY;AAAA,EACrB;AACD;AAEO,SAAS,0BAGd,MAA4C;AAC7C,SAAO;AAAA,IACN,GAAG,KAAK,cAAc;AAAA,IACtB,GAAG,KAAK,wBAAwB;AAAA,EACjC;AACD;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/utils.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport type { PgTableExtraConfig } from '~/pg-core/table.ts';\nimport { PgTable } from '~/pg-core/table.ts';\nimport { Table } from '~/table.ts';\nimport { ViewBaseConfig } from '~/view-common.ts';\nimport { type Check, CheckBuilder } from './checks.ts';\nimport type { AnyPgColumn } from './columns/index.ts';\nimport { type ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { Index } from './indexes.ts';\nimport { IndexBuilder } from './indexes.ts';\nimport { PgPolicy } from './policies.ts';\nimport { type PrimaryKey, PrimaryKeyBuilder } from './primary-keys.ts';\nimport { type UniqueConstraint, UniqueConstraintBuilder } from './unique-constraint.ts';\nimport { PgViewConfig } from './view-common.ts';\nimport { type PgMaterializedView, PgMaterializedViewConfig, type PgView } from './view.ts';\n\nfunction flattenValues(obj: Record<string, any>): PgTableExtraConfig[string][] {\n\tconst values = [];\n\tfor (const key in obj) {\n\t\tif (typeof obj[key] === 'object' && obj[key] !== null) {\n\t\t\tconst internalNestedKeys = Object.keys(obj[key]).filter((it) => it.startsWith('_drizzle_internal'));\n\t\t\tif (internalNestedKeys.length > 0) {\n\t\t\t\tfor (const nestedKey of internalNestedKeys) {\n\t\t\t\t\tvalues.push(obj[key][nestedKey]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tvalues.push(obj[key]);\n\t\t\t}\n\t\t}\n\t}\n\treturn values;\n}\n\nexport function getTableConfig<TTable extends PgTable>(table: TTable) {\n\tconst columns = Object.values(table[Table.Symbol.Columns]);\n\tconst indexes: Index[] = [];\n\tconst checks: Check[] = [];\n\tconst primaryKeys: PrimaryKey[] = [];\n\tconst foreignKeys: ForeignKey[] = Object.values(table[PgTable.Symbol.InlineForeignKeys]);\n\tconst uniqueConstraints: UniqueConstraint[] = [];\n\tconst name = table[Table.Symbol.Name];\n\tconst schema = table[Table.Symbol.Schema];\n\tconst policies: PgPolicy[] = [];\n\n\tconst extraConfigBuilder = table[PgTable.Symbol.ExtraConfigBuilder];\n\n\tif (extraConfigBuilder !== undefined) {\n\t\tconst extraConfig = extraConfigBuilder(table[Table.Symbol.ExtraConfigColumns]);\n\t\tfor (const builder of flattenValues(extraConfig)) {\n\t\t\tif (is(builder, IndexBuilder)) {\n\t\t\t\tindexes.push(builder.build(table));\n\t\t\t} else if (is(builder, CheckBuilder)) {\n\t\t\t\tchecks.push(builder.build(table));\n\t\t\t} else if (is(builder, UniqueConstraintBuilder)) {\n\t\t\t\tuniqueConstraints.push(builder.build(table));\n\t\t\t} else if (is(builder, PrimaryKeyBuilder)) {\n\t\t\t\tprimaryKeys.push(builder.build(table));\n\t\t\t} else if (is(builder, ForeignKeyBuilder)) {\n\t\t\t\tforeignKeys.push(builder.build(table));\n\t\t\t} else if (is(builder, PgPolicy)) {\n\t\t\t\tpolicies.push(builder);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn {\n\t\tcolumns,\n\t\tindexes,\n\t\tforeignKeys,\n\t\tchecks,\n\t\tprimaryKeys,\n\t\tuniqueConstraints,\n\t\tname,\n\t\tschema,\n\t\tpolicies,\n\t};\n}\n\nexport function getViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgViewConfig],\n\t};\n}\n\nexport function getMaterializedViewConfig<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n>(view: PgMaterializedView<TName, TExisting>) {\n\treturn {\n\t\t...view[ViewBaseConfig],\n\t\t...view[PgMaterializedViewConfig],\n\t};\n}\n\nexport type ColumnsWithTable<\n\tTTableName extends string,\n\tTForeignTableName extends string,\n\tTColumns extends AnyPgColumn<{ tableName: TTableName }>[],\n> = { [Key in keyof TColumns]: AnyPgColumn<{ tableName: TForeignTableName }> };\n"],"mappings":"AAAA,SAAS,UAAU;AAEnB,SAAS,eAAe;AACxB,SAAS,aAAa;AACtB,SAAS,sBAAsB;AAC/B,SAAqB,oBAAoB;AAEzC,SAA0B,yBAAyB;AAEnD,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB;AACzB,SAA0B,yBAAyB;AACnD,SAAgC,+BAA+B;AAC/D,SAAS,oBAAoB;AAC7B,SAAkC,gCAA6C;AAE/E,SAAS,cAAc,KAAwD;AAC9E,QAAM,SAAS,CAAC;AAChB,aAAW,OAAO,KAAK;AACtB,QAAI,OAAO,IAAI,GAAG,MAAM,YAAY,IAAI,GAAG,MAAM,MAAM;AACtD,YAAM,qBAAqB,OAAO,KAAK,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,WAAW,mBAAmB,CAAC;AAClG,UAAI,mBAAmB,SAAS,GAAG;AAClC,mBAAW,aAAa,oBAAoB;AAC3C,iBAAO,KAAK,IAAI,GAAG,EAAE,SAAS,CAAC;AAAA,QAChC;AAAA,MACD,OAAO;AACN,eAAO,KAAK,IAAI,GAAG,CAAC;AAAA,MACrB;AAAA,IACD;AAAA,EACD;AACA,SAAO;AACR;AAEO,SAAS,eAAuC,OAAe;AACrE,QAAM,UAAU,OAAO,OAAO,MAAM,MAAM,OAAO,OAAO,CAAC;AACzD,QAAM,UAAmB,CAAC;AAC1B,QAAM,SAAkB,CAAC;AACzB,QAAM,cAA4B,CAAC;AACnC,QAAM,cAA4B,OAAO,OAAO,MAAM,QAAQ,OAAO,iBAAiB,CAAC;AACvF,QAAM,oBAAwC,CAAC;AAC/C,QAAM,OAAO,MAAM,MAAM,OAAO,IAAI;AACpC,QAAM,SAAS,MAAM,MAAM,OAAO,MAAM;AACxC,QAAM,WAAuB,CAAC;AAE9B,QAAM,qBAAqB,MAAM,QAAQ,OAAO,kBAAkB;AAElE,MAAI,uBAAuB,QAAW;AACrC,UAAM,cAAc,mBAAmB,MAAM,MAAM,OAAO,kBAAkB,CAAC;AAC7E,eAAW,WAAW,cAAc,WAAW,GAAG;AACjD,UAAI,GAAG,SAAS,YAAY,GAAG;AAC9B,gBAAQ,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAClC,WAAW,GAAG,SAAS,YAAY,GAAG;AACrC,eAAO,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACjC,WAAW,GAAG,SAAS,uBAAuB,GAAG;AAChD,0BAAkB,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MAC5C,WAAW,GAAG,SAAS,iBAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC,WAAW,GAAG,SAAS,iBAAiB,GAAG;AAC1C,oBAAY,KAAK,QAAQ,MAAM,KAAK,CAAC;AAAA,MACtC,WAAW,GAAG,SAAS,QAAQ,GAAG;AACjC,iBAAS,KAAK,OAAO;AAAA,MACtB;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,cAGd,MAAgC;AACjC,SAAO;AAAA,IACN,GAAG,KAAK,cAAc;AAAA,IACtB,GAAG,KAAK,YAAY;AAAA,EACrB;AACD;AAEO,SAAS,0BAGd,MAA4C;AAC7C,SAAO;AAAA,IACN,GAAG,KAAK,cAAc;AAAA,IACtB,GAAG,KAAK,wBAAwB;AAAA,EACjC;AACD;","names":[]}
@@ -31,7 +31,7 @@ var import_session = require("./session.cjs");
31
31
  class PgRemoteDatabase extends import_db.PgDatabase {
32
32
  static [import_entity.entityKind] = "PgRemoteDatabase";
33
33
  }
34
- function drizzle(callback, config = {}, _dialect = () => new import_dialect.PgDialect()) {
34
+ function drizzle(callback, config = {}, _dialect = () => new import_dialect.PgDialect({ casing: config.casing })) {
35
35
  const dialect = _dialect();
36
36
  let logger;
37
37
  if (config.logger === true) {