uql-orm 0.20.2 → 0.22.0

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 (775) hide show
  1. package/README.md +47 -110
  2. package/dist/browser/http/bus.d.ts +0 -1
  3. package/dist/browser/http/bus.js +0 -1
  4. package/dist/browser/http/http.d.ts +0 -1
  5. package/dist/browser/http/http.js +0 -1
  6. package/dist/browser/http/index.d.ts +0 -1
  7. package/dist/browser/http/index.js +0 -1
  8. package/dist/browser/index.d.ts +0 -1
  9. package/dist/browser/index.js +0 -1
  10. package/dist/browser/options.d.ts +0 -1
  11. package/dist/browser/options.js +0 -1
  12. package/dist/browser/querier/httpQuerier.d.ts +0 -1
  13. package/dist/browser/querier/httpQuerier.js +0 -1
  14. package/dist/browser/querier/index.d.ts +0 -1
  15. package/dist/browser/querier/index.js +0 -1
  16. package/dist/browser/type/clientQuerier.d.ts +0 -1
  17. package/dist/browser/type/clientQuerier.js +0 -1
  18. package/dist/browser/type/clientQuerierPool.d.ts +0 -1
  19. package/dist/browser/type/clientQuerierPool.js +0 -1
  20. package/dist/browser/type/index.d.ts +0 -1
  21. package/dist/browser/type/index.js +0 -1
  22. package/dist/browser/type/request.d.ts +0 -1
  23. package/dist/browser/type/request.js +0 -1
  24. package/dist/browser/uql-browser.min.js +2 -2
  25. package/dist/browser/uql-browser.min.js.map +1 -1
  26. package/dist/bunSql/bunSql.util.d.ts +0 -1
  27. package/dist/bunSql/bunSql.util.js +0 -1
  28. package/dist/bunSql/bunSqlCockroachDialect.d.ts +2 -3
  29. package/dist/bunSql/bunSqlCockroachDialect.js +4 -11
  30. package/dist/bunSql/bunSqlPostgresDialect.d.ts +2 -3
  31. package/dist/bunSql/bunSqlPostgresDialect.js +4 -11
  32. package/dist/bunSql/bunSqlQuerier.d.ts +0 -1
  33. package/dist/bunSql/bunSqlQuerier.js +0 -1
  34. package/dist/bunSql/bunSqlQuerierPool.d.ts +0 -1
  35. package/dist/bunSql/bunSqlQuerierPool.js +0 -1
  36. package/dist/bunSql/bunSqliteDialect.d.ts +0 -1
  37. package/dist/bunSql/bunSqliteDialect.js +0 -1
  38. package/dist/bunSql/index.d.ts +0 -1
  39. package/dist/bunSql/index.js +0 -1
  40. package/dist/cockroachdb/cockroachDialect.d.ts +20 -5
  41. package/dist/cockroachdb/cockroachDialect.js +33 -19
  42. package/dist/cockroachdb/crdbQuerier.d.ts +0 -1
  43. package/dist/cockroachdb/crdbQuerier.js +0 -1
  44. package/dist/cockroachdb/crdbQuerierPool.d.ts +0 -1
  45. package/dist/cockroachdb/crdbQuerierPool.js +0 -1
  46. package/dist/cockroachdb/index.d.ts +0 -1
  47. package/dist/cockroachdb/index.js +0 -1
  48. package/dist/context/context.browser.d.ts +0 -1
  49. package/dist/context/context.browser.js +0 -1
  50. package/dist/context/context.d.ts +0 -1
  51. package/dist/context/context.js +0 -1
  52. package/dist/context/securityError.d.ts +0 -1
  53. package/dist/context/securityError.js +0 -1
  54. package/dist/d1/d1Querier.d.ts +4 -4
  55. package/dist/d1/d1Querier.js +0 -4
  56. package/dist/d1/d1QuerierPool.d.ts +0 -1
  57. package/dist/d1/d1QuerierPool.js +0 -1
  58. package/dist/d1/d1SqliteDialect.d.ts +7 -1
  59. package/dist/d1/d1SqliteDialect.js +9 -1
  60. package/dist/d1/index.d.ts +0 -1
  61. package/dist/d1/index.js +0 -1
  62. package/dist/dialect/abstractDialect.d.ts +21 -5
  63. package/dist/dialect/abstractDialect.js +26 -5
  64. package/dist/dialect/abstractSqlDialect.d.ts +57 -17
  65. package/dist/dialect/abstractSqlDialect.js +182 -159
  66. package/dist/dialect/index.d.ts +1 -1
  67. package/dist/dialect/index.js +1 -1
  68. package/dist/dialect/indexSqlDialect.d.ts +57 -0
  69. package/dist/dialect/indexSqlDialect.js +101 -0
  70. package/dist/dialect/jsonArrayElemMatchUtils.d.ts +0 -1
  71. package/dist/dialect/jsonArrayElemMatchUtils.js +0 -1
  72. package/dist/dialect/jsonSql.d.ts +0 -1
  73. package/dist/dialect/jsonSql.js +1 -2
  74. package/dist/dialect/mysqlLikeSqlDialect.d.ts +16 -2
  75. package/dist/dialect/mysqlLikeSqlDialect.js +34 -5
  76. package/dist/dialect/pgLikeSqlDialect.d.ts +34 -16
  77. package/dist/dialect/pgLikeSqlDialect.js +94 -71
  78. package/dist/dialect/queryContext.d.ts +0 -1
  79. package/dist/dialect/queryContext.js +0 -1
  80. package/dist/dialect/vectorCast.d.ts +32 -0
  81. package/dist/dialect/vectorCast.js +41 -0
  82. package/dist/dialect/vectorSqlDialect.d.ts +11 -5
  83. package/dist/dialect/vectorSqlDialect.js +19 -9
  84. package/dist/entity/decorator/entity.d.ts +0 -1
  85. package/dist/entity/decorator/entity.js +0 -1
  86. package/dist/entity/decorator/field.d.ts +0 -1
  87. package/dist/entity/decorator/field.js +0 -1
  88. package/dist/entity/decorator/filter.d.ts +0 -1
  89. package/dist/entity/decorator/filter.js +0 -1
  90. package/dist/entity/decorator/hook.d.ts +0 -1
  91. package/dist/entity/decorator/hook.js +0 -1
  92. package/dist/entity/decorator/id.d.ts +0 -1
  93. package/dist/entity/decorator/id.js +0 -1
  94. package/dist/entity/decorator/index-decorator.d.ts +2 -10
  95. package/dist/entity/decorator/index-decorator.js +0 -1
  96. package/dist/entity/decorator/index.d.ts +0 -1
  97. package/dist/entity/decorator/index.js +0 -1
  98. package/dist/entity/decorator/relation.d.ts +0 -1
  99. package/dist/entity/decorator/relation.js +0 -1
  100. package/dist/entity/index.d.ts +0 -1
  101. package/dist/entity/index.js +0 -1
  102. package/dist/entity/metadata/definition.d.ts +5 -6
  103. package/dist/entity/metadata/definition.js +10 -6
  104. package/dist/express/index.d.ts +0 -1
  105. package/dist/express/index.js +0 -1
  106. package/dist/express/querierMiddleware.d.ts +0 -1
  107. package/dist/express/querierMiddleware.js +0 -1
  108. package/dist/http/contract.d.ts +0 -1
  109. package/dist/http/contract.js +0 -1
  110. package/dist/http/fetchHandler.d.ts +0 -1
  111. package/dist/http/fetchHandler.js +0 -1
  112. package/dist/http/handler.d.ts +0 -1
  113. package/dist/http/handler.js +0 -1
  114. package/dist/http/index.d.ts +0 -1
  115. package/dist/http/index.js +0 -1
  116. package/dist/http/query.d.ts +0 -1
  117. package/dist/http/query.js +0 -1
  118. package/dist/index.d.ts +0 -1
  119. package/dist/index.js +0 -1
  120. package/dist/libsql/index.d.ts +0 -1
  121. package/dist/libsql/index.js +0 -1
  122. package/dist/libsql/libsqlDialect.d.ts +12 -3
  123. package/dist/libsql/libsqlDialect.js +14 -3
  124. package/dist/libsql/libsqlQuerier.d.ts +9 -23
  125. package/dist/libsql/libsqlQuerier.js +9 -78
  126. package/dist/libsql/libsqlQuerierPool.d.ts +10 -9
  127. package/dist/libsql/libsqlQuerierPool.js +17 -16
  128. package/dist/maria/index.d.ts +0 -1
  129. package/dist/maria/index.js +0 -1
  130. package/dist/maria/mariaDialect.d.ts +26 -5
  131. package/dist/maria/mariaDialect.js +54 -16
  132. package/dist/maria/mariadbQuerier.d.ts +0 -1
  133. package/dist/maria/mariadbQuerier.js +0 -1
  134. package/dist/maria/mariadbQuerierPool.d.ts +0 -1
  135. package/dist/maria/mariadbQuerierPool.js +0 -1
  136. package/dist/migrate/acquireQuerierForMigrations.d.ts +0 -1
  137. package/dist/migrate/acquireQuerierForMigrations.js +0 -1
  138. package/dist/migrate/assertCliConfig.d.ts +0 -1
  139. package/dist/migrate/assertCliConfig.js +0 -1
  140. package/dist/migrate/bin.d.ts +0 -1
  141. package/dist/migrate/bin.js +0 -1
  142. package/dist/migrate/builder/columnBuilder.d.ts +0 -1
  143. package/dist/migrate/builder/columnBuilder.js +0 -1
  144. package/dist/migrate/builder/expressions.d.ts +0 -1
  145. package/dist/migrate/builder/expressions.js +0 -1
  146. package/dist/migrate/builder/index.d.ts +0 -1
  147. package/dist/migrate/builder/index.js +0 -1
  148. package/dist/migrate/builder/migrationBuilder.d.ts +9 -30
  149. package/dist/migrate/builder/migrationBuilder.js +58 -77
  150. package/dist/migrate/builder/splitSqlStatements.d.ts +0 -3
  151. package/dist/migrate/builder/splitSqlStatements.js +0 -3
  152. package/dist/migrate/builder/tableBuilder.d.ts +12 -3
  153. package/dist/migrate/builder/tableBuilder.js +71 -120
  154. package/dist/migrate/builder/types.d.ts +30 -42
  155. package/dist/migrate/builder/types.js +0 -1
  156. package/dist/migrate/cli-config.d.ts +0 -1
  157. package/dist/migrate/cli-config.js +9 -5
  158. package/dist/migrate/cli.d.ts +3 -3
  159. package/dist/migrate/cli.js +21 -49
  160. package/dist/migrate/codegen/entityCodeGenerator.d.ts +0 -5
  161. package/dist/migrate/codegen/entityCodeGenerator.js +5 -64
  162. package/dist/migrate/codegen/fieldOptionsSource.d.ts +10 -0
  163. package/dist/migrate/codegen/fieldOptionsSource.js +55 -0
  164. package/dist/migrate/codegen/index.d.ts +0 -3
  165. package/dist/migrate/codegen/index.js +0 -5
  166. package/dist/migrate/codegen/migrationFile.d.ts +0 -1
  167. package/dist/migrate/codegen/migrationFile.js +0 -1
  168. package/dist/migrate/codegen/smartRelationDetector.d.ts +0 -1
  169. package/dist/migrate/codegen/smartRelationDetector.js +0 -1
  170. package/dist/migrate/drift/driftDetector.d.ts +0 -1
  171. package/dist/migrate/drift/driftDetector.js +0 -1
  172. package/dist/migrate/drift/index.d.ts +0 -1
  173. package/dist/migrate/drift/index.js +0 -1
  174. package/dist/migrate/generator/indexNodeToSchema.d.ts +9 -0
  175. package/dist/migrate/generator/indexNodeToSchema.js +14 -0
  176. package/dist/migrate/generator/mongoCommand.d.ts +57 -0
  177. package/dist/migrate/generator/mongoCommand.js +26 -0
  178. package/dist/migrate/generator/mongoSchemaGenerator.d.ts +9 -21
  179. package/dist/migrate/generator/mongoSchemaGenerator.js +40 -83
  180. package/dist/migrate/index.d.ts +0 -2
  181. package/dist/migrate/index.js +0 -2
  182. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.d.ts +25 -11
  183. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.js +46 -33
  184. package/dist/migrate/introspection/baseSqlIntrospector.d.ts +0 -2
  185. package/dist/migrate/introspection/baseSqlIntrospector.js +3 -13
  186. package/dist/migrate/introspection/index.d.ts +0 -1
  187. package/dist/migrate/introspection/index.js +0 -1
  188. package/dist/migrate/introspection/mongoIntrospector.d.ts +0 -1
  189. package/dist/migrate/introspection/mongoIntrospector.js +2 -3
  190. package/dist/migrate/introspection/mysqlIntrospector.d.ts +5 -9
  191. package/dist/migrate/introspection/mysqlIntrospector.js +4 -11
  192. package/dist/migrate/introspection/postgresIntrospector.d.ts +5 -9
  193. package/dist/migrate/introspection/postgresIntrospector.js +4 -11
  194. package/dist/migrate/introspection/sqliteIntrospector.d.ts +6 -6
  195. package/dist/migrate/introspection/sqliteIntrospector.js +26 -19
  196. package/dist/migrate/migrator.d.ts +23 -4
  197. package/dist/migrate/migrator.js +57 -70
  198. package/dist/migrate/schemaGenerator.d.ts +26 -38
  199. package/dist/migrate/schemaGenerator.js +69 -175
  200. package/dist/migrate/schemaGeneratorAsync.d.ts +2 -3
  201. package/dist/migrate/schemaGeneratorAsync.js +3 -4
  202. package/dist/migrate/storage/databaseStorage.d.ts +0 -1
  203. package/dist/migrate/storage/databaseStorage.js +4 -5
  204. package/dist/migrate/storage/index.d.ts +0 -1
  205. package/dist/migrate/storage/index.js +0 -1
  206. package/dist/migrate/storage/jsonStorage.d.ts +0 -1
  207. package/dist/migrate/storage/jsonStorage.js +0 -1
  208. package/dist/mongo/index.d.ts +0 -1
  209. package/dist/mongo/index.js +0 -1
  210. package/dist/mongo/mongoDialect.d.ts +93 -5
  211. package/dist/mongo/mongoDialect.js +315 -83
  212. package/dist/mongo/mongodbNativeDialect.d.ts +0 -1
  213. package/dist/mongo/mongodbNativeDialect.js +0 -1
  214. package/dist/mongo/mongodbQuerier.d.ts +5 -1
  215. package/dist/mongo/mongodbQuerier.js +61 -19
  216. package/dist/mongo/mongodbQuerierPool.d.ts +0 -1
  217. package/dist/mongo/mongodbQuerierPool.js +0 -1
  218. package/dist/mysql/index.d.ts +0 -1
  219. package/dist/mysql/index.js +0 -1
  220. package/dist/mysql/mysql2Dialect.d.ts +0 -1
  221. package/dist/mysql/mysql2Dialect.js +0 -1
  222. package/dist/mysql/mysql2Querier.d.ts +0 -1
  223. package/dist/mysql/mysql2Querier.js +0 -1
  224. package/dist/mysql/mysql2QuerierPool.d.ts +0 -1
  225. package/dist/mysql/mysql2QuerierPool.js +0 -1
  226. package/dist/mysql/mysqlDialect.d.ts +8 -1
  227. package/dist/mysql/mysqlDialect.js +13 -1
  228. package/dist/namingStrategy/defaultNamingStrategy.d.ts +0 -1
  229. package/dist/namingStrategy/defaultNamingStrategy.js +0 -1
  230. package/dist/namingStrategy/index.d.ts +0 -1
  231. package/dist/namingStrategy/index.js +0 -1
  232. package/dist/namingStrategy/snakeCaseNamingStrategy.d.ts +0 -1
  233. package/dist/namingStrategy/snakeCaseNamingStrategy.js +0 -1
  234. package/dist/neon/index.d.ts +0 -1
  235. package/dist/neon/index.js +0 -1
  236. package/dist/neon/neonDialect.d.ts +0 -1
  237. package/dist/neon/neonDialect.js +0 -1
  238. package/dist/neon/neonQuerier.d.ts +0 -1
  239. package/dist/neon/neonQuerier.js +0 -1
  240. package/dist/neon/neonQuerierPool.d.ts +0 -1
  241. package/dist/neon/neonQuerierPool.js +0 -1
  242. package/dist/nestjs/index.d.ts +0 -1
  243. package/dist/nestjs/index.js +0 -1
  244. package/dist/nestjs/uqlContextInterceptor.d.ts +0 -1
  245. package/dist/nestjs/uqlContextInterceptor.js +9 -2
  246. package/dist/nestjs/uqlModule.d.ts +0 -1
  247. package/dist/nestjs/uqlModule.js +12 -2
  248. package/dist/options.d.ts +0 -1
  249. package/dist/options.js +0 -1
  250. package/dist/postgres/abstractPgQuerier.d.ts +0 -1
  251. package/dist/postgres/abstractPgQuerier.js +0 -1
  252. package/dist/postgres/abstractPgQuerierPool.d.ts +0 -1
  253. package/dist/postgres/abstractPgQuerierPool.js +0 -1
  254. package/dist/postgres/index.d.ts +0 -1
  255. package/dist/postgres/index.js +0 -1
  256. package/dist/postgres/pgDialect.d.ts +0 -1
  257. package/dist/postgres/pgDialect.js +0 -1
  258. package/dist/postgres/pgQuerier.d.ts +0 -1
  259. package/dist/postgres/pgQuerier.js +0 -1
  260. package/dist/postgres/pgQuerierPool.d.ts +0 -1
  261. package/dist/postgres/pgQuerierPool.js +0 -1
  262. package/dist/postgres/postgresDialect.d.ts +0 -1
  263. package/dist/postgres/postgresDialect.js +0 -1
  264. package/dist/postgres/postgresWireDriverCapabilities.d.ts +0 -1
  265. package/dist/postgres/postgresWireDriverCapabilities.js +0 -1
  266. package/dist/querier/abstractPoolQuerier.d.ts +0 -1
  267. package/dist/querier/abstractPoolQuerier.js +0 -1
  268. package/dist/querier/abstractQuerier.d.ts +0 -1
  269. package/dist/querier/abstractQuerier.js +9 -2
  270. package/dist/querier/abstractQuerierPool.d.ts +0 -1
  271. package/dist/querier/abstractQuerierPool.js +0 -1
  272. package/dist/querier/abstractSqlQuerier.d.ts +0 -1
  273. package/dist/querier/abstractSqlQuerier.js +9 -2
  274. package/dist/querier/abstractSqlQuerierPool.d.ts +0 -1
  275. package/dist/querier/abstractSqlQuerierPool.js +0 -1
  276. package/dist/querier/decorator/index.d.ts +0 -1
  277. package/dist/querier/decorator/index.js +0 -1
  278. package/dist/querier/decorator/injectQuerier.d.ts +0 -1
  279. package/dist/querier/decorator/injectQuerier.js +0 -1
  280. package/dist/querier/decorator/log.d.ts +0 -1
  281. package/dist/querier/decorator/log.js +0 -1
  282. package/dist/querier/decorator/serialized.d.ts +0 -1
  283. package/dist/querier/decorator/serialized.js +0 -1
  284. package/dist/querier/decorator/transactional.d.ts +0 -1
  285. package/dist/querier/decorator/transactional.js +0 -1
  286. package/dist/querier/index.d.ts +0 -1
  287. package/dist/querier/index.js +0 -1
  288. package/dist/schema/canonicalType.d.ts +14 -13
  289. package/dist/schema/canonicalType.js +41 -44
  290. package/dist/schema/index.d.ts +1 -2
  291. package/dist/schema/index.js +0 -1
  292. package/dist/schema/schemaAST.d.ts +0 -1
  293. package/dist/schema/schemaAST.js +0 -1
  294. package/dist/schema/schemaASTBuilder.d.ts +8 -2
  295. package/dist/schema/schemaASTBuilder.js +56 -48
  296. package/dist/schema/schemaASTDiffer.d.ts +0 -1
  297. package/dist/schema/schemaASTDiffer.js +0 -1
  298. package/dist/schema/types.d.ts +10 -38
  299. package/dist/schema/types.js +0 -1
  300. package/dist/sqlite/abstractSqliteQuerier.d.ts +39 -1
  301. package/dist/sqlite/abstractSqliteQuerier.js +44 -1
  302. package/dist/sqlite/bunSqliteAdapter.bun.d.ts +26 -0
  303. package/dist/sqlite/bunSqliteAdapter.bun.js +25 -0
  304. package/dist/sqlite/hranaQuerier.d.ts +54 -0
  305. package/dist/sqlite/hranaQuerier.js +90 -0
  306. package/dist/sqlite/hranaQuerierPool.d.ts +21 -0
  307. package/dist/sqlite/hranaQuerierPool.js +25 -0
  308. package/dist/sqlite/index.d.ts +2 -2
  309. package/dist/sqlite/index.js +2 -2
  310. package/dist/sqlite/sqliteDialect.d.ts +18 -5
  311. package/dist/sqlite/sqliteDialect.js +24 -25
  312. package/dist/sqlite/sqliteQuerier.d.ts +16 -10
  313. package/dist/sqlite/sqliteQuerier.js +4 -28
  314. package/dist/sqlite/sqliteQuerierPool.d.ts +14 -5
  315. package/dist/sqlite/sqliteQuerierPool.js +16 -6
  316. package/dist/turso/index.d.ts +3 -0
  317. package/dist/turso/index.js +3 -0
  318. package/dist/turso/local.d.ts +3 -0
  319. package/dist/turso/local.js +3 -0
  320. package/dist/turso/tursoDialect.d.ts +15 -0
  321. package/dist/turso/tursoDialect.js +18 -0
  322. package/dist/turso/tursoLocalQuerier.d.ts +25 -0
  323. package/dist/turso/tursoLocalQuerier.js +20 -0
  324. package/dist/turso/tursoLocalQuerierPool.d.ts +32 -0
  325. package/dist/turso/tursoLocalQuerierPool.js +39 -0
  326. package/dist/turso/tursoQuerier.d.ts +10 -0
  327. package/dist/turso/tursoQuerier.js +10 -0
  328. package/dist/turso/tursoQuerierPool.d.ts +39 -0
  329. package/dist/turso/tursoQuerierPool.js +38 -0
  330. package/dist/type/config.d.ts +0 -7
  331. package/dist/type/config.js +0 -1
  332. package/dist/type/dialect.d.ts +12 -5
  333. package/dist/type/dialect.js +7 -2
  334. package/dist/type/entity.d.ts +66 -6
  335. package/dist/type/entity.js +0 -1
  336. package/dist/type/index.d.ts +0 -1
  337. package/dist/type/index.js +0 -1
  338. package/dist/type/logger.d.ts +0 -1
  339. package/dist/type/logger.js +0 -1
  340. package/dist/type/migration.d.ts +32 -24
  341. package/dist/type/migration.js +0 -1
  342. package/dist/type/migratorDialect.d.ts +0 -1
  343. package/dist/type/migratorDialect.js +0 -1
  344. package/dist/type/namingStrategy.d.ts +0 -1
  345. package/dist/type/namingStrategy.js +0 -1
  346. package/dist/type/querier.d.ts +0 -1
  347. package/dist/type/querier.js +0 -1
  348. package/dist/type/querierPool.d.ts +0 -1
  349. package/dist/type/querierPool.js +0 -1
  350. package/dist/type/query.d.ts +0 -1
  351. package/dist/type/query.js +0 -1
  352. package/dist/type/queryAggregate.d.ts +0 -1
  353. package/dist/type/queryAggregate.js +0 -1
  354. package/dist/type/queryRaw.d.ts +0 -1
  355. package/dist/type/queryRaw.js +0 -1
  356. package/dist/type/queryWhere.d.ts +0 -1
  357. package/dist/type/queryWhere.js +0 -1
  358. package/dist/type/universalQuerier.d.ts +0 -1
  359. package/dist/type/universalQuerier.js +0 -1
  360. package/dist/type/utility.d.ts +0 -1
  361. package/dist/type/utility.js +0 -1
  362. package/dist/type/vector.d.ts +5 -3
  363. package/dist/type/vector.js +0 -1
  364. package/dist/util/dialect.util.d.ts +8 -2
  365. package/dist/util/dialect.util.js +16 -1
  366. package/dist/util/field.util.d.ts +0 -1
  367. package/dist/util/field.util.js +0 -1
  368. package/dist/util/filters.util.d.ts +0 -1
  369. package/dist/util/filters.util.js +0 -1
  370. package/dist/util/hook.util.d.ts +0 -1
  371. package/dist/util/hook.util.js +0 -1
  372. package/dist/util/index.d.ts +1 -1
  373. package/dist/util/index.js +1 -1
  374. package/dist/util/indexColumn.util.d.ts +6 -0
  375. package/dist/util/indexColumn.util.js +26 -0
  376. package/dist/util/logger.d.ts +0 -1
  377. package/dist/util/logger.js +0 -1
  378. package/dist/util/object.util.d.ts +0 -1
  379. package/dist/util/object.util.js +0 -1
  380. package/dist/util/raw.d.ts +0 -1
  381. package/dist/util/raw.js +0 -1
  382. package/dist/util/relationQuery.util.d.ts +0 -1
  383. package/dist/util/relationQuery.util.js +0 -1
  384. package/dist/util/sql.util.d.ts +0 -1
  385. package/dist/util/sql.util.js +0 -1
  386. package/dist/util/sqlLiteral.d.ts +19 -0
  387. package/dist/util/sqlLiteral.js +108 -0
  388. package/dist/util/string.util.d.ts +0 -1
  389. package/dist/util/string.util.js +0 -1
  390. package/package.json +57 -27
  391. package/CHANGELOG.md +0 -1359
  392. package/dist/browser/http/bus.d.ts.map +0 -1
  393. package/dist/browser/http/bus.js.map +0 -1
  394. package/dist/browser/http/http.d.ts.map +0 -1
  395. package/dist/browser/http/http.js.map +0 -1
  396. package/dist/browser/http/index.d.ts.map +0 -1
  397. package/dist/browser/http/index.js.map +0 -1
  398. package/dist/browser/index.d.ts.map +0 -1
  399. package/dist/browser/index.js.map +0 -1
  400. package/dist/browser/options.d.ts.map +0 -1
  401. package/dist/browser/options.js.map +0 -1
  402. package/dist/browser/querier/httpQuerier.d.ts.map +0 -1
  403. package/dist/browser/querier/httpQuerier.js.map +0 -1
  404. package/dist/browser/querier/index.d.ts.map +0 -1
  405. package/dist/browser/querier/index.js.map +0 -1
  406. package/dist/browser/type/clientQuerier.d.ts.map +0 -1
  407. package/dist/browser/type/clientQuerier.js.map +0 -1
  408. package/dist/browser/type/clientQuerierPool.d.ts.map +0 -1
  409. package/dist/browser/type/clientQuerierPool.js.map +0 -1
  410. package/dist/browser/type/index.d.ts.map +0 -1
  411. package/dist/browser/type/index.js.map +0 -1
  412. package/dist/browser/type/request.d.ts.map +0 -1
  413. package/dist/browser/type/request.js.map +0 -1
  414. package/dist/bunSql/bunSql.util.d.ts.map +0 -1
  415. package/dist/bunSql/bunSql.util.js.map +0 -1
  416. package/dist/bunSql/bunSqlCockroachDialect.d.ts.map +0 -1
  417. package/dist/bunSql/bunSqlCockroachDialect.js.map +0 -1
  418. package/dist/bunSql/bunSqlPostgresDialect.d.ts.map +0 -1
  419. package/dist/bunSql/bunSqlPostgresDialect.js.map +0 -1
  420. package/dist/bunSql/bunSqlQuerier.d.ts.map +0 -1
  421. package/dist/bunSql/bunSqlQuerier.js.map +0 -1
  422. package/dist/bunSql/bunSqlQuerierPool.d.ts.map +0 -1
  423. package/dist/bunSql/bunSqlQuerierPool.js.map +0 -1
  424. package/dist/bunSql/bunSqliteDialect.d.ts.map +0 -1
  425. package/dist/bunSql/bunSqliteDialect.js.map +0 -1
  426. package/dist/bunSql/index.d.ts.map +0 -1
  427. package/dist/bunSql/index.js.map +0 -1
  428. package/dist/cockroachdb/cockroachDialect.d.ts.map +0 -1
  429. package/dist/cockroachdb/cockroachDialect.js.map +0 -1
  430. package/dist/cockroachdb/crdbQuerier.d.ts.map +0 -1
  431. package/dist/cockroachdb/crdbQuerier.js.map +0 -1
  432. package/dist/cockroachdb/crdbQuerierPool.d.ts.map +0 -1
  433. package/dist/cockroachdb/crdbQuerierPool.js.map +0 -1
  434. package/dist/cockroachdb/index.d.ts.map +0 -1
  435. package/dist/cockroachdb/index.js.map +0 -1
  436. package/dist/context/context.browser.d.ts.map +0 -1
  437. package/dist/context/context.browser.js.map +0 -1
  438. package/dist/context/context.d.ts.map +0 -1
  439. package/dist/context/context.js.map +0 -1
  440. package/dist/context/securityError.d.ts.map +0 -1
  441. package/dist/context/securityError.js.map +0 -1
  442. package/dist/d1/d1Querier.d.ts.map +0 -1
  443. package/dist/d1/d1Querier.js.map +0 -1
  444. package/dist/d1/d1QuerierPool.d.ts.map +0 -1
  445. package/dist/d1/d1QuerierPool.js.map +0 -1
  446. package/dist/d1/d1SqliteDialect.d.ts.map +0 -1
  447. package/dist/d1/d1SqliteDialect.js.map +0 -1
  448. package/dist/d1/index.d.ts.map +0 -1
  449. package/dist/d1/index.js.map +0 -1
  450. package/dist/dialect/abstractDialect.d.ts.map +0 -1
  451. package/dist/dialect/abstractDialect.js.map +0 -1
  452. package/dist/dialect/abstractSqlDialect.d.ts.map +0 -1
  453. package/dist/dialect/abstractSqlDialect.js.map +0 -1
  454. package/dist/dialect/index.d.ts.map +0 -1
  455. package/dist/dialect/index.js.map +0 -1
  456. package/dist/dialect/jsonArrayElemMatchUtils.d.ts.map +0 -1
  457. package/dist/dialect/jsonArrayElemMatchUtils.js.map +0 -1
  458. package/dist/dialect/jsonSql.d.ts.map +0 -1
  459. package/dist/dialect/jsonSql.js.map +0 -1
  460. package/dist/dialect/mysqlLikeSqlDialect.d.ts.map +0 -1
  461. package/dist/dialect/mysqlLikeSqlDialect.js.map +0 -1
  462. package/dist/dialect/pgLikeSqlDialect.d.ts.map +0 -1
  463. package/dist/dialect/pgLikeSqlDialect.js.map +0 -1
  464. package/dist/dialect/queryContext.d.ts.map +0 -1
  465. package/dist/dialect/queryContext.js.map +0 -1
  466. package/dist/dialect/vectorSqlDialect.d.ts.map +0 -1
  467. package/dist/dialect/vectorSqlDialect.js.map +0 -1
  468. package/dist/entity/decorator/entity.d.ts.map +0 -1
  469. package/dist/entity/decorator/entity.js.map +0 -1
  470. package/dist/entity/decorator/field.d.ts.map +0 -1
  471. package/dist/entity/decorator/field.js.map +0 -1
  472. package/dist/entity/decorator/filter.d.ts.map +0 -1
  473. package/dist/entity/decorator/filter.js.map +0 -1
  474. package/dist/entity/decorator/hook.d.ts.map +0 -1
  475. package/dist/entity/decorator/hook.js.map +0 -1
  476. package/dist/entity/decorator/id.d.ts.map +0 -1
  477. package/dist/entity/decorator/id.js.map +0 -1
  478. package/dist/entity/decorator/index-decorator.d.ts.map +0 -1
  479. package/dist/entity/decorator/index-decorator.js.map +0 -1
  480. package/dist/entity/decorator/index.d.ts.map +0 -1
  481. package/dist/entity/decorator/index.js.map +0 -1
  482. package/dist/entity/decorator/relation.d.ts.map +0 -1
  483. package/dist/entity/decorator/relation.js.map +0 -1
  484. package/dist/entity/index.d.ts.map +0 -1
  485. package/dist/entity/index.js.map +0 -1
  486. package/dist/entity/metadata/definition.d.ts.map +0 -1
  487. package/dist/entity/metadata/definition.js.map +0 -1
  488. package/dist/entity/test-helpers.d.ts +0 -4
  489. package/dist/entity/test-helpers.d.ts.map +0 -1
  490. package/dist/entity/test-helpers.js +0 -16
  491. package/dist/entity/test-helpers.js.map +0 -1
  492. package/dist/express/index.d.ts.map +0 -1
  493. package/dist/express/index.js.map +0 -1
  494. package/dist/express/querierMiddleware.d.ts.map +0 -1
  495. package/dist/express/querierMiddleware.js.map +0 -1
  496. package/dist/http/contract.d.ts.map +0 -1
  497. package/dist/http/contract.js.map +0 -1
  498. package/dist/http/fetchHandler.d.ts.map +0 -1
  499. package/dist/http/fetchHandler.js.map +0 -1
  500. package/dist/http/handler.d.ts.map +0 -1
  501. package/dist/http/handler.js.map +0 -1
  502. package/dist/http/index.d.ts.map +0 -1
  503. package/dist/http/index.js.map +0 -1
  504. package/dist/http/query.d.ts.map +0 -1
  505. package/dist/http/query.js.map +0 -1
  506. package/dist/index.d.ts.map +0 -1
  507. package/dist/index.js.map +0 -1
  508. package/dist/libsql/index.d.ts.map +0 -1
  509. package/dist/libsql/index.js.map +0 -1
  510. package/dist/libsql/libsqlDialect.d.ts.map +0 -1
  511. package/dist/libsql/libsqlDialect.js.map +0 -1
  512. package/dist/libsql/libsqlQuerier.d.ts.map +0 -1
  513. package/dist/libsql/libsqlQuerier.js.map +0 -1
  514. package/dist/libsql/libsqlQuerierPool.d.ts.map +0 -1
  515. package/dist/libsql/libsqlQuerierPool.js.map +0 -1
  516. package/dist/maria/index.d.ts.map +0 -1
  517. package/dist/maria/index.js.map +0 -1
  518. package/dist/maria/mariaDialect.d.ts.map +0 -1
  519. package/dist/maria/mariaDialect.js.map +0 -1
  520. package/dist/maria/mariadbQuerier.d.ts.map +0 -1
  521. package/dist/maria/mariadbQuerier.js.map +0 -1
  522. package/dist/maria/mariadbQuerierPool.d.ts.map +0 -1
  523. package/dist/maria/mariadbQuerierPool.js.map +0 -1
  524. package/dist/migrate/acquireQuerierForMigrations.d.ts.map +0 -1
  525. package/dist/migrate/acquireQuerierForMigrations.js.map +0 -1
  526. package/dist/migrate/assertCliConfig.d.ts.map +0 -1
  527. package/dist/migrate/assertCliConfig.js.map +0 -1
  528. package/dist/migrate/bin.d.ts.map +0 -1
  529. package/dist/migrate/bin.js.map +0 -1
  530. package/dist/migrate/builder/columnBuilder.d.ts.map +0 -1
  531. package/dist/migrate/builder/columnBuilder.js.map +0 -1
  532. package/dist/migrate/builder/expressions.d.ts.map +0 -1
  533. package/dist/migrate/builder/expressions.js.map +0 -1
  534. package/dist/migrate/builder/index.d.ts.map +0 -1
  535. package/dist/migrate/builder/index.js.map +0 -1
  536. package/dist/migrate/builder/migrationBuilder.d.ts.map +0 -1
  537. package/dist/migrate/builder/migrationBuilder.js.map +0 -1
  538. package/dist/migrate/builder/splitSqlStatements.d.ts.map +0 -1
  539. package/dist/migrate/builder/splitSqlStatements.js.map +0 -1
  540. package/dist/migrate/builder/tableBuilder.d.ts.map +0 -1
  541. package/dist/migrate/builder/tableBuilder.js.map +0 -1
  542. package/dist/migrate/builder/types.d.ts.map +0 -1
  543. package/dist/migrate/builder/types.js.map +0 -1
  544. package/dist/migrate/cli-config.d.ts.map +0 -1
  545. package/dist/migrate/cli-config.js.map +0 -1
  546. package/dist/migrate/cli.d.ts.map +0 -1
  547. package/dist/migrate/cli.js.map +0 -1
  548. package/dist/migrate/codegen/entityCodeGenerator.d.ts.map +0 -1
  549. package/dist/migrate/codegen/entityCodeGenerator.js.map +0 -1
  550. package/dist/migrate/codegen/entityMerger.d.ts +0 -115
  551. package/dist/migrate/codegen/entityMerger.d.ts.map +0 -1
  552. package/dist/migrate/codegen/entityMerger.js +0 -294
  553. package/dist/migrate/codegen/entityMerger.js.map +0 -1
  554. package/dist/migrate/codegen/index.d.ts.map +0 -1
  555. package/dist/migrate/codegen/index.js.map +0 -1
  556. package/dist/migrate/codegen/migrationCodeGenerator.d.ts +0 -62
  557. package/dist/migrate/codegen/migrationCodeGenerator.d.ts.map +0 -1
  558. package/dist/migrate/codegen/migrationCodeGenerator.js +0 -356
  559. package/dist/migrate/codegen/migrationCodeGenerator.js.map +0 -1
  560. package/dist/migrate/codegen/migrationFile.d.ts.map +0 -1
  561. package/dist/migrate/codegen/migrationFile.js.map +0 -1
  562. package/dist/migrate/codegen/smartRelationDetector.d.ts.map +0 -1
  563. package/dist/migrate/codegen/smartRelationDetector.js.map +0 -1
  564. package/dist/migrate/drift/driftDetector.d.ts.map +0 -1
  565. package/dist/migrate/drift/driftDetector.js.map +0 -1
  566. package/dist/migrate/drift/index.d.ts.map +0 -1
  567. package/dist/migrate/drift/index.js.map +0 -1
  568. package/dist/migrate/generator/index.d.ts +0 -3
  569. package/dist/migrate/generator/index.d.ts.map +0 -1
  570. package/dist/migrate/generator/index.js +0 -3
  571. package/dist/migrate/generator/index.js.map +0 -1
  572. package/dist/migrate/generator/mongoSchemaGenerator.d.ts.map +0 -1
  573. package/dist/migrate/generator/mongoSchemaGenerator.js.map +0 -1
  574. package/dist/migrate/index.d.ts.map +0 -1
  575. package/dist/migrate/index.js.map +0 -1
  576. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.d.ts.map +0 -1
  577. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.js.map +0 -1
  578. package/dist/migrate/introspection/baseSqlIntrospector.d.ts.map +0 -1
  579. package/dist/migrate/introspection/baseSqlIntrospector.js.map +0 -1
  580. package/dist/migrate/introspection/index.d.ts.map +0 -1
  581. package/dist/migrate/introspection/index.js.map +0 -1
  582. package/dist/migrate/introspection/mongoIntrospector.d.ts.map +0 -1
  583. package/dist/migrate/introspection/mongoIntrospector.js.map +0 -1
  584. package/dist/migrate/introspection/mysqlIntrospector.d.ts.map +0 -1
  585. package/dist/migrate/introspection/mysqlIntrospector.js.map +0 -1
  586. package/dist/migrate/introspection/postgresIntrospector.d.ts.map +0 -1
  587. package/dist/migrate/introspection/postgresIntrospector.js.map +0 -1
  588. package/dist/migrate/introspection/sqliteIntrospector.d.ts.map +0 -1
  589. package/dist/migrate/introspection/sqliteIntrospector.js.map +0 -1
  590. package/dist/migrate/migrator.d.ts.map +0 -1
  591. package/dist/migrate/migrator.js.map +0 -1
  592. package/dist/migrate/schemaGenerator.d.ts.map +0 -1
  593. package/dist/migrate/schemaGenerator.js.map +0 -1
  594. package/dist/migrate/schemaGeneratorAsync.d.ts.map +0 -1
  595. package/dist/migrate/schemaGeneratorAsync.js.map +0 -1
  596. package/dist/migrate/storage/databaseStorage.d.ts.map +0 -1
  597. package/dist/migrate/storage/databaseStorage.js.map +0 -1
  598. package/dist/migrate/storage/index.d.ts.map +0 -1
  599. package/dist/migrate/storage/index.js.map +0 -1
  600. package/dist/migrate/storage/jsonStorage.d.ts.map +0 -1
  601. package/dist/migrate/storage/jsonStorage.js.map +0 -1
  602. package/dist/migrate/sync/index.d.ts +0 -7
  603. package/dist/migrate/sync/index.d.ts.map +0 -1
  604. package/dist/migrate/sync/index.js +0 -7
  605. package/dist/migrate/sync/index.js.map +0 -1
  606. package/dist/migrate/sync/schemaSync.d.ts +0 -132
  607. package/dist/migrate/sync/schemaSync.d.ts.map +0 -1
  608. package/dist/migrate/sync/schemaSync.js +0 -260
  609. package/dist/migrate/sync/schemaSync.js.map +0 -1
  610. package/dist/mongo/index.d.ts.map +0 -1
  611. package/dist/mongo/index.js.map +0 -1
  612. package/dist/mongo/mongoDialect.d.ts.map +0 -1
  613. package/dist/mongo/mongoDialect.js.map +0 -1
  614. package/dist/mongo/mongodbNativeDialect.d.ts.map +0 -1
  615. package/dist/mongo/mongodbNativeDialect.js.map +0 -1
  616. package/dist/mongo/mongodbQuerier.d.ts.map +0 -1
  617. package/dist/mongo/mongodbQuerier.js.map +0 -1
  618. package/dist/mongo/mongodbQuerierPool.d.ts.map +0 -1
  619. package/dist/mongo/mongodbQuerierPool.js.map +0 -1
  620. package/dist/mysql/index.d.ts.map +0 -1
  621. package/dist/mysql/index.js.map +0 -1
  622. package/dist/mysql/mysql2Dialect.d.ts.map +0 -1
  623. package/dist/mysql/mysql2Dialect.js.map +0 -1
  624. package/dist/mysql/mysql2Querier.d.ts.map +0 -1
  625. package/dist/mysql/mysql2Querier.js.map +0 -1
  626. package/dist/mysql/mysql2QuerierPool.d.ts.map +0 -1
  627. package/dist/mysql/mysql2QuerierPool.js.map +0 -1
  628. package/dist/mysql/mysqlDialect.d.ts.map +0 -1
  629. package/dist/mysql/mysqlDialect.js.map +0 -1
  630. package/dist/namingStrategy/defaultNamingStrategy.d.ts.map +0 -1
  631. package/dist/namingStrategy/defaultNamingStrategy.js.map +0 -1
  632. package/dist/namingStrategy/index.d.ts.map +0 -1
  633. package/dist/namingStrategy/index.js.map +0 -1
  634. package/dist/namingStrategy/snakeCaseNamingStrategy.d.ts.map +0 -1
  635. package/dist/namingStrategy/snakeCaseNamingStrategy.js.map +0 -1
  636. package/dist/neon/index.d.ts.map +0 -1
  637. package/dist/neon/index.js.map +0 -1
  638. package/dist/neon/neonDialect.d.ts.map +0 -1
  639. package/dist/neon/neonDialect.js.map +0 -1
  640. package/dist/neon/neonQuerier.d.ts.map +0 -1
  641. package/dist/neon/neonQuerier.js.map +0 -1
  642. package/dist/neon/neonQuerierPool.d.ts.map +0 -1
  643. package/dist/neon/neonQuerierPool.js.map +0 -1
  644. package/dist/nestjs/index.d.ts.map +0 -1
  645. package/dist/nestjs/index.js.map +0 -1
  646. package/dist/nestjs/uqlContextInterceptor.d.ts.map +0 -1
  647. package/dist/nestjs/uqlContextInterceptor.js.map +0 -1
  648. package/dist/nestjs/uqlModule.d.ts.map +0 -1
  649. package/dist/nestjs/uqlModule.js.map +0 -1
  650. package/dist/options.d.ts.map +0 -1
  651. package/dist/options.js.map +0 -1
  652. package/dist/postgres/abstractPgQuerier.d.ts.map +0 -1
  653. package/dist/postgres/abstractPgQuerier.js.map +0 -1
  654. package/dist/postgres/abstractPgQuerierPool.d.ts.map +0 -1
  655. package/dist/postgres/abstractPgQuerierPool.js.map +0 -1
  656. package/dist/postgres/index.d.ts.map +0 -1
  657. package/dist/postgres/index.js.map +0 -1
  658. package/dist/postgres/pgDialect.d.ts.map +0 -1
  659. package/dist/postgres/pgDialect.js.map +0 -1
  660. package/dist/postgres/pgQuerier.d.ts.map +0 -1
  661. package/dist/postgres/pgQuerier.js.map +0 -1
  662. package/dist/postgres/pgQuerierPool.d.ts.map +0 -1
  663. package/dist/postgres/pgQuerierPool.js.map +0 -1
  664. package/dist/postgres/postgresDialect.d.ts.map +0 -1
  665. package/dist/postgres/postgresDialect.js.map +0 -1
  666. package/dist/postgres/postgresWireDriverCapabilities.d.ts.map +0 -1
  667. package/dist/postgres/postgresWireDriverCapabilities.js.map +0 -1
  668. package/dist/querier/abstractPoolQuerier.d.ts.map +0 -1
  669. package/dist/querier/abstractPoolQuerier.js.map +0 -1
  670. package/dist/querier/abstractQuerier.d.ts.map +0 -1
  671. package/dist/querier/abstractQuerier.js.map +0 -1
  672. package/dist/querier/abstractQuerierPool.d.ts.map +0 -1
  673. package/dist/querier/abstractQuerierPool.js.map +0 -1
  674. package/dist/querier/abstractSqlQuerier.d.ts.map +0 -1
  675. package/dist/querier/abstractSqlQuerier.js.map +0 -1
  676. package/dist/querier/abstractSqlQuerierPool.d.ts.map +0 -1
  677. package/dist/querier/abstractSqlQuerierPool.js.map +0 -1
  678. package/dist/querier/decorator/index.d.ts.map +0 -1
  679. package/dist/querier/decorator/index.js.map +0 -1
  680. package/dist/querier/decorator/injectQuerier.d.ts.map +0 -1
  681. package/dist/querier/decorator/injectQuerier.js.map +0 -1
  682. package/dist/querier/decorator/log.d.ts.map +0 -1
  683. package/dist/querier/decorator/log.js.map +0 -1
  684. package/dist/querier/decorator/serialized.d.ts.map +0 -1
  685. package/dist/querier/decorator/serialized.js.map +0 -1
  686. package/dist/querier/decorator/transactional.d.ts.map +0 -1
  687. package/dist/querier/decorator/transactional.js.map +0 -1
  688. package/dist/querier/index.d.ts.map +0 -1
  689. package/dist/querier/index.js.map +0 -1
  690. package/dist/schema/canonicalType.d.ts.map +0 -1
  691. package/dist/schema/canonicalType.js.map +0 -1
  692. package/dist/schema/index.d.ts.map +0 -1
  693. package/dist/schema/index.js.map +0 -1
  694. package/dist/schema/schemaAST.d.ts.map +0 -1
  695. package/dist/schema/schemaAST.js.map +0 -1
  696. package/dist/schema/schemaASTBuilder.d.ts.map +0 -1
  697. package/dist/schema/schemaASTBuilder.js.map +0 -1
  698. package/dist/schema/schemaASTDiffer.d.ts.map +0 -1
  699. package/dist/schema/schemaASTDiffer.js.map +0 -1
  700. package/dist/schema/types.d.ts.map +0 -1
  701. package/dist/schema/types.js.map +0 -1
  702. package/dist/sqlite/abstractSqliteQuerier.d.ts.map +0 -1
  703. package/dist/sqlite/abstractSqliteQuerier.js.map +0 -1
  704. package/dist/sqlite/betterSqlite3Dialect.d.ts +0 -10
  705. package/dist/sqlite/betterSqlite3Dialect.d.ts.map +0 -1
  706. package/dist/sqlite/betterSqlite3Dialect.js +0 -10
  707. package/dist/sqlite/betterSqlite3Dialect.js.map +0 -1
  708. package/dist/sqlite/index.d.ts.map +0 -1
  709. package/dist/sqlite/index.js.map +0 -1
  710. package/dist/sqlite/sqliteDialect.d.ts.map +0 -1
  711. package/dist/sqlite/sqliteDialect.js.map +0 -1
  712. package/dist/sqlite/sqliteQuerier.d.ts.map +0 -1
  713. package/dist/sqlite/sqliteQuerier.js.map +0 -1
  714. package/dist/sqlite/sqliteQuerierPool.d.ts.map +0 -1
  715. package/dist/sqlite/sqliteQuerierPool.js.map +0 -1
  716. package/dist/type/config.d.ts.map +0 -1
  717. package/dist/type/config.js.map +0 -1
  718. package/dist/type/dialect.d.ts.map +0 -1
  719. package/dist/type/dialect.js.map +0 -1
  720. package/dist/type/entity.d.ts.map +0 -1
  721. package/dist/type/entity.js.map +0 -1
  722. package/dist/type/index.d.ts.map +0 -1
  723. package/dist/type/index.js.map +0 -1
  724. package/dist/type/logger.d.ts.map +0 -1
  725. package/dist/type/logger.js.map +0 -1
  726. package/dist/type/migration.d.ts.map +0 -1
  727. package/dist/type/migration.js.map +0 -1
  728. package/dist/type/migratorDialect.d.ts.map +0 -1
  729. package/dist/type/migratorDialect.js.map +0 -1
  730. package/dist/type/namingStrategy.d.ts.map +0 -1
  731. package/dist/type/namingStrategy.js.map +0 -1
  732. package/dist/type/querier.d.ts.map +0 -1
  733. package/dist/type/querier.js.map +0 -1
  734. package/dist/type/querierPool.d.ts.map +0 -1
  735. package/dist/type/querierPool.js.map +0 -1
  736. package/dist/type/query.d.ts.map +0 -1
  737. package/dist/type/query.js.map +0 -1
  738. package/dist/type/queryAggregate.d.ts.map +0 -1
  739. package/dist/type/queryAggregate.js.map +0 -1
  740. package/dist/type/queryRaw.d.ts.map +0 -1
  741. package/dist/type/queryRaw.js.map +0 -1
  742. package/dist/type/queryWhere.d.ts.map +0 -1
  743. package/dist/type/queryWhere.js.map +0 -1
  744. package/dist/type/universalQuerier.d.ts.map +0 -1
  745. package/dist/type/universalQuerier.js.map +0 -1
  746. package/dist/type/utility.d.ts.map +0 -1
  747. package/dist/type/utility.js.map +0 -1
  748. package/dist/type/vector.d.ts.map +0 -1
  749. package/dist/type/vector.js.map +0 -1
  750. package/dist/util/ansiSqlLiteral.d.ts +0 -23
  751. package/dist/util/ansiSqlLiteral.d.ts.map +0 -1
  752. package/dist/util/ansiSqlLiteral.js +0 -105
  753. package/dist/util/ansiSqlLiteral.js.map +0 -1
  754. package/dist/util/dialect.util.d.ts.map +0 -1
  755. package/dist/util/dialect.util.js.map +0 -1
  756. package/dist/util/field.util.d.ts.map +0 -1
  757. package/dist/util/field.util.js.map +0 -1
  758. package/dist/util/filters.util.d.ts.map +0 -1
  759. package/dist/util/filters.util.js.map +0 -1
  760. package/dist/util/hook.util.d.ts.map +0 -1
  761. package/dist/util/hook.util.js.map +0 -1
  762. package/dist/util/index.d.ts.map +0 -1
  763. package/dist/util/index.js.map +0 -1
  764. package/dist/util/logger.d.ts.map +0 -1
  765. package/dist/util/logger.js.map +0 -1
  766. package/dist/util/object.util.d.ts.map +0 -1
  767. package/dist/util/object.util.js.map +0 -1
  768. package/dist/util/raw.d.ts.map +0 -1
  769. package/dist/util/raw.js.map +0 -1
  770. package/dist/util/relationQuery.util.d.ts.map +0 -1
  771. package/dist/util/relationQuery.util.js.map +0 -1
  772. package/dist/util/sql.util.d.ts.map +0 -1
  773. package/dist/util/sql.util.js.map +0 -1
  774. package/dist/util/string.util.d.ts.map +0 -1
  775. package/dist/util/string.util.js.map +0 -1
