@warlock.js/cascade 4.0.92 → 4.0.94

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 (269) hide show
  1. package/cjs/contracts/database-driver.contract.d.ts +118 -0
  2. package/cjs/contracts/database-driver.contract.d.ts.map +1 -1
  3. package/cjs/contracts/migration-driver.contract.d.ts +14 -0
  4. package/cjs/contracts/migration-driver.contract.d.ts.map +1 -1
  5. package/cjs/contracts/query-builder.contract.d.ts +410 -1
  6. package/cjs/contracts/query-builder.contract.d.ts.map +1 -1
  7. package/cjs/data-source/data-source-registry.d.ts +4 -0
  8. package/cjs/data-source/data-source-registry.d.ts.map +1 -1
  9. package/cjs/data-source/data-source-registry.js +7 -0
  10. package/cjs/data-source/data-source-registry.js.map +1 -1
  11. package/cjs/drivers/mongodb/mongodb-blueprint.d.ts.map +1 -0
  12. package/cjs/drivers/mongodb/mongodb-blueprint.js.map +1 -0
  13. package/{esm/drivers/mongo → cjs/drivers/mongodb}/mongodb-driver.d.ts +49 -0
  14. package/cjs/drivers/mongodb/mongodb-driver.d.ts.map +1 -0
  15. package/cjs/drivers/{mongo → mongodb}/mongodb-driver.js +125 -8
  16. package/cjs/drivers/mongodb/mongodb-driver.js.map +1 -0
  17. package/cjs/drivers/{mongo/mongo-id-generator.d.ts → mongodb/mongodb-id-generator.d.ts} +1 -1
  18. package/cjs/drivers/mongodb/mongodb-id-generator.d.ts.map +1 -0
  19. package/cjs/drivers/{mongo/mongo-id-generator.js → mongodb/mongodb-id-generator.js} +1 -1
  20. package/cjs/drivers/mongodb/mongodb-id-generator.js.map +1 -0
  21. package/cjs/drivers/{mongo/mongo-migration-driver.d.ts → mongodb/mongodb-migration-driver.d.ts} +10 -1
  22. package/cjs/drivers/mongodb/mongodb-migration-driver.d.ts.map +1 -0
  23. package/cjs/drivers/{mongo/mongo-migration-driver.js → mongodb/mongodb-migration-driver.js} +18 -1
  24. package/cjs/drivers/mongodb/mongodb-migration-driver.js.map +1 -0
  25. package/cjs/drivers/{mongo/mongo-query-builder.d.ts → mongodb/mongodb-query-builder.d.ts} +172 -4
  26. package/cjs/drivers/mongodb/mongodb-query-builder.d.ts.map +1 -0
  27. package/cjs/drivers/{mongo/mongo-query-builder.js → mongodb/mongodb-query-builder.js} +220 -14
  28. package/cjs/drivers/mongodb/mongodb-query-builder.js.map +1 -0
  29. package/{esm/drivers/mongo/mongo-query-operations.d.ts → cjs/drivers/mongodb/mongodb-query-operations.d.ts} +16 -16
  30. package/cjs/drivers/mongodb/mongodb-query-operations.d.ts.map +1 -0
  31. package/cjs/drivers/{mongo/mongo-query-operations.js → mongodb/mongodb-query-operations.js} +22 -22
  32. package/cjs/drivers/mongodb/mongodb-query-operations.js.map +1 -0
  33. package/cjs/drivers/{mongo/mongo-query-parser.d.ts → mongodb/mongodb-query-parser.d.ts} +2 -2
  34. package/cjs/drivers/mongodb/mongodb-query-parser.d.ts.map +1 -0
  35. package/cjs/drivers/{mongo/mongo-query-parser.js → mongodb/mongodb-query-parser.js} +87 -87
  36. package/cjs/drivers/mongodb/mongodb-query-parser.js.map +1 -0
  37. package/cjs/drivers/{mongo/mongo-sync-adapter.d.ts → mongodb/mongodb-sync-adapter.d.ts} +2 -2
  38. package/cjs/drivers/mongodb/mongodb-sync-adapter.d.ts.map +1 -0
  39. package/cjs/drivers/{mongo/mongo-sync-adapter.js → mongodb/mongodb-sync-adapter.js} +2 -2
  40. package/cjs/drivers/mongodb/mongodb-sync-adapter.js.map +1 -0
  41. package/{esm/drivers/mongo → cjs/drivers/mongodb}/types.d.ts +2 -2
  42. package/cjs/drivers/mongodb/types.d.ts.map +1 -0
  43. package/cjs/drivers/postgres/index.d.ts +16 -0
  44. package/cjs/drivers/postgres/index.d.ts.map +1 -0
  45. package/cjs/drivers/postgres/postgres-blueprint.d.ts +64 -0
  46. package/cjs/drivers/postgres/postgres-blueprint.d.ts.map +1 -0
  47. package/cjs/drivers/postgres/postgres-blueprint.js +121 -0
  48. package/cjs/drivers/postgres/postgres-blueprint.js.map +1 -0
  49. package/cjs/drivers/postgres/postgres-dialect.d.ts +135 -0
  50. package/cjs/drivers/postgres/postgres-dialect.d.ts.map +1 -0
  51. package/cjs/drivers/postgres/postgres-dialect.js +245 -0
  52. package/cjs/drivers/postgres/postgres-dialect.js.map +1 -0
  53. package/cjs/drivers/postgres/postgres-driver.d.ts +360 -0
  54. package/cjs/drivers/postgres/postgres-driver.d.ts.map +1 -0
  55. package/cjs/drivers/postgres/postgres-driver.js +763 -0
  56. package/cjs/drivers/postgres/postgres-driver.js.map +1 -0
  57. package/cjs/drivers/postgres/postgres-migration-driver.d.ts +297 -0
  58. package/cjs/drivers/postgres/postgres-migration-driver.d.ts.map +1 -0
  59. package/cjs/drivers/postgres/postgres-migration-driver.js +578 -0
  60. package/cjs/drivers/postgres/postgres-migration-driver.js.map +1 -0
  61. package/cjs/drivers/postgres/postgres-query-builder.d.ts +824 -0
  62. package/cjs/drivers/postgres/postgres-query-builder.d.ts.map +1 -0
  63. package/cjs/drivers/postgres/postgres-query-builder.js +1800 -0
  64. package/cjs/drivers/postgres/postgres-query-builder.js.map +1 -0
  65. package/cjs/drivers/postgres/postgres-query-parser.d.ts +308 -0
  66. package/cjs/drivers/postgres/postgres-query-parser.d.ts.map +1 -0
  67. package/cjs/drivers/postgres/postgres-query-parser.js +706 -0
  68. package/cjs/drivers/postgres/postgres-query-parser.js.map +1 -0
  69. package/cjs/drivers/postgres/postgres-sync-adapter.d.ts +83 -0
  70. package/cjs/drivers/postgres/postgres-sync-adapter.d.ts.map +1 -0
  71. package/cjs/drivers/postgres/postgres-sync-adapter.js +197 -0
  72. package/cjs/drivers/postgres/postgres-sync-adapter.js.map +1 -0
  73. package/cjs/drivers/postgres/types.d.ts +142 -0
  74. package/cjs/drivers/postgres/types.d.ts.map +1 -0
  75. package/cjs/drivers/sql/index.d.ts +10 -0
  76. package/cjs/drivers/sql/index.d.ts.map +1 -0
  77. package/cjs/drivers/sql/sql-dialect.contract.d.ts +203 -0
  78. package/cjs/drivers/sql/sql-dialect.contract.d.ts.map +1 -0
  79. package/cjs/drivers/sql/sql-types.d.ts +202 -0
  80. package/cjs/drivers/sql/sql-types.d.ts.map +1 -0
  81. package/cjs/index.d.ts +9 -6
  82. package/cjs/index.d.ts.map +1 -1
  83. package/cjs/index.js +1 -1
  84. package/cjs/migration/migration-runner.d.ts.map +1 -1
  85. package/cjs/migration/migration-runner.js +6 -0
  86. package/cjs/migration/migration-runner.js.map +1 -1
  87. package/cjs/model/model.d.ts +236 -1
  88. package/cjs/model/model.d.ts.map +1 -1
  89. package/cjs/model/model.js +203 -4
  90. package/cjs/model/model.js.map +1 -1
  91. package/cjs/relations/helpers.d.ts +156 -0
  92. package/cjs/relations/helpers.d.ts.map +1 -0
  93. package/cjs/relations/helpers.js +197 -0
  94. package/cjs/relations/helpers.js.map +1 -0
  95. package/cjs/relations/index.d.ts +33 -0
  96. package/cjs/relations/index.d.ts.map +1 -0
  97. package/cjs/relations/pivot-operations.d.ts +160 -0
  98. package/cjs/relations/pivot-operations.d.ts.map +1 -0
  99. package/cjs/relations/pivot-operations.js +293 -0
  100. package/cjs/relations/pivot-operations.js.map +1 -0
  101. package/cjs/relations/relation-loader.d.ts +194 -0
  102. package/cjs/relations/relation-loader.d.ts.map +1 -0
  103. package/cjs/relations/relation-loader.js +466 -0
  104. package/cjs/relations/relation-loader.js.map +1 -0
  105. package/cjs/relations/types.d.ts +280 -0
  106. package/cjs/relations/types.d.ts.map +1 -0
  107. package/cjs/sync/model-sync-operation.js +1 -1
  108. package/cjs/sync/model-sync-operation.js.map +1 -1
  109. package/cjs/utils/connect-to-database.d.ts.map +1 -1
  110. package/cjs/utils/connect-to-database.js +15 -3
  111. package/cjs/utils/connect-to-database.js.map +1 -1
  112. package/cjs/utils/define-model.d.ts +51 -29
  113. package/cjs/utils/define-model.d.ts.map +1 -1
  114. package/cjs/validation/rules/database-model-rule.js +1 -1
  115. package/cjs/validation/rules/database-model-rule.js.map +1 -1
  116. package/esm/contracts/database-driver.contract.d.ts +118 -0
  117. package/esm/contracts/database-driver.contract.d.ts.map +1 -1
  118. package/esm/contracts/migration-driver.contract.d.ts +14 -0
  119. package/esm/contracts/migration-driver.contract.d.ts.map +1 -1
  120. package/esm/contracts/query-builder.contract.d.ts +410 -1
  121. package/esm/contracts/query-builder.contract.d.ts.map +1 -1
  122. package/esm/data-source/data-source-registry.d.ts +4 -0
  123. package/esm/data-source/data-source-registry.d.ts.map +1 -1
  124. package/esm/data-source/data-source-registry.js +7 -0
  125. package/esm/data-source/data-source-registry.js.map +1 -1
  126. package/esm/drivers/mongodb/mongodb-blueprint.d.ts.map +1 -0
  127. package/esm/drivers/mongodb/mongodb-blueprint.js.map +1 -0
  128. package/{cjs/drivers/mongo → esm/drivers/mongodb}/mongodb-driver.d.ts +49 -0
  129. package/esm/drivers/mongodb/mongodb-driver.d.ts.map +1 -0
  130. package/esm/drivers/{mongo → mongodb}/mongodb-driver.js +121 -4
  131. package/esm/drivers/mongodb/mongodb-driver.js.map +1 -0
  132. package/esm/drivers/{mongo/mongo-id-generator.d.ts → mongodb/mongodb-id-generator.d.ts} +1 -1
  133. package/esm/drivers/mongodb/mongodb-id-generator.d.ts.map +1 -0
  134. package/esm/drivers/{mongo/mongo-id-generator.js → mongodb/mongodb-id-generator.js} +1 -1
  135. package/esm/drivers/mongodb/mongodb-id-generator.js.map +1 -0
  136. package/esm/drivers/{mongo/mongo-migration-driver.d.ts → mongodb/mongodb-migration-driver.d.ts} +10 -1
  137. package/esm/drivers/mongodb/mongodb-migration-driver.d.ts.map +1 -0
  138. package/esm/drivers/{mongo/mongo-migration-driver.js → mongodb/mongodb-migration-driver.js} +18 -1
  139. package/esm/drivers/mongodb/mongodb-migration-driver.js.map +1 -0
  140. package/esm/drivers/{mongo/mongo-query-builder.d.ts → mongodb/mongodb-query-builder.d.ts} +172 -4
  141. package/esm/drivers/mongodb/mongodb-query-builder.d.ts.map +1 -0
  142. package/esm/drivers/{mongo/mongo-query-builder.js → mongodb/mongodb-query-builder.js} +218 -12
  143. package/esm/drivers/mongodb/mongodb-query-builder.js.map +1 -0
  144. package/{cjs/drivers/mongo/mongo-query-operations.d.ts → esm/drivers/mongodb/mongodb-query-operations.d.ts} +16 -16
  145. package/esm/drivers/mongodb/mongodb-query-operations.d.ts.map +1 -0
  146. package/esm/drivers/{mongo/mongo-query-operations.js → mongodb/mongodb-query-operations.js} +22 -22
  147. package/esm/drivers/mongodb/mongodb-query-operations.js.map +1 -0
  148. package/esm/drivers/{mongo/mongo-query-parser.d.ts → mongodb/mongodb-query-parser.d.ts} +2 -2
  149. package/esm/drivers/mongodb/mongodb-query-parser.d.ts.map +1 -0
  150. package/esm/drivers/{mongo/mongo-query-parser.js → mongodb/mongodb-query-parser.js} +87 -87
  151. package/esm/drivers/mongodb/mongodb-query-parser.js.map +1 -0
  152. package/esm/drivers/{mongo/mongo-sync-adapter.d.ts → mongodb/mongodb-sync-adapter.d.ts} +2 -2
  153. package/esm/drivers/mongodb/mongodb-sync-adapter.d.ts.map +1 -0
  154. package/esm/drivers/{mongo/mongo-sync-adapter.js → mongodb/mongodb-sync-adapter.js} +2 -2
  155. package/esm/drivers/mongodb/mongodb-sync-adapter.js.map +1 -0
  156. package/{cjs/drivers/mongo → esm/drivers/mongodb}/types.d.ts +2 -2
  157. package/esm/drivers/mongodb/types.d.ts.map +1 -0
  158. package/esm/drivers/postgres/index.d.ts +16 -0
  159. package/esm/drivers/postgres/index.d.ts.map +1 -0
  160. package/esm/drivers/postgres/postgres-blueprint.d.ts +64 -0
  161. package/esm/drivers/postgres/postgres-blueprint.d.ts.map +1 -0
  162. package/esm/drivers/postgres/postgres-blueprint.js +121 -0
  163. package/esm/drivers/postgres/postgres-blueprint.js.map +1 -0
  164. package/esm/drivers/postgres/postgres-dialect.d.ts +135 -0
  165. package/esm/drivers/postgres/postgres-dialect.d.ts.map +1 -0
  166. package/esm/drivers/postgres/postgres-dialect.js +245 -0
  167. package/esm/drivers/postgres/postgres-dialect.js.map +1 -0
  168. package/esm/drivers/postgres/postgres-driver.d.ts +360 -0
  169. package/esm/drivers/postgres/postgres-driver.d.ts.map +1 -0
  170. package/esm/drivers/postgres/postgres-driver.js +763 -0
  171. package/esm/drivers/postgres/postgres-driver.js.map +1 -0
  172. package/esm/drivers/postgres/postgres-migration-driver.d.ts +297 -0
  173. package/esm/drivers/postgres/postgres-migration-driver.d.ts.map +1 -0
  174. package/esm/drivers/postgres/postgres-migration-driver.js +578 -0
  175. package/esm/drivers/postgres/postgres-migration-driver.js.map +1 -0
  176. package/esm/drivers/postgres/postgres-query-builder.d.ts +824 -0
  177. package/esm/drivers/postgres/postgres-query-builder.d.ts.map +1 -0
  178. package/esm/drivers/postgres/postgres-query-builder.js +1800 -0
  179. package/esm/drivers/postgres/postgres-query-builder.js.map +1 -0
  180. package/esm/drivers/postgres/postgres-query-parser.d.ts +308 -0
  181. package/esm/drivers/postgres/postgres-query-parser.d.ts.map +1 -0
  182. package/esm/drivers/postgres/postgres-query-parser.js +706 -0
  183. package/esm/drivers/postgres/postgres-query-parser.js.map +1 -0
  184. package/esm/drivers/postgres/postgres-sync-adapter.d.ts +83 -0
  185. package/esm/drivers/postgres/postgres-sync-adapter.d.ts.map +1 -0
  186. package/esm/drivers/postgres/postgres-sync-adapter.js +197 -0
  187. package/esm/drivers/postgres/postgres-sync-adapter.js.map +1 -0
  188. package/esm/drivers/postgres/types.d.ts +142 -0
  189. package/esm/drivers/postgres/types.d.ts.map +1 -0
  190. package/esm/drivers/sql/index.d.ts +10 -0
  191. package/esm/drivers/sql/index.d.ts.map +1 -0
  192. package/esm/drivers/sql/sql-dialect.contract.d.ts +203 -0
  193. package/esm/drivers/sql/sql-dialect.contract.d.ts.map +1 -0
  194. package/esm/drivers/sql/sql-types.d.ts +202 -0
  195. package/esm/drivers/sql/sql-types.d.ts.map +1 -0
  196. package/esm/index.d.ts +9 -6
  197. package/esm/index.d.ts.map +1 -1
  198. package/esm/index.js +1 -1
  199. package/esm/migration/migration-runner.d.ts.map +1 -1
  200. package/esm/migration/migration-runner.js +6 -0
  201. package/esm/migration/migration-runner.js.map +1 -1
  202. package/esm/model/model.d.ts +236 -1
  203. package/esm/model/model.d.ts.map +1 -1
  204. package/esm/model/model.js +203 -4
  205. package/esm/model/model.js.map +1 -1
  206. package/esm/relations/helpers.d.ts +156 -0
  207. package/esm/relations/helpers.d.ts.map +1 -0
  208. package/esm/relations/helpers.js +197 -0
  209. package/esm/relations/helpers.js.map +1 -0
  210. package/esm/relations/index.d.ts +33 -0
  211. package/esm/relations/index.d.ts.map +1 -0
  212. package/esm/relations/pivot-operations.d.ts +160 -0
  213. package/esm/relations/pivot-operations.d.ts.map +1 -0
  214. package/esm/relations/pivot-operations.js +293 -0
  215. package/esm/relations/pivot-operations.js.map +1 -0
  216. package/esm/relations/relation-loader.d.ts +194 -0
  217. package/esm/relations/relation-loader.d.ts.map +1 -0
  218. package/esm/relations/relation-loader.js +466 -0
  219. package/esm/relations/relation-loader.js.map +1 -0
  220. package/esm/relations/types.d.ts +280 -0
  221. package/esm/relations/types.d.ts.map +1 -0
  222. package/esm/sync/model-sync-operation.js +1 -1
  223. package/esm/sync/model-sync-operation.js.map +1 -1
  224. package/esm/utils/connect-to-database.d.ts.map +1 -1
  225. package/esm/utils/connect-to-database.js +15 -3
  226. package/esm/utils/connect-to-database.js.map +1 -1
  227. package/esm/utils/define-model.d.ts +51 -29
  228. package/esm/utils/define-model.d.ts.map +1 -1
  229. package/esm/validation/rules/database-model-rule.js +1 -1
  230. package/esm/validation/rules/database-model-rule.js.map +1 -1
  231. package/package.json +4 -4
  232. package/cjs/drivers/mongo/mongo-id-generator.d.ts.map +0 -1
  233. package/cjs/drivers/mongo/mongo-id-generator.js.map +0 -1
  234. package/cjs/drivers/mongo/mongo-migration-driver.d.ts.map +0 -1
  235. package/cjs/drivers/mongo/mongo-migration-driver.js.map +0 -1
  236. package/cjs/drivers/mongo/mongo-query-builder.d.ts.map +0 -1
  237. package/cjs/drivers/mongo/mongo-query-builder.js.map +0 -1
  238. package/cjs/drivers/mongo/mongo-query-operations.d.ts.map +0 -1
  239. package/cjs/drivers/mongo/mongo-query-operations.js.map +0 -1
  240. package/cjs/drivers/mongo/mongo-query-parser.d.ts.map +0 -1
  241. package/cjs/drivers/mongo/mongo-query-parser.js.map +0 -1
  242. package/cjs/drivers/mongo/mongo-sync-adapter.d.ts.map +0 -1
  243. package/cjs/drivers/mongo/mongo-sync-adapter.js.map +0 -1
  244. package/cjs/drivers/mongo/mongodb-blueprint.d.ts.map +0 -1
  245. package/cjs/drivers/mongo/mongodb-blueprint.js.map +0 -1
  246. package/cjs/drivers/mongo/mongodb-driver.d.ts.map +0 -1
  247. package/cjs/drivers/mongo/mongodb-driver.js.map +0 -1
  248. package/cjs/drivers/mongo/types.d.ts.map +0 -1
  249. package/esm/drivers/mongo/mongo-id-generator.d.ts.map +0 -1
  250. package/esm/drivers/mongo/mongo-id-generator.js.map +0 -1
  251. package/esm/drivers/mongo/mongo-migration-driver.d.ts.map +0 -1
  252. package/esm/drivers/mongo/mongo-migration-driver.js.map +0 -1
  253. package/esm/drivers/mongo/mongo-query-builder.d.ts.map +0 -1
  254. package/esm/drivers/mongo/mongo-query-builder.js.map +0 -1
  255. package/esm/drivers/mongo/mongo-query-operations.d.ts.map +0 -1
  256. package/esm/drivers/mongo/mongo-query-operations.js.map +0 -1
  257. package/esm/drivers/mongo/mongo-query-parser.d.ts.map +0 -1
  258. package/esm/drivers/mongo/mongo-query-parser.js.map +0 -1
  259. package/esm/drivers/mongo/mongo-sync-adapter.d.ts.map +0 -1
  260. package/esm/drivers/mongo/mongo-sync-adapter.js.map +0 -1
  261. package/esm/drivers/mongo/mongodb-blueprint.d.ts.map +0 -1
  262. package/esm/drivers/mongo/mongodb-blueprint.js.map +0 -1
  263. package/esm/drivers/mongo/mongodb-driver.d.ts.map +0 -1
  264. package/esm/drivers/mongo/mongodb-driver.js.map +0 -1
  265. package/esm/drivers/mongo/types.d.ts.map +0 -1
  266. /package/cjs/drivers/{mongo → mongodb}/mongodb-blueprint.d.ts +0 -0
  267. /package/cjs/drivers/{mongo → mongodb}/mongodb-blueprint.js +0 -0
  268. /package/esm/drivers/{mongo → mongodb}/mongodb-blueprint.d.ts +0 -0
  269. /package/esm/drivers/{mongo → mongodb}/mongodb-blueprint.js +0 -0
