neoorm 0.7.3 → 0.8.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 (361) hide show
  1. package/README.md +4 -4
  2. package/dist/bin/neoorm.js +36 -27
  3. package/dist/bin/neoorm.js.map +1 -1
  4. package/dist/codegen/diff-manifest.d.ts.map +1 -1
  5. package/dist/codegen/diff-manifest.js +55 -30
  6. package/dist/codegen/diff-manifest.js.map +1 -1
  7. package/dist/codegen/emit-includes.d.ts.map +1 -1
  8. package/dist/codegen/emit-includes.js +6 -6
  9. package/dist/codegen/emit-includes.js.map +1 -1
  10. package/dist/codegen/emit-models.d.ts.map +1 -1
  11. package/dist/codegen/emit-models.js +14 -14
  12. package/dist/codegen/emit-models.js.map +1 -1
  13. package/dist/codegen/generate.d.ts +11 -1
  14. package/dist/codegen/generate.d.ts.map +1 -1
  15. package/dist/codegen/generate.js +30 -11
  16. package/dist/codegen/generate.js.map +1 -1
  17. package/dist/codegen/manifest-relations.d.ts +2 -1
  18. package/dist/codegen/manifest-relations.d.ts.map +1 -1
  19. package/dist/codegen/manifest-relations.js +4 -27
  20. package/dist/codegen/manifest-relations.js.map +1 -1
  21. package/dist/codegen/schema-to-manifest.d.ts +3 -2
  22. package/dist/codegen/schema-to-manifest.d.ts.map +1 -1
  23. package/dist/codegen/schema-to-manifest.js +9 -38
  24. package/dist/codegen/schema-to-manifest.js.map +1 -1
  25. package/dist/config.d.ts +6 -2
  26. package/dist/config.d.ts.map +1 -1
  27. package/dist/config.js +21 -13
  28. package/dist/config.js.map +1 -1
  29. package/dist/datasource-provider.d.ts +7 -0
  30. package/dist/datasource-provider.d.ts.map +1 -0
  31. package/dist/datasource-provider.js +11 -0
  32. package/dist/datasource-provider.js.map +1 -0
  33. package/dist/dialect/fk.d.ts.map +1 -1
  34. package/dist/dialect/fk.js +4 -2
  35. package/dist/dialect/fk.js.map +1 -1
  36. package/dist/dialect/postgres.d.ts.map +1 -1
  37. package/dist/dialect/postgres.js +11 -15
  38. package/dist/dialect/postgres.js.map +1 -1
  39. package/dist/dialect/shared.d.ts +3 -1
  40. package/dist/dialect/shared.d.ts.map +1 -1
  41. package/dist/dialect/shared.js +4 -0
  42. package/dist/dialect/shared.js.map +1 -1
  43. package/dist/dialect/sqlite.d.ts.map +1 -1
  44. package/dist/dialect/sqlite.js +15 -18
  45. package/dist/dialect/sqlite.js.map +1 -1
  46. package/dist/dialect/sqlite.test.d.ts +2 -0
  47. package/dist/dialect/sqlite.test.d.ts.map +1 -0
  48. package/dist/dialect/sqlite.test.js +122 -0
  49. package/dist/dialect/sqlite.test.js.map +1 -0
  50. package/dist/dialect/types.d.ts +2 -1
  51. package/dist/dialect/types.d.ts.map +1 -1
  52. package/dist/docs/render.d.ts.map +1 -1
  53. package/dist/docs/render.js.map +1 -1
  54. package/dist/docs/search.d.ts.map +1 -1
  55. package/dist/docs/search.js +4 -4
  56. package/dist/docs/search.js.map +1 -1
  57. package/dist/docs/server.d.ts.map +1 -1
  58. package/dist/docs/server.js +3 -3
  59. package/dist/docs/server.js.map +1 -1
  60. package/dist/index.d.ts +12 -10
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +5 -4
  63. package/dist/index.js.map +1 -1
  64. package/dist/init/scaffold.d.ts.map +1 -1
  65. package/dist/init/scaffold.js +3 -1
  66. package/dist/init/scaffold.js.map +1 -1
  67. package/dist/introspect/pull.d.ts.map +1 -1
  68. package/dist/introspect/pull.js +209 -154
  69. package/dist/introspect/pull.js.map +1 -1
  70. package/dist/introspect/queries.d.ts +6 -0
  71. package/dist/introspect/queries.d.ts.map +1 -1
  72. package/dist/introspect/queries.js +19 -0
  73. package/dist/introspect/queries.js.map +1 -1
  74. package/dist/introspect/sqlite/to-manifest.d.ts.map +1 -1
  75. package/dist/introspect/sqlite/to-manifest.js +6 -9
  76. package/dist/introspect/sqlite/to-manifest.js.map +1 -1
  77. package/dist/introspect/to-manifest.d.ts +8 -1
  78. package/dist/introspect/to-manifest.d.ts.map +1 -1
  79. package/dist/introspect/to-manifest.js +96 -21
  80. package/dist/introspect/to-manifest.js.map +1 -1
  81. package/dist/migrate/runner.d.ts +16 -0
  82. package/dist/migrate/runner.d.ts.map +1 -1
  83. package/dist/migrate/runner.js +147 -24
  84. package/dist/migrate/runner.js.map +1 -1
  85. package/dist/plugins/builtin.d.ts.map +1 -1
  86. package/dist/plugins/builtin.js +15 -16
  87. package/dist/plugins/builtin.js.map +1 -1
  88. package/dist/plugins/json/operators.d.ts.map +1 -1
  89. package/dist/plugins/json/operators.js +100 -27
  90. package/dist/plugins/json/operators.js.map +1 -1
  91. package/dist/plugins/postgis/columns.d.ts +18 -4
  92. package/dist/plugins/postgis/columns.d.ts.map +1 -1
  93. package/dist/plugins/postgis/columns.js +69 -10
  94. package/dist/plugins/postgis/columns.js.map +1 -1
  95. package/dist/plugins/postgis/columns.test.d.ts +2 -0
  96. package/dist/plugins/postgis/columns.test.d.ts.map +1 -0
  97. package/dist/plugins/postgis/columns.test.js +67 -0
  98. package/dist/plugins/postgis/columns.test.js.map +1 -0
  99. package/dist/plugins/postgis/index.d.ts +4 -2
  100. package/dist/plugins/postgis/index.d.ts.map +1 -1
  101. package/dist/plugins/postgis/index.js +2 -1
  102. package/dist/plugins/postgis/index.js.map +1 -1
  103. package/dist/plugins/postgis/where-types.d.ts +18 -0
  104. package/dist/plugins/postgis/where-types.d.ts.map +1 -0
  105. package/dist/plugins/postgis/where-types.js +2 -0
  106. package/dist/plugins/postgis/where-types.js.map +1 -0
  107. package/dist/plugins/registry.d.ts.map +1 -1
  108. package/dist/plugins/registry.js +20 -5
  109. package/dist/plugins/registry.js.map +1 -1
  110. package/dist/plugins/types.d.ts +1 -1
  111. package/dist/plugins/types.d.ts.map +1 -1
  112. package/dist/runtime/client.d.ts +60 -11
  113. package/dist/runtime/client.d.ts.map +1 -1
  114. package/dist/runtime/client.js +85 -39
  115. package/dist/runtime/client.js.map +1 -1
  116. package/dist/runtime/client.test.d.ts +2 -0
  117. package/dist/runtime/client.test.d.ts.map +1 -0
  118. package/dist/runtime/client.test.js +170 -0
  119. package/dist/runtime/client.test.js.map +1 -0
  120. package/dist/runtime/compile-error.d.ts +14 -0
  121. package/dist/runtime/compile-error.d.ts.map +1 -0
  122. package/dist/runtime/compile-error.js +14 -0
  123. package/dist/runtime/compile-error.js.map +1 -0
  124. package/dist/runtime/driver-sqlite.test.d.ts +2 -0
  125. package/dist/runtime/driver-sqlite.test.d.ts.map +1 -0
  126. package/dist/runtime/driver-sqlite.test.js +195 -0
  127. package/dist/runtime/driver-sqlite.test.js.map +1 -0
  128. package/dist/runtime/driver.d.ts +16 -1
  129. package/dist/runtime/driver.d.ts.map +1 -1
  130. package/dist/runtime/driver.js +118 -96
  131. package/dist/runtime/driver.js.map +1 -1
  132. package/dist/runtime/error-builders.d.ts +7 -6
  133. package/dist/runtime/error-builders.d.ts.map +1 -1
  134. package/dist/runtime/error-builders.js +2 -2
  135. package/dist/runtime/error-builders.js.map +1 -1
  136. package/dist/runtime/error-codes.d.ts +50 -0
  137. package/dist/runtime/error-codes.d.ts.map +1 -0
  138. package/dist/runtime/error-codes.js +54 -0
  139. package/dist/runtime/error-codes.js.map +1 -0
  140. package/dist/runtime/error-hints.d.ts +1 -0
  141. package/dist/runtime/error-hints.d.ts.map +1 -1
  142. package/dist/runtime/error-hints.js +13 -1
  143. package/dist/runtime/error-hints.js.map +1 -1
  144. package/dist/runtime/errors.d.ts +55 -8
  145. package/dist/runtime/errors.d.ts.map +1 -1
  146. package/dist/runtime/errors.js +143 -12
  147. package/dist/runtime/errors.js.map +1 -1
  148. package/dist/runtime/errors.test.d.ts +2 -0
  149. package/dist/runtime/errors.test.d.ts.map +1 -0
  150. package/dist/runtime/errors.test.js +115 -0
  151. package/dist/runtime/errors.test.js.map +1 -0
  152. package/dist/runtime/executor.d.ts +22 -3
  153. package/dist/runtime/executor.d.ts.map +1 -1
  154. package/dist/runtime/executor.js +93 -39
  155. package/dist/runtime/executor.js.map +1 -1
  156. package/dist/runtime/parse-db-json.d.ts +8 -0
  157. package/dist/runtime/parse-db-json.d.ts.map +1 -0
  158. package/dist/runtime/parse-db-json.js +33 -0
  159. package/dist/runtime/parse-db-json.js.map +1 -0
  160. package/dist/runtime/pg-error.d.ts.map +1 -1
  161. package/dist/runtime/pg-error.js +16 -16
  162. package/dist/runtime/pg-error.js.map +1 -1
  163. package/dist/runtime/pg-rollback.test.d.ts +2 -0
  164. package/dist/runtime/pg-rollback.test.d.ts.map +1 -0
  165. package/dist/runtime/pg-rollback.test.js +39 -0
  166. package/dist/runtime/pg-rollback.test.js.map +1 -0
  167. package/dist/runtime/query/aggregate.d.ts.map +1 -1
  168. package/dist/runtime/query/aggregate.js +15 -4
  169. package/dist/runtime/query/aggregate.js.map +1 -1
  170. package/dist/runtime/query/compile-aggregate.d.ts +39 -0
  171. package/dist/runtime/query/compile-aggregate.d.ts.map +1 -0
  172. package/dist/runtime/query/compile-aggregate.js +456 -0
  173. package/dist/runtime/query/compile-aggregate.js.map +1 -0
  174. package/dist/runtime/query/compile-where.d.ts +32 -0
  175. package/dist/runtime/query/compile-where.d.ts.map +1 -0
  176. package/dist/runtime/query/compile-where.js +708 -0
  177. package/dist/runtime/query/compile-where.js.map +1 -0
  178. package/dist/runtime/query/compile-write.d.ts +53 -0
  179. package/dist/runtime/query/compile-write.d.ts.map +1 -0
  180. package/dist/runtime/query/compile-write.js +467 -0
  181. package/dist/runtime/query/compile-write.js.map +1 -0
  182. package/dist/runtime/query/compile.d.ts +3 -114
  183. package/dist/runtime/query/compile.d.ts.map +1 -1
  184. package/dist/runtime/query/compile.js +3 -1536
  185. package/dist/runtime/query/compile.js.map +1 -1
  186. package/dist/runtime/query/count.d.ts +1 -0
  187. package/dist/runtime/query/count.d.ts.map +1 -1
  188. package/dist/runtime/query/count.js +12 -14
  189. package/dist/runtime/query/count.js.map +1 -1
  190. package/dist/runtime/query/create.d.ts.map +1 -1
  191. package/dist/runtime/query/create.js +20 -49
  192. package/dist/runtime/query/create.js.map +1 -1
  193. package/dist/runtime/query/cursor-codec.d.ts.map +1 -1
  194. package/dist/runtime/query/cursor-codec.js +8 -2
  195. package/dist/runtime/query/cursor-codec.js.map +1 -1
  196. package/dist/runtime/query/cursor.d.ts.map +1 -1
  197. package/dist/runtime/query/cursor.js +31 -7
  198. package/dist/runtime/query/cursor.js.map +1 -1
  199. package/dist/runtime/query/delete.d.ts.map +1 -1
  200. package/dist/runtime/query/delete.js +17 -17
  201. package/dist/runtime/query/delete.js.map +1 -1
  202. package/dist/runtime/query/execute.d.ts.map +1 -1
  203. package/dist/runtime/query/execute.js +11 -12
  204. package/dist/runtime/query/execute.js.map +1 -1
  205. package/dist/runtime/query/find-or-create.d.ts +4 -2
  206. package/dist/runtime/query/find-or-create.d.ts.map +1 -1
  207. package/dist/runtime/query/find-or-create.js +53 -43
  208. package/dist/runtime/query/find-or-create.js.map +1 -1
  209. package/dist/runtime/query/find-or-create.test.d.ts +2 -0
  210. package/dist/runtime/query/find-or-create.test.d.ts.map +1 -0
  211. package/dist/runtime/query/find-or-create.test.js +189 -0
  212. package/dist/runtime/query/find-or-create.test.js.map +1 -0
  213. package/dist/runtime/query/find.d.ts.map +1 -1
  214. package/dist/runtime/query/find.js +86 -58
  215. package/dist/runtime/query/find.js.map +1 -1
  216. package/dist/runtime/query/group-by.d.ts.map +1 -1
  217. package/dist/runtime/query/group-by.js +3 -2
  218. package/dist/runtime/query/group-by.js.map +1 -1
  219. package/dist/runtime/query/manifest-lookup.d.ts.map +1 -1
  220. package/dist/runtime/query/manifest-lookup.js +1 -1
  221. package/dist/runtime/query/manifest-lookup.js.map +1 -1
  222. package/dist/runtime/query/map-row.d.ts.map +1 -1
  223. package/dist/runtime/query/map-row.js +1 -1
  224. package/dist/runtime/query/map-row.js.map +1 -1
  225. package/dist/runtime/query/paginate.d.ts +3 -0
  226. package/dist/runtime/query/paginate.d.ts.map +1 -1
  227. package/dist/runtime/query/paginate.js +49 -11
  228. package/dist/runtime/query/paginate.js.map +1 -1
  229. package/dist/runtime/query/primary-key.d.ts +1 -1
  230. package/dist/runtime/query/primary-key.d.ts.map +1 -1
  231. package/dist/runtime/query/primary-key.js +45 -8
  232. package/dist/runtime/query/primary-key.js.map +1 -1
  233. package/dist/runtime/query/projection.d.ts +1 -0
  234. package/dist/runtime/query/projection.d.ts.map +1 -1
  235. package/dist/runtime/query/projection.js +23 -7
  236. package/dist/runtime/query/projection.js.map +1 -1
  237. package/dist/runtime/query/relation-planner.d.ts.map +1 -1
  238. package/dist/runtime/query/relation-planner.js +82 -53
  239. package/dist/runtime/query/relation-planner.js.map +1 -1
  240. package/dist/runtime/query/relation-writes.d.ts +3 -1
  241. package/dist/runtime/query/relation-writes.d.ts.map +1 -1
  242. package/dist/runtime/query/relation-writes.js +145 -54
  243. package/dist/runtime/query/relation-writes.js.map +1 -1
  244. package/dist/runtime/query/serialize-dialect.test.d.ts +2 -0
  245. package/dist/runtime/query/serialize-dialect.test.d.ts.map +1 -0
  246. package/dist/runtime/query/serialize-dialect.test.js +79 -0
  247. package/dist/runtime/query/serialize-dialect.test.js.map +1 -0
  248. package/dist/runtime/query/sqlite-constraint-errors.test.d.ts +2 -0
  249. package/dist/runtime/query/sqlite-constraint-errors.test.d.ts.map +1 -0
  250. package/dist/runtime/query/sqlite-constraint-errors.test.js +60 -0
  251. package/dist/runtime/query/sqlite-constraint-errors.test.js.map +1 -0
  252. package/dist/runtime/query/strip.d.ts.map +1 -1
  253. package/dist/runtime/query/strip.js.map +1 -1
  254. package/dist/runtime/query/table-index.d.ts.map +1 -1
  255. package/dist/runtime/query/table-index.js +4 -3
  256. package/dist/runtime/query/table-index.js.map +1 -1
  257. package/dist/runtime/query/unique.d.ts +8 -1
  258. package/dist/runtime/query/unique.d.ts.map +1 -1
  259. package/dist/runtime/query/unique.js +89 -4
  260. package/dist/runtime/query/unique.js.map +1 -1
  261. package/dist/runtime/query/unique.test.d.ts +2 -0
  262. package/dist/runtime/query/unique.test.d.ts.map +1 -0
  263. package/dist/runtime/query/unique.test.js +231 -0
  264. package/dist/runtime/query/unique.test.js.map +1 -0
  265. package/dist/runtime/query/update.d.ts.map +1 -1
  266. package/dist/runtime/query/update.js +30 -35
  267. package/dist/runtime/query/update.js.map +1 -1
  268. package/dist/runtime/query/update.test.d.ts +2 -0
  269. package/dist/runtime/query/update.test.d.ts.map +1 -0
  270. package/dist/runtime/query/update.test.js +186 -0
  271. package/dist/runtime/query/update.test.js.map +1 -0
  272. package/dist/runtime/query/updated-at.d.ts.map +1 -1
  273. package/dist/runtime/query/updated-at.js.map +1 -1
  274. package/dist/runtime/query/upsert.d.ts.map +1 -1
  275. package/dist/runtime/query/upsert.js +5 -7
  276. package/dist/runtime/query/upsert.js.map +1 -1
  277. package/dist/runtime/schema-error.d.ts.map +1 -1
  278. package/dist/runtime/schema-error.js +6 -2
  279. package/dist/runtime/schema-error.js.map +1 -1
  280. package/dist/runtime/sqlite-error.d.ts.map +1 -1
  281. package/dist/runtime/sqlite-error.js +11 -12
  282. package/dist/runtime/sqlite-error.js.map +1 -1
  283. package/dist/runtime/sqlite-open.d.ts +2 -0
  284. package/dist/runtime/sqlite-open.d.ts.map +1 -1
  285. package/dist/runtime/sqlite-open.js +18 -1
  286. package/dist/runtime/sqlite-open.js.map +1 -1
  287. package/dist/runtime/transaction.d.ts +4 -0
  288. package/dist/runtime/transaction.d.ts.map +1 -1
  289. package/dist/runtime/transaction.js +31 -1
  290. package/dist/runtime/transaction.js.map +1 -1
  291. package/dist/runtime/transaction.test.d.ts +2 -0
  292. package/dist/runtime/transaction.test.d.ts.map +1 -0
  293. package/dist/runtime/transaction.test.js +43 -0
  294. package/dist/runtime/transaction.test.js.map +1 -0
  295. package/dist/runtime/types.d.ts +50 -17
  296. package/dist/runtime/types.d.ts.map +1 -1
  297. package/dist/schema/column-where.d.ts +11 -1
  298. package/dist/schema/column-where.d.ts.map +1 -1
  299. package/dist/schema/column.d.ts +1 -1
  300. package/dist/schema/column.d.ts.map +1 -1
  301. package/dist/schema/column.js +1 -1
  302. package/dist/schema/column.js.map +1 -1
  303. package/dist/schema/define-schema.d.ts +1 -1
  304. package/dist/schema/define-schema.d.ts.map +1 -1
  305. package/dist/schema/define-schema.js +5 -23
  306. package/dist/schema/define-schema.js.map +1 -1
  307. package/dist/schema/index.d.ts +2 -2
  308. package/dist/schema/index.d.ts.map +1 -1
  309. package/dist/schema/index.js +1 -1
  310. package/dist/schema/index.js.map +1 -1
  311. package/dist/schema/relation-types.d.ts +29 -22
  312. package/dist/schema/relation-types.d.ts.map +1 -1
  313. package/dist/schema/relation.d.ts.map +1 -1
  314. package/dist/schema/relation.js +6 -4
  315. package/dist/schema/relation.js.map +1 -1
  316. package/dist/schema/table-registry.d.ts.map +1 -1
  317. package/dist/schema/table-registry.js +8 -2
  318. package/dist/schema/table-registry.js.map +1 -1
  319. package/dist/schema/table.d.ts +6 -3
  320. package/dist/schema/table.d.ts.map +1 -1
  321. package/dist/schema/table.js +30 -31
  322. package/dist/schema/table.js.map +1 -1
  323. package/dist/schema/types.d.ts +33 -25
  324. package/dist/schema/types.d.ts.map +1 -1
  325. package/dist/sql/builder.d.ts +5 -1
  326. package/dist/sql/builder.d.ts.map +1 -1
  327. package/dist/sql/builder.js +23 -3
  328. package/dist/sql/builder.js.map +1 -1
  329. package/dist/sql/index.d.ts +5 -2
  330. package/dist/sql/index.d.ts.map +1 -1
  331. package/dist/sql/index.js +5 -2
  332. package/dist/sql/index.js.map +1 -1
  333. package/dist/utils/case.d.ts +4 -0
  334. package/dist/utils/case.d.ts.map +1 -1
  335. package/dist/utils/case.js +11 -0
  336. package/dist/utils/case.js.map +1 -1
  337. package/dist/utils/dotenv.d.ts +8 -0
  338. package/dist/utils/dotenv.d.ts.map +1 -0
  339. package/dist/utils/dotenv.js +70 -0
  340. package/dist/utils/dotenv.js.map +1 -0
  341. package/dist/utils/dotenv.test.d.ts +2 -0
  342. package/dist/utils/dotenv.test.d.ts.map +1 -0
  343. package/dist/utils/dotenv.test.js +32 -0
  344. package/dist/utils/dotenv.test.js.map +1 -0
  345. package/dist/utils/inflect.d.ts +6 -0
  346. package/dist/utils/inflect.d.ts.map +1 -0
  347. package/dist/utils/inflect.js +80 -0
  348. package/dist/utils/inflect.js.map +1 -0
  349. package/docs/cli.md +6 -2
  350. package/docs/configuration.md +3 -1
  351. package/docs/errors.md +61 -6
  352. package/docs/examples.md +63 -13
  353. package/docs/getting-started.md +24 -1
  354. package/docs/migrations.md +15 -2
  355. package/docs/plugins.md +13 -1
  356. package/docs/queries.md +109 -10
  357. package/docs/relations.md +5 -1
  358. package/docs/schema.md +12 -5
  359. package/docs/sqlite.md +24 -10
  360. package/docs/transactions.md +13 -2
  361. package/package.json +4 -2