@@ -1,5 +1,4 @@
1
- import { createClient } from '@libsql/client';
2
- import { AbstractSqlQuerierPool } from '../querier/index.js';
1
+ import { AbstractHranaQuerierPool } from '../sqlite/hranaQuerierPool.js';
3
2
  import { LibsqlDialect } from './libsqlDialect.js';
4
3
  import { LibsqlQuerier } from './libsqlQuerier.js';
5
4
  /** Embedded replica: local `file:` DB + `syncUrl` remote - DDL should run on the remote (sqld). */
@@ -11,30 +10,32 @@ function remoteMigrationClientConfig(config) {
11
10
  const { syncUrl, url: _localUrl, ...rest } = config;
12
11
  return { ...rest, url: syncUrl };
13
12
  }
14
- export class LibsqlQuerierPool extends AbstractSqlQuerierPool {
15
- client;
16
- libsqlConfig;
13
+ export class LibsqlQuerierPool extends AbstractHranaQuerierPool {
14
+ conf;
17
15
  constructor(conf, extra) {
18
16
  super(new LibsqlDialect({ namingStrategy: extra?.namingStrategy }), extra);
19
- this.libsqlConfig = conf;
20
- this.client = createClient(conf);
17
+ this.conf = conf;
21
18
  }
22
- async getQuerier() {
23
- return new LibsqlQuerier(this.client, this.dialect, this.extra);
19
+ openClient() {
20
+ return this.createClient(this.conf);
21
+ }
22
+ buildQuerier(client, connection) {
23
+ return new LibsqlQuerier(client, this.dialect, this.extra, connection);
24
24
  }
25
25
  /**
26
26
  * For embedded replicas (`file:` + `syncUrl`), returns a querier connected to `syncUrl` so migrations hit sqld.
27
- * Otherwise same as {@link getQuerier}. The migrator calls this for `up`/`down`, `syncForce`, and `autoSync` DDL.
27
+ * Otherwise same as `getQuerier`. The migrator calls this for `up`/`down`, `syncForce`, and `autoSync` DDL.
28
28
  */
29
29
  async getMigrationQuerier() {
30
- if (!libsqlUseRemoteForMigrations(this.libsqlConfig)) {
30
+ if (!libsqlUseRemoteForMigrations(this.conf)) {
31
31
  return this.getQuerier();
32
32
  }
33
- const remote = createClient(remoteMigrationClientConfig(this.libsqlConfig));
34
- return new LibsqlQuerier(remote, this.dialect, this.extra, { closeClientOnRelease: true });
33
+ const remote = await this.createClient(remoteMigrationClientConfig(this.conf));
34
+ return this.buildQuerier(remote, { closeClientOnRelease: true });
35
35
  }
36
- async end() {
37
- this.client.close();
36
+ /** Imported on use, so `uql-orm/libsql` loads without the optional `@libsql/client` peer installed. */
37
+ async createClient(conf) {
38
+ const { createClient } = await import('@libsql/client');
39
+ return createClient(conf);
38
40
  }
39
41
  }
40
- //# sourceMappingURL=libsqlQuerierPool.js.map
@@ -1,4 +1,3 @@
1
1
  export * from './mariaDialect.js';
2
2
  export * from './mariadbQuerier.js';
3
3
  export * from './mariadbQuerierPool.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,3 @@
1
1
  export * from './mariaDialect.js';
2
2
  export * from './mariadbQuerier.js';
3
3
  export * from './mariadbQuerierPool.js';
4
- //# sourceMappingURL=index.js.map
@@ -1,11 +1,16 @@
1
- import type { DialectOptions } from '../dialect/abstractDialect.js';
2
1
  import { MysqlLikeSqlDialect } from '../dialect/mysqlLikeSqlDialect.js';
3
- import type { QueryConflictPaths, QueryContext, QueryOptions, Type, VectorDistance } from '../type/index.js';
2
+ import type { DialectFeatures, FieldOptions, IndexFeature, IndexSchema, QueryConflictPaths, QueryContext, Type, VectorDistance } from '../type/index.js';
4
3
  export declare class MariaDialect extends MysqlLikeSqlDialect {
5
4
  readonly dialectName = "mariadb";
6
5
  readonly insertIdSource = "returning";
7
- constructor(options?: DialectOptions);
8
- insert<E>(ctx: QueryContext, entity: Type<E>, payload: E | E[], opts?: QueryOptions): void;
6
+ /**
7
+ * MariaDB has no functional indexes: `CREATE INDEX ... ((lower(col)))` is a syntax error even on
8
+ * 12.3, where the documented workaround is a generated column. So it keeps the prefix lengths the
9
+ * family shares and drops expressions.
10
+ */
11
+ protected readonly indexFeatures: Set<IndexFeature>;
12
+ /** Unlike MySQL: `VECTOR(n)` takes its dimension, and its vector index is declared inline. */
13
+ protected readonly featureOverrides: Partial<DialectFeatures>;
9
14
  upsert<E>(ctx: QueryContext, entity: Type<E>, conflictPaths: QueryConflictPaths<E>, payload: E | E[]): void;
10
15
  /**
11
16
  * MariaDB supports neither MySQL's `->`/`->>` shorthand nor the base's chained form. `JSON_VALUE`
@@ -22,7 +27,23 @@ export declare class MariaDialect extends MysqlLikeSqlDialect {
22
27
  protected jsonPullElem(alias: string): string;
23
28
  /** Text-backed JSON compares as text, so use JSON_EQUALS for key-order-independent equality. */
24
29
  protected jsonPullKeep(alias: string, operand: string): string;
30
+ /** MariaDB's own names for the metrics its vector index accepts. */
31
+ private static readonly INLINE_VECTOR_METRICS;
25
32
  /** MariaDB 11.7+ vector distance functions. */
26
33
  protected readonly vectorDistanceFns: ReadonlyMap<VectorDistance, string>;
34
+ /**
35
+ * A `VECTOR` column holds a packed little-endian float32 blob, and MariaDB refuses text where one
36
+ * belongs: inserting `'[1,2,3]'` fails with `Incorrect vector value`, and passing it to
37
+ * `VEC_DISTANCE_COSINE` with `Illegal parameter data type varchar`. `VEC_FromText` is the
38
+ * conversion, needed on both paths.
39
+ */
40
+ protected appendVectorValue(ctx: QueryContext, value: readonly unknown[]): void;
41
+ /**
42
+ * MariaDB declares a vector index inside `CREATE TABLE`: `VECTOR INDEX (col) M=n DISTANCE=metric`.
43
+ * Its metric names are its own (`euclidean`, not `l2`), and an unsupported one throws rather than
44
+ * being dropped, which would silently build the index on cosine instead.
45
+ */
46
+ getInlineVectorIndexDeclaration(index: IndexSchema): string;
47
+ /** The reverse: selecting a `VECTOR` column raw yields that blob, so it is read back as text. */
48
+ protected selectFieldExpr(escapedColumn: string, field: FieldOptions): string;
27
49
  }
28
- //# sourceMappingURL=mariaDialect.d.ts.map
@@ -1,36 +1,35 @@
1
1
  import { jsonPath } from '../dialect/jsonSql.js';
2
2
  import { MysqlLikeSqlDialect } from '../dialect/mysqlLikeSqlDialect.js';
3
+ import { isVectorFieldType } from '../dialect/vectorCast.js';
3
4
  import { getMeta } from '../entity/index.js';
4
5
  export class MariaDialect extends MysqlLikeSqlDialect {
5
6
  dialectName = 'mariadb';
6
7
  // MariaDB 10.5+ supports `INSERT ... RETURNING` (see `insert` below), so IDs are exact per row.
7
8
  insertIdSource = 'returning';
8
- constructor(options = {}) {
9
- super({
10
- ...options,
11
- driverCapabilities: {
12
- vectorSupportsLength: true,
13
- ...options.driverCapabilities,
14
- },
15
- });
16
- }
17
- insert(ctx, entity, payload, opts) {
18
- super.insert(ctx, entity, payload, opts);
19
- ctx.append(' ' + this.returningId(entity));
20
- }
9
+ /**
10
+ * MariaDB has no functional indexes: `CREATE INDEX ... ((lower(col)))` is a syntax error even on
11
+ * 12.3, where the documented workaround is a generated column. So it keeps the prefix lengths the
12
+ * family shares and drops expressions.
13
+ */
14
+ indexFeatures = new Set(['prefixLength']);
15
+ /** Unlike MySQL: `VECTOR(n)` takes its dimension, and its vector index is declared inline. */
16
+ featureOverrides = {
17
+ vectorSupportsLength: true,
18
+ inlineVectorIndex: true,
19
+ };
21
20
  upsert(ctx, entity, conflictPaths, payload) {
22
21
  const meta = getMeta(entity);
23
22
  const updateCtx = this.createContext();
24
23
  const update = this.getUpsertUpdateAssignments(updateCtx, meta, conflictPaths, payload, (name) => `VALUES(${name})`);
25
24
  const returning = this.returningId(entity);
26
25
  if (update) {
27
- super.insert(ctx, entity, payload);
26
+ this.appendInsertValues(ctx, entity, payload);
28
27
  ctx.append(` ON DUPLICATE KEY UPDATE ${update} ${returning}`);
29
28
  ctx.pushValue(...updateCtx.values);
30
29
  }
31
30
  else {
32
31
  const insertCtx = this.createContext();
33
- super.insert(insertCtx, entity, payload);
32
+ this.appendInsertValues(insertCtx, entity, payload);
34
33
  ctx.append(insertCtx.sql.replace(/^INSERT/, 'INSERT IGNORE'));
35
34
  ctx.append(' ' + returning);
36
35
  ctx.pushValue(...insertCtx.values);
@@ -61,10 +60,49 @@ export class MariaDialect extends MysqlLikeSqlDialect {
61
60
  jsonPullKeep(alias, operand) {
62
61
  return `NOT JSON_EQUALS(${alias}.v, ${operand})`;
63
62
  }
63
+ /** MariaDB's own names for the metrics its vector index accepts. */
64
+ static INLINE_VECTOR_METRICS = new Map([
65
+ ['cosine', 'cosine'],
66
+ ['l2', 'euclidean'],
67
+ ]);
64
68
  /** MariaDB 11.7+ vector distance functions. */
65
69
  vectorDistanceFns = new Map([
66
70
  ['cosine', 'VEC_DISTANCE_COSINE'],
67
71
  ['l2', 'VEC_DISTANCE_EUCLIDEAN'],
68
72
  ]);
73
+ /**
74
+ * A `VECTOR` column holds a packed little-endian float32 blob, and MariaDB refuses text where one
75
+ * belongs: inserting `'[1,2,3]'` fails with `Incorrect vector value`, and passing it to
76
+ * `VEC_DISTANCE_COSINE` with `Illegal parameter data type varchar`. `VEC_FromText` is the
77
+ * conversion, needed on both paths.
78
+ */
79
+ appendVectorValue(ctx, value) {
80
+ ctx.append('VEC_FromText(');
81
+ super.appendVectorValue(ctx, value);
82
+ ctx.append(')');
83
+ }
84
+ /**
85
+ * MariaDB declares a vector index inside `CREATE TABLE`: `VECTOR INDEX (col) M=n DISTANCE=metric`.
86
+ * Its metric names are its own (`euclidean`, not `l2`), and an unsupported one throws rather than
87
+ * being dropped, which would silently build the index on cosine instead.
88
+ */
89
+ getInlineVectorIndexDeclaration(index) {
90
+ const columns = index.columns.map((entry) => this.indexColumnTarget(entry)).join(', ');
91
+ let clause = `VECTOR INDEX (${columns})`;
92
+ if (index.m !== undefined) {
93
+ clause += ` M=${index.m}`;
94
+ }
95
+ if (index.distance) {
96
+ const metric = MariaDialect.INLINE_VECTOR_METRICS.get(index.distance);
97
+ if (!metric) {
98
+ throw new TypeError(`${this.dialectName} does not support vector distance metric: ${index.distance} (index "${index.name}")`);
99
+ }
100
+ clause += ` DISTANCE=${metric}`;
101
+ }
102
+ return clause;
103
+ }
104
+ /** The reverse: selecting a `VECTOR` column raw yields that blob, so it is read back as text. */
105
+ selectFieldExpr(escapedColumn, field) {
106
+ return isVectorFieldType(field.type) ? `VEC_ToText(${escapedColumn})` : escapedColumn;
107
+ }
69
108
  }
70
- //# sourceMappingURL=mariaDialect.js.map
@@ -9,4 +9,3 @@ export declare class MariadbQuerier extends AbstractPoolQuerier<PoolConnection>
9
9
  internalStream<T>(query: string, values?: unknown[]): AsyncGenerator<Awaited<T>, void, unknown>;
10
10
  protected releaseConn(conn: PoolConnection): Promise<void>;
11
11
  }
12
- //# sourceMappingURL=mariadbQuerier.d.ts.map
@@ -28,4 +28,3 @@ export class MariadbQuerier extends AbstractPoolQuerier {
28
28
  await conn.release();
29
29
  }
30
30
  }
31
- //# sourceMappingURL=mariadbQuerier.js.map
@@ -11,4 +11,3 @@ export declare class MariadbQuerierPool extends AbstractSqlQuerierPool<MariadbQu
11
11
  end(): Promise<void>;
12
12
  }
13
13
  export {};
14
- //# sourceMappingURL=mariadbQuerierPool.d.ts.map
@@ -23,4 +23,3 @@ export class MariadbQuerierPool extends AbstractSqlQuerierPool {
23
23
  await this.pool.end();
24
24
  }
25
25
  }
26
- //# sourceMappingURL=mariadbQuerierPool.js.map
@@ -6,4 +6,3 @@ import type { Querier, QuerierPool } from '../type/index.js';
6
6
  * app traffic (e.g. LibSQL embedded replica: local `file:` + remote `syncUrl`).
7
7
  */
8
8
  export declare function acquireQuerierForMigrations(pool: QuerierPool): Promise<Querier>;
9
- //# sourceMappingURL=acquireQuerierForMigrations.d.ts.map
@@ -7,4 +7,3 @@
7
7
  export async function acquireQuerierForMigrations(pool) {
8
8
  return (await pool.getMigrationQuerier?.()) ?? (await pool.getQuerier());
9
9
  }
10
- //# sourceMappingURL=acquireQuerierForMigrations.js.map
@@ -3,4 +3,3 @@ import type { Config } from '../type/index.js';
3
3
  * Validates shape required for the migrations CLI (real `QuerierPool`, not config stubs).
4
4
  */
5
5
  export declare function assertCliConfig(config: unknown): asserts config is Config;
6
- //# sourceMappingURL=assertCliConfig.d.ts.map
@@ -28,4 +28,3 @@ export function assertCliConfig(config) {
28
28
  throw new TypeError('Config.pool.dialect.dialectName must be a string');
29
29
  }
30
30
  }
31
- //# sourceMappingURL=assertCliConfig.js.map
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env node
2
2
  export {};
3
- //# sourceMappingURL=bin.d.ts.map
@@ -4,4 +4,3 @@ main(process.argv.slice(2)).catch((err) => {
4
4
  console.error(err);
5
5
  process.exit(1);
6
6
  });
7
- //# sourceMappingURL=bin.js.map
@@ -76,4 +76,3 @@ export declare class ColumnBuilder implements IColumnBuilder, IForeignKeyBuilder
76
76
  */
77
77
  build(): FullColumnDefinition;
78
78
  }
79
- //# sourceMappingURL=columnBuilder.d.ts.map
@@ -156,4 +156,3 @@ export class ColumnBuilder {
156
156
  };
157
157
  }