@@ -0,0 +1,203 @@
1
+ /**
2
+ * SQL Dialect Contract
3
+ *
4
+ * Defines the interface for database-specific SQL syntax variations.
5
+ * Each SQL database driver implements this interface to handle
6
+ * differences in parameter placeholders, identifier quoting, and SQL syntax.
7
+ *
8
+ * @module cascade/drivers/sql
9
+ */
10
+ /**
11
+ * Contract that SQL dialects must implement to handle database-specific
12
+ * SQL syntax variations.
13
+ *
14
+ * Each SQL database (PostgreSQL, MySQL, SQLite) has subtle differences
15
+ * in how they handle parameters, identifiers, and certain SQL features.
16
+ * This interface abstracts those differences.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * class PostgresDialect implements SqlDialectContract {
21
+ * placeholder(index: number): string {
22
+ * return `$${index}`; // PostgreSQL uses $1, $2, etc.
23
+ * }
24
+ * }
25
+ *
26
+ * class MySqlDialect implements SqlDialectContract {
27
+ * placeholder(index: number): string {
28
+ * return '?'; // MySQL uses ? for all parameters
29
+ * }
30
+ * }
31
+ * ```
32
+ */
33
+ export interface SqlDialectContract {
34
+ /**
35
+ * The name of the dialect for identification purposes.
36
+ *
37
+ * @example "postgres", "mysql", "sqlite"
38
+ */
39
+ readonly name: string;
40
+ /**
41
+ * Generate a parameter placeholder for the given index.
42
+ *
43
+ * Different databases use different placeholder styles:
44
+ * - PostgreSQL: `$1`, `$2`, `$3`
45
+ * - MySQL/SQLite: `?` (positional)
46
+ *
47
+ * @param index - The 1-based parameter index
48
+ * @returns The placeholder string to use in the SQL query
49
+ *
50
+ * @example
51
+ * ```typescript
52
+ * dialect.placeholder(1); // "$1" for PostgreSQL
53
+ * dialect.placeholder(2); // "?" for MySQL
54
+ * ```
55
+ */
56
+ placeholder(index: number): string;
57
+ /**
58
+ * Quote an identifier (table name, column name) for safe use in SQL.
59
+ *
60
+ * Different databases use different quote characters:
61
+ * - PostgreSQL: `"column_name"`
62
+ * - MySQL: `` `column_name` ``
63
+ *
64
+ * This also handles escaping if the identifier contains the quote character.
65
+ *
66
+ * @param identifier - The identifier to quote
67
+ * @returns The quoted identifier safe for use in SQL
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * dialect.quoteIdentifier('user'); // '"user"' for PostgreSQL
72
+ * dialect.quoteIdentifier('order'); // '`order`' for MySQL
73
+ * ```
74
+ */
75
+ quoteIdentifier(identifier: string): string;
76
+ /**
77
+ * Convert a boolean value to the appropriate SQL literal.
78
+ *
79
+ * Different databases represent booleans differently:
80
+ * - PostgreSQL: `TRUE` / `FALSE`
81
+ * - MySQL: `1` / `0`
82
+ *
83
+ * @param value - The boolean value to convert
84
+ * @returns The SQL literal string
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * dialect.booleanLiteral(true); // "TRUE" for PostgreSQL
89
+ * dialect.booleanLiteral(false); // "0" for MySQL
90
+ * ```
91
+ */
92
+ booleanLiteral(value: boolean): string;
93
+ /**
94
+ * Whether the database supports the RETURNING clause for INSERT/UPDATE/DELETE.
95
+ *
96
+ * - PostgreSQL: `true` (supports `RETURNING *`)
97
+ * - MySQL: `false` (must use `LAST_INSERT_ID()`)
98
+ */
99
+ readonly supportsReturning: boolean;
100
+ /**
101
+ * The keyword used for upsert (insert or update) operations.
102
+ *
103
+ * - PostgreSQL: `"ON CONFLICT"`
104
+ * - MySQL: `"ON DUPLICATE KEY"`
105
+ */
106
+ readonly upsertKeyword: "ON CONFLICT" | "ON DUPLICATE KEY";
107
+ /**
108
+ * Build the LIMIT/OFFSET clause for pagination.
109
+ *
110
+ * Most databases use `LIMIT x OFFSET y`, but syntax may vary.
111
+ *
112
+ * @param limit - Maximum number of rows to return (undefined = no limit)
113
+ * @param offset - Number of rows to skip (undefined = no offset)
114
+ * @returns The SQL clause string (e.g., "LIMIT 10 OFFSET 20")
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * dialect.limitOffset(10, 20); // "LIMIT 10 OFFSET 20"
119
+ * dialect.limitOffset(10); // "LIMIT 10"
120
+ * dialect.limitOffset(undefined, 20); // "OFFSET 20"
121
+ * ```
122
+ */
123
+ limitOffset(limit?: number, offset?: number): string;
124
+ /**
125
+ * Build a JSON path extraction expression.
126
+ *
127
+ * Different databases have different JSON operators:
128
+ * - PostgreSQL: `column->>'path'` or `column->'path'`
129
+ * - MySQL: `JSON_EXTRACT(column, '$.path')`
130
+ *
131
+ * @param column - The JSON/JSONB column name
132
+ * @param path - The path to extract (dot notation)
133
+ * @returns The SQL expression for extracting the path
134
+ *
135
+ * @example
136
+ * ```typescript
137
+ * dialect.jsonExtract('data', 'user.name');
138
+ * // PostgreSQL: "data"->>'user'->>'name'
139
+ * // MySQL: JSON_EXTRACT("data", '$.user.name')
140
+ * ```
141
+ */
142
+ jsonExtract(column: string, path: string): string;
143
+ /**
144
+ * Check if a JSON column contains a value.
145
+ *
146
+ * - PostgreSQL: `column @> '{"key": "value"}'::jsonb`
147
+ * - MySQL: `JSON_CONTAINS(column, '"value"', '$.key')`
148
+ *
149
+ * @param column - The JSON/JSONB column name
150
+ * @param value - The value to check for
151
+ * @param path - Optional path within the JSON
152
+ * @returns The SQL expression
153
+ */
154
+ jsonContains(column: string, value: unknown, path?: string): string;
155
+ /**
156
+ * Build a LIKE pattern with proper escaping.
157
+ *
158
+ * @param pattern - The pattern (may include % and _ wildcards)
159
+ * @param caseInsensitive - Whether to use case-insensitive matching
160
+ * @returns Object with the SQL operator and escaped pattern
161
+ *
162
+ * @example
163
+ * ```typescript
164
+ * dialect.likePattern('%test%', true);
165
+ * // PostgreSQL: { operator: 'ILIKE', pattern: '%test%' }
166
+ * // MySQL: { operator: 'LIKE', pattern: '%test%' } (case-insensitive by default)
167
+ * ```
168
+ */
169
+ likePattern(pattern: string, caseInsensitive?: boolean): {
170
+ operator: string;
171
+ pattern: string;
172
+ };
173
+ /**
174
+ * Build an array contains expression.
175
+ *
176
+ * - PostgreSQL: `$1 = ANY(column)` or `column @> ARRAY[$1]`
177
+ * - MySQL: `JSON_CONTAINS(column, ...)` for JSON arrays
178
+ *
179
+ * @param column - The array column name
180
+ * @param paramIndex - The parameter index for the value
181
+ * @returns The SQL expression
182
+ */
183
+ arrayContains(column: string, paramIndex: number): string;
184
+ /**
185
+ * Get the SQL type name for common abstract types.
186
+ *
187
+ * @param type - The abstract type name
188
+ * @param options - Type-specific options (length, precision, scale)
189
+ * @returns The database-specific SQL type
190
+ *
191
+ * @example
192
+ * ```typescript
193
+ * dialect.getSqlType('string', { length: 255 }); // "VARCHAR(255)"
194
+ * dialect.getSqlType('json'); // "JSONB" for PostgreSQL, "JSON" for MySQL
195
+ * ```
196
+ */
197
+ getSqlType(type: string, options?: {
198
+ length?: number;
199
+ precision?: number;
200
+ scale?: number;
201
+ }): string;
202
+ }
203
+ //# sourceMappingURL=sql-dialect.contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql-dialect.contract.d.ts","sourceRoot":"","sources":["../../../src/drivers/sql/sql-dialect.contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEnC;;;;;;;;;;;;;;;;;OAiBG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5C;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IAEvC;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IAEpC;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,kBAAkB,CAAC;IAE3D;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAErD;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAElD;;;;;;;;;;OAUG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpE;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAE/F;;;;;;;;;OASG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1D;;;;;;;;;;;;OAYG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAChE,MAAM,CAAC;CACX"}
@@ -0,0 +1,202 @@
1
+ /**
2
+ * SQL Types and Definitions
3
+ *
4
+ * Shared type definitions used across SQL database drivers (PostgreSQL, MySQL, SQLite).
5
+ * These types represent common SQL operations and their parameters.
6
+ *
7
+ * @module cascade/drivers/sql
8
+ */
9
+ /**
10
+ * Result of building a SQL query with parameterized values.
11
+ *
12
+ * Contains the SQL string with placeholders and the corresponding parameter values.
13
+ * This separation prevents SQL injection by ensuring values are properly escaped.
14
+ */
15
+ export type SqlQueryResult = {
16
+ /** The SQL query string with parameter placeholders ($1, $2, etc. or ?) */
17
+ readonly sql: string;
18
+ /** The parameter values in order matching the placeholders */
19
+ readonly params: unknown[];
20
+ };
21
+ /**
22
+ * Supported SQL JOIN types.
23
+ */
24
+ export type SqlJoinType = "inner" | "left" | "right" | "full" | "cross";
25
+ /**
26
+ * SQL JOIN clause definition.
27
+ *
28
+ * Represents a JOIN between two tables with its condition.
29
+ */
30
+ export type SqlJoinClause = {
31
+ /** Type of JOIN operation */
32
+ readonly type: SqlJoinType;
33
+ /** Target table to join */
34
+ readonly table: string;
35
+ /** Optional alias for the joined table */
36
+ readonly alias?: string;
37
+ /** JOIN condition */
38
+ readonly on: {
39
+ /** Field from the left (current) table */
40
+ readonly left: string;
41
+ /** Comparison operator (usually "=") */
42
+ readonly operator: string;
43
+ /** Field from the right (joined) table */
44
+ readonly right: string;
45
+ };
46
+ /** Additional ON conditions (for complex joins) */
47
+ readonly additionalConditions?: Array<{
48
+ readonly left: string;
49
+ readonly operator: string;
50
+ readonly right: string;
51
+ }>;
52
+ };
53
+ /**
54
+ * SQL ORDER BY clause definition.
55
+ */
56
+ export type SqlOrderClause = {
57
+ /** Column to order by */
58
+ readonly column: string;
59
+ /** Sort direction */
60
+ readonly direction: "asc" | "desc";
61
+ /** Nulls position (PostgreSQL-specific) */
62
+ readonly nulls?: "first" | "last";
63
+ };
64
+ /**
65
+ * SQL GROUP BY clause definition.
66
+ */
67
+ export type SqlGroupClause = {
68
+ /** Columns to group by */
69
+ readonly columns: string[];
70
+ };
71
+ /**
72
+ * SQL HAVING clause condition.
73
+ */
74
+ export type SqlHavingClause = {
75
+ /** Aggregate function (count, sum, avg, etc.) */
76
+ readonly aggregate: string;
77
+ /** Column the aggregate operates on */
78
+ readonly column: string;
79
+ /** Comparison operator */
80
+ readonly operator: string;
81
+ /** Value to compare against */
82
+ readonly value: unknown;
83
+ };
84
+ /**
85
+ * SQL WHERE clause operation types.
86
+ */
87
+ export type SqlWhereType = "where" | "orWhere" | "whereRaw" | "orWhereRaw" | "whereNot" | "orWhereNot" | "whereExists" | "whereNotExists";
88
+ /**
89
+ * SQL WHERE clause operation.
90
+ *
91
+ * Represents a single WHERE condition with its type, field, operator, and value.
92
+ */
93
+ export type SqlWhereOperation = {
94
+ /** Type of WHERE clause (where, orWhere, whereRaw, etc.) */
95
+ readonly type: SqlWhereType;
96
+ /** Field name (for standard where clauses) */
97
+ readonly field?: string;
98
+ /** Comparison operator */
99
+ readonly operator?: string;
100
+ /** Value to compare against */
101
+ readonly value?: unknown;
102
+ /** Raw SQL expression (for whereRaw clauses) */
103
+ readonly raw?: string;
104
+ /** Parameter bindings for raw expressions */
105
+ readonly bindings?: unknown[];
106
+ /** Nested conditions (for grouped where clauses) */
107
+ readonly nested?: SqlWhereOperation[];
108
+ };
109
+ /**
110
+ * SQL SELECT clause definition.
111
+ */
112
+ export type SqlSelectClause = {
113
+ /** Column name or expression */
114
+ readonly expression: string;
115
+ /** Optional alias for the column */
116
+ readonly alias?: string;
117
+ /** Whether this is a raw expression */
118
+ readonly isRaw?: boolean;
119
+ };
120
+ /**
121
+ * Configuration for building SQL queries.
122
+ */
123
+ export type SqlQueryConfig = {
124
+ /** Target table name */
125
+ readonly table: string;
126
+ /** Table alias (optional) */
127
+ readonly alias?: string;
128
+ /** SELECT columns (empty = SELECT *) */
129
+ readonly select: SqlSelectClause[];
130
+ /** JOIN clauses */
131
+ readonly joins: SqlJoinClause[];
132
+ /** WHERE conditions */
133
+ readonly where: SqlWhereOperation[];
134
+ /** GROUP BY columns */
135
+ readonly groupBy: string[];
136
+ /** HAVING conditions */
137
+ readonly having: SqlHavingClause[];
138
+ /** ORDER BY clauses */
139
+ readonly orderBy: SqlOrderClause[];
140
+ /** LIMIT value */
141
+ readonly limit?: number;
142
+ /** OFFSET value */
143
+ readonly offset?: number;
144
+ /** DISTINCT flag */
145
+ readonly distinct?: boolean;
146
+ };
147
+ /**
148
+ * SQL INSERT operation definition.
149
+ */
150
+ export type SqlInsertOperation = {
151
+ /** Target table */
152
+ readonly table: string;
153
+ /** Column names */
154
+ readonly columns: string[];
155
+ /** Values to insert (array of arrays for multi-row insert) */
156
+ readonly values: unknown[][];
157
+ /** Whether to return the inserted rows */
158
+ readonly returning?: string[] | boolean;
159
+ /** Conflict resolution (upsert) */
160
+ readonly onConflict?: {
161
+ readonly columns: string[];
162
+ readonly action: "update" | "nothing";
163
+ readonly updateColumns?: string[];
164
+ };
165
+ };
166
+ /**
167
+ * SQL UPDATE operation definition.
168
+ */
169
+ export type SqlUpdateOperation = {
170
+ /** Target table */
171
+ readonly table: string;
172
+ /** Columns to set with their values */
173
+ readonly set: Record<string, unknown>;
174
+ /** Columns to increment */
175
+ readonly increment?: Record<string, number>;
176
+ /** Columns to set to NULL */
177
+ readonly unset?: string[];
178
+ /** WHERE conditions */
179
+ readonly where: SqlWhereOperation[];
180
+ /** Whether to return updated rows */
181
+ readonly returning?: string[] | boolean;
182
+ /** Maximum rows to update (some databases support LIMIT in UPDATE) */
183
+ readonly limit?: number;
184
+ };
185
+ /**
186
+ * SQL DELETE operation definition.
187
+ */
188
+ export type SqlDeleteOperation = {
189
+ /** Target table */
190
+ readonly table: string;
191
+ /** WHERE conditions */
192
+ readonly where: SqlWhereOperation[];
193
+ /** Whether to return deleted rows */
194
+ readonly returning?: string[] | boolean;
195
+ /** Maximum rows to delete */
196
+ readonly limit?: number;
197
+ };
198
+ /**
199
+ * Aggregate function types supported in SQL.
200
+ */
201
+ export type SqlAggregateFunction = "count" | "sum" | "avg" | "min" | "max" | "array_agg" | "string_agg" | "jsonb_agg";
202
+ //# sourceMappingURL=sql-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql-types.d.ts","sourceRoot":"","sources":["../../../src/drivers/sql/sql-types.ts"],"names":[],"mappings":"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"}
package/esm/index.d.ts CHANGED
@@ -20,12 +20,13 @@ export * from "./restorer/database-restorer";
20
20
  export * from "./types";
