uql-orm 0.1.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 (540) hide show
  1. package/CHANGELOG.md +521 -0
  2. package/LICENSE.md +22 -0
  3. package/README.md +560 -0
  4. package/dist/browser/cc-BEf4wTUm.js +535 -0
  5. package/dist/browser/cc-BEf4wTUm.js.map +1 -0
  6. package/dist/browser/http/bus.d.ts +4 -0
  7. package/dist/browser/http/bus.d.ts.map +1 -0
  8. package/dist/browser/http/bus.js +14 -0
  9. package/dist/browser/http/bus.js.map +1 -0
  10. package/dist/browser/http/http.d.ts +7 -0
  11. package/dist/browser/http/http.d.ts.map +1 -0
  12. package/dist/browser/http/http.js +45 -0
  13. package/dist/browser/http/http.js.map +1 -0
  14. package/dist/browser/http/index.d.ts +3 -0
  15. package/dist/browser/http/index.d.ts.map +1 -0
  16. package/dist/browser/http/index.js +3 -0
  17. package/dist/browser/http/index.js.map +1 -0
  18. package/dist/browser/index.d.ts +5 -0
  19. package/dist/browser/index.d.ts.map +1 -0
  20. package/dist/browser/index.js +5 -0
  21. package/dist/browser/index.js.map +1 -0
  22. package/dist/browser/options.d.ts +5 -0
  23. package/dist/browser/options.d.ts.map +1 -0
  24. package/dist/browser/options.js +14 -0
  25. package/dist/browser/options.js.map +1 -0
  26. package/dist/browser/querier/httpQuerier.d.ts +20 -0
  27. package/dist/browser/querier/httpQuerier.d.ts.map +1 -0
  28. package/dist/browser/querier/httpQuerier.js +68 -0
  29. package/dist/browser/querier/httpQuerier.js.map +1 -0
  30. package/dist/browser/querier/index.d.ts +3 -0
  31. package/dist/browser/querier/index.d.ts.map +1 -0
  32. package/dist/browser/querier/index.js +3 -0
  33. package/dist/browser/querier/index.js.map +1 -0
  34. package/dist/browser/querier/querier.util.d.ts +3 -0
  35. package/dist/browser/querier/querier.util.d.ts.map +1 -0
  36. package/dist/browser/querier/querier.util.js +17 -0
  37. package/dist/browser/querier/querier.util.js.map +1 -0
  38. package/dist/browser/type/clientQuerier.d.ts +24 -0
  39. package/dist/browser/type/clientQuerier.d.ts.map +1 -0
  40. package/dist/browser/type/clientQuerier.js +2 -0
  41. package/dist/browser/type/clientQuerier.js.map +1 -0
  42. package/dist/browser/type/clientQuerierPool.d.ts +5 -0
  43. package/dist/browser/type/clientQuerierPool.d.ts.map +1 -0
  44. package/dist/browser/type/clientQuerierPool.js +2 -0
  45. package/dist/browser/type/clientQuerierPool.js.map +1 -0
  46. package/dist/browser/type/index.d.ts +4 -0
  47. package/dist/browser/type/index.d.ts.map +1 -0
  48. package/dist/browser/type/index.js +4 -0
  49. package/dist/browser/type/index.js.map +1 -0
  50. package/dist/browser/type/request.d.ts +29 -0
  51. package/dist/browser/type/request.d.ts.map +1 -0
  52. package/dist/browser/type/request.js +2 -0
  53. package/dist/browser/type/request.js.map +1 -0
  54. package/dist/browser/uql-browser.min.js +4818 -0
  55. package/dist/browser/uql-browser.min.js.map +1 -0
  56. package/dist/d1/d1Querier.d.ts +45 -0
  57. package/dist/d1/d1Querier.d.ts.map +1 -0
  58. package/dist/d1/d1Querier.js +31 -0
  59. package/dist/d1/d1Querier.js.map +1 -0
  60. package/dist/d1/d1QuerierPool.d.ts +10 -0
  61. package/dist/d1/d1QuerierPool.d.ts.map +1 -0
  62. package/dist/d1/d1QuerierPool.js +16 -0
  63. package/dist/d1/d1QuerierPool.js.map +1 -0
  64. package/dist/d1/index.d.ts +3 -0
  65. package/dist/d1/index.d.ts.map +1 -0
  66. package/dist/d1/index.js +3 -0
  67. package/dist/d1/index.js.map +1 -0
  68. package/dist/dialect/abstractDialect.d.ts +22 -0
  69. package/dist/dialect/abstractDialect.d.ts.map +1 -0
  70. package/dist/dialect/abstractDialect.js +37 -0
  71. package/dist/dialect/abstractDialect.js.map +1 -0
  72. package/dist/dialect/abstractSqlDialect.d.ts +140 -0
  73. package/dist/dialect/abstractSqlDialect.d.ts.map +1 -0
  74. package/dist/dialect/abstractSqlDialect.js +957 -0
  75. package/dist/dialect/abstractSqlDialect.js.map +1 -0
  76. package/dist/dialect/dialectConfig.d.ts +23 -0
  77. package/dist/dialect/dialectConfig.d.ts.map +1 -0
  78. package/dist/dialect/dialectConfig.js +96 -0
  79. package/dist/dialect/dialectConfig.js.map +1 -0
  80. package/dist/dialect/index.d.ts +5 -0
  81. package/dist/dialect/index.d.ts.map +1 -0
  82. package/dist/dialect/index.js +5 -0
  83. package/dist/dialect/index.js.map +1 -0
  84. package/dist/dialect/queryContext.d.ts +49 -0
  85. package/dist/dialect/queryContext.d.ts.map +1 -0
  86. package/dist/dialect/queryContext.js +65 -0
  87. package/dist/dialect/queryContext.js.map +1 -0
  88. package/dist/entity/decorator/definition.d.ts +11 -0
  89. package/dist/entity/decorator/definition.d.ts.map +1 -0
  90. package/dist/entity/decorator/definition.js +247 -0
  91. package/dist/entity/decorator/definition.js.map +1 -0
  92. package/dist/entity/decorator/entity.d.ts +3 -0
  93. package/dist/entity/decorator/entity.d.ts.map +1 -0
  94. package/dist/entity/decorator/entity.js +7 -0
  95. package/dist/entity/decorator/entity.js.map +1 -0
  96. package/dist/entity/decorator/field.d.ts +3 -0
  97. package/dist/entity/decorator/field.d.ts.map +1 -0
  98. package/dist/entity/decorator/field.js +8 -0
  99. package/dist/entity/decorator/field.js.map +1 -0
  100. package/dist/entity/decorator/hook.d.ts +8 -0
  101. package/dist/entity/decorator/hook.d.ts.map +1 -0
  102. package/dist/entity/decorator/hook.js +15 -0
  103. package/dist/entity/decorator/hook.js.map +1 -0
  104. package/dist/entity/decorator/id.d.ts +3 -0
  105. package/dist/entity/decorator/id.d.ts.map +1 -0
  106. package/dist/entity/decorator/id.js +8 -0
  107. package/dist/entity/decorator/id.js.map +1 -0
  108. package/dist/entity/decorator/index-decorator.d.ts +36 -0
  109. package/dist/entity/decorator/index-decorator.d.ts.map +1 -0
  110. package/dist/entity/decorator/index-decorator.js +52 -0
  111. package/dist/entity/decorator/index-decorator.js.map +1 -0
  112. package/dist/entity/decorator/index.d.ts +8 -0
  113. package/dist/entity/decorator/index.d.ts.map +1 -0
  114. package/dist/entity/decorator/index.js +8 -0
  115. package/dist/entity/decorator/index.js.map +1 -0
  116. package/dist/entity/decorator/relation.d.ts +9 -0
  117. package/dist/entity/decorator/relation.d.ts.map +1 -0
  118. package/dist/entity/decorator/relation.js +20 -0
  119. package/dist/entity/decorator/relation.js.map +1 -0
  120. package/dist/entity/index.d.ts +2 -0
  121. package/dist/entity/index.d.ts.map +1 -0
  122. package/dist/entity/index.js +2 -0
  123. package/dist/entity/index.js.map +1 -0
  124. package/dist/express/index.d.ts +3 -0
  125. package/dist/express/index.d.ts.map +1 -0
  126. package/dist/express/index.js +3 -0
  127. package/dist/express/index.js.map +1 -0
  128. package/dist/express/querierMiddleware.d.ts +26 -0
  129. package/dist/express/querierMiddleware.d.ts.map +1 -0
  130. package/dist/express/querierMiddleware.js +149 -0
  131. package/dist/express/querierMiddleware.js.map +1 -0
  132. package/dist/express/query.util.d.ts +7 -0
  133. package/dist/express/query.util.d.ts.map +1 -0
  134. package/dist/express/query.util.js +28 -0
  135. package/dist/express/query.util.js.map +1 -0
  136. package/dist/index.d.ts +8 -0
  137. package/dist/index.d.ts.map +1 -0
  138. package/dist/index.js +8 -0
  139. package/dist/index.js.map +1 -0
  140. package/dist/libsql/index.d.ts +3 -0
  141. package/dist/libsql/index.d.ts.map +1 -0
  142. package/dist/libsql/index.js +3 -0
  143. package/dist/libsql/index.js.map +1 -0
  144. package/dist/libsql/libsqlQuerier.d.ts +17 -0
  145. package/dist/libsql/libsqlQuerier.d.ts.map +1 -0
  146. package/dist/libsql/libsqlQuerier.js +71 -0
  147. package/dist/libsql/libsqlQuerier.js.map +1 -0
  148. package/dist/libsql/libsqlQuerierPool.d.ts +12 -0
  149. package/dist/libsql/libsqlQuerierPool.d.ts.map +1 -0
  150. package/dist/libsql/libsqlQuerierPool.js +19 -0
  151. package/dist/libsql/libsqlQuerierPool.js.map +1 -0
  152. package/dist/maria/index.d.ts +4 -0
  153. package/dist/maria/index.d.ts.map +1 -0
  154. package/dist/maria/index.js +4 -0
  155. package/dist/maria/index.js.map +1 -0
  156. package/dist/maria/mariaDialect.d.ts +10 -0
  157. package/dist/maria/mariaDialect.d.ts.map +1 -0
  158. package/dist/maria/mariaDialect.js +41 -0
  159. package/dist/maria/mariaDialect.js.map +1 -0
  160. package/dist/maria/mariadbQuerier.d.ts +10 -0
  161. package/dist/maria/mariadbQuerier.d.ts.map +1 -0
  162. package/dist/maria/mariadbQuerier.js +20 -0
  163. package/dist/maria/mariadbQuerier.js.map +1 -0
  164. package/dist/maria/mariadbQuerierPool.d.ts +11 -0
  165. package/dist/maria/mariadbQuerierPool.d.ts.map +1 -0
  166. package/dist/maria/mariadbQuerierPool.js +17 -0
  167. package/dist/maria/mariadbQuerierPool.js.map +1 -0
  168. package/dist/migrate/bin.d.ts +3 -0
  169. package/dist/migrate/bin.d.ts.map +1 -0
  170. package/dist/migrate/bin.js +7 -0
  171. package/dist/migrate/bin.js.map +1 -0
  172. package/dist/migrate/builder/columnBuilder.d.ts +79 -0
  173. package/dist/migrate/builder/columnBuilder.d.ts.map +1 -0
  174. package/dist/migrate/builder/columnBuilder.js +159 -0
  175. package/dist/migrate/builder/columnBuilder.js.map +1 -0
  176. package/dist/migrate/builder/expressions.d.ts +87 -0
  177. package/dist/migrate/builder/expressions.d.ts.map +1 -0
  178. package/dist/migrate/builder/expressions.js +150 -0
  179. package/dist/migrate/builder/expressions.js.map +1 -0
  180. package/dist/migrate/builder/index.d.ts +6 -0
  181. package/dist/migrate/builder/index.d.ts.map +1 -0
  182. package/dist/migrate/builder/index.js +6 -0
  183. package/dist/migrate/builder/index.js.map +1 -0
  184. package/dist/migrate/builder/migrationBuilder.d.ts +109 -0
  185. package/dist/migrate/builder/migrationBuilder.d.ts.map +1 -0
  186. package/dist/migrate/builder/migrationBuilder.js +463 -0
  187. package/dist/migrate/builder/migrationBuilder.js.map +1 -0
  188. package/dist/migrate/builder/tableBuilder.d.ts +51 -0
  189. package/dist/migrate/builder/tableBuilder.d.ts.map +1 -0
  190. package/dist/migrate/builder/tableBuilder.js +291 -0
  191. package/dist/migrate/builder/tableBuilder.js.map +1 -0
  192. package/dist/migrate/builder/types.d.ts +466 -0
  193. package/dist/migrate/builder/types.d.ts.map +1 -0
  194. package/dist/migrate/builder/types.js +8 -0
  195. package/dist/migrate/builder/types.js.map +1 -0
  196. package/dist/migrate/cli-config.d.ts +3 -0
  197. package/dist/migrate/cli-config.d.ts.map +1 -0
  198. package/dist/migrate/cli-config.js +35 -0
  199. package/dist/migrate/cli-config.js.map +1 -0
  200. package/dist/migrate/cli.d.ts +16 -0
  201. package/dist/migrate/cli.d.ts.map +1 -0
  202. package/dist/migrate/cli.js +394 -0
  203. package/dist/migrate/cli.js.map +1 -0
  204. package/dist/migrate/codegen/entityCodeGenerator.d.ts +137 -0
  205. package/dist/migrate/codegen/entityCodeGenerator.d.ts.map +1 -0
  206. package/dist/migrate/codegen/entityCodeGenerator.js +405 -0
  207. package/dist/migrate/codegen/entityCodeGenerator.js.map +1 -0
  208. package/dist/migrate/codegen/entityMerger.d.ts +115 -0
  209. package/dist/migrate/codegen/entityMerger.d.ts.map +1 -0
  210. package/dist/migrate/codegen/entityMerger.js +294 -0
  211. package/dist/migrate/codegen/entityMerger.js.map +1 -0
  212. package/dist/migrate/codegen/index.d.ts +10 -0
  213. package/dist/migrate/codegen/index.d.ts.map +1 -0
  214. package/dist/migrate/codegen/index.js +14 -0
  215. package/dist/migrate/codegen/index.js.map +1 -0
  216. package/dist/migrate/codegen/migrationCodeGenerator.d.ts +62 -0
  217. package/dist/migrate/codegen/migrationCodeGenerator.d.ts.map +1 -0
  218. package/dist/migrate/codegen/migrationCodeGenerator.js +356 -0
  219. package/dist/migrate/codegen/migrationCodeGenerator.js.map +1 -0
  220. package/dist/migrate/codegen/smartRelationDetector.d.ts +48 -0
  221. package/dist/migrate/codegen/smartRelationDetector.d.ts.map +1 -0
  222. package/dist/migrate/codegen/smartRelationDetector.js +135 -0
  223. package/dist/migrate/codegen/smartRelationDetector.js.map +1 -0
  224. package/dist/migrate/drift/driftDetector.d.ts +81 -0
  225. package/dist/migrate/drift/driftDetector.d.ts.map +1 -0
  226. package/dist/migrate/drift/driftDetector.js +248 -0
  227. package/dist/migrate/drift/driftDetector.js.map +1 -0
  228. package/dist/migrate/drift/index.d.ts +7 -0
  229. package/dist/migrate/drift/index.d.ts.map +1 -0
  230. package/dist/migrate/drift/index.js +7 -0
  231. package/dist/migrate/drift/index.js.map +1 -0
  232. package/dist/migrate/generator/index.d.ts +3 -0
  233. package/dist/migrate/generator/index.d.ts.map +1 -0
  234. package/dist/migrate/generator/index.js +3 -0
  235. package/dist/migrate/generator/index.js.map +1 -0
  236. package/dist/migrate/generator/mongoSchemaGenerator.d.ts +39 -0
  237. package/dist/migrate/generator/mongoSchemaGenerator.d.ts.map +1 -0
  238. package/dist/migrate/generator/mongoSchemaGenerator.js +183 -0
  239. package/dist/migrate/generator/mongoSchemaGenerator.js.map +1 -0
  240. package/dist/migrate/index.d.ts +13 -0
  241. package/dist/migrate/index.d.ts.map +1 -0
  242. package/dist/migrate/index.js +20 -0
  243. package/dist/migrate/index.js.map +1 -0
  244. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.d.ts +77 -0
  245. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.d.ts.map +1 -0
  246. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.js +156 -0
  247. package/dist/migrate/introspection/abstractSqlSchemaIntrospector.js.map +1 -0
  248. package/dist/migrate/introspection/baseSqlIntrospector.d.ts +28 -0
  249. package/dist/migrate/introspection/baseSqlIntrospector.d.ts.map +1 -0
  250. package/dist/migrate/introspection/baseSqlIntrospector.js +135 -0
  251. package/dist/migrate/introspection/baseSqlIntrospector.js.map +1 -0
  252. package/dist/migrate/introspection/index.d.ts +6 -0
  253. package/dist/migrate/introspection/index.d.ts.map +1 -0
  254. package/dist/migrate/introspection/index.js +6 -0
  255. package/dist/migrate/introspection/index.js.map +1 -0
  256. package/dist/migrate/introspection/mongoIntrospector.d.ts +15 -0
  257. package/dist/migrate/introspection/mongoIntrospector.d.ts.map +1 -0
  258. package/dist/migrate/introspection/mongoIntrospector.js +100 -0
  259. package/dist/migrate/introspection/mongoIntrospector.js.map +1 -0
  260. package/dist/migrate/introspection/mysqlIntrospector.d.ts +59 -0
  261. package/dist/migrate/introspection/mysqlIntrospector.d.ts.map +1 -0
  262. package/dist/migrate/introspection/mysqlIntrospector.js +175 -0
  263. package/dist/migrate/introspection/mysqlIntrospector.js.map +1 -0
  264. package/dist/migrate/introspection/postgresIntrospector.d.ts +55 -0
  265. package/dist/migrate/introspection/postgresIntrospector.d.ts.map +1 -0
  266. package/dist/migrate/introspection/postgresIntrospector.js +226 -0
  267. package/dist/migrate/introspection/postgresIntrospector.js.map +1 -0
  268. package/dist/migrate/introspection/sqliteIntrospector.d.ts +60 -0
  269. package/dist/migrate/introspection/sqliteIntrospector.d.ts.map +1 -0
  270. package/dist/migrate/introspection/sqliteIntrospector.js +180 -0
  271. package/dist/migrate/introspection/sqliteIntrospector.js.map +1 -0
  272. package/dist/migrate/migrator.d.ts +176 -0
  273. package/dist/migrate/migrator.d.ts.map +1 -0
  274. package/dist/migrate/migrator.js +624 -0
  275. package/dist/migrate/migrator.js.map +1 -0
  276. package/dist/migrate/schemaGenerator.d.ts +132 -0
  277. package/dist/migrate/schemaGenerator.d.ts.map +1 -0
  278. package/dist/migrate/schemaGenerator.js +628 -0
  279. package/dist/migrate/schemaGenerator.js.map +1 -0
  280. package/dist/migrate/storage/databaseStorage.d.ts +25 -0
  281. package/dist/migrate/storage/databaseStorage.d.ts.map +1 -0
  282. package/dist/migrate/storage/databaseStorage.js +77 -0
  283. package/dist/migrate/storage/databaseStorage.js.map +1 -0
  284. package/dist/migrate/storage/index.d.ts +3 -0
  285. package/dist/migrate/storage/index.d.ts.map +1 -0
  286. package/dist/migrate/storage/index.js +3 -0
  287. package/dist/migrate/storage/index.js.map +1 -0
  288. package/dist/migrate/storage/jsonStorage.d.ts +16 -0
  289. package/dist/migrate/storage/jsonStorage.d.ts.map +1 -0
  290. package/dist/migrate/storage/jsonStorage.js +43 -0
  291. package/dist/migrate/storage/jsonStorage.js.map +1 -0
  292. package/dist/migrate/sync/index.d.ts +7 -0
  293. package/dist/migrate/sync/index.d.ts.map +1 -0
  294. package/dist/migrate/sync/index.js +7 -0
  295. package/dist/migrate/sync/index.js.map +1 -0
  296. package/dist/migrate/sync/schemaSync.d.ts +132 -0
  297. package/dist/migrate/sync/schemaSync.d.ts.map +1 -0
  298. package/dist/migrate/sync/schemaSync.js +260 -0
  299. package/dist/migrate/sync/schemaSync.js.map +1 -0
  300. package/dist/mongo/index.d.ts +4 -0
  301. package/dist/mongo/index.d.ts.map +1 -0
  302. package/dist/mongo/index.js +4 -0
  303. package/dist/mongo/index.js.map +1 -0
  304. package/dist/mongo/mongoDialect.d.ts +47 -0
  305. package/dist/mongo/mongoDialect.d.ts.map +1 -0
  306. package/dist/mongo/mongoDialect.js +299 -0
  307. package/dist/mongo/mongoDialect.js.map +1 -0
  308. package/dist/mongo/mongodbQuerier.d.ts +32 -0
  309. package/dist/mongo/mongodbQuerier.d.ts.map +1 -0
  310. package/dist/mongo/mongodbQuerier.js +267 -0
  311. package/dist/mongo/mongodbQuerier.js.map +1 -0
  312. package/dist/mongo/mongodbQuerierPool.d.ts +11 -0
  313. package/dist/mongo/mongodbQuerierPool.d.ts.map +1 -0
  314. package/dist/mongo/mongodbQuerierPool.js +20 -0
  315. package/dist/mongo/mongodbQuerierPool.js.map +1 -0
  316. package/dist/mysql/index.d.ts +4 -0
  317. package/dist/mysql/index.d.ts.map +1 -0
  318. package/dist/mysql/index.js +4 -0
  319. package/dist/mysql/index.js.map +1 -0
  320. package/dist/mysql/mysql2Querier.d.ts +14 -0
  321. package/dist/mysql/mysql2Querier.d.ts.map +1 -0
  322. package/dist/mysql/mysql2Querier.js +25 -0
  323. package/dist/mysql/mysql2Querier.js.map +1 -0
  324. package/dist/mysql/mysql2QuerierPool.d.ts +11 -0
  325. package/dist/mysql/mysql2QuerierPool.d.ts.map +1 -0
  326. package/dist/mysql/mysql2QuerierPool.js +17 -0
  327. package/dist/mysql/mysql2QuerierPool.js.map +1 -0
  328. package/dist/mysql/mysqlDialect.d.ts +19 -0
  329. package/dist/mysql/mysqlDialect.d.ts.map +1 -0
  330. package/dist/mysql/mysqlDialect.js +97 -0
  331. package/dist/mysql/mysqlDialect.js.map +1 -0
  332. package/dist/namingStrategy/defaultNamingStrategy.d.ts +10 -0
  333. package/dist/namingStrategy/defaultNamingStrategy.d.ts.map +1 -0
  334. package/dist/namingStrategy/defaultNamingStrategy.js +15 -0
  335. package/dist/namingStrategy/defaultNamingStrategy.js.map +1 -0
  336. package/dist/namingStrategy/index.d.ts +3 -0
  337. package/dist/namingStrategy/index.d.ts.map +1 -0
  338. package/dist/namingStrategy/index.js +3 -0
  339. package/dist/namingStrategy/index.js.map +1 -0
  340. package/dist/namingStrategy/snakeCaseNamingStrategy.d.ts +9 -0
  341. package/dist/namingStrategy/snakeCaseNamingStrategy.d.ts.map +1 -0
  342. package/dist/namingStrategy/snakeCaseNamingStrategy.js +14 -0
  343. package/dist/namingStrategy/snakeCaseNamingStrategy.js.map +1 -0
  344. package/dist/neon/index.d.ts +3 -0
  345. package/dist/neon/index.d.ts.map +1 -0
  346. package/dist/neon/index.js +3 -0
  347. package/dist/neon/index.js.map +1 -0
  348. package/dist/neon/neonQuerier.d.ts +10 -0
  349. package/dist/neon/neonQuerier.d.ts.map +1 -0
  350. package/dist/neon/neonQuerier.js +20 -0
  351. package/dist/neon/neonQuerier.js.map +1 -0
  352. package/dist/neon/neonQuerierPool.d.ts +11 -0
  353. package/dist/neon/neonQuerierPool.d.ts.map +1 -0
  354. package/dist/neon/neonQuerierPool.js +17 -0
  355. package/dist/neon/neonQuerierPool.js.map +1 -0
  356. package/dist/options.d.ts +5 -0
  357. package/dist/options.d.ts.map +1 -0
  358. package/dist/options.js +14 -0
  359. package/dist/options.js.map +1 -0
  360. package/dist/postgres/index.d.ts +4 -0
  361. package/dist/postgres/index.d.ts.map +1 -0
  362. package/dist/postgres/index.js +4 -0
  363. package/dist/postgres/index.js.map +1 -0
  364. package/dist/postgres/pgQuerier.d.ts +10 -0
  365. package/dist/postgres/pgQuerier.d.ts.map +1 -0
  366. package/dist/postgres/pgQuerier.js +20 -0
  367. package/dist/postgres/pgQuerier.js.map +1 -0
  368. package/dist/postgres/pgQuerierPool.d.ts +11 -0
  369. package/dist/postgres/pgQuerierPool.d.ts.map +1 -0
  370. package/dist/postgres/pgQuerierPool.js +17 -0
  371. package/dist/postgres/pgQuerierPool.js.map +1 -0
  372. package/dist/postgres/postgresDialect.d.ts +36 -0
  373. package/dist/postgres/postgresDialect.d.ts.map +1 -0
  374. package/dist/postgres/postgresDialect.js +201 -0
  375. package/dist/postgres/postgresDialect.js.map +1 -0
  376. package/dist/querier/abstractPoolQuerier.d.ts +13 -0
  377. package/dist/querier/abstractPoolQuerier.d.ts.map +1 -0
  378. package/dist/querier/abstractPoolQuerier.js +25 -0
  379. package/dist/querier/abstractPoolQuerier.js.map +1 -0
  380. package/dist/querier/abstractQuerier.d.ts +109 -0
  381. package/dist/querier/abstractQuerier.d.ts.map +1 -0
  382. package/dist/querier/abstractQuerier.js +378 -0
  383. package/dist/querier/abstractQuerier.js.map +1 -0
  384. package/dist/querier/abstractQuerierPool.d.ts +23 -0
  385. package/dist/querier/abstractQuerierPool.d.ts.map +1 -0
  386. package/dist/querier/abstractQuerierPool.js +28 -0
  387. package/dist/querier/abstractQuerierPool.js.map +1 -0
  388. package/dist/querier/abstractSqlQuerier.d.ts +38 -0
  389. package/dist/querier/abstractSqlQuerier.d.ts.map +1 -0
  390. package/dist/querier/abstractSqlQuerier.js +169 -0
  391. package/dist/querier/abstractSqlQuerier.js.map +1 -0
  392. package/dist/querier/decorator/index.d.ts +5 -0
  393. package/dist/querier/decorator/index.d.ts.map +1 -0
  394. package/dist/querier/decorator/index.js +5 -0
  395. package/dist/querier/decorator/index.js.map +1 -0
  396. package/dist/querier/decorator/injectQuerier.d.ts +4 -0
  397. package/dist/querier/decorator/injectQuerier.d.ts.map +1 -0
  398. package/dist/querier/decorator/injectQuerier.js +33 -0
  399. package/dist/querier/decorator/injectQuerier.js.map +1 -0
  400. package/dist/querier/decorator/log.d.ts +7 -0
  401. package/dist/querier/decorator/log.d.ts.map +1 -0
  402. package/dist/querier/decorator/log.js +27 -0
  403. package/dist/querier/decorator/log.js.map +1 -0
  404. package/dist/querier/decorator/serialized.d.ts +7 -0
  405. package/dist/querier/decorator/serialized.d.ts.map +1 -0
  406. package/dist/querier/decorator/serialized.js +14 -0
  407. package/dist/querier/decorator/serialized.js.map +1 -0
  408. package/dist/querier/decorator/transactional.d.ts +6 -0
  409. package/dist/querier/decorator/transactional.d.ts.map +1 -0
  410. package/dist/querier/decorator/transactional.js +48 -0
  411. package/dist/querier/decorator/transactional.js.map +1 -0
  412. package/dist/querier/index.d.ts +5 -0
  413. package/dist/querier/index.d.ts.map +1 -0
  414. package/dist/querier/index.js +5 -0
  415. package/dist/querier/index.js.map +1 -0
  416. package/dist/schema/canonicalType.d.ts +42 -0
  417. package/dist/schema/canonicalType.d.ts.map +1 -0
  418. package/dist/schema/canonicalType.js +524 -0
  419. package/dist/schema/canonicalType.js.map +1 -0
  420. package/dist/schema/index.d.ts +28 -0
  421. package/dist/schema/index.d.ts.map +1 -0
  422. package/dist/schema/index.js +29 -0
  423. package/dist/schema/index.js.map +1 -0
  424. package/dist/schema/schemaAST.d.ts +155 -0
  425. package/dist/schema/schemaAST.d.ts.map +1 -0
  426. package/dist/schema/schemaAST.js +496 -0
  427. package/dist/schema/schemaAST.js.map +1 -0
  428. package/dist/schema/schemaASTBuilder.d.ts +58 -0
  429. package/dist/schema/schemaASTBuilder.d.ts.map +1 -0
  430. package/dist/schema/schemaASTBuilder.js +224 -0
  431. package/dist/schema/schemaASTBuilder.js.map +1 -0
  432. package/dist/schema/schemaASTDiffer.d.ts +84 -0
  433. package/dist/schema/schemaASTDiffer.d.ts.map +1 -0
  434. package/dist/schema/schemaASTDiffer.js +431 -0
  435. package/dist/schema/schemaASTDiffer.js.map +1 -0
  436. package/dist/schema/types.d.ts +347 -0
  437. package/dist/schema/types.d.ts.map +1 -0
  438. package/dist/schema/types.js +11 -0
  439. package/dist/schema/types.js.map +1 -0
  440. package/dist/sqlite/abstractSqliteQuerier.d.ts +6 -0
  441. package/dist/sqlite/abstractSqliteQuerier.d.ts.map +1 -0
  442. package/dist/sqlite/abstractSqliteQuerier.js +13 -0
  443. package/dist/sqlite/abstractSqliteQuerier.js.map +1 -0
  444. package/dist/sqlite/index.d.ts +4 -0
  445. package/dist/sqlite/index.d.ts.map +1 -0
  446. package/dist/sqlite/index.js +4 -0
  447. package/dist/sqlite/index.js.map +1 -0
  448. package/dist/sqlite/sqliteDialect.d.ts +42 -0
  449. package/dist/sqlite/sqliteDialect.d.ts.map +1 -0
  450. package/dist/sqlite/sqliteDialect.js +129 -0
  451. package/dist/sqlite/sqliteDialect.js.map +1 -0
  452. package/dist/sqlite/sqliteQuerier.d.ts +12 -0
  453. package/dist/sqlite/sqliteQuerier.d.ts.map +1 -0
  454. package/dist/sqlite/sqliteQuerier.js +25 -0
  455. package/dist/sqlite/sqliteQuerier.js.map +1 -0
  456. package/dist/sqlite/sqliteQuerierPool.d.ts +13 -0
  457. package/dist/sqlite/sqliteQuerierPool.d.ts.map +1 -0
  458. package/dist/sqlite/sqliteQuerierPool.js +34 -0
  459. package/dist/sqlite/sqliteQuerierPool.js.map +1 -0
  460. package/dist/type/config.d.ts +46 -0
  461. package/dist/type/config.d.ts.map +1 -0
  462. package/dist/type/config.js +2 -0
  463. package/dist/type/config.js.map +1 -0
  464. package/dist/type/entity.d.ts +289 -0
  465. package/dist/type/entity.d.ts.map +1 -0
  466. package/dist/type/entity.js +5 -0
  467. package/dist/type/entity.js.map +1 -0
  468. package/dist/type/index.d.ts +11 -0
  469. package/dist/type/index.d.ts.map +1 -0
  470. package/dist/type/index.js +11 -0
  471. package/dist/type/index.js.map +1 -0
  472. package/dist/type/logger.d.ts +61 -0
  473. package/dist/type/logger.d.ts.map +1 -0
  474. package/dist/type/logger.js +2 -0
  475. package/dist/type/logger.js.map +1 -0
  476. package/dist/type/migration.d.ts +268 -0
  477. package/dist/type/migration.d.ts.map +1 -0
  478. package/dist/type/migration.js +2 -0
  479. package/dist/type/migration.js.map +1 -0
  480. package/dist/type/namingStrategy.d.ts +18 -0
  481. package/dist/type/namingStrategy.d.ts.map +1 -0
  482. package/dist/type/namingStrategy.js +2 -0
  483. package/dist/type/namingStrategy.js.map +1 -0
  484. package/dist/type/querier.d.ts +154 -0
  485. package/dist/type/querier.d.ts.map +1 -0
  486. package/dist/type/querier.js +11 -0
  487. package/dist/type/querier.js.map +1 -0
  488. package/dist/type/querierPool.d.ts +31 -0
  489. package/dist/type/querierPool.d.ts.map +1 -0
  490. package/dist/type/querierPool.js +2 -0
  491. package/dist/type/querierPool.js.map +1 -0
  492. package/dist/type/query.d.ts +475 -0
  493. package/dist/type/query.d.ts.map +1 -0
  494. package/dist/type/query.js +11 -0
  495. package/dist/type/query.js.map +1 -0
  496. package/dist/type/universalQuerier.d.ts +120 -0
  497. package/dist/type/universalQuerier.d.ts.map +1 -0
  498. package/dist/type/universalQuerier.js +2 -0
  499. package/dist/type/universalQuerier.js.map +1 -0
  500. package/dist/type/utility.d.ts +33 -0
  501. package/dist/type/utility.d.ts.map +1 -0
  502. package/dist/type/utility.js +2 -0
  503. package/dist/type/utility.js.map +1 -0
  504. package/dist/util/dialect.util.d.ts +13 -0
  505. package/dist/util/dialect.util.d.ts.map +1 -0
  506. package/dist/util/dialect.util.js +82 -0
  507. package/dist/util/dialect.util.js.map +1 -0
  508. package/dist/util/field.util.d.ts +14 -0
  509. package/dist/util/field.util.d.ts.map +1 -0
  510. package/dist/util/field.util.js +57 -0
  511. package/dist/util/field.util.js.map +1 -0
  512. package/dist/util/hook.util.d.ts +15 -0
  513. package/dist/util/hook.util.d.ts.map +1 -0
  514. package/dist/util/hook.util.js +20 -0
  515. package/dist/util/hook.util.js.map +1 -0
  516. package/dist/util/index.d.ts +9 -0
  517. package/dist/util/index.d.ts.map +1 -0
  518. package/dist/util/index.js +9 -0
  519. package/dist/util/index.js.map +1 -0
  520. package/dist/util/logger.d.ts +34 -0
  521. package/dist/util/logger.d.ts.map +1 -0
  522. package/dist/util/logger.js +129 -0
  523. package/dist/util/logger.js.map +1 -0
  524. package/dist/util/object.util.d.ts +8 -0
  525. package/dist/util/object.util.d.ts.map +1 -0
  526. package/dist/util/object.util.js +19 -0
  527. package/dist/util/object.util.js.map +1 -0
  528. package/dist/util/raw.d.ts +9 -0
  529. package/dist/util/raw.d.ts.map +1 -0
  530. package/dist/util/raw.js +11 -0
  531. package/dist/util/raw.js.map +1 -0
  532. package/dist/util/sql.util.d.ts +22 -0
  533. package/dist/util/sql.util.d.ts.map +1 -0
  534. package/dist/util/sql.util.js +88 -0
  535. package/dist/util/sql.util.js.map +1 -0
  536. package/dist/util/string.util.d.ts +29 -0
  537. package/dist/util/string.util.d.ts.map +1 -0
  538. package/dist/util/string.util.js +91 -0
  539. package/dist/util/string.util.js.map +1 -0
  540. package/package.json +146 -0