158
158
  }
159
- //# sourceMappingURL=columnBuilder.js.map
@@ -84,4 +84,3 @@ export declare const t: {
84
84
  * Handles SqlExpression vs literal values.
85
85
  */
86
86
  export declare function formatDefaultValue(value: unknown): string;
87
- //# sourceMappingURL=expressions.d.ts.map
@@ -147,4 +147,3 @@ export function formatDefaultValue(value) {
147
147
  }
148
148
  return String(value);
149
149
  }
150
- //# sourceMappingURL=expressions.js.map
@@ -3,4 +3,3 @@ export * from './expressions.js';
3
3
  export * from './migrationBuilder.js';
4
4
  export * from './tableBuilder.js';
5
5
  export * from './types.js';
6
- //# sourceMappingURL=index.d.ts.map
@@ -3,4 +3,3 @@ export * from './expressions.js';
3
3
  export * from './migrationBuilder.js';
4
4
  export * from './tableBuilder.js';
5
5
  export * from './types.js';
6
- //# sourceMappingURL=index.js.map
@@ -6,9 +6,9 @@
6
6
  * - MigrationBuilder: Execute DDL operations (for integration tests/runtime)
7
7
  */
8
8
  import type { ForeignKeyAction } from '../../schema/types.js';
9
- import type { NamingStrategy } from '../../type/namingStrategy.js';
9
+ import type { IndexColumnInput, IndexOptions } from '../../type/index.js';
10
10
  import type { SqlQuerier } from '../../type/querier.js';