21
21
  export * from "./validation";
22
22
  export * from "./writer/database-writer";
23
+ export * from "./relations";
23
24
  export * from "./expressions";
24
- export * from "./drivers/mongo/mongo-id-generator";
25
- export * from "./drivers/mongo/mongo-query-builder";
26
- export * from "./drivers/mongo/mongo-sync-adapter";
27
- export * from "./drivers/mongo/mongodb-driver";
28
- export * from "./drivers/mongo/types";
25
+ export * from "./drivers/mongodb/mongodb-driver";
26
+ export * from "./drivers/mongodb/mongodb-id-generator";
27
+ export * from "./drivers/mongodb/mongodb-query-builder";
28
+ export * from "./drivers/mongodb/mongodb-sync-adapter";
29
+ export * from "./drivers/mongodb/types";
29
30
  export type { MongoClientOptions, TransactionOptions } from "mongodb";
30
31
  export { modelSync } from "./sync/model-sync";
31
32
  export { ModelSyncOperation } from "./sync/model-sync-operation";
@@ -37,5 +38,7 @@ export * from "./utils/database-writer.utils";
37
38
  export * from "./utils/define-model";
38
39
  export * from "./utils/once-connected";
39
40
  export * from "./migration";
40
- export { MongoMigrationDriver } from "./drivers/mongo/mongo-migration-driver";
41
+ export { MongoMigrationDriver } from "./drivers/mongodb/mongodb-migration-driver";
42
+ export * from "./drivers/sql";
43
+ export * from "./drivers/postgres";
41
44
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AAGvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AAGnD,cAAc,oCAAoC,CAAC;AAGnD,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AAGzC,cAAc,eAAe,CAAC;AAG9B,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AAGtC,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAGtE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EACV,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,UAAU,GACX,MAAM,cAAc,CAAC;AAGtB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AAGvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AAGnD,cAAc,oCAAoC,CAAC;AAGnD,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AAGzC,cAAc,aAAa,CAAC;AAG5B,cAAc,eAAe,CAAC;AAG9B,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yBAAyB,CAAC;AAGxC,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAGtE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EACV,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,UAAU,GACX,MAAM,cAAc,CAAC;AAGtB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAGlF,cAAc,eAAe,CAAC;AAG9B,cAAc,oBAAoB,CAAC"}
package/esm/index.js CHANGED
@@ -1 +1 @@
1
- export{databaseDataSourceContext}from'./context/database-data-source-context.js';export{databaseTransactionContext}from'./context/database-transaction-context.js';export{DataSource}from'./data-source/data-source.js';export{dataSourceRegistry}from'./data-source/data-source-registry.js';export{MissingDataSourceError}from'./errors/missing-data-source.error.js';export{DatabaseDirtyTracker}from'./database-dirty-tracker.js';export{ModelEvents,globalModelEvents}from'./events/model-events.js';export{Model}from'./model/model.js';export{RegisterModel,cleanupModelsRegistery,getAllModelsFromRegistry,getModelFromRegistry,registerModelInRegistry,removeModelFromRegistery}from'./model/register-model.js';export{DatabaseRemover}from'./remover/database-remover.js';export{DatabaseRestorer}from'./restorer/database-restorer.js';export{DatabaseWriterValidationError}from'./validation/database-writer-validation-error.js';import'./validation/database-seal-plugins.js';export{DatabaseWriter}from'./writer/database-writer.js';export{$agg,isAggregateExpression}from'./expressions/aggregate-expressions.js';export{MongoIdGenerator}from'./drivers/mongo/mongo-id-generator.js';export{MongoQueryBuilder}from'./drivers/mongo/mongo-query-builder.js';export{MongoSyncAdapter}from'./drivers/mongo/mongo-sync-adapter.js';export{MongoDbDriver}from'./drivers/mongo/mongodb-driver.js';export{modelSync}from'./sync/model-sync.js';export{ModelSyncOperation}from'./sync/model-sync-operation.js';export{DEFAULT_MAX_SYNC_DEPTH,SyncContextManager}from'./sync/sync-context.js';export{SyncManager}from'./sync/sync-manager.js';export{connectToDatabase}from'./utils/connect-to-database.js';export{useModelTransformer}from'./utils/database-writer.utils.js';export{defineModel}from'./utils/define-model.js';export{onceConnected,onceDisconnected}from'./utils/once-connected.js';export{ColumnBuilder}from'./migration/column-builder.js';export{ForeignKeyBuilder}from'./migration/foreign-key-builder.js';export{Migration,migrate}from'./migration/migration.js';export{MigrationRunner,migrationRunner}from'./migration/migration-runner.js';export{MongoMigrationDriver}from'./drivers/mongo/mongo-migration-driver.js';//# sourceMappingURL=index.js.map
1
+ export{databaseDataSourceContext}from'./context/database-data-source-context.js';export{databaseTransactionContext}from'./context/database-transaction-context.js';export{DataSource}from'./data-source/data-source.js';export{dataSourceRegistry}from'./data-source/data-source-registry.js';export{MissingDataSourceError}from'./errors/missing-data-source.error.js';export{DatabaseDirtyTracker}from'./database-dirty-tracker.js';export{ModelEvents,globalModelEvents}from'./events/model-events.js';export{Model}from'./model/model.js';export{RegisterModel,cleanupModelsRegistery,getAllModelsFromRegistry,getModelFromRegistry,registerModelInRegistry,removeModelFromRegistery}from'./model/register-model.js';export{DatabaseRemover}from'./remover/database-remover.js';export{DatabaseRestorer}from'./restorer/database-restorer.js';export{DatabaseWriterValidationError}from'./validation/database-writer-validation-error.js';import'./validation/database-seal-plugins.js';export{DatabaseWriter}from'./writer/database-writer.js';export{belongsTo,belongsToMany,hasMany,hasOne}from'./relations/helpers.js';export{RelationLoader}from'./relations/relation-loader.js';export{PivotOperations,createPivotOperations}from'./relations/pivot-operations.js';export{$agg,isAggregateExpression}from'./expressions/aggregate-expressions.js';export{MongoDbDriver}from'./drivers/mongodb/mongodb-driver.js';export{MongoIdGenerator}from'./drivers/mongodb/mongodb-id-generator.js';export{MongoQueryBuilder}from'./drivers/mongodb/mongodb-query-builder.js';export{MongoSyncAdapter}from'./drivers/mongodb/mongodb-sync-adapter.js';export{modelSync}from'./sync/model-sync.js';export{ModelSyncOperation}from'./sync/model-sync-operation.js';export{DEFAULT_MAX_SYNC_DEPTH,SyncContextManager}from'./sync/sync-context.js';export{SyncManager}from'./sync/sync-manager.js';export{connectToDatabase}from'./utils/connect-to-database.js';export{useModelTransformer}from'./utils/database-writer.utils.js';export{defineModel}from'./utils/define-model.js';export{onceConnected,onceDisconnected}from'./utils/once-connected.js';export{ColumnBuilder}from'./migration/column-builder.js';export{ForeignKeyBuilder}from'./migration/foreign-key-builder.js';export{Migration,migrate}from'./migration/migration.js';export{MigrationRunner,migrationRunner}from'./migration/migration-runner.js';export{MongoMigrationDriver}from'./drivers/mongodb/mongodb-migration-driver.js';export{PostgresBlueprint}from'./drivers/postgres/postgres-blueprint.js';export{PostgresDialect}from'./drivers/postgres/postgres-dialect.js';export{PostgresDriver}from'./drivers/postgres/postgres-driver.js';export{PostgresMigrationDriver}from'./drivers/postgres/postgres-migration-driver.js';export{PostgresQueryBuilder}from'./drivers/postgres/postgres-query-builder.js';export{PostgresQueryParser}from'./drivers/postgres/postgres-query-parser.js';export{PostgresSyncAdapter}from'./drivers/postgres/postgres-sync-adapter.js';//# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"migration-runner.d.ts","sourceRoot":"","sources":["../../src/migration/migration-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration-runner.d.ts","sourceRoot":"","sources":["../../src/migration/migration-runner.ts"],"names":[],"mappings":"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"}
@@ -404,6 +404,9 @@ class MigrationRunner {
404
404
  async getExecutedMigrations() {
405
405
  const driver = this.getDataSource().driver;
406
406
  try {
407
+ const migrationDriver = this.getMigrationDriver();
408
+ // Ensure migrations table exists
409
+ await migrationDriver.ensureMigrationsTable(this.migrationsTable);
407
410
  const queryBuilder = driver.queryBuilder(this.migrationsTable);
408
411
  return await queryBuilder.orderBy("batch", "asc").orderBy("name", "asc").get();
409
412
  }
@@ -416,6 +419,9 @@ class MigrationRunner {
416
419
  */
417
420
  async recordMigration(name, batch, createdAt) {
418
421
  const driver = this.getDataSource().driver;
422
+ const migrationDriver = this.getMigrationDriver();
423
+ // Ensure migrations table exists
424
+ await migrationDriver.ensureMigrationsTable(this.migrationsTable);
419
425
  await driver.insert(this.migrationsTable, {
420
426
  name,
421
427
  batch,
@@ -1 +1 @@
1
- {"version":3,"file":"migration-runner.js","sources":["../../src/migration/migration-runner.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration-runner.js","sources":["../../src/migration/migration-runner.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}