@@ -0,0 +1,347 @@
1
+ /**
2
+ * Schema AST Types
3
+ *
4
+ * A unified graph representation of database schema with relationships as first-class citizens.
5
+ * Enables reliable diffing, smart relation detection, and dialect-agnostic schema operations.
6
+ */
7
+ /**
8
+ * Type categories universal across SQL dialects.
9
+ * These represent logical/semantic types, not specific SQL types.
10
+ */
11
+ export type TypeCategory = 'integer' | 'float' | 'decimal' | 'string' | 'boolean' | 'date' | 'time' | 'timestamp' | 'json' | 'uuid' | 'blob' | 'vector';
12
+ /**
13
+ * Size variants for types that support different sizes.
14
+ */
15
+ export type SizeVariant = 'tiny' | 'small' | 'medium' | 'big';
16
+ /**
17
+ * Dialect-agnostic type representation.
18
+ * Used for comparing types across different database engines.
19
+ */
20
+ export interface CanonicalType {
21
+ /** The semantic category of the type */
22
+ readonly category: TypeCategory;
23
+ /** Size variant for types with multiple sizes (tinyint, smallint, bigint, etc.) */
24
+ readonly size?: SizeVariant;
25
+ /** Character/string length (e.g., VARCHAR(255)) */
26
+ readonly length?: number;
27
+ /** Numeric precision for decimal types */
28
+ readonly precision?: number;
29
+ /** Numeric scale for decimal types */
30
+ readonly scale?: number;
31
+ /** Whether the numeric type is unsigned */
32
+ readonly unsigned?: boolean;
33
+ /** Pass-through for explicit/raw SQL types */
34
+ readonly raw?: string;
35
+ /** Whether this type has timezone info (for timestamp types) */
36
+ readonly withTimezone?: boolean;
37
+ }
38
+ /**
39
+ * Actions for foreign key ON DELETE and ON UPDATE clauses.
40
+ */
41
+ export type ForeignKeyAction = 'CASCADE' | 'SET NULL' | 'SET DEFAULT' | 'RESTRICT' | 'NO ACTION';
42
+ /**
43
+ * Default action for foreign key ON DELETE and ON UPDATE clauses.
44
+ */
45
+ export declare const DEFAULT_FOREIGN_KEY_ACTION: ForeignKeyAction;
46
+ /**
47
+ * Relationship cardinality types.
48
+ */
49
+ export type RelationshipType = 'OneToOne' | 'OneToMany' | 'ManyToOne' | 'ManyToMany';
50
+ /**
51
+ * Source of how a relationship was detected.
52
+ */
53
+ export type RelationshipSource = 'explicit_fk' | 'entity_decorator' | 'naming_pattern' | 'junction_table' | 'unique_fk';
54
+ /**
55
+ * Index algorithm/type supported by various databases.
56
+ */
57
+ export type IndexType = 'btree' | 'hash' | 'gin' | 'gist' | 'brin' | 'fulltext';
58
+ /**
59
+ * Source of where an index was defined.
60
+ */
61
+ export type IndexSource = 'entity' | 'database' | 'both';
62
+ /**
63
+ * Sync status for indexes.
64
+ */
65
+ export type IndexSyncStatus = 'in_sync' | 'entity_only' | 'db_only' | 'mismatch';
66
+ /**
67
+ * Column node in the schema graph.
68
+ * Represents a single column in a database table.
69
+ */
70
+ export interface ColumnNode {
71
+ /** Column name in the database */
72
+ readonly name: string;
73
+ /** Canonical (dialect-agnostic) type */
74
+ readonly type: CanonicalType;
75
+ /** Whether the column allows NULL values */
76
+ readonly nullable: boolean;
77
+ /** Default value expression or literal */
78
+ readonly defaultValue?: unknown;
79
+ /** Whether this column is part of the primary key */
80
+ readonly isPrimaryKey: boolean;
81
+ /** Whether this column auto-increments */
82
+ readonly isAutoIncrement: boolean;
83
+ /** Whether this column has a unique constraint */
84
+ readonly isUnique: boolean;
85
+ /** Column comment/description */
86
+ readonly comment?: string;
87
+ /** Reference to the parent table */
88
+ table: TableNode;
89
+ /** Relationships where this column is referenced (FKs pointing TO this column) */
90
+ referencedBy: RelationshipNode[];
91
+ /** Relationship where this column is the foreign key (FK this column points FROM) */
92
+ references?: RelationshipNode;
93
+ }
94
+ /**
95
+ * Table node in the schema graph.
96
+ * Represents a database table with all its columns, indexes, and relationships.
97
+ */
98
+ export interface TableNode {
99
+ /** Table name in the database */
100
+ readonly name: string;
101
+ /** Map of column name to column node */
102
+ readonly columns: Map<string, ColumnNode>;
103
+ /** Primary key columns (supports composite keys) */
104
+ readonly primaryKey: ColumnNode[];
105
+ /** Indexes on this table */
106
+ readonly indexes: IndexNode[];
107
+ /** Optional table comment */
108
+ readonly comment?: string;
109
+ /** Reference to the parent schema */
110
+ schema: SchemaAST;
111
+ /** Relationships pointing TO this table (other tables referencing this one) */
112
+ incomingRelations: RelationshipNode[];
113
+ /** Relationships pointing FROM this table (this table referencing others) */
114
+ outgoingRelations: RelationshipNode[];
115
+ }
116
+ /**
117
+ * Relationship node - a first-class citizen in the schema graph.
118
+ * Represents a foreign key relationship between tables.
119
+ */
120
+ export interface RelationshipNode {
121
+ /** Constraint name (e.g., fk_posts_author_id) */
122
+ readonly name: string;
123
+ /** Type of relationship */
124
+ readonly type: RelationshipType;
125
+ /** Source side of the relationship (table with the FK column) */
126
+ readonly from: {
127
+ readonly table: TableNode;
128
+ readonly columns: ColumnNode[];
129
+ };
130
+ /** Target side of the relationship (referenced table) */
131
+ readonly to: {
132
+ readonly table: TableNode;
133
+ readonly columns: ColumnNode[];
134
+ };
135
+ /** Junction table for ManyToMany relationships */
136
+ readonly through?: TableNode;
137
+ /** Action on delete of referenced row */
138
+ readonly onDelete?: ForeignKeyAction;
139
+ /** Action on update of referenced row */
140
+ readonly onUpdate?: ForeignKeyAction;
141
+ /** Confidence level (0-1) for inferred relationships */
142
+ readonly confidence?: number;
143
+ /** How this relationship was detected */
144
+ readonly inferredFrom?: RelationshipSource;
145
+ }
146
+ /**
147
+ * Index node in the schema graph.
148
+ * Represents a database index on one or more columns.
149
+ */
150
+ export interface IndexNode {
151
+ /** Index name */
152
+ readonly name: string;
153
+ /** Reference to the table this index belongs to */
154
+ readonly table: TableNode;
155
+ /** Columns included in the index (order matters) */
156
+ readonly columns: ColumnNode[];
157
+ /** Whether this is a unique index */
158
+ readonly unique: boolean;
159
+ /** Index algorithm/type */
160
+ readonly type?: IndexType;
161
+ /** Partial index condition (WHERE clause) */
162
+ readonly where?: string;
163
+ /** Where this index was defined */
164
+ readonly source?: IndexSource;
165
+ /** Current sync status */
166
+ readonly syncStatus?: IndexSyncStatus;
167
+ }
168
+ /**
169
+ * Root of the schema graph.
170
+ * Contains all tables, relationships, and provides graph operations.
171
+ */
172
+ export interface SchemaAST {
173
+ /** Map of table name to table node */
174
+ readonly tables: Map<string, TableNode>;
175
+ /** All relationships in the schema */
176
+ readonly relationships: RelationshipNode[];
177
+ /** All indexes (also accessible via TableNode.indexes) */
178
+ readonly indexes: IndexNode[];
179
+ }
180
+ /**
181
+ * Difference between two column definitions.
182
+ */
183
+ export interface ColumnDiff {
184
+ readonly table: string;
185
+ readonly column: string;
186
+ readonly type: 'add' | 'drop' | 'alter';
187
+ readonly expected?: ColumnNode;
188
+ readonly actual?: ColumnNode;
189
+ /** Whether this change could cause data loss */
190
+ readonly isBreaking?: boolean;
191
+ /** Human-readable description of the change */
192
+ readonly description?: string;
193
+ }
194
+ /**
195
+ * Difference between two table definitions.
196
+ */
197
+ export interface TableDiff {
198
+ readonly name: string;
199
+ readonly type: 'create' | 'drop' | 'alter';
200
+ readonly columnDiffs?: ColumnDiff[];
201
+ readonly indexDiffs?: IndexDiff[];
202
+ }
203
+ /**
204
+ * Difference between two index definitions.
205
+ */
206
+ export interface IndexDiff {
207
+ readonly name: string;
208
+ readonly table: string;
209
+ readonly type: 'create' | 'drop' | 'alter';
210
+ readonly expected?: IndexNode;
211
+ readonly actual?: IndexNode;
212
+ }
213
+ /**
214
+ * Difference between two relationship definitions.
215
+ */
216
+ export interface RelationshipDiff {
217
+ readonly name: string;
218
+ readonly fromTable: string;
219
+ readonly toTable: string;
220
+ readonly type: 'create' | 'drop' | 'alter';
221
+ readonly expected?: RelationshipNode;
222
+ readonly actual?: RelationshipNode;
223
+ }
224
+ /**
225
+ * Complete diff between two schemas.
226
+ */
227
+ export interface SchemaDiffResult {
228
+ /** Tables that need to be created */
229
+ readonly tablesToCreate: TableNode[];
230
+ /** Tables that need to be dropped */
231
+ readonly tablesToDrop: TableNode[];
232
+ /** Tables that need alterations */
233
+ readonly tablesToAlter: TableDiff[];
234
+ /** All column-level diffs */
235
+ readonly columnDiffs: ColumnDiff[];
236
+ /** All index diffs */
237
+ readonly indexDiffs: IndexDiff[];
238
+ /** All relationship/FK diffs */
239
+ readonly relationshipDiffs: RelationshipDiff[];
240
+ /** Whether there are any differences */
241
+ readonly hasDifferences: boolean;
242
+ /** Whether any changes are breaking (could cause data loss) */
243
+ readonly hasBreakingChanges: boolean;
244
+ }
245
+ /**
246
+ * Type of schema validation error.
247
+ */
248
+ export type ValidationErrorType = 'missing_fk_target' | 'circular_dependency' | 'orphan_column' | 'duplicate_index' | 'invalid_type';
249
+ /**
250
+ * Schema validation error.
251
+ */
252
+ export interface ValidationError {
253
+ readonly type: ValidationErrorType;
254
+ readonly message: string;
255
+ readonly table?: TableNode;
256
+ readonly column?: ColumnNode;
257
+ readonly relationship?: RelationshipNode;
258
+ readonly tables?: TableNode[];
259
+ }
260
+ /**
261
+ * A detected/inferred relationship with confidence score.
262
+ */
263
+ export interface DetectedRelation {
264
+ readonly type: RelationshipType;
265
+ readonly from: {
266
+ readonly table: TableNode;
267
+ readonly columns: ColumnNode[];
268
+ };
269
+ readonly to: {
270
+ readonly table: TableNode;
271
+ readonly columns: ColumnNode[];
272
+ };
273
+ readonly through?: TableNode;
274
+ /** Confidence level (0-1) */
275
+ readonly confidence: number;
276
+ /** How this relation was detected */
277
+ readonly source: RelationshipSource;
278
+ /** Suggested constraint name */
279
+ readonly suggestedName?: string;
280
+ }
281
+ /**
282
+ * Severity level for schema drift issues.
283
+ */
284
+ export type DriftSeverity = 'critical' | 'warning' | 'info';
285
+ /**
286
+ * Type of schema drift.
287
+ */
288
+ export type DriftType = 'missing_table' | 'unexpected_table' | 'missing_column' | 'unexpected_column' | 'type_mismatch' | 'constraint_mismatch' | 'missing_index' | 'unexpected_index' | 'missing_relationship' | 'unexpected_relationship';
289
+ /**
290
+ * A single schema drift issue.
291
+ */
292
+ export interface Drift {
293
+ readonly type: DriftType;
294
+ readonly severity: DriftSeverity;
295
+ readonly table?: string;
296
+ readonly column?: string;
297
+ readonly index?: string;
298
+ readonly relationship?: string;
299
+ readonly expected?: unknown;
300
+ readonly actual?: unknown;
301
+ readonly details: string;
302
+ readonly suggestion: string;
303
+ }
304
+ /**
305
+ * Overall drift status.
306
+ */
307
+ export type DriftStatus = 'in_sync' | 'drifted' | 'critical';
308
+ /**
309
+ * Complete drift detection report.
310
+ */
311
+ export interface DriftReport {
312
+ readonly status: DriftStatus;
313
+ readonly drifts: Drift[];
314
+ readonly generatedAt: Date;
315
+ /** Count by severity */
316
+ readonly summary: {
317
+ readonly critical: number;
318
+ readonly warning: number;
319
+ readonly info: number;
320
+ };
321
+ }
322
+ /**
323
+ * Direction for schema synchronization.
324
+ */
325
+ export type SyncDirection = 'bidirectional' | 'entity-to-db' | 'db-to-entity';
326
+ /**
327
+ * Strategy for resolving conflicts in bidirectional sync.
328
+ */
329
+ export type ConflictResolution = 'prompt' | 'entity-wins' | 'db-wins' | 'skip';
330
+ /**
331
+ * Options for sync operations.
332
+ */
333
+ export interface SyncOptions {
334
+ /** Direction of synchronization */
335
+ readonly direction?: SyncDirection;
336
+ /** How to resolve conflicts (for bidirectional) */
337
+ readonly conflictResolution?: ConflictResolution;
338
+ /** Prevent destructive changes (DROP, type narrowing) */
339
+ readonly safe?: boolean;
340
+ /** Include indexes in sync */
341
+ readonly includeIndexes?: boolean;
342
+ /** Include foreign keys in sync */
343
+ readonly includeForeignKeys?: boolean;
344
+ /** Dry run - report changes without applying */
345
+ readonly dryRun?: boolean;
346
+ }
347
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/schema/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Schema AST Types
3
+ *
4
+ * A unified graph representation of database schema with relationships as first-class citizens.
5
+ * Enables reliable diffing, smart relation detection, and dialect-agnostic schema operations.
6
+ */
7
+ /**
8
+ * Default action for foreign key ON DELETE and ON UPDATE clauses.
9
+ */
10
+ export const DEFAULT_FOREIGN_KEY_ACTION = 'NO ACTION';
11
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/schema/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6DH;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqB,WAAW,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { AbstractSqlQuerier } from '../querier/index.js';
2
+ import type { QueryUpdateResult } from '../type/index.js';
3
+ export declare abstract class AbstractSqliteQuerier extends AbstractSqlQuerier {
4
+ protected buildUpdateResult(changes: number, lastInsertRowid?: number | bigint): QueryUpdateResult;
5
+ }
6
+ //# sourceMappingURL=abstractSqliteQuerier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractSqliteQuerier.d.ts","sourceRoot":"","sources":["../../src/sqlite/abstractSqliteQuerier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,8BAAsB,qBAAsB,SAAQ,kBAAkB;IACpE,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,iBAAiB;CASnG"}
@@ -0,0 +1,13 @@
1
+ import { AbstractSqlQuerier } from '../querier/index.js';
2
+ export class AbstractSqliteQuerier extends AbstractSqlQuerier {
3
+ buildUpdateResult(changes, lastInsertRowid) {
4
+ const firstId = lastInsertRowid ? Number(lastInsertRowid) - (changes - 1) : undefined;
5
+ const ids = firstId
6
+ ? Array(changes)
7
+ .fill(firstId)
8
+ .map((i, index) => i + index)
9
+ : [];
10
+ return { changes, ids, firstId };
11
+ }
12
+ }
13
+ //# sourceMappingURL=abstractSqliteQuerier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractSqliteQuerier.js","sourceRoot":"","sources":["../../src/sqlite/abstractSqliteQuerier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,MAAM,OAAgB,qBAAsB,SAAQ,kBAAkB;IAC1D,iBAAiB,CAAC,OAAe,EAAE,eAAiC;QAC5E,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtF,MAAM,GAAG,GAAG,OAAO;YACjB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;iBACX,IAAI,CAAC,OAAO,CAAC;iBACb,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;YACjC,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IACnC,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ export * from './sqliteDialect.js';
2
+ export * from './sqliteQuerier.js';
3
+ export * from './sqliteQuerierPool.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sqlite/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './sqliteDialect.js';
2
+ export * from './sqliteQuerier.js';
3
+ export * from './sqliteQuerierPool.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sqlite/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { AbstractSqlDialect } from '../dialect/index.js';
2
+ import type { FieldKey, JsonMergeOp, NamingStrategy, QueryComparisonOptions, QueryConflictPaths, QueryContext, QueryWhereFieldOperatorMap, Type } from '../type/index.js';
3
+ export declare class SqliteDialect extends AbstractSqlDialect {
4
+ constructor(namingStrategy?: NamingStrategy);
5
+ addValue(values: unknown[], value: unknown): string;
6
+ compare<E>(ctx: QueryContext, entity: Type<E>, key: string, val: unknown, opts?: QueryComparisonOptions): void;
7
+ compareFieldOperator<E, K extends keyof QueryWhereFieldOperatorMap<E>>(ctx: QueryContext, entity: Type<E>, key: FieldKey<E>, op: K, val: QueryWhereFieldOperatorMap<E>[K], opts?: QueryComparisonOptions): void;
8
+ /**
9
+ * Build $elemMatch condition for SQLite JSON arrays.
10
+ * Uses EXISTS with json_each and supports nested operators.
11
+ */
12
+ private buildElemMatchCondition;
13
+ /**
14
+ * Build a comparison condition for a JSON field with an operator.
15
+ */
16
+ private buildJsonFieldOperator;
17
+ protected getJsonFieldConfig(escapedColumn: string, jsonPath: string): {
18
+ fieldAccessor: () => string;
19
+ numericCast: (expr: string) => string;
20
+ neExpr: (f: string, ph: string) => string;
21
+ likeFn: string;
22
+ ilikeExpr: (field: string, placeholder: string) => string;
23
+ regexpOp: string;
24
+ addValue: (ctx: QueryContext, value: unknown) => string;
25
+ inExpr?: ((field: string, placeholder: string) => string) | undefined;
26
+ ninExpr?: ((field: string, placeholder: string) => string) | undefined;
27
+ };
28
+ protected getBaseJsonConfig(): {
29
+ numericCast: (expr: string) => string;
30
+ neExpr: (f: string, ph: string) => string;
31
+ likeFn: string;
32
+ ilikeExpr: (field: string, placeholder: string) => string;
33
+ regexpOp: string;
34
+ addValue: (ctx: QueryContext, value: unknown) => string;
35
+ inExpr?: ((field: string, placeholder: string) => string) | undefined;
36
+ ninExpr?: ((field: string, placeholder: string) => string) | undefined;
37
+ };
38
+ upsert<E>(ctx: QueryContext, entity: Type<E>, conflictPaths: QueryConflictPaths<E>, payload: E | E[]): void;
39
+ protected formatJsonMerge<E>(ctx: QueryContext, escapedCol: string, value: JsonMergeOp<E>): void;
40
+ escape(value: unknown): string;
41
+ }
42
+ //# sourceMappingURL=sqliteDialect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqliteDialect.d.ts","sourceRoot":"","sources":["../../src/sqlite/sqliteDialect.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,EACV,QAAQ,EACR,WAAW,EACX,cAAc,EACd,sBAAsB,EACtB,kBAAkB,EAClB,YAAY,EAEZ,0BAA0B,EAC1B,IAAI,EACL,MAAM,kBAAkB,CAAC;AAG1B,qBAAa,aAAc,SAAQ,kBAAkB;gBACvC,cAAc,CAAC,EAAE,cAAc;IAIlC,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM;IASnD,OAAO,CAAC,CAAC,EAChB,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EACf,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,OAAO,EACZ,IAAI,CAAC,EAAE,sBAAsB,GAC5B,IAAI;IAiBE,oBAAoB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,0BAA0B,CAAC,CAAC,CAAC,EAC5E,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EACf,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAChB,EAAE,EAAE,CAAC,EACL,GAAG,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrC,IAAI,GAAE,sBAA2B,GAChC,IAAI;IA8BP;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA8B/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;cAUX,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;4BAOrD,MAAM;oBACd,MAAM,MAAM,MAAM;;;;;;;;cAJf,iBAAiB;4BAGZ,MAAM;oBACd,MAAM,MAAM,MAAM;;;;;;;;IAIzB,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI;cASjG,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI;IAahG,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;CAGxC"}
@@ -0,0 +1,129 @@
1
+ import sqlstring from 'sqlstring-sqlite';
2
+ import { AbstractSqlDialect } from '../dialect/index.js';
3
+ import { getMeta } from '../entity/index.js';
4
+ import { hasKeys } from '../util/index.js';
5
+ export class SqliteDialect extends AbstractSqlDialect {
6
+ constructor(namingStrategy) {
7
+ super('sqlite', namingStrategy);
8
+ }
9
+ addValue(values, value) {
10
+ if (value instanceof Date) {
11
+ value = value.getTime();
12
+ }
13
+ else if (typeof value === 'boolean') {
14
+ value = value ? 1 : 0;
15
+ }
16
+ return super.addValue(values, value);
17
+ }
18
+ compare(ctx, entity, key, val, opts) {
19
+ if (key === '$text') {
20
+ const meta = getMeta(entity);
21
+ const search = val;
22
+ const fields = search.$fields.map((fKey) => {
23
+ const field = meta.fields[fKey];
24
+ const columnName = this.resolveColumnName(fKey, field);
25
+ return this.escapeId(columnName);
26
+ });
27
+ const tableName = this.resolveTableName(entity, meta);
28
+ ctx.append(`${this.escapeId(tableName)} MATCH {${fields.join(' ')}} : `);
29
+ ctx.addValue(search.$value);
30
+ return;
31
+ }
32
+ super.compare(ctx, entity, key, val, opts);
33
+ }
34
+ compareFieldOperator(ctx, entity, key, op, val, opts = {}) {
35
+ switch (op) {
36
+ case '$elemMatch':
37
+ this.buildElemMatchCondition(ctx, entity, key, val, opts);
38
+ break;
39
+ case '$all': {
40
+ // SQLite: Check JSON array contains all values using multiple json_each subqueries
41
+ const values = val;
42
+ const conditions = values
43
+ .map((v) => {
44
+ ctx.pushValue(JSON.stringify(v));
45
+ return `EXISTS (SELECT 1 FROM json_each(${this.escapeId(key)}) WHERE value = json(?))`;
46
+ })
47
+ .join(' AND ');
48
+ ctx.append(`(${conditions})`);
49
+ break;
50
+ }
51
+ case '$size':
52
+ // SQLite: Check JSON array length
53
+ // e.g., json_array_length(roles) = 3
54
+ ctx.append('json_array_length(');
55
+ this.getComparisonKey(ctx, entity, key, opts);
56
+ ctx.append(') = ');
57
+ ctx.addValue(val);
58
+ break;
59
+ default:
60
+ super.compareFieldOperator(ctx, entity, key, op, val, opts);
61
+ }
62
+ }
63
+ /**
64
+ * Build $elemMatch condition for SQLite JSON arrays.
65
+ * Uses EXISTS with json_each and supports nested operators.
66
+ */
67
+ buildElemMatchCondition(ctx, _entity, key, match, opts) {
68
+ ctx.append('EXISTS (SELECT 1 FROM json_each(');
69
+ this.getComparisonKey(ctx, _entity, key, opts);
70
+ ctx.append(') WHERE ');
71
+ const conditions = [];
72
+ for (const [field, value] of Object.entries(match)) {
73
+ if (value && typeof value === 'object' && !Array.isArray(value)) {
74
+ // Value is an operator object
75
+ const ops = value;
76
+ for (const [op, opVal] of Object.entries(ops)) {
77
+ conditions.push(this.buildJsonFieldOperator(ctx, field, op, opVal));
78
+ }
79
+ }
80
+ else {
81
+ // Simple equality
82
+ ctx.pushValue(value);
83
+ conditions.push(`json_extract(value, '$.${field}') = ?`);
84
+ }
85
+ }
86
+ ctx.append(conditions.join(' AND '));
87
+ ctx.append(')');
88
+ }
89
+ /**
90
+ * Build a comparison condition for a JSON field with an operator.
91
+ */
92
+ buildJsonFieldOperator(ctx, field, op, value) {
93
+ return this.buildJsonFieldCondition(ctx, { ...this.getBaseJsonConfig(), fieldAccessor: (f) => `json_extract(value, '$.${f}')` }, field, op, value);
94
+ }
95
+ getJsonFieldConfig(escapedColumn, jsonPath) {
96
+ return { ...this.getBaseJsonConfig(), fieldAccessor: () => `json_extract(${escapedColumn}, '$.${jsonPath}')` };
97
+ }
98
+ getBaseJsonConfig() {
99
+ return {
100
+ ...super.getBaseJsonConfig(),
101
+ numericCast: (expr) => `CAST(${expr} AS REAL)`,
102
+ neExpr: (f, ph) => `${f} IS NOT ${ph}`,
103
+ };
104
+ }
105
+ upsert(ctx, entity, conflictPaths, payload) {
106
+ const meta = getMeta(entity);
107
+ const update = this.getUpsertUpdateAssignments(ctx, meta, conflictPaths, payload, (name) => `EXCLUDED.${name}`);
108
+ const keysStr = this.getUpsertConflictPathsStr(meta, conflictPaths);
109
+ const onConflict = update ? `DO UPDATE SET ${update}` : 'DO NOTHING';
110
+ this.insert(ctx, entity, payload);
111
+ ctx.append(` ON CONFLICT (${keysStr}) ${onConflict}`);
112
+ }
113
+ formatJsonMerge(ctx, escapedCol, value) {
114
+ let expr = escapedCol;
115
+ if (hasKeys(value.$merge)) {
116
+ ctx.pushValue(JSON.stringify(value.$merge));
117
+ expr = `json_patch(COALESCE(${escapedCol}, '{}'), ?)`;
118
+ }
119
+ if (value.$unset?.length) {
120
+ const paths = value.$unset.map((k) => `'$.${this.escapeJsonKey(k)}'`).join(', ');
121
+ expr = `json_remove(${expr}, ${paths})`;
122
+ }
123
+ ctx.append(`${escapedCol} = ${expr}`);
124
+ }
125
+ escape(value) {
126
+ return sqlstring.escape(value);
127
+ }
128
+ }
129
+ //# sourceMappingURL=sqliteDialect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqliteDialect.js","sourceRoot":"","sources":["../../src/sqlite/sqliteDialect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { Database } from 'better-sqlite3';
2
+ import type { ExtraOptions } from '../type/index.js';
3
+ import { AbstractSqliteQuerier } from './abstractSqliteQuerier.js';
4
+ export declare class SqliteQuerier extends AbstractSqliteQuerier {
5
+ readonly db: Database;
6
+ readonly extra?: ExtraOptions | undefined;
7
+ constructor(db: Database, extra?: ExtraOptions | undefined);
8
+ internalAll<T>(query: string, values?: unknown[]): Promise<T[]>;
9
+ internalRun(query: string, values?: unknown[]): Promise<import("../type/query.js").QueryUpdateResult>;
10
+ internalRelease(): Promise<void>;
11
+ }
12
+ //# sourceMappingURL=sqliteQuerier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqliteQuerier.d.ts","sourceRoot":"","sources":["../../src/sqlite/sqliteQuerier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGnE,qBAAa,aAAc,SAAQ,qBAAqB;IAEpD,QAAQ,CAAC,EAAE,EAAE,QAAQ;aACH,KAAK,CAAC,EAAE,YAAY;gBAD7B,EAAE,EAAE,QAAQ,EACH,KAAK,CAAC,EAAE,YAAY,YAAA;IAKzB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE;IAIhD,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE;IAK7C,eAAe;CAM/B"}
@@ -0,0 +1,25 @@
1
+ import { AbstractSqliteQuerier } from './abstractSqliteQuerier.js';
2
+ import { SqliteDialect } from './sqliteDialect.js';
3
+ export class SqliteQuerier extends AbstractSqliteQuerier {
4
+ db;
5
+ extra;
6
+ constructor(db, extra) {
7
+ super(new SqliteDialect(extra?.namingStrategy), extra);
8
+ this.db = db;
9
+ this.extra = extra;
10
+ }
11
+ async internalAll(query, values) {
12
+ return this.db.prepare(query).all(values || []);
13
+ }
14
+ async internalRun(query, values) {
15
+ const { changes, lastInsertRowid } = this.db.prepare(query).run(values || []);
16
+ return this.buildUpdateResult(changes, lastInsertRowid);
17
+ }
18
+ async internalRelease() {
19
+ if (this.hasOpenTransaction) {
20
+ throw TypeError('pending transaction');
21
+ }
22
+ // no-op
23
+ }
24
+ }
25
+ //# sourceMappingURL=sqliteQuerier.js.map