11
- import type { AnyMigrationOperation, IAlterTableBuilder, IColumnBuilder, IMigrationBuilder, ITableBuilder } from './types.js';
11
+ import type { AnyMigrationOperation, IAlterTableBuilder, IColumnBuilder, IColumnFactory, IMigrationBuilder, ITableBuilder } from './types.js';
12
12
  /**
13
13
  * Records migration operations without executing them.
14
14
  * Use for migration code generation and dry-run scenarios.
@@ -22,15 +22,11 @@ export declare class OperationRecorder implements IMigrationBuilder {
22
22
  }): Promise<void>;
23
23
  renameTable(oldName: string, newName: string): Promise<void>;
24
24
  alterTable(name: string, callback: (table: IAlterTableBuilder) => void): Promise<void>;
25
- addColumn(tableName: string, columnName: string, callback: (column: IColumnBuilder) => void): Promise<void>;
25
+ addColumn(tableName: string, callback: (columns: IColumnFactory) => IColumnBuilder): Promise<void>;
26
26
  dropColumn(tableName: string, columnName: string): Promise<void>;
27
- alterColumn(tableName: string, columnName: string, callback: (column: IColumnBuilder) => void): Promise<void>;
27
+ alterColumn(tableName: string, callback: (columns: IColumnFactory) => IColumnBuilder): Promise<void>;
28
28
  renameColumn(tableName: string, oldName: string, newName: string): Promise<void>;
29
- createIndex(tableName: string, columns: string[], options?: {
30
- name?: string;
31
- unique?: boolean;
32
- where?: string;
33
- }): Promise<void>;
29
+ createIndex(tableName: string, columns: readonly IndexColumnInput[], options?: IndexOptions): Promise<void>;
34
30
  dropIndex(tableName: string, indexName: string): Promise<void>;
35
31
  addForeignKey(tableName: string, columns: string[], target: {
36
32
  table: string;
@@ -45,13 +41,6 @@ export declare class OperationRecorder implements IMigrationBuilder {
45
41
  getOperations(): AnyMigrationOperation[];
46
42
  recordOperationSync(operation: AnyMigrationOperation): void;
47
43
  }
48
- /**
49
- * Options for the migration builder.
50
- */
51
- export interface MigrationBuilderOptions {
52
- /** Custom naming strategy for generated SQL */
53
- namingStrategy?: NamingStrategy;
54
- }
55
44
  /**
56
45
  * Executes DDL operations via a SQL querier.
57
46
  * Use for integration tests and runtime schema management.
@@ -70,7 +59,7 @@ export interface MigrationBuilderOptions {
70
59
  export declare class MigrationBuilder extends OperationRecorder {
71
60
  private readonly querier;
72
61
  private readonly sqlGenerator;
73
- constructor(querier: SqlQuerier, options?: MigrationBuilderOptions);
62
+ constructor(querier: SqlQuerier);
74
63
  recordOperationSync(operation: AnyMigrationOperation): void;
75
64
  raw(sql: string): Promise<void>;
76
65
  createTable(name: string, callback: (table: ITableBuilder) => void): Promise<void>;
@@ -79,15 +68,11 @@ export declare class MigrationBuilder extends OperationRecorder {
79
68
  cascade?: boolean;
80
69
  }): Promise<void>;
81
70
  renameTable(oldName: string, newName: string): Promise<void>;
82
- addColumn(tableName: string, columnName: string, callback: (column: IColumnBuilder) => void): Promise<void>;
71
+ addColumn(tableName: string, callback: (columns: IColumnFactory) => IColumnBuilder): Promise<void>;
83
72
  dropColumn(tableName: string, columnName: string): Promise<void>;
84
- alterColumn(tableName: string, columnName: string, callback: (column: IColumnBuilder) => void): Promise<void>;
73
+ alterColumn(tableName: string, callback: (columns: IColumnFactory) => IColumnBuilder): Promise<void>;
85
74
  renameColumn(tableName: string, oldName: string, newName: string): Promise<void>;
86
- createIndex(tableName: string, columns: string[], options?: {
87
- name?: string;
88
- unique?: boolean;
89
- where?: string;
90
- }): Promise<void>;
75
+ createIndex(tableName: string, columns: readonly IndexColumnInput[], options?: IndexOptions): Promise<void>;
91
76
  dropIndex(tableName: string, indexName: string): Promise<void>;
92
77
  addForeignKey(tableName: string, columns: string[], target: {
93
78
  table: string;
@@ -102,9 +87,3 @@ export declare class MigrationBuilder extends OperationRecorder {
102
87
  private execute;
103
88
  private operationToSql;
104
89
  }
105
- /**
106
- * Create an operation recorder for dry-run (recording only).
107
- * @deprecated Use `new OperationRecorder()` directly
108
- */
109
- export declare function createDryRunBuilder(): OperationRecorder;
110
- //# sourceMappingURL=migrationBuilder.d.ts.map
@@ -5,14 +5,41 @@
5
5
  * - OperationRecorder: Record operations only (for code generation)