@@ -1,5 +1,6 @@
1
1
  import { NeoOrmDriverError } from "./errors.js";
2
- import { buildBeginSql } from "./transaction.js";
2
+ import { assertNoSavepointOptions, buildBeginSql, buildSqliteBeginSql, rollbackIgnoringFailure, } from "./transaction.js";
3
+ const SQLITE_DEFAULT_BUSY_TIMEOUT_MS = 5000;
3
4
  function convertPlaceholders(sql) {
4
5
  let out = "";
5
6
  let inSingle = false;
@@ -73,8 +74,10 @@ function convertPlaceholders(sql) {
73
74
  if (ch === "$" && next !== undefined && /\d/.test(next)) {
74
75
  out += "?";
75
76
  i++;
77
+ out += next;
76
78
  while (i + 1 < sql.length && /\d/.test(sql[i + 1] ?? "")) {
77
79
  i++;
80
+ out += sql[i];
78
81
  }
79
82
  continue;
80
83
  }
@@ -206,85 +209,90 @@ async function executeWriteStatements(db, sql) {
206
209
  }
207
210
  return { rows: [], rowCount: changes };
208
211
  }
209
- export function sqliteClient(db) {
212
+ const sqliteClients = new WeakMap();
213
+ export function sqliteClient(db, options) {
214
+ const cached = sqliteClients.get(db);
215
+ if (cached) {
216
+ return cached;
217
+ }
218
+ const client = createSqliteClient(db, options);
219
+ sqliteClients.set(db, client);
220
+ return client;
221
+ }
222
+ function applySqlitePragmas(db, options) {
210
223
  db.exec("PRAGMA foreign_keys = ON");
211
- const state = { txDepth: 0, savepointCounter: 0 };
212
- // A single SQLite connection is shared by every query on this client.
213
- // Interleaved async transactions would otherwise merge into one physical
214
- // transaction: a concurrent caller's `ROLLBACK TO SAVEPOINT` can undo
215
- // another transaction's in-flight writes (they execute after the
216
- // savepoint), silently corrupting the first transaction. Serializing
217
- // top-level transactions through a FIFO gate gives each exclusive access;
218
- // nested transactions use savepoints and bypass the queue.
219
- let txGate = Promise.resolve();
220
- const runTopLevelTransaction = async (fn, options) => {
221
- db.exec(buildSqliteBeginSql(options));
224
+ if (options?.busyTimeout !== false) {
225
+ const ms = typeof options?.busyTimeout === "number"
226
+ ? Math.max(0, Math.trunc(options.busyTimeout))
227
+ : SQLITE_DEFAULT_BUSY_TIMEOUT_MS;
228
+ db.exec(`PRAGMA busy_timeout = ${ms}`);
229
+ }
230
+ if (options?.wal !== false) {
222
231
  try {
223
- state.txDepth++;
224
- const result = await fn(client);
225
- db.exec("COMMIT");
226
- return result;
227
- }
228
- catch (err) {
229
- try {
230
- db.exec("ROLLBACK");
231
- }
232
- catch {
233
- // e.g. the failed COMMIT already rolled back; never mask err.
234
- }
235
- throw err;
232
+ db.exec("PRAGMA journal_mode = WAL");
236
233
  }
237
- finally {
238
- state.txDepth--;
234
+ catch {
235
+ // :memory: and some VFS cannot use WAL
239
236
  }
240
- };
241
- const client = {
242
- async query(text, params = []) {
243
- const sql = convertPlaceholders(text);
244
- try {
245
- if (params.length > 0) {
246
- const stmt = db.prepare(sql);
247
- const values = params.map(serializeParam);
248
- if (isReadStatement(sql)) {
249
- return sqliteRows(stmt.all(...values));
250
- }
251
- if (/\bRETURNING\b/i.test(sql)) {
252
- const rows = stmt.all(...values);
253
- return sqliteRows(rows);
254
- }
255
- const result = stmt.run(...values);
256
- return {
257
- rows: [],
258
- rowCount: Number(result.changes),
259
- };
260
- }
237
+ }
238
+ }
239
+ function createSqliteClient(db, options) {
240
+ applySqlitePragmas(db, options);
241
+ const state = { savepointCounter: 0 };
242
+ // One SQLite connection is shared by every query and transaction.
243
+ // A FIFO mutex serializes all outer access so a concurrent findMany/create
244
+ // cannot join an open BEGIN. Transaction callbacks receive an inner client
245
+ // that skips the mutex (they already hold it); nested transactions use
246
+ // savepoints on that inner client.
247
+ let gate = Promise.resolve();
248
+ function enqueue(work) {
249
+ const run = gate.then(work, work);
250
+ gate = run.then(() => undefined, () => undefined);
251
+ return run;
252
+ }
253
+ async function runQuery(text, params = []) {
254
+ const sql = convertPlaceholders(text);
255
+ try {
256
+ if (params.length > 0) {
257
+ const stmt = db.prepare(sql);
258
+ const values = params.map(serializeParam);
261
259
  if (isReadStatement(sql)) {
262
- return sqliteRows(db.prepare(sql).all());
260
+ return sqliteRows(stmt.all(...values));
263
261
  }
264
262
  if (/\bRETURNING\b/i.test(sql)) {
265
- return sqliteRows(db.prepare(sql).all());
263
+ const rows = stmt.all(...values);
264
+ return sqliteRows(rows);
266
265
  }
267
- return (await executeWriteStatements(db, sql));
266
+ const result = stmt.run(...values);
267
+ return {
268
+ rows: [],
269
+ rowCount: Number(result.changes),
270
+ };
268
271
  }
269
- catch (err) {
270
- if (err instanceof NeoOrmDriverError) {
271
- throw err;
272
- }
273
- throw new NeoOrmDriverError(sql, err);
272
+ if (isReadStatement(sql)) {
273
+ return sqliteRows(db.prepare(sql).all());
274
274
  }
275
- },
276
- async transaction(fn, options) {
277
- if (state.txDepth > 0) {
278
- if (options?.readOnly !== undefined ||
279
- options?.isolationLevel !== undefined) {
280
- throw new Error("Transaction options (readOnly, isolationLevel) cannot be used with nested transactions");
281
- }
282
- const savepointId = ++state.savepointCounter;
283
- const name = `neoorm_sp_${savepointId}`;
275
+ if (/\bRETURNING\b/i.test(sql)) {
276
+ return sqliteRows(db.prepare(sql).all());
277
+ }
278
+ return (await executeWriteStatements(db, sql));
279
+ }
280
+ catch (err) {
281
+ if (err instanceof NeoOrmDriverError) {
282
+ throw err;
283
+ }
284
+ throw new NeoOrmDriverError(sql, err);
285
+ }
286
+ }
287
+ function createTxClient() {
288
+ return {
289
+ query: runQuery,
290
+ async transaction(fn, options) {
291
+ assertNoSavepointOptions(options);
292
+ const name = `neoorm_sp_${++state.savepointCounter}`;
284
293
  db.exec(`SAVEPOINT ${name}`);
285
294
  try {
286
- state.txDepth++;
287
- const result = await fn(client);
295
+ const result = await fn(createTxClient());
288
296
  db.exec(`RELEASE SAVEPOINT ${name}`);
289
297
  return result;
290
298
  }
@@ -293,33 +301,48 @@ export function sqliteClient(db) {
293
301
  db.exec(`RELEASE SAVEPOINT ${name}`);
294
302
  throw err;
295
303
  }
296
- finally {
297
- state.txDepth--;
304
+ },
305
+ async close() { },
306
+ };
307
+ }
308
+ return {
309
+ query: (text, params = []) => enqueue(() => runQuery(text, params)),
310
+ transaction: (fn, options) => enqueue(async () => {
311
+ db.exec(buildSqliteBeginSql(options));
312
+ let queryOnly = false;
313
+ try {
314
+ if (options?.readOnly) {
315
+ db.exec("PRAGMA query_only = ON");
316
+ queryOnly = true;
298
317
  }
318
+ const result = await fn(createTxClient());
319
+ db.exec("COMMIT");
320
+ return result;
299
321
  }
300
- const gated = txGate.then(() => runTopLevelTransaction(fn, options), () => runTopLevelTransaction(fn, options));
301
- txGate = gated.then(() => undefined, () => undefined);
302
- return gated;
303
- },
322
+ catch (err) {
323
+ try {
324
+ db.exec("ROLLBACK");
325
+ }
326
+ catch {
327
+ // e.g. the failed COMMIT already rolled back; never mask err.
328
+ }
329
+ throw err;
330
+ }
331
+ finally {
332
+ if (queryOnly) {
333
+ try {
334
+ db.exec("PRAGMA query_only = OFF");
335
+ }
336
+ catch {
337
+ // connection may already be closed or rolled back
338
+ }
339
+ }
340
+ }
341
+ }),
304
342
  async close() {
305
343
  db.close();
306
344
  },
307
345
  };
308
- return client;
309
- }
310
- function buildSqliteBeginSql(options) {
311
- if (options?.readOnly) {
312
- return "BEGIN DEFERRED";
313
- }
314
- switch (options?.isolationLevel) {
315
- case "RepeatableRead":
316
- case "Serializable":
317
- return "BEGIN IMMEDIATE";
318
- case "ReadUncommitted":
319
- case "ReadCommitted":
320
- default:
321
- return "BEGIN";
322
- }
323
346
  }
324
347
  function createPgTxClient(state) {
325
348
  return {
@@ -336,10 +359,7 @@ function createPgTxClient(state) {
336
359
  }
337
360
  },
338
361
  async transaction(fn, options) {
339
- if (options?.readOnly !== undefined ||
340
- options?.isolationLevel !== undefined) {
341
- throw new Error("Transaction options (readOnly, isolationLevel) cannot be used with nested transactions");
342
- }
362
+ assertNoSavepointOptions(options);
343
363
  const savepointId = ++state.savepointCounter;
344
364
  const name = `neoorm_sp_${savepointId}`;
345
365
  await state.client.query(`SAVEPOINT ${name}`);
@@ -349,8 +369,10 @@ function createPgTxClient(state) {
349
369
  return result;
350
370
  }
351
371
  catch (err) {
352
- await state.client.query(`ROLLBACK TO SAVEPOINT ${name}`);
353
- await state.client.query(`RELEASE SAVEPOINT ${name}`);
372
+ await rollbackIgnoringFailure(async () => {
373
+ await state.client.query(`ROLLBACK TO SAVEPOINT ${name}`);
374
+ await state.client.query(`RELEASE SAVEPOINT ${name}`);
375
+ });
354
376
  throw err;
355
377
  }
356
378
  },
@@ -381,7 +403,7 @@ export function pgClient(pool) {
381
403
  return result;
382
404
  }
383
405
  catch (err) {
384
- await client.query("ROLLBACK");
406
+ await rollbackIgnoringFailure(() => client.query("ROLLBACK"));
385
407
  throw err;
386
408
  }
387
409
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../src/runtime/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../src/runtime/driver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACN,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,uBAAuB,GACvB,MAAM,kBAAkB,CAAC;AAmD1B,MAAM,8BAA8B,GAAG,IAAI,CAAC;AAE5C,SAAS,mBAAmB,CAAC,GAAW;IACvC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClB,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAExB,IAAI,aAAa,EAAE,CAAC;YACnB,GAAG,IAAI,EAAE,CAAC;YACV,IAAI,EAAE,KAAK,IAAI;gBAAE,aAAa,GAAG,KAAK,CAAC;YACvC,SAAS;QACV,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACpB,GAAG,IAAI,EAAE,CAAC;YACV,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBAChC,GAAG,IAAI,IAAI,CAAC;gBACZ,CAAC,EAAE,CAAC;gBACJ,cAAc,GAAG,KAAK,CAAC;YACxB,CAAC;YACD,SAAS;QACV,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACd,GAAG,IAAI,EAAE,CAAC;YACV,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAChB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;oBAClB,GAAG,IAAI,IAAI,CAAC;oBACZ,CAAC,EAAE,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACP,QAAQ,GAAG,KAAK,CAAC;gBAClB,CAAC;YACF,CAAC;YACD,SAAS;QACV,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACd,GAAG,IAAI,EAAE,CAAC;YACV,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAChB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;oBAClB,GAAG,IAAI,IAAI,CAAC;oBACZ,CAAC,EAAE,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACP,QAAQ,GAAG,KAAK,CAAC;gBAClB,CAAC;YACF,CAAC;YACD,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAChC,aAAa,GAAG,IAAI,CAAC;YACrB,GAAG,IAAI,EAAE,CAAC;YACV,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAChC,cAAc,GAAG,IAAI,CAAC;YACtB,GAAG,IAAI,EAAE,CAAC;YACV,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAChB,QAAQ,GAAG,IAAI,CAAC;YAChB,GAAG,IAAI,EAAE,CAAC;YACV,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAChB,QAAQ,GAAG,IAAI,CAAC;YAChB,GAAG,IAAI,EAAE,CAAC;YACV,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,GAAG,IAAI,GAAG,CAAC;YACX,CAAC,EAAE,CAAC;YACJ,GAAG,IAAI,IAAI,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC1D,CAAC,EAAE,CAAC;gBACJ,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;YACD,SAAS;QACV,CAAC;QACD,GAAG,IAAI,EAAE,CAAC;IACX,CAAC;IAED,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,SAAS,eAAe,CAAC,GAAW;IACnC,OAAO,qCAAqC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrC,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,IAAI,KAAK,YAAY,IAAI;QAAE,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IACtD,IACC,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC,EAC7B,CAAC;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,MAAiC;IACpD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,eAAe,CAAC,GAAW;IACnC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClB,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAExB,IAAI,aAAa,EAAE,CAAC;YACnB,OAAO,IAAI,EAAE,CAAC;YACd,IAAI,EAAE,KAAK,IAAI;gBAAE,aAAa,GAAG,KAAK,CAAC;YACvC,SAAS;QACV,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACpB,OAAO,IAAI,EAAE,CAAC;YACd,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBAChC,OAAO,IAAI,IAAI,CAAC;gBAChB,CAAC,EAAE,CAAC;gBACJ,cAAc,GAAG,KAAK,CAAC;YACxB,CAAC;YACD,SAAS;QACV,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,EAAE,CAAC;YACd,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAChB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;oBAClB,OAAO,IAAI,IAAI,CAAC;oBAChB,CAAC,EAAE,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACP,QAAQ,GAAG,KAAK,CAAC;gBAClB,CAAC;YACF,CAAC;YACD,SAAS;QACV,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,EAAE,CAAC;YACd,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAChB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;oBAClB,OAAO,IAAI,IAAI,CAAC;oBAChB,CAAC,EAAE,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACP,QAAQ,GAAG,KAAK,CAAC;gBAClB,CAAC;YACF,CAAC;YACD,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAChC,aAAa,GAAG,IAAI,CAAC;YACrB,OAAO,IAAI,EAAE,CAAC;YACd,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAChC,cAAc,GAAG,IAAI,CAAC;YACtB,OAAO,IAAI,EAAE,CAAC;YACd,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAChB,QAAQ,GAAG,IAAI,CAAC;YAChB,OAAO,IAAI,EAAE,CAAC;YACd,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAChB,QAAQ,GAAG,IAAI,CAAC;YAChB,OAAO,IAAI,EAAE,CAAC;YACd,SAAS;QACV,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,GAAG,EAAE,CAAC;YACb,SAAS;QACV,CAAC;QACD,OAAO,IAAI,EAAE,CAAC;IACf,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,sBAAsB,CACpC,EAAsB,EACtB,GAAW;IAEX,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC;YAC3C,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC;gBACJ,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACpB,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBAClB,MAAM,IAAI,iBAAiB,CAAC,SAAS,EAAE,OAAO,IAAI,UAAU,CAAC,CAAC;YAC/D,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,aAAa,GAAG,IAAI,OAAO,EAAsC,CAAC;AAExE,MAAM,UAAU,YAAY,CAC3B,EAAsB,EACtB,OAA6B;IAE7B,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,MAAM,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC/C,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC9B,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAC1B,EAAsB,EACtB,OAA6B;IAE7B,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACpC,IAAI,OAAO,EAAE,WAAW,KAAK,KAAK,EAAE,CAAC;QACpC,MAAM,EAAE,GACP,OAAO,OAAO,EAAE,WAAW,KAAK,QAAQ;YACvC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC9C,CAAC,CAAC,8BAA8B,CAAC;QACnC,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,OAAO,EAAE,GAAG,KAAK,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC;YACJ,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACR,uCAAuC;QACxC,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB,CAC1B,EAAsB,EACtB,OAA6B;IAE7B,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;IAEtC,kEAAkE;IAClE,2EAA2E;IAC3E,2EAA2E;IAC3E,uEAAuE;IACvE,mCAAmC;IACnC,IAAI,IAAI,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IAE/C,SAAS,OAAO,CAAI,IAAsB;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClC,IAAI,GAAG,GAAG,CAAC,IAAI,CACd,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CACf,CAAC;QACF,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,KAAK,UAAU,QAAQ,CACtB,IAAY,EACZ,MAAM,GAAc,EAAE;QAEtB,MAAM,GAAG,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC;YACJ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAC1C,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1B,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAoB,CAAC;gBAC3D,CAAC;gBACD,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;oBACjC,OAAO,UAAU,CAAC,IAAI,CAAoB,CAAC;gBAC5C,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;gBACnC,OAAO;oBACN,IAAI,EAAE,EAAE;oBACR,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;iBACb,CAAC;YACtB,CAAC;YAED,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAoB,CAAC;YAC7D,CAAC;YAED,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,OAAO,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAoB,CAAC;YAC7D,CAAC;YAED,OAAO,CAAC,MAAM,sBAAsB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAoB,CAAC;QACnE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;gBACtC,MAAM,GAAG,CAAC;YACX,CAAC;YACD,MAAM,IAAI,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;IAED,SAAS,cAAc;QACtB,OAAO;YACN,KAAK,EAAE,QAAQ;YACf,KAAK,CAAC,WAAW,CAChB,EAA0C,EAC1C,OAA4B;gBAE5B,wBAAwB,CAAC,OAAO,CAAC,CAAC;gBAClC,MAAM,IAAI,GAAG,aAAa,EAAE,KAAK,CAAC,gBAAgB,EAAE,CAAC;gBACrD,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;gBAC7B,IAAI,CAAC;oBACJ,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;oBAC1C,EAAE,CAAC,IAAI,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;oBACrC,OAAO,MAAM,CAAC;gBACf,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACd,EAAE,CAAC,IAAI,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;oBACzC,EAAE,CAAC,IAAI,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;oBACrC,MAAM,GAAG,CAAC;gBACX,CAAC;YACF,CAAC;YACD,KAAK,CAAC,KAAK,KAAmB,CAAC;SAC/B,CAAC;IACH,CAAC;IAED,OAAO;QACN,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnE,WAAW,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAC5B,OAAO,CAAC,KAAK,IAAI,EAAE;YAClB,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;YACtC,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC;gBACJ,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;oBACvB,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;oBAClC,SAAS,GAAG,IAAI,CAAC;gBAClB,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;gBAC1C,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,OAAO,MAAM,CAAC;YACf,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC;oBACJ,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACrB,CAAC;gBAAC,MAAM,CAAC;oBACR,8DAA8D;gBAC/D,CAAC;gBACD,MAAM,GAAG,CAAC;YACX,CAAC;oBAAS,CAAC;gBACV,IAAI,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC;wBACJ,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;oBACpC,CAAC;oBAAC,MAAM,CAAC;wBACR,kDAAkD;oBACnD,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC,CAAC;QACH,KAAK,CAAC,KAAK;YACV,EAAE,CAAC,KAAK,EAAE,CAAC;QACZ,CAAC;KACD,CAAC;AACH,CAAC;AAOD,SAAS,gBAAgB,CAAC,KAAgB;IACzC,OAAO;QACN,KAAK,CAAC,KAAK,CACV,IAAY,EACZ,MAAM,GAAc,EAAE;YAEtB,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAgB,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CACnD,IAAI,EACJ,MAAM,CACN,CAAC;gBACF,OAAO;oBACN,IAAI,EAAE,MAAM,CAAC,IAAW;oBACxB,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,CAAC;iBAC9B,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,MAAM,IAAI,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACxC,CAAC;QACF,CAAC;QACD,KAAK,CAAC,WAAW,CAChB,EAA0C,EAC1C,OAA4B;YAE5B,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAClC,MAAM,WAAW,GAAG,EAAE,KAAK,CAAC,gBAAgB,CAAC;YAC7C,MAAM,IAAI,GAAG,aAAa,WAAW,EAAE,CAAC;YACxC,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjD,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;gBACtD,OAAO,MAAM,CAAC;YACf,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,MAAM,uBAAuB,CAAC,KAAK,IAAI,EAAE;oBACxC,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;oBAC1D,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;gBACH,MAAM,GAAG,CAAC;YACX,CAAC;QACF,CAAC;QACD,KAAK,CAAC,KAAK,KAAmB,CAAC;KAC/B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAU;IAClC,OAAO;QACN,KAAK,CAAC,KAAK,CACV,IAAY,EACZ,MAAM,GAAc,EAAE;YAEtB,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAgB,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC3D,OAAO;oBACN,IAAI,EAAE,MAAM,CAAC,IAAW;oBACxB,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,CAAC;iBAC9B,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,MAAM,IAAI,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACxC,CAAC;QACF,CAAC;QACD,KAAK,CAAC,WAAW,CAChB,EAA0C,EAC1C,OAA4B;YAE5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,KAAK,GAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;YACzD,IAAI,CAAC;gBACJ,MAAM,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC3C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjD,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,OAAO,MAAM,CAAC;YACf,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,MAAM,uBAAuB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC9D,MAAM,GAAG,CAAC;YACX,CAAC;oBAAS,CAAC;gBACV,MAAM,CAAC,OAAO,EAAE,CAAC;YAClB,CAAC;QACF,CAAC;QACD,KAAK,CAAC,KAAK;YACV,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC;KACD,CAAC;AACH,CAAC"}
@@ -1,14 +1,15 @@
1
- import { NeoOrmQueryError, NeoOrmSchemaError, type QueryErrorContext, type QueryOperation, type SchemaErrorContext } from "./errors.js";
2
- export declare function schemaError(code: string, detail: string, ctx?: Omit<SchemaErrorContext, "detail" | "code">, suggestions?: string[], cause?: unknown): NeoOrmSchemaError;
3
- export declare function queryError(code: string, detail: string, ctx: Omit<QueryErrorContext, "detail" | "code" | "phase" | "sql"> & {
1
+ import type { QueryErrorCodeValue, SchemaErrorCodeValue } from "./error-codes.js";
2
+ import { NeoOrmSchemaError, type QueryErrorContext, type QueryOperation, type SchemaErrorContext } from "./errors.js";
3
+ export declare function schemaError(code: SchemaErrorCodeValue, detail: string, ctx?: Omit<SchemaErrorContext, "detail" | "code">, suggestions?: string[], cause?: unknown): NeoOrmSchemaError;
4
+ export declare function queryError(code: QueryErrorCodeValue, detail: string, ctx: Omit<QueryErrorContext, "detail" | "code" | "phase" | "sql"> & {
4
5
  phase?: "compile" | "runtime";
5
6
  sql?: string;
6
- }, suggestions?: string[], cause?: unknown): NeoOrmQueryError;
7
+ }, suggestions?: string[], cause?: unknown): import("./errors.js").NeoOrmQueryError;
7
8
  export declare function queryCompileError(operation: QueryOperation, detail: string, options: {
8
- code: string;
9
+ code: QueryErrorCodeValue;
9
10
  tableAccessor?: string;
10
11
  tableSqlName?: string;
11
12
  columnTsName?: string;
12
13
  suggestions?: string[];
13
- }): NeoOrmQueryError;
14
+ }): import("./errors.js").NeoOrmQueryError;
14
15
  //# sourceMappingURL=error-builders.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-builders.d.ts","sourceRoot":"","sources":["../../src/runtime/error-builders.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,MAAM,aAAa,CAAC;AAErB,wBAAgB,WAAW,CAC1B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,MAAM,CAAM,EACrD,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,GACb,iBAAiB,CAQnB;AAED,wBAAgB,UAAU,CACzB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC,GAAG;IACnE,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;CACb,EACD,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,GACb,gBAAgB,CA2BlB;AAED,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,cAAc,EACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IACR,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,GACC,gBAAgB,CAmBlB"}
1
+ {"version":3,"file":"error-builders.d.ts","sourceRoot":"","sources":["../../src/runtime/error-builders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,mBAAmB,EACnB,oBAAoB,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEN,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,MAAM,aAAa,CAAC;AAErB,wBAAgB,WAAW,CAC1B,IAAI,EAAE,oBAAoB,EAC1B,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,MAAM,CAAM,EACrD,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,GACb,iBAAiB,CAQnB;AAED,wBAAgB,UAAU,CACzB,IAAI,EAAE,mBAAmB,EACzB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC,GAAG;IACnE,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;CACb,EACD,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,0CA4Bf;AAED,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,cAAc,EACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IACR,IAAI,EAAE,mBAAmB,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,0CAoBD"}
@@ -1,4 +1,4 @@
1
- import { NeoOrmQueryError, NeoOrmSchemaError, } from "./errors.js";
1
+ import { createQueryError, NeoOrmSchemaError, } from "./errors.js";
2
2
  export function schemaError(code, detail, ctx = {}, suggestions, cause) {
3
3
  const context = {
4
4
  ...ctx,
@@ -34,7 +34,7 @@ export function queryError(code, detail, ctx, suggestions, cause) {
34
34
  : {}),
35
35
  ...(suggestions && suggestions.length > 0 ? { suggestions } : {}),
36
36
  };
37
- return new NeoOrmQueryError(context, cause);
37
+ return createQueryError(context, cause);
38
38
  }
39
39
  export function queryCompileError(operation, detail, options) {
40
40
  return queryError(options.code, detail, {
@@ -1 +1 @@
1
- {"version":3,"file":"error-builders.js","sourceRoot":"","sources":["../../src/runtime/error-builders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error-builders.js","sourceRoot":"","sources":["../../src/runtime/error-builders.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /** Dialect-agnostic query error codes. */
2
+ export declare const QueryErrorCode: {
3
+ readonly unique_violation: "unique_violation";
4
+ readonly not_null_violation: "not_null_violation";
5
+ readonly foreign_key_violation: "foreign_key_violation";
6
+ readonly check_violation: "check_violation";
7
+ readonly invalid_input: "invalid_input";
8
+ readonly relation_not_found: "relation_not_found";
9
+ readonly column_not_found: "column_not_found";
10
+ readonly empty_returning: "empty_returning";
11
+ readonly connection_error: "connection_error";
12
+ readonly driver_error: "driver_error";
13
+ readonly unknown_table: "unknown_table";
14
+ readonly unknown_column: "unknown_column";
15
+ readonly unknown_relation: "unknown_relation";
16
+ readonly unique_where_invalid: "unique_where_invalid";
17
+ readonly where_required: "where_required";
18
+ readonly invalid_args: "invalid_args";
19
+ readonly invalid_cursor: "invalid_cursor";
20
+ readonly invalid_nested_write: "invalid_nested_write";
21
+ readonly missing_primary_key: "missing_primary_key";
22
+ readonly unsupported_operation: "unsupported_operation";
23
+ };
24
+ export type QueryErrorCodeValue = (typeof QueryErrorCode)[keyof typeof QueryErrorCode];
25
+ /** Schema / migration / config error codes. */
26
+ export declare const SchemaErrorCode: {
27
+ readonly invalid_schema_export: "invalid_schema_export";
28
+ readonly unknown_column: "unknown_column";
29
+ readonly invalid_updated_at: "invalid_updated_at";
30
+ readonly unknown_table_accessor: "unknown_table_accessor";
31
+ readonly missing_primary_key: "missing_primary_key";
32
+ readonly invalid_column: "invalid_column";
33
+ readonly unknown_m2m_target: "unknown_m2m_target";
34
+ readonly unknown_m2m_through: "unknown_m2m_through";
35
+ readonly junction_collision: "junction_collision";
36
+ readonly unknown_junction_column: "unknown_junction_column";
37
+ readonly duplicate_inverse: "duplicate_inverse";
38
+ readonly schema_compile_error: "schema_compile_error";
39
+ readonly duplicate_table_sql_name: "duplicate_table_sql_name";
40
+ readonly unknown_fk_target: "unknown_fk_target";
41
+ readonly unknown_fk_column: "unknown_fk_column";
42
+ readonly unknown_column_kind: "unknown_column_kind";
43
+ readonly migration_failed: "migration_failed";
44
+ readonly migration_guard: "migration_guard";
45
+ readonly invalid_config: "invalid_config";
46
+ readonly plugin_error: "plugin_error";
47
+ };
48
+ export type SchemaErrorCodeValue = (typeof SchemaErrorCode)[keyof typeof SchemaErrorCode];
49
+ export declare const SCHEMA_DRIFT_QUERY_CODES: Set<QueryErrorCodeValue>;
50
+ //# sourceMappingURL=error-codes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/runtime/error-codes.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,eAAO,MAAM,cAAc;aAE1B,gBAAgB,EAAE,kBAAkB;aACpC,kBAAkB,EAAE,oBAAoB;aACxC,qBAAqB,EAAE,uBAAuB;aAC9C,eAAe,EAAE,iBAAiB;aAClC,aAAa,EAAE,eAAe;aAC9B,kBAAkB,EAAE,oBAAoB;aACxC,gBAAgB,EAAE,kBAAkB;aACpC,eAAe,EAAE,iBAAiB;aAClC,gBAAgB,EAAE,kBAAkB;aACpC,YAAY,EAAE,cAAc;aAG5B,aAAa,EAAE,eAAe;aAC9B,cAAc,EAAE,gBAAgB;aAChC,gBAAgB,EAAE,kBAAkB;aACpC,oBAAoB,EAAE,sBAAsB;aAC5C,cAAc,EAAE,gBAAgB;aAChC,YAAY,EAAE,cAAc;aAC5B,cAAc,EAAE,gBAAgB;aAChC,oBAAoB,EAAE,sBAAsB;aAC5C,mBAAmB,EAAE,qBAAqB;aAC1C,qBAAqB,EAAE,uBAAuB;CACrC,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC9B,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEtD,+CAA+C;AAC/C,eAAO,MAAM,eAAe;aAC3B,qBAAqB,EAAE,uBAAuB;aAC9C,cAAc,EAAE,gBAAgB;aAChC,kBAAkB,EAAE,oBAAoB;aACxC,sBAAsB,EAAE,wBAAwB;aAChD,mBAAmB,EAAE,qBAAqB;aAC1C,cAAc,EAAE,gBAAgB;aAChC,kBAAkB,EAAE,oBAAoB;aACxC,mBAAmB,EAAE,qBAAqB;aAC1C,kBAAkB,EAAE,oBAAoB;aACxC,uBAAuB,EAAE,yBAAyB;aAClD,iBAAiB,EAAE,mBAAmB;aACtC,oBAAoB,EAAE,sBAAsB;aAC5C,wBAAwB,EAAE,0BAA0B;aACpD,iBAAiB,EAAE,mBAAmB;aACtC,iBAAiB,EAAE,mBAAmB;aACtC,mBAAmB,EAAE,qBAAqB;aAC1C,gBAAgB,EAAE,kBAAkB;aACpC,eAAe,EAAE,iBAAiB;aAClC,cAAc,EAAE,gBAAgB;aAChC,YAAY,EAAE,cAAc;CACnB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC/B,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,wBAAwB,0BAInC,CAAC"}
@@ -0,0 +1,54 @@
1
+ /** Dialect-agnostic query error codes. */
2
+ export const QueryErrorCode = {
3
+ // Runtime constraint / DB errors
4
+ unique_violation: "unique_violation",
5
+ not_null_violation: "not_null_violation",
6
+ foreign_key_violation: "foreign_key_violation",
7
+ check_violation: "check_violation",
8
+ invalid_input: "invalid_input",
9
+ relation_not_found: "relation_not_found",
10
+ column_not_found: "column_not_found",
11
+ empty_returning: "empty_returning",
12
+ connection_error: "connection_error",
13
+ driver_error: "driver_error",
14
+ // Compile-time query errors
15
+ unknown_table: "unknown_table",
16
+ unknown_column: "unknown_column",
17
+ unknown_relation: "unknown_relation",
18
+ unique_where_invalid: "unique_where_invalid",
19
+ where_required: "where_required",
20
+ invalid_args: "invalid_args",
21
+ invalid_cursor: "invalid_cursor",
22
+ invalid_nested_write: "invalid_nested_write",
23
+ missing_primary_key: "missing_primary_key",
24
+ unsupported_operation: "unsupported_operation",
25
+ };
26
+ /** Schema / migration / config error codes. */
27
+ export const SchemaErrorCode = {
28
+ invalid_schema_export: "invalid_schema_export",
29
+ unknown_column: "unknown_column",
30
+ invalid_updated_at: "invalid_updated_at",
31
+ unknown_table_accessor: "unknown_table_accessor",
32
+ missing_primary_key: "missing_primary_key",
33
+ invalid_column: "invalid_column",
34
+ unknown_m2m_target: "unknown_m2m_target",
35
+ unknown_m2m_through: "unknown_m2m_through",
36
+ junction_collision: "junction_collision",
37
+ unknown_junction_column: "unknown_junction_column",
38
+ duplicate_inverse: "duplicate_inverse",
39
+ schema_compile_error: "schema_compile_error",
40
+ duplicate_table_sql_name: "duplicate_table_sql_name",
41
+ unknown_fk_target: "unknown_fk_target",
42
+ unknown_fk_column: "unknown_fk_column",
43
+ unknown_column_kind: "unknown_column_kind",
44
+ migration_failed: "migration_failed",
45
+ migration_guard: "migration_guard",
46
+ invalid_config: "invalid_config",
47
+ plugin_error: "plugin_error",
48
+ };
49
+ export const SCHEMA_DRIFT_QUERY_CODES = new Set([
50
+ QueryErrorCode.relation_not_found,
51
+ QueryErrorCode.column_not_found,
52
+ QueryErrorCode.foreign_key_violation,
53
+ ]);
54
+ //# sourceMappingURL=error-codes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../src/runtime/error-codes.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,iCAAiC;IACjC,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,YAAY,EAAE,cAAc;IAE5B,4BAA4B;IAC5B,aAAa,EAAE,eAAe;IAC9B,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,oBAAoB,EAAE,sBAAsB;IAC5C,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,oBAAoB,EAAE,sBAAsB;IAC5C,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;CACrC,CAAC;AAKX,+CAA+C;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,qBAAqB,EAAE,uBAAuB;IAC9C,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;IACxC,sBAAsB,EAAE,wBAAwB;IAChD,mBAAmB,EAAE,qBAAqB;IAC1C,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;IACxC,mBAAmB,EAAE,qBAAqB;IAC1C,kBAAkB,EAAE,oBAAoB;IACxC,uBAAuB,EAAE,yBAAyB;IAClD,iBAAiB,EAAE,mBAAmB;IACtC,oBAAoB,EAAE,sBAAsB;IAC5C,wBAAwB,EAAE,0BAA0B;IACpD,iBAAiB,EAAE,mBAAmB;IACtC,iBAAiB,EAAE,mBAAmB;IACtC,mBAAmB,EAAE,qBAAqB;IAC1C,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;CACnB,CAAC;AAKX,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAsB;IACpE,cAAc,CAAC,kBAAkB;IACjC,cAAc,CAAC,gBAAgB;IAC/B,cAAc,CAAC,qBAAqB;CACpC,CAAC,CAAC"}
@@ -8,6 +8,7 @@ export declare function accessorFromSqlName(manifest: Manifest, sqlName: string)
8
8
  export declare function resolveSqlColumnName(table: ManifestTable, name: string): string | undefined;
9
9
  export declare function suggestTableAccessor(input: string, accessors: readonly string[], manifest?: Manifest): string[];
10
10
  export declare function suggestTsColumn(input: string, table: ManifestTable, label?: string): string[];
11
+ export declare function suggestWhereOperator(input: string, operators: readonly string[]): string[];
11
12
  export declare function accessorFromSchemaSqlName(tables: Record<string, {
12
13
  readonly _tableName: string;
13
14
  }>, sqlName: string): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"error-hints.d.ts","sourceRoot":"","sources":["../../src/runtime/error-hints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAyBxD;AAgBD,wBAAgB,UAAU,CACzB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,KAAK,SAAI,GACP,MAAM,EAAE,CAmBV;AAED,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,GAAG,SAAI,GACL,MAAM,CASR;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,CAE/D;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,EAAE,CAEhE;AAED,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAQpB;AAED,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,QAAQ,CAAC,EAAE,QAAQ,GACjB,MAAM,EAAE,CA4BV;AAED,wBAAgB,eAAe,CAC9B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,KAAK,CAAC,EAAE,MAAM,GACZ,MAAM,EAAE,CA6BV;AAED,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,EACvD,OAAO,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GACrD,MAAM,EAAE,CA2BV;AAED,wBAAgB,mBAAmB,CAClC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,aAAa,CAAC,EAAE,MAAM,GACpB,MAAM,EAAE,CAiBV;AAED,wBAAgB,eAAe,CAC9B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,SAAS,MAAM,EAAE,GAC9B,MAAM,EAAE,CAiBV"}
1
+ {"version":3,"file":"error-hints.d.ts","sourceRoot":"","sources":["../../src/runtime/error-hints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAyBxD;AAgBD,wBAAgB,UAAU,CACzB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,KAAK,SAAI,GACP,MAAM,EAAE,CAsBV;AAED,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,GAAG,SAAI,GACL,MAAM,CASR;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,CAE/D;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,EAAE,CAEhE;AAED,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAQpB;AAED,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,QAAQ,CAAC,EAAE,QAAQ,GACjB,MAAM,EAAE,CA4BV;AAED,wBAAgB,eAAe,CAC9B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,KAAK,CAAC,EAAE,MAAM,GACZ,MAAM,EAAE,CA6BV;AAED,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,EAAE,CAUV;AAED,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,EACvD,OAAO,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GACrD,MAAM,EAAE,CA2BV;AAED,wBAAgB,mBAAmB,CAClC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,aAAa,CAAC,EAAE,MAAM,GACpB,MAAM,EAAE,CAiBV;AAED,wBAAgB,eAAe,CAC9B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,SAAS,MAAM,EAAE,GAC9B,MAAM,EAAE,CAiBV"}
@@ -50,7 +50,8 @@ export function didYouMean(input, candidates, limit = 3) {
50
50
  .filter(({ score, candidate }) => {
51
51
  if (score <= 3)
52
52
  return true;
53
- return levenshtein(input.toLowerCase(), candidate.toLowerCase()) <= maxDistance;
53
+ return (levenshtein(input.toLowerCase(), candidate.toLowerCase()) <=
54
+ maxDistance);
54
55
  })
55
56
  .slice(0, limit)
56
57
  .map(({ candidate }) => candidate);
@@ -127,6 +128,17 @@ export function suggestTsColumn(input, table, label) {
127
128
  }
128
129
  return suggestions;
129
130
  }
131
+ export function suggestWhereOperator(input, operators) {
132
+ const suggestions = [];
133
+ const matches = didYouMean(input, operators);
134
+ for (const match of matches) {
135
+ suggestions.push(`Did you mean "${match}"?`);
136
+ }
137
+ if (operators.length > 0) {
138
+ suggestions.push(`Valid operators: ${formatCandidateList(operators)}`);
139
+ }
140
+ return suggestions;
141
+ }
130
142
  export function accessorFromSchemaSqlName(tables, sqlName) {
131
143
  for (const [accessor, table] of Object.entries(tables)) {
132
144
  if (table._tableName === sqlName) {
@@ -1 +1 @@
1
- {"version":3,"file":"error-hints.js","sourceRoot":"","sources":["../../src/runtime/error-hints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error-hints.js","sourceRoot":"","sources":["../../src/runtime/error-hints.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAC,CAAS,EAAE,CAAS;IAC/C,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC,MAAM,CAAC;IACpC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC,MAAM,CAAC;IAEpC,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CACvB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,CAAC,CAAE,GAAG,CAAC,EACtB,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,GAAG,CAAC,CAAE,GAAG,CAAC,EACtB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,CAAC,GAAG,CAAC,CAAE,GAAG,IAAI,CAC7B,CAAC;QACH,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC;AACrC,CAAC;AAED,SAAS,cAAc,CAAC,KAAa,EAAE,SAAiB;IACvD,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACvC,MAAM,cAAc,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAE/C,IAAI,SAAS,KAAK,KAAK;QAAE,OAAO,CAAC,CAAC;IAClC,IAAI,cAAc,KAAK,UAAU;QAAE,OAAO,CAAC,CAAC;IAC5C,IAAI,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,CAAC,CAAC;IACpD,IAAI,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxD,OAAO,EAAE,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,UAAU,CACzB,KAAa,EACb,UAA6B,EAC7B,KAAK,GAAG,CAAC;IAET,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,UAAU;SACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC;SAC1B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACpB,SAAS;QACT,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC;KACvC,CAAC,CAAC;SACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAEpC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9D,OAAO,MAAM;SACX,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;QAChC,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5B,OAAO,CACN,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;YACzD,WAAW,CACX,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;SACf,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAClC,UAA6B,EAC7B,GAAG,GAAG,CAAC;IAEP,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACd,OAAO,GAAG,IAAI,UAAU,IAAI,OAAO,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAkB;IACpD,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAoB;IACrD,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAClC,QAAkB,EAClB,OAAe;IAEf,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACpD,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC,QAAQ,CAAC;QACvB,CAAC;IACF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,KAAoB,EACpB,IAAY;IAEZ,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,CAC9C,CAAC;IACF,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,KAAa,EACb,SAA4B,EAC5B,QAAmB;IAEnB,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,IAAI,QAAQ,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACrD,IAAI,OAAO,EAAE,CAAC;YACb,WAAW,CAAC,IAAI,CACf,IAAI,KAAK,oDAAoD,OAAO,WAAW,CAC/E,CAAC;QACH,CAAC;IACF,CAAC;IAED,WAAW,CAAC,IAAI,CACf,6EAA6E,CAC7E,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC7C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CACf,0BAA0B,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAC1D,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,eAAe,CAC9B,KAAa,EACb,KAAoB,EACpB,KAAc;IAEd,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAEpD,IAAI,QAAQ,EAAE,CAAC;QACd,WAAW,CAAC,IAAI,CACf,6CAA6C,KAAK,0BAA0B,QAAQ,GAAG,CACvF,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,iBAAiB,QAAQ,IAAI,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACP,IAAI,KAAK,EAAE,CAAC;YACX,WAAW,CAAC,IAAI,CACf,kCAAkC,KAAK,wBAAwB,CAC/D,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC3C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC7B,WAAW,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;QAC9C,CAAC;IACF,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,WAAW,CAAC,IAAI,CACf,qBAAqB,KAAK,CAAC,QAAQ,MAAM,mBAAmB,CAAC,OAAO,CAAC,EAAE,CACvE,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,KAAa,EACb,SAA4B;IAE5B,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC7C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,oBAAoB,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACxC,MAAuD,EACvD,OAAe;IAEf,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,IAAI,KAAK,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;YAClC,OAAO,QAAQ,CAAC;QACjB,CAAC;IACF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,0BAA0B,CACzC,KAAa,EACb,MAAuD;IAEvD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,MAAM,OAAO,GAAG,yBAAyB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzD,IAAI,OAAO,EAAE,CAAC;QACb,WAAW,CAAC,IAAI,CACf,IAAI,KAAK,oDAAoD,OAAO,WAAW,CAC/E,CAAC;IACH,CAAC;IAED,WAAW,CAAC,IAAI,CACf,6EAA6E,CAC7E,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC7C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CACf,0BAA0B,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAC1D,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAClC,KAAa,EACb,OAAgC,EAChC,aAAsB;IAEtB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAChD,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC/C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,WAAW,CAAC,IAAI,CACf,iBAAiB,MAAM,KAAK,mBAAmB,CAAC,WAAW,CAAC,EAAE,CAC9D,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,eAAe,CAC9B,KAAa,EACb,KAAoB,EACpB,aAAgC;IAEhC,MAAM,WAAW,GAAa;QAC7B,oEAAoE;KACpE,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACjD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,WAAW,CAAC,IAAI,CACf,uBAAuB,KAAK,CAAC,QAAQ,MAAM,mBAAmB,CAAC,aAAa,CAAC,EAAE,CAC/E,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC"}