@warlock.js/cascade 4.0.92 → 4.0.93

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 +3 -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 +3 -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":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEhE;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,UAAU,SAAS,CAAC,GAAG;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,KAAK,cAAc,GAAG;IACpB,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,eAAe;IAC1B,4BAA4B;IAC5B,SAAgB,UAAU,EAAE,cAAc,EAAE,CAAM;IAElD,yBAAyB;IACzB,OAAO,CAAC,UAAU,CAAC,CAAa;IAEhC,8BAA8B;IAC9B,OAAO,CAAC,qBAAqB,CAAC,CAA0B;IAExD,yCAAyC;IACzC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IAEzC,gCAAgC;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC;;;;OAIG;gBAED,OAAO,GAAE;QACP,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,OAAO,CAAC,EAAE,OAAO,CAAC;KACd;IAWR;;OAEG;IACI,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAMlD;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;;;;;;;;;;;;;OAcG;IACI,QAAQ,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAgBrD;;;;;OAKG;IACI,YAAY,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI;IAOvD;;OAEG;IACI,KAAK,IAAI,IAAI;IAKpB;;OAEG;IACI,kBAAkB,IAAI,MAAM,EAAE;IAQrC;;;;;;;;;;;;OAYG;IACU,GAAG,CACd,cAAc,EAAE,cAAc,EAC9B,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,eAAe,CAAC;IAO3B;;;;;;;;;;;OAWG;IACU,QAAQ,CACnB,cAAc,EAAE,cAAc,EAC9B,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,eAAe,CAAC;IAW3B;;;;;;;;;;;;;;OAcG;IACU,MAAM,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAuC7E;;;;;OAKG;IACU,YAAY,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAInF;;;;;;OAMG;IACU,eAAe,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,eAAe,EAAE,CAAC;IAoC7B;;;;;OAKG;IACU,WAAW,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAWlF;;;;;OAKG;IACU,KAAK,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAU5E;;OAEG;IACU,MAAM,IAAI,OAAO,CAC5B,KAAK,CAAC;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,OAAO,CAAC;QAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KACtB,CAAC,CACH;IAqBD;;OAEG;YACW,YAAY;IA4E1B;;OAEG;YACW,oBAAoB;IAclC;;OAEG;YACW,uBAAuB;IAuBrC;;OAEG;IACU,qBAAqB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAWhE;;OAEG;YACW,eAAe;IAe7B;;OAEG;YACW,qBAAqB;IAKnC;;OAEG;YACW,kBAAkB;CAKjC;AAED,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
@@ -416,6 +416,9 @@ class MigrationRunner {
416
416
  */
417
417
  async recordMigration(name, batch, createdAt) {
418
418
  const driver = this.getDataSource().driver;
419
+ const migrationDriver = this.getMigrationDriver();
420
+ // Ensure migrations table exists
421
+ await migrationDriver.ensureMigrationsTable(this.migrationsTable);
419
422
  await driver.insert(this.migrationsTable, {
420
423
  name,
421
424
  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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"}