6
6
  * - MigrationBuilder: Execute DDL operations (for integration tests/runtime)
7
7
  */
8
+ import { normalizeIndexColumn } from '../../util/index.js';
8
9
  import { createSchemaGenerator } from '../schemaGenerator.js';
9
- import { ColumnBuilder } from './columnBuilder.js';
10
- import { splitSqlStatementsOnSemicolons } from './splitSqlStatements.js';
10
+ import { splitSqlStatements } from './splitSqlStatements.js';
11
11
  import { TableBuilder } from './tableBuilder.js';
12
12
  /**
13
13
  * Builder for altering a table.
14
14
  * Delegates to parent builder for operation recording.
15
15
  */
16
+ /**
17
+ * One `createIndex` operation. Shared because the alter-table builder, the recorder and the
18
+ * executing builder all record the same thing, and an entry left unnormalized reaches the generator
19
+ * as a column literally named `[object Object]`.
20
+ */
21
+ function createIndexOperation(tableName, columns, options = {}) {
22
+ const { name, unique, ...index } = options;
23
+ const entries = columns.map(normalizeIndexColumn);
24
+ return {
25
+ type: 'createIndex',
26
+ tableName,
27
+ index: {
28
+ ...index,
29
+ name: name ?? `idx_${tableName}_${entries.map((entry) => entry.column).join('_')}`,
30
+ columns: entries,
31
+ unique: unique ?? false,
32
+ },
33
+ };
34
+ }
35
+ /**
36
+ * Declare one column through the same vocabulary `createTable` uses. A throwaway {@link TableBuilder}
37
+ * is that vocabulary: `addColumn`/`alterColumn` used to take a bare {@link IColumnBuilder}, which
38
+ * cannot express a type, so every column they recorded was hard-coded `VARCHAR`.
39
+ */
40
+ function buildOneColumn(callback) {
41
+ return callback(new TableBuilder('')).build();
42
+ }
16
43
  class AlterTableBuilder {
17
44
  tableName;
18
45
  parentBuilder;
@@ -20,13 +47,11 @@ class AlterTableBuilder {
20
47
  this.tableName = tableName;
21
48
  this.parentBuilder = parentBuilder;
22
49
  }
23
- addColumn(name, callback) {
24
- const builder = new ColumnBuilder(name, { category: 'string' });
25
- callback(builder);
50
+ addColumn(callback) {
26
51
  this.parentBuilder.recordOperationSync({
27
52
  type: 'addColumn',
28
53
  tableName: this.tableName,
29
- column: builder.build(),
54
+ column: buildOneColumn(callback),
30
55
  });
31
56
  return this;
32
57
  }
@@ -47,28 +72,18 @@ class AlterTableBuilder {
47
72
  });
48
73
  return this;
49
74
  }
50
- alterColumn(name, callback) {
51
- const builder = new ColumnBuilder(name, { category: 'string' });
52
- callback(builder);
75
+ alterColumn(callback) {
76
+ const column = buildOneColumn(callback);
53
77
  this.parentBuilder.recordOperationSync({
54
78
  type: 'alterColumn',
55
79
  tableName: this.tableName,
56
- columnName: name,
57
- changes: builder.build(),
80
+ columnName: column.name,
81
+ changes: column,
58
82
  });
59
83
  return this;
60
84
  }
61
85
  addIndex(columns, options) {
62
- const indexName = options?.name ?? `idx_${this.tableName}_${columns.join('_')}`;
63
- this.parentBuilder.recordOperationSync({
64
- type: 'createIndex',
65
- tableName: this.tableName,
66
- index: {
67
- name: indexName,
68
- columns,
69
- unique: options?.unique ?? false,
70
- },
71
- });
86
+ this.parentBuilder.recordOperationSync(createIndexOperation(this.tableName, columns, options));
72
87
  return this;
73
88
  }
74
89
  dropIndex(name) {
@@ -142,13 +157,11 @@ export class OperationRecorder {
142
157
  // ============================================================================
143
158
  // Column Operations
144
159
  // ============================================================================
145
- async addColumn(tableName, columnName, callback) {
146
- const builder = new ColumnBuilder(columnName, { category: 'string' });
147
- callback(builder);
160
+ async addColumn(tableName, callback) {
148
161
  this.recordOperationSync({
149
162
  type: 'addColumn',
150
163
  tableName,
151
- column: builder.build(),
164
+ column: buildOneColumn(callback),
152
165
  });
153
166
  }
154
167
  async dropColumn(tableName, columnName) {
@@ -158,14 +171,13 @@ export class OperationRecorder {
158
171
  columnName,
159
172
  });
160
173
  }
161
- async alterColumn(tableName, columnName, callback) {
162
- const builder = new ColumnBuilder(columnName, { category: 'string' });
163
- callback(builder);
174
+ async alterColumn(tableName, callback) {
175
+ const column = buildOneColumn(callback);
164
176
  this.recordOperationSync({
165
177
  type: 'alterColumn',
166
178
  tableName,
167
- columnName,
168
- changes: builder.build(),
179
+ columnName: column.name,
180
+ changes: column,
169
181
  });
170
182
  }
171
183
  async renameColumn(tableName, oldName, newName) {
@@ -179,18 +191,8 @@ export class OperationRecorder {
179
191
  // ============================================================================
180
192
  // Index Operations
181
193
  // ============================================================================
182
- async createIndex(tableName, columns, options = {}) {
183
- const indexName = options.name ?? `idx_${tableName}_${columns.join('_')}`;
184
- this.recordOperationSync({
185
- type: 'createIndex',
186
- tableName,
187
- index: {
188
- name: indexName,
189
- columns,
190
- unique: options.unique ?? false,
191
- where: options.where,
192
- },
193
- });
194
+ async createIndex(tableName, columns, options) {
195
+ this.recordOperationSync(createIndexOperation(tableName, columns, options));
194
196
  }
195
197
  async dropIndex(tableName, indexName) {
196
198
  this.recordOperationSync({
@@ -260,10 +262,10 @@ export class OperationRecorder {
260
262
  export class MigrationBuilder extends OperationRecorder {
261
263
  querier;
262
264
  sqlGenerator;
263
- constructor(querier, options = {}) {
265
+ constructor(querier) {
264
266
  super();
265
267
  this.querier = querier;
266
- const generator = createSchemaGenerator(querier.dialect, options.namingStrategy);
268
+ const generator = createSchemaGenerator(querier.dialect);
267
269
  if (!generator) {
268
270
  throw new TypeError(`Could not find a schema generator for dialect: ${querier.dialect.dialectName}`);
269
271
  }
@@ -314,13 +316,11 @@ export class MigrationBuilder extends OperationRecorder {
314
316
  this.operations.push(operation);
315
317
  await this.execute(operation);
316
318
  }
317
- async addColumn(tableName, columnName, callback) {
318
- const builder = new ColumnBuilder(columnName, { category: 'string' });
319
- callback(builder);
319
+ async addColumn(tableName, callback) {
320
320
  const operation = {
321
321
  type: 'addColumn',
322
322
  tableName,
323
- column: builder.build(),
323
+ column: buildOneColumn(callback),
324
324
  };
325
325
  this.operations.push(operation);
326
326
  await this.execute(operation);
@@ -334,14 +334,13 @@ export class MigrationBuilder extends OperationRecorder {
334
334
  this.operations.push(operation);
335
335
  await this.execute(operation);
336
336
  }
337
- async alterColumn(tableName, columnName, callback) {
338
- const builder = new ColumnBuilder(columnName, { category: 'string' });
339
- callback(builder);
337
+ async alterColumn(tableName, callback) {
338
+ const column = buildOneColumn(callback);
340
339
  const operation = {
341
340
  type: 'alterColumn',
342
341
  tableName,
343
- columnName,
344
- changes: builder.build(),
342
+ columnName: column.name,
343
+ changes: column,
345
344
  };
346
345
  this.operations.push(operation);
347
346
  await this.execute(operation);
@@ -356,18 +355,8 @@ export class MigrationBuilder extends OperationRecorder {
356
355
  this.operations.push(operation);
357
356
  await this.execute(operation);
358
357
  }
359
- async createIndex(tableName, columns, options = {}) {
360
- const indexName = options.name ?? `idx_${tableName}_${columns.join('_')}`;
361
- const operation = {
362
- type: 'createIndex',
363
- tableName,
364
- index: {
365
- name: indexName,
366
- columns,
367
- unique: options.unique ?? false,
368
- where: options.where,
369
- },
370
- };
358
+ async createIndex(tableName, columns, options) {
359
+ const operation = createIndexOperation(tableName, columns, options);
371
360
  this.operations.push(operation);
372
361
  await this.execute(operation);
373
362
  }
@@ -420,7 +409,7 @@ export class MigrationBuilder extends OperationRecorder {
420
409
  }
421
410
  const sql = this.operationToSql(operation);
422
411
  if (sql) {
423
- for (const statement of splitSqlStatementsOnSemicolons(sql)) {
412
+ for (const statement of splitSqlStatements(sql)) {
424
413
  await this.querier.run(statement);
425
414
  }
426
415
  }
@@ -431,7 +420,7 @@ export class MigrationBuilder extends OperationRecorder {
431
420
  // One line per statement in preview; execute() runs each separately (#87).
432
421
  return this.getCreateTableStatements(operation).join('\n');
433
422
  case 'dropTable':
434
- return this.sqlGenerator.generateDropTableSql(operation.tableName, {
423
+ return this.sqlGenerator.generateDropTable(operation.tableName, {
435
424
  ifExists: operation.ifExists,
436
425
  cascade: operation.cascade,
437
426
  });
@@ -446,9 +435,9 @@ export class MigrationBuilder extends OperationRecorder {
446
435
  case 'alterColumn':
447
436
  return this.sqlGenerator.generateAlterColumnSql(operation.tableName, operation.columnName, operation.changes);
448
437
  case 'createIndex':
449
- return this.sqlGenerator.generateCreateIndexSql(operation.tableName, operation.index);
438
+ return this.sqlGenerator.generateCreateIndex(operation.tableName, operation.index);
450
439
  case 'dropIndex':
451
- return this.sqlGenerator.generateDropIndexSql(operation.tableName, operation.indexName);
440
+ return this.sqlGenerator.generateDropIndex(operation.tableName, operation.indexName);
452
441
  case 'addForeignKey':
453
442
  return this.sqlGenerator.generateAddForeignKeySql(operation.tableName, operation.foreignKey);
454
443
  case 'dropForeignKey':
@@ -460,11 +449,3 @@ export class MigrationBuilder extends OperationRecorder {
460
449
  }
461
450
  }
462
451
  }
463
- /**
464
- * Create an operation recorder for dry-run (recording only).
465
- * @deprecated Use `new OperationRecorder()` directly
466
- */
467
- export function createDryRunBuilder() {
468
- return new OperationRecorder();
469
- }
470
- //# sourceMappingURL=migrationBuilder.js.map