@quereus/quereus 4.6.0 → 4.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 (584) hide show
  1. package/README.md +2 -2
  2. package/dist/src/common/errors.d.ts +17 -0
  3. package/dist/src/common/errors.d.ts.map +1 -1
  4. package/dist/src/common/errors.js +21 -0
  5. package/dist/src/common/errors.js.map +1 -1
  6. package/dist/src/common/types.d.ts +19 -0
  7. package/dist/src/common/types.d.ts.map +1 -1
  8. package/dist/src/common/types.js.map +1 -1
  9. package/dist/src/core/database-assertions.d.ts +4 -3
  10. package/dist/src/core/database-assertions.d.ts.map +1 -1
  11. package/dist/src/core/database-assertions.js +44 -14
  12. package/dist/src/core/database-assertions.js.map +1 -1
  13. package/dist/src/core/database-events.d.ts +62 -0
  14. package/dist/src/core/database-events.d.ts.map +1 -1
  15. package/dist/src/core/database-events.js +88 -2
  16. package/dist/src/core/database-events.js.map +1 -1
  17. package/dist/src/core/database-internal.d.ts +5 -2
  18. package/dist/src/core/database-internal.d.ts.map +1 -1
  19. package/dist/src/core/database-materialized-views-plan-builders.d.ts.map +1 -1
  20. package/dist/src/core/database-materialized-views-plan-builders.js +4 -2
  21. package/dist/src/core/database-materialized-views-plan-builders.js.map +1 -1
  22. package/dist/src/core/database-materialized-views-plans.d.ts +12 -2
  23. package/dist/src/core/database-materialized-views-plans.d.ts.map +1 -1
  24. package/dist/src/core/database-materialized-views.d.ts +46 -0
  25. package/dist/src/core/database-materialized-views.d.ts.map +1 -1
  26. package/dist/src/core/database-materialized-views.js +75 -4
  27. package/dist/src/core/database-materialized-views.js.map +1 -1
  28. package/dist/src/core/database.d.ts +48 -2
  29. package/dist/src/core/database.d.ts.map +1 -1
  30. package/dist/src/core/database.js +222 -11
  31. package/dist/src/core/database.js.map +1 -1
  32. package/dist/src/core/derived-row-validator.d.ts.map +1 -1
  33. package/dist/src/core/derived-row-validator.js +7 -1
  34. package/dist/src/core/derived-row-validator.js.map +1 -1
  35. package/dist/src/core/statement.d.ts.map +1 -1
  36. package/dist/src/core/statement.js +101 -5
  37. package/dist/src/core/statement.js.map +1 -1
  38. package/dist/src/emit/ast-stringify.d.ts +18 -2
  39. package/dist/src/emit/ast-stringify.d.ts.map +1 -1
  40. package/dist/src/emit/ast-stringify.js +22 -4
  41. package/dist/src/emit/ast-stringify.js.map +1 -1
  42. package/dist/src/func/builtins/explain.d.ts.map +1 -1
  43. package/dist/src/func/builtins/explain.js +19 -5
  44. package/dist/src/func/builtins/explain.js.map +1 -1
  45. package/dist/src/func/builtins/scalar.d.ts.map +1 -1
  46. package/dist/src/func/builtins/scalar.js +24 -20
  47. package/dist/src/func/builtins/scalar.js.map +1 -1
  48. package/dist/src/func/builtins/schema.d.ts.map +1 -1
  49. package/dist/src/func/builtins/schema.js +32 -5
  50. package/dist/src/func/builtins/schema.js.map +1 -1
  51. package/dist/src/index.d.ts +9 -5
  52. package/dist/src/index.d.ts.map +1 -1
  53. package/dist/src/index.js +7 -5
  54. package/dist/src/index.js.map +1 -1
  55. package/dist/src/parser/ast.d.ts +58 -1
  56. package/dist/src/parser/ast.d.ts.map +1 -1
  57. package/dist/src/parser/parser.js +1 -1
  58. package/dist/src/parser/parser.js.map +1 -1
  59. package/dist/src/parser/utils.d.ts +13 -1
  60. package/dist/src/parser/utils.d.ts.map +1 -1
  61. package/dist/src/parser/utils.js +14 -0
  62. package/dist/src/parser/utils.js.map +1 -1
  63. package/dist/src/planner/analysis/assertion-classifier.d.ts.map +1 -1
  64. package/dist/src/planner/analysis/assertion-classifier.js +7 -2
  65. package/dist/src/planner/analysis/assertion-classifier.js.map +1 -1
  66. package/dist/src/planner/analysis/assertion-hoist-cache.d.ts.map +1 -1
  67. package/dist/src/planner/analysis/assertion-hoist-cache.js +5 -0
  68. package/dist/src/planner/analysis/assertion-hoist-cache.js.map +1 -1
  69. package/dist/src/planner/analysis/change-scope.d.ts +11 -3
  70. package/dist/src/planner/analysis/change-scope.d.ts.map +1 -1
  71. package/dist/src/planner/analysis/change-scope.js +5 -4
  72. package/dist/src/planner/analysis/change-scope.js.map +1 -1
  73. package/dist/src/planner/analysis/coverage-prover.d.ts.map +1 -1
  74. package/dist/src/planner/analysis/coverage-prover.js +13 -5
  75. package/dist/src/planner/analysis/coverage-prover.js.map +1 -1
  76. package/dist/src/planner/analysis/equi-correlation.d.ts +6 -1
  77. package/dist/src/planner/analysis/equi-correlation.d.ts.map +1 -1
  78. package/dist/src/planner/analysis/equi-correlation.js +8 -1
  79. package/dist/src/planner/analysis/equi-correlation.js.map +1 -1
  80. package/dist/src/planner/analysis/predicate-dependencies.d.ts +34 -0
  81. package/dist/src/planner/analysis/predicate-dependencies.d.ts.map +1 -0
  82. package/dist/src/planner/analysis/predicate-dependencies.js +60 -0
  83. package/dist/src/planner/analysis/predicate-dependencies.js.map +1 -0
  84. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts +1 -1
  85. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts.map +1 -1
  86. package/dist/src/planner/analysis/query-rewrite-matcher.js +0 -26
  87. package/dist/src/planner/analysis/query-rewrite-matcher.js.map +1 -1
  88. package/dist/src/planner/building/alter-table.d.ts.map +1 -1
  89. package/dist/src/planner/building/alter-table.js +53 -17
  90. package/dist/src/planner/building/alter-table.js.map +1 -1
  91. package/dist/src/planner/building/constraint-builder.d.ts.map +1 -1
  92. package/dist/src/planner/building/constraint-builder.js +9 -5
  93. package/dist/src/planner/building/constraint-builder.js.map +1 -1
  94. package/dist/src/planner/building/create-assertion.d.ts.map +1 -1
  95. package/dist/src/planner/building/create-assertion.js +72 -1
  96. package/dist/src/planner/building/create-assertion.js.map +1 -1
  97. package/dist/src/planner/building/create-view.d.ts +6 -1
  98. package/dist/src/planner/building/create-view.d.ts.map +1 -1
  99. package/dist/src/planner/building/create-view.js +12 -3
  100. package/dist/src/planner/building/create-view.js.map +1 -1
  101. package/dist/src/planner/building/ddl.d.ts.map +1 -1
  102. package/dist/src/planner/building/ddl.js +6 -2
  103. package/dist/src/planner/building/ddl.js.map +1 -1
  104. package/dist/src/planner/building/delete.d.ts.map +1 -1
  105. package/dist/src/planner/building/delete.js +23 -10
  106. package/dist/src/planner/building/delete.js.map +1 -1
  107. package/dist/src/planner/building/dml-target.d.ts.map +1 -1
  108. package/dist/src/planner/building/dml-target.js +4 -0
  109. package/dist/src/planner/building/dml-target.js.map +1 -1
  110. package/dist/src/planner/building/drop-assertion.d.ts.map +1 -1
  111. package/dist/src/planner/building/drop-assertion.js +3 -1
  112. package/dist/src/planner/building/drop-assertion.js.map +1 -1
  113. package/dist/src/planner/building/foreign-key-builder.d.ts.map +1 -1
  114. package/dist/src/planner/building/foreign-key-builder.js +7 -5
  115. package/dist/src/planner/building/foreign-key-builder.js.map +1 -1
  116. package/dist/src/planner/building/function-call.d.ts +35 -0
  117. package/dist/src/planner/building/function-call.d.ts.map +1 -1
  118. package/dist/src/planner/building/function-call.js +53 -40
  119. package/dist/src/planner/building/function-call.js.map +1 -1
  120. package/dist/src/planner/building/insert.d.ts.map +1 -1
  121. package/dist/src/planner/building/insert.js +185 -48
  122. package/dist/src/planner/building/insert.js.map +1 -1
  123. package/dist/src/planner/building/materialized-view.d.ts.map +1 -1
  124. package/dist/src/planner/building/materialized-view.js +3 -1
  125. package/dist/src/planner/building/materialized-view.js.map +1 -1
  126. package/dist/src/planner/building/schema-authored-context.d.ts +69 -0
  127. package/dist/src/planner/building/schema-authored-context.d.ts.map +1 -0
  128. package/dist/src/planner/building/schema-authored-context.js +75 -0
  129. package/dist/src/planner/building/schema-authored-context.js.map +1 -0
  130. package/dist/src/planner/building/schema-resolution.d.ts.map +1 -1
  131. package/dist/src/planner/building/schema-resolution.js +7 -4
  132. package/dist/src/planner/building/schema-resolution.js.map +1 -1
  133. package/dist/src/planner/building/select-aggregates.d.ts +187 -2
  134. package/dist/src/planner/building/select-aggregates.d.ts.map +1 -1
  135. package/dist/src/planner/building/select-aggregates.js +414 -81
  136. package/dist/src/planner/building/select-aggregates.js.map +1 -1
  137. package/dist/src/planner/building/select-compound.js +2 -2
  138. package/dist/src/planner/building/select-compound.js.map +1 -1
  139. package/dist/src/planner/building/select-context.d.ts +91 -0
  140. package/dist/src/planner/building/select-context.d.ts.map +1 -1
  141. package/dist/src/planner/building/select-context.js +113 -0
  142. package/dist/src/planner/building/select-context.js.map +1 -1
  143. package/dist/src/planner/building/select-modifiers.d.ts +10 -3
  144. package/dist/src/planner/building/select-modifiers.d.ts.map +1 -1
  145. package/dist/src/planner/building/select-modifiers.js +29 -8
  146. package/dist/src/planner/building/select-modifiers.js.map +1 -1
  147. package/dist/src/planner/building/select-ordinal.d.ts +64 -19
  148. package/dist/src/planner/building/select-ordinal.d.ts.map +1 -1
  149. package/dist/src/planner/building/select-ordinal.js +79 -30
  150. package/dist/src/planner/building/select-ordinal.js.map +1 -1
  151. package/dist/src/planner/building/select-projections.d.ts +1 -1
  152. package/dist/src/planner/building/select-projections.d.ts.map +1 -1
  153. package/dist/src/planner/building/select-projections.js +18 -11
  154. package/dist/src/planner/building/select-projections.js.map +1 -1
  155. package/dist/src/planner/building/select-window.d.ts +13 -3
  156. package/dist/src/planner/building/select-window.d.ts.map +1 -1
  157. package/dist/src/planner/building/select-window.js +142 -37
  158. package/dist/src/planner/building/select-window.js.map +1 -1
  159. package/dist/src/planner/building/select.d.ts.map +1 -1
  160. package/dist/src/planner/building/select.js +129 -59
  161. package/dist/src/planner/building/select.js.map +1 -1
  162. package/dist/src/planner/building/update.d.ts.map +1 -1
  163. package/dist/src/planner/building/update.js +27 -13
  164. package/dist/src/planner/building/update.js.map +1 -1
  165. package/dist/src/planner/building/view-mutation-builder.d.ts +1 -1
  166. package/dist/src/planner/building/view-mutation-builder.d.ts.map +1 -1
  167. package/dist/src/planner/building/view-mutation-builder.js +102 -8
  168. package/dist/src/planner/building/view-mutation-builder.js.map +1 -1
  169. package/dist/src/planner/building/with.d.ts.map +1 -1
  170. package/dist/src/planner/building/with.js +34 -4
  171. package/dist/src/planner/building/with.js.map +1 -1
  172. package/dist/src/planner/cache/correlation-detector.d.ts +15 -0
  173. package/dist/src/planner/cache/correlation-detector.d.ts.map +1 -1
  174. package/dist/src/planner/cache/correlation-detector.js +26 -0
  175. package/dist/src/planner/cache/correlation-detector.js.map +1 -1
  176. package/dist/src/planner/cache/materialization-advisory.d.ts +7 -0
  177. package/dist/src/planner/cache/materialization-advisory.d.ts.map +1 -1
  178. package/dist/src/planner/cache/materialization-advisory.js +12 -3
  179. package/dist/src/planner/cache/materialization-advisory.js.map +1 -1
  180. package/dist/src/planner/framework/characteristics.d.ts +9 -0
  181. package/dist/src/planner/framework/characteristics.d.ts.map +1 -1
  182. package/dist/src/planner/framework/characteristics.js.map +1 -1
  183. package/dist/src/planner/framework/pass.d.ts +2 -0
  184. package/dist/src/planner/framework/pass.d.ts.map +1 -1
  185. package/dist/src/planner/framework/pass.js +15 -0
  186. package/dist/src/planner/framework/pass.js.map +1 -1
  187. package/dist/src/planner/mutation/backward-body.d.ts.map +1 -1
  188. package/dist/src/planner/mutation/backward-body.js +4 -1
  189. package/dist/src/planner/mutation/backward-body.js.map +1 -1
  190. package/dist/src/planner/mutation/body-context.d.ts +23 -0
  191. package/dist/src/planner/mutation/body-context.d.ts.map +1 -0
  192. package/dist/src/planner/mutation/body-context.js +26 -0
  193. package/dist/src/planner/mutation/body-context.js.map +1 -0
  194. package/dist/src/planner/mutation/cte-flatten.js +15 -2
  195. package/dist/src/planner/mutation/cte-flatten.js.map +1 -1
  196. package/dist/src/planner/mutation/decomposition.d.ts +8 -0
  197. package/dist/src/planner/mutation/decomposition.d.ts.map +1 -1
  198. package/dist/src/planner/mutation/decomposition.js +8 -3
  199. package/dist/src/planner/mutation/decomposition.js.map +1 -1
  200. package/dist/src/planner/mutation/lens-enforcement.js +1 -1
  201. package/dist/src/planner/mutation/multi-source.d.ts +7 -0
  202. package/dist/src/planner/mutation/multi-source.d.ts.map +1 -1
  203. package/dist/src/planner/mutation/multi-source.js +5 -0
  204. package/dist/src/planner/mutation/multi-source.js.map +1 -1
  205. package/dist/src/planner/mutation/mutation-diagnostic.d.ts +1 -1
  206. package/dist/src/planner/mutation/mutation-diagnostic.d.ts.map +1 -1
  207. package/dist/src/planner/mutation/mutation-diagnostic.js.map +1 -1
  208. package/dist/src/planner/mutation/scope-transform.d.ts +32 -0
  209. package/dist/src/planner/mutation/scope-transform.d.ts.map +1 -1
  210. package/dist/src/planner/mutation/scope-transform.js +181 -33
  211. package/dist/src/planner/mutation/scope-transform.js.map +1 -1
  212. package/dist/src/planner/mutation/set-op.d.ts.map +1 -1
  213. package/dist/src/planner/mutation/set-op.js +66 -16
  214. package/dist/src/planner/mutation/set-op.js.map +1 -1
  215. package/dist/src/planner/mutation/single-source.d.ts.map +1 -1
  216. package/dist/src/planner/mutation/single-source.js +100 -24
  217. package/dist/src/planner/mutation/single-source.js.map +1 -1
  218. package/dist/src/planner/nodes/add-constraint-node.d.ts +15 -1
  219. package/dist/src/planner/nodes/add-constraint-node.d.ts.map +1 -1
  220. package/dist/src/planner/nodes/add-constraint-node.js +10 -1
  221. package/dist/src/planner/nodes/add-constraint-node.js.map +1 -1
  222. package/dist/src/planner/nodes/aggregate-node.d.ts +14 -5
  223. package/dist/src/planner/nodes/aggregate-node.d.ts.map +1 -1
  224. package/dist/src/planner/nodes/aggregate-node.js +28 -21
  225. package/dist/src/planner/nodes/aggregate-node.js.map +1 -1
  226. package/dist/src/planner/nodes/alter-table-node.d.ts +27 -2
  227. package/dist/src/planner/nodes/alter-table-node.d.ts.map +1 -1
  228. package/dist/src/planner/nodes/alter-table-node.js +49 -2
  229. package/dist/src/planner/nodes/alter-table-node.js.map +1 -1
  230. package/dist/src/planner/nodes/constraint-check-node.d.ts.map +1 -1
  231. package/dist/src/planner/nodes/constraint-check-node.js +17 -19
  232. package/dist/src/planner/nodes/constraint-check-node.js.map +1 -1
  233. package/dist/src/planner/nodes/create-assertion-node.d.ts +2 -1
  234. package/dist/src/planner/nodes/create-assertion-node.d.ts.map +1 -1
  235. package/dist/src/planner/nodes/create-assertion-node.js +5 -2
  236. package/dist/src/planner/nodes/create-assertion-node.js.map +1 -1
  237. package/dist/src/planner/nodes/cte-node.d.ts +19 -9
  238. package/dist/src/planner/nodes/cte-node.d.ts.map +1 -1
  239. package/dist/src/planner/nodes/cte-node.js +25 -9
  240. package/dist/src/planner/nodes/cte-node.js.map +1 -1
  241. package/dist/src/planner/nodes/delete-node.d.ts +20 -2
  242. package/dist/src/planner/nodes/delete-node.d.ts.map +1 -1
  243. package/dist/src/planner/nodes/delete-node.js +11 -2
  244. package/dist/src/planner/nodes/delete-node.js.map +1 -1
  245. package/dist/src/planner/nodes/dml-executor-node.d.ts +58 -1
  246. package/dist/src/planner/nodes/dml-executor-node.d.ts.map +1 -1
  247. package/dist/src/planner/nodes/dml-executor-node.js +107 -15
  248. package/dist/src/planner/nodes/dml-executor-node.js.map +1 -1
  249. package/dist/src/planner/nodes/drop-assertion-node.d.ts +2 -1
  250. package/dist/src/planner/nodes/drop-assertion-node.d.ts.map +1 -1
  251. package/dist/src/planner/nodes/drop-assertion-node.js +5 -2
  252. package/dist/src/planner/nodes/drop-assertion-node.js.map +1 -1
  253. package/dist/src/planner/nodes/filter.d.ts.map +1 -1
  254. package/dist/src/planner/nodes/filter.js +12 -6
  255. package/dist/src/planner/nodes/filter.js.map +1 -1
  256. package/dist/src/planner/nodes/hash-aggregate.d.ts +0 -5
  257. package/dist/src/planner/nodes/hash-aggregate.d.ts.map +1 -1
  258. package/dist/src/planner/nodes/hash-aggregate.js +17 -20
  259. package/dist/src/planner/nodes/hash-aggregate.js.map +1 -1
  260. package/dist/src/planner/nodes/insert-node.d.ts +19 -2
  261. package/dist/src/planner/nodes/insert-node.d.ts.map +1 -1
  262. package/dist/src/planner/nodes/insert-node.js +10 -2
  263. package/dist/src/planner/nodes/insert-node.js.map +1 -1
  264. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts +42 -10
  265. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts.map +1 -1
  266. package/dist/src/planner/nodes/key-set-semi-join-node.js +85 -16
  267. package/dist/src/planner/nodes/key-set-semi-join-node.js.map +1 -1
  268. package/dist/src/planner/nodes/lens-auxiliary-access-node.d.ts +5 -0
  269. package/dist/src/planner/nodes/lens-auxiliary-access-node.d.ts.map +1 -1
  270. package/dist/src/planner/nodes/lens-auxiliary-access-node.js.map +1 -1
  271. package/dist/src/planner/nodes/plan-node.d.ts +5 -0
  272. package/dist/src/planner/nodes/plan-node.d.ts.map +1 -1
  273. package/dist/src/planner/nodes/plan-node.js +12 -0
  274. package/dist/src/planner/nodes/plan-node.js.map +1 -1
  275. package/dist/src/planner/nodes/project-node.d.ts.map +1 -1
  276. package/dist/src/planner/nodes/project-node.js +16 -35
  277. package/dist/src/planner/nodes/project-node.js.map +1 -1
  278. package/dist/src/planner/nodes/retrieve-node.d.ts +16 -2
  279. package/dist/src/planner/nodes/retrieve-node.d.ts.map +1 -1
  280. package/dist/src/planner/nodes/retrieve-node.js +8 -1
  281. package/dist/src/planner/nodes/retrieve-node.js.map +1 -1
  282. package/dist/src/planner/nodes/returning-node.d.ts.map +1 -1
  283. package/dist/src/planner/nodes/returning-node.js +13 -32
  284. package/dist/src/planner/nodes/returning-node.js.map +1 -1
  285. package/dist/src/planner/nodes/stream-aggregate.d.ts +0 -5
  286. package/dist/src/planner/nodes/stream-aggregate.d.ts.map +1 -1
  287. package/dist/src/planner/nodes/stream-aggregate.js +18 -24
  288. package/dist/src/planner/nodes/stream-aggregate.js.map +1 -1
  289. package/dist/src/planner/nodes/table-access-nodes.d.ts +89 -1
  290. package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
  291. package/dist/src/planner/nodes/table-access-nodes.js +64 -2
  292. package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
  293. package/dist/src/planner/nodes/update-node.d.ts +19 -2
  294. package/dist/src/planner/nodes/update-node.d.ts.map +1 -1
  295. package/dist/src/planner/nodes/update-node.js +10 -2
  296. package/dist/src/planner/nodes/update-node.js.map +1 -1
  297. package/dist/src/planner/optimizer.d.ts +18 -0
  298. package/dist/src/planner/optimizer.d.ts.map +1 -1
  299. package/dist/src/planner/optimizer.js +59 -10
  300. package/dist/src/planner/optimizer.js.map +1 -1
  301. package/dist/src/planner/planning-context.d.ts +24 -0
  302. package/dist/src/planner/planning-context.d.ts.map +1 -1
  303. package/dist/src/planner/planning-context.js.map +1 -1
  304. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts +78 -20
  305. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts.map +1 -1
  306. package/dist/src/planner/rules/access/rule-key-set-seek.js +297 -71
  307. package/dist/src/planner/rules/access/rule-key-set-seek.js.map +1 -1
  308. package/dist/src/planner/rules/access/rule-monotonic-range-access.d.ts.map +1 -1
  309. package/dist/src/planner/rules/access/rule-monotonic-range-access.js +2 -2
  310. package/dist/src/planner/rules/access/rule-monotonic-range-access.js.map +1 -1
  311. package/dist/src/planner/rules/access/rule-select-access-path.d.ts +11 -1
  312. package/dist/src/planner/rules/access/rule-select-access-path.d.ts.map +1 -1
  313. package/dist/src/planner/rules/access/rule-select-access-path.js +46 -2
  314. package/dist/src/planner/rules/access/rule-select-access-path.js.map +1 -1
  315. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.d.ts +7 -4
  316. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.d.ts.map +1 -1
  317. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.js +39 -5
  318. package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.js.map +1 -1
  319. package/dist/src/planner/rules/cache/rule-cte-optimization.d.ts.map +1 -1
  320. package/dist/src/planner/rules/cache/rule-cte-optimization.js +6 -2
  321. package/dist/src/planner/rules/cache/rule-cte-optimization.js.map +1 -1
  322. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js +10 -3
  323. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js.map +1 -1
  324. package/dist/src/planner/rules/join/index-nested-loop.d.ts.map +1 -1
  325. package/dist/src/planner/rules/join/index-nested-loop.js +13 -7
  326. package/dist/src/planner/rules/join/index-nested-loop.js.map +1 -1
  327. package/dist/src/planner/rules/join/rule-fanout-lookup-join.d.ts +4 -0
  328. package/dist/src/planner/rules/join/rule-fanout-lookup-join.d.ts.map +1 -1
  329. package/dist/src/planner/rules/join/rule-fanout-lookup-join.js +50 -15
  330. package/dist/src/planner/rules/join/rule-fanout-lookup-join.js.map +1 -1
  331. package/dist/src/planner/rules/join/rule-join-elimination.d.ts +6 -0
  332. package/dist/src/planner/rules/join/rule-join-elimination.d.ts.map +1 -1
  333. package/dist/src/planner/rules/join/rule-join-elimination.js +25 -9
  334. package/dist/src/planner/rules/join/rule-join-elimination.js.map +1 -1
  335. package/dist/src/planner/rules/join/rule-join-key-inference.d.ts +7 -0
  336. package/dist/src/planner/rules/join/rule-join-key-inference.d.ts.map +1 -1
  337. package/dist/src/planner/rules/join/rule-join-key-inference.js +23 -11
  338. package/dist/src/planner/rules/join/rule-join-key-inference.js.map +1 -1
  339. package/dist/src/planner/rules/join/rule-join-physical-selection.d.ts +2 -2
  340. package/dist/src/planner/rules/join/rule-join-physical-selection.d.ts.map +1 -1
  341. package/dist/src/planner/rules/join/rule-join-physical-selection.js +46 -16
  342. package/dist/src/planner/rules/join/rule-join-physical-selection.js.map +1 -1
  343. package/dist/src/planner/rules/join/rule-monotonic-merge-join.d.ts +2 -0
  344. package/dist/src/planner/rules/join/rule-monotonic-merge-join.d.ts.map +1 -1
  345. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js +14 -0
  346. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js.map +1 -1
  347. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.d.ts +2 -2
  348. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.d.ts.map +1 -1
  349. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.js +19 -22
  350. package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.js.map +1 -1
  351. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts +33 -19
  352. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts.map +1 -1
  353. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js +37 -18
  354. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js.map +1 -1
  355. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.d.ts +6 -3
  356. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.d.ts.map +1 -1
  357. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.js +6 -3
  358. package/dist/src/planner/rules/predicate/rule-join-predicate-pushdown.js.map +1 -1
  359. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts.map +1 -1
  360. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js +11 -21
  361. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js.map +1 -1
  362. package/dist/src/planner/rules/shared/access-leaf.d.ts +16 -3
  363. package/dist/src/planner/rules/shared/access-leaf.d.ts.map +1 -1
  364. package/dist/src/planner/rules/shared/access-leaf.js +21 -5
  365. package/dist/src/planner/rules/shared/access-leaf.js.map +1 -1
  366. package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.js +1 -1
  367. package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.js.map +1 -1
  368. package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.js +1 -1
  369. package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.js.map +1 -1
  370. package/dist/src/planner/stored-body-context.d.ts +57 -0
  371. package/dist/src/planner/stored-body-context.d.ts.map +1 -0
  372. package/dist/src/planner/stored-body-context.js +64 -0
  373. package/dist/src/planner/stored-body-context.js.map +1 -0
  374. package/dist/src/planner/util/ind-utils.d.ts +28 -20
  375. package/dist/src/planner/util/ind-utils.d.ts.map +1 -1
  376. package/dist/src/planner/util/ind-utils.js +36 -27
  377. package/dist/src/planner/util/ind-utils.js.map +1 -1
  378. package/dist/src/planner/util/key-utils.d.ts +19 -4
  379. package/dist/src/planner/util/key-utils.d.ts.map +1 -1
  380. package/dist/src/planner/util/key-utils.js +23 -7
  381. package/dist/src/planner/util/key-utils.js.map +1 -1
  382. package/dist/src/planner/util/output-names.d.ts +12 -0
  383. package/dist/src/planner/util/output-names.d.ts.map +1 -0
  384. package/dist/src/planner/util/output-names.js +20 -0
  385. package/dist/src/planner/util/output-names.js.map +1 -0
  386. package/dist/src/planner/util/row-estimates.d.ts +11 -0
  387. package/dist/src/planner/util/row-estimates.d.ts.map +1 -1
  388. package/dist/src/planner/util/row-estimates.js +28 -0
  389. package/dist/src/planner/util/row-estimates.js.map +1 -1
  390. package/dist/src/runtime/deferred-constraint-queue.d.ts.map +1 -1
  391. package/dist/src/runtime/deferred-constraint-queue.js +3 -2
  392. package/dist/src/runtime/deferred-constraint-queue.js.map +1 -1
  393. package/dist/src/runtime/emit/add-constraint.d.ts.map +1 -1
  394. package/dist/src/runtime/emit/add-constraint.js +22 -6
  395. package/dist/src/runtime/emit/add-constraint.js.map +1 -1
  396. package/dist/src/runtime/emit/alter-schema-event.d.ts +59 -4
  397. package/dist/src/runtime/emit/alter-schema-event.d.ts.map +1 -1
  398. package/dist/src/runtime/emit/alter-schema-event.js +63 -4
  399. package/dist/src/runtime/emit/alter-schema-event.js.map +1 -1
  400. package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
  401. package/dist/src/runtime/emit/alter-table.js +212 -92
  402. package/dist/src/runtime/emit/alter-table.js.map +1 -1
  403. package/dist/src/runtime/emit/analyze.d.ts.map +1 -1
  404. package/dist/src/runtime/emit/analyze.js +15 -4
  405. package/dist/src/runtime/emit/analyze.js.map +1 -1
  406. package/dist/src/runtime/emit/assertion-drop-guard.d.ts +37 -0
  407. package/dist/src/runtime/emit/assertion-drop-guard.d.ts.map +1 -0
  408. package/dist/src/runtime/emit/assertion-drop-guard.js +59 -0
  409. package/dist/src/runtime/emit/assertion-drop-guard.js.map +1 -0
  410. package/dist/src/runtime/emit/assertion-rename-helpers.d.ts +33 -0
  411. package/dist/src/runtime/emit/assertion-rename-helpers.d.ts.map +1 -0
  412. package/dist/src/runtime/emit/assertion-rename-helpers.js +124 -0
  413. package/dist/src/runtime/emit/assertion-rename-helpers.js.map +1 -0
  414. package/dist/src/runtime/emit/constraint-check.d.ts.map +1 -1
  415. package/dist/src/runtime/emit/constraint-check.js +10 -227
  416. package/dist/src/runtime/emit/constraint-check.js.map +1 -1
  417. package/dist/src/runtime/emit/create-assertion.d.ts.map +1 -1
  418. package/dist/src/runtime/emit/create-assertion.js +31 -14
  419. package/dist/src/runtime/emit/create-assertion.js.map +1 -1
  420. package/dist/src/runtime/emit/cte.d.ts.map +1 -1
  421. package/dist/src/runtime/emit/cte.js +11 -6
  422. package/dist/src/runtime/emit/cte.js.map +1 -1
  423. package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
  424. package/dist/src/runtime/emit/dml-executor.js +169 -1
  425. package/dist/src/runtime/emit/dml-executor.js.map +1 -1
  426. package/dist/src/runtime/emit/drop-assertion.js +8 -8
  427. package/dist/src/runtime/emit/drop-assertion.js.map +1 -1
  428. package/dist/src/runtime/emit/drop-column-guards.d.ts +151 -0
  429. package/dist/src/runtime/emit/drop-column-guards.d.ts.map +1 -0
  430. package/dist/src/runtime/emit/drop-column-guards.js +230 -0
  431. package/dist/src/runtime/emit/drop-column-guards.js.map +1 -0
  432. package/dist/src/runtime/emit/drop-table.d.ts.map +1 -1
  433. package/dist/src/runtime/emit/drop-table.js +6 -0
  434. package/dist/src/runtime/emit/drop-table.js.map +1 -1
  435. package/dist/src/runtime/emit/drop-view.d.ts.map +1 -1
  436. package/dist/src/runtime/emit/drop-view.js +4 -0
  437. package/dist/src/runtime/emit/drop-view.js.map +1 -1
  438. package/dist/src/runtime/emit/key-set-semi-join.d.ts.map +1 -1
  439. package/dist/src/runtime/emit/key-set-semi-join.js +5 -3
  440. package/dist/src/runtime/emit/key-set-semi-join.js.map +1 -1
  441. package/dist/src/runtime/emit/materialized-view-helpers.d.ts +4 -4
  442. package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
  443. package/dist/src/runtime/emit/materialized-view-helpers.js +34 -22
  444. package/dist/src/runtime/emit/materialized-view-helpers.js.map +1 -1
  445. package/dist/src/runtime/emit/materialized-view.d.ts.map +1 -1
  446. package/dist/src/runtime/emit/materialized-view.js +7 -2
  447. package/dist/src/runtime/emit/materialized-view.js.map +1 -1
  448. package/dist/src/runtime/emit/recursive-cte.d.ts.map +1 -1
  449. package/dist/src/runtime/emit/recursive-cte.js +4 -5
  450. package/dist/src/runtime/emit/recursive-cte.js.map +1 -1
  451. package/dist/src/runtime/emit/remote-query.d.ts.map +1 -1
  452. package/dist/src/runtime/emit/remote-query.js +8 -3
  453. package/dist/src/runtime/emit/remote-query.js.map +1 -1
  454. package/dist/src/runtime/emit/scan.d.ts.map +1 -1
  455. package/dist/src/runtime/emit/scan.js +4 -1
  456. package/dist/src/runtime/emit/scan.js.map +1 -1
  457. package/dist/src/runtime/emit/schema-declarative.js +2 -2
  458. package/dist/src/runtime/emit/schema-declarative.js.map +1 -1
  459. package/dist/src/runtime/emit/update.d.ts.map +1 -1
  460. package/dist/src/runtime/emit/update.js +18 -6
  461. package/dist/src/runtime/emit/update.js.map +1 -1
  462. package/dist/src/runtime/parallel-driver.d.ts +4 -3
  463. package/dist/src/runtime/parallel-driver.d.ts.map +1 -1
  464. package/dist/src/runtime/parallel-driver.js +8 -3
  465. package/dist/src/runtime/parallel-driver.js.map +1 -1
  466. package/dist/src/runtime/row-constraints.d.ts +85 -0
  467. package/dist/src/runtime/row-constraints.d.ts.map +1 -0
  468. package/dist/src/runtime/row-constraints.js +239 -0
  469. package/dist/src/runtime/row-constraints.js.map +1 -0
  470. package/dist/src/runtime/types.d.ts +18 -11
  471. package/dist/src/runtime/types.d.ts.map +1 -1
  472. package/dist/src/runtime/types.js.map +1 -1
  473. package/dist/src/runtime/utils.d.ts.map +1 -1
  474. package/dist/src/runtime/utils.js +11 -0
  475. package/dist/src/runtime/utils.js.map +1 -1
  476. package/dist/src/schema/assertion.d.ts +14 -1
  477. package/dist/src/schema/assertion.d.ts.map +1 -1
  478. package/dist/src/schema/assertion.js +14 -1
  479. package/dist/src/schema/assertion.js.map +1 -1
  480. package/dist/src/schema/catalog-persistability.js +19 -3
  481. package/dist/src/schema/catalog-persistability.js.map +1 -1
  482. package/dist/src/schema/catalog.d.ts +6 -0
  483. package/dist/src/schema/catalog.d.ts.map +1 -1
  484. package/dist/src/schema/catalog.js +26 -36
  485. package/dist/src/schema/catalog.js.map +1 -1
  486. package/dist/src/schema/column-source-resolver.d.ts +18 -0
  487. package/dist/src/schema/column-source-resolver.d.ts.map +1 -0
  488. package/dist/src/schema/column-source-resolver.js +22 -0
  489. package/dist/src/schema/column-source-resolver.js.map +1 -0
  490. package/dist/src/schema/constraint-builder.d.ts.map +1 -1
  491. package/dist/src/schema/constraint-builder.js +7 -1
  492. package/dist/src/schema/constraint-builder.js.map +1 -1
  493. package/dist/src/schema/ddl-generator.js +8 -0
  494. package/dist/src/schema/ddl-generator.js.map +1 -1
  495. package/dist/src/schema/lens-compiler.d.ts.map +1 -1
  496. package/dist/src/schema/lens-compiler.js +203 -51
  497. package/dist/src/schema/lens-compiler.js.map +1 -1
  498. package/dist/src/schema/lens-prover.d.ts +2 -3
  499. package/dist/src/schema/lens-prover.d.ts.map +1 -1
  500. package/dist/src/schema/lens-prover.js +19 -11
  501. package/dist/src/schema/lens-prover.js.map +1 -1
  502. package/dist/src/schema/manager.d.ts +30 -12
  503. package/dist/src/schema/manager.d.ts.map +1 -1
  504. package/dist/src/schema/manager.js +49 -17
  505. package/dist/src/schema/manager.js.map +1 -1
  506. package/dist/src/schema/rename-rewriter.d.ts +142 -0
  507. package/dist/src/schema/rename-rewriter.d.ts.map +1 -1
  508. package/dist/src/schema/rename-rewriter.js +254 -9
  509. package/dist/src/schema/rename-rewriter.js.map +1 -1
  510. package/dist/src/schema/reserved-tags.d.ts +1 -1
  511. package/dist/src/schema/reserved-tags.d.ts.map +1 -1
  512. package/dist/src/schema/reserved-tags.js +4 -3
  513. package/dist/src/schema/reserved-tags.js.map +1 -1
  514. package/dist/src/schema/schema-differ.d.ts +16 -0
  515. package/dist/src/schema/schema-differ.d.ts.map +1 -1
  516. package/dist/src/schema/schema-differ.js +122 -11
  517. package/dist/src/schema/schema-differ.js.map +1 -1
  518. package/dist/src/schema/view.d.ts +11 -0
  519. package/dist/src/schema/view.d.ts.map +1 -1
  520. package/dist/src/schema/view.js +12 -0
  521. package/dist/src/schema/view.js.map +1 -1
  522. package/dist/src/types/builtin-types.d.ts +38 -0
  523. package/dist/src/types/builtin-types.d.ts.map +1 -1
  524. package/dist/src/types/builtin-types.js +77 -26
  525. package/dist/src/types/builtin-types.js.map +1 -1
  526. package/dist/src/types/index.d.ts +1 -1
  527. package/dist/src/types/index.d.ts.map +1 -1
  528. package/dist/src/types/index.js +1 -1
  529. package/dist/src/types/index.js.map +1 -1
  530. package/dist/src/util/abort-signal.d.ts +25 -0
  531. package/dist/src/util/abort-signal.d.ts.map +1 -0
  532. package/dist/src/util/abort-signal.js +40 -0
  533. package/dist/src/util/abort-signal.js.map +1 -0
  534. package/dist/src/util/{working-table-iterable.d.ts → array-row-iterable.d.ts} +6 -6
  535. package/dist/src/util/array-row-iterable.d.ts.map +1 -0
  536. package/dist/src/util/{working-table-iterable.js → array-row-iterable.js} +6 -6
  537. package/dist/src/util/array-row-iterable.js.map +1 -0
  538. package/dist/src/vtab/concurrency.d.ts +15 -0
  539. package/dist/src/vtab/concurrency.d.ts.map +1 -1
  540. package/dist/src/vtab/concurrency.js +17 -0
  541. package/dist/src/vtab/concurrency.js.map +1 -1
  542. package/dist/src/vtab/events.d.ts +3 -0
  543. package/dist/src/vtab/events.d.ts.map +1 -1
  544. package/dist/src/vtab/events.js.map +1 -1
  545. package/dist/src/vtab/manifest.d.ts +15 -0
  546. package/dist/src/vtab/manifest.d.ts.map +1 -1
  547. package/dist/src/vtab/memory/layer/base.d.ts +10 -0
  548. package/dist/src/vtab/memory/layer/base.d.ts.map +1 -1
  549. package/dist/src/vtab/memory/layer/base.js +10 -0
  550. package/dist/src/vtab/memory/layer/base.js.map +1 -1
  551. package/dist/src/vtab/memory/layer/interface.d.ts +24 -0
  552. package/dist/src/vtab/memory/layer/interface.d.ts.map +1 -1
  553. package/dist/src/vtab/memory/layer/manager.d.ts +21 -3
  554. package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
  555. package/dist/src/vtab/memory/layer/manager.js +107 -157
  556. package/dist/src/vtab/memory/layer/manager.js.map +1 -1
  557. package/dist/src/vtab/memory/layer/transaction.d.ts +11 -0
  558. package/dist/src/vtab/memory/layer/transaction.d.ts.map +1 -1
  559. package/dist/src/vtab/memory/layer/transaction.js +19 -0
  560. package/dist/src/vtab/memory/layer/transaction.js.map +1 -1
  561. package/dist/src/vtab/memory/module.d.ts +57 -1
  562. package/dist/src/vtab/memory/module.d.ts.map +1 -1
  563. package/dist/src/vtab/memory/module.js +103 -2
  564. package/dist/src/vtab/memory/module.js.map +1 -1
  565. package/dist/src/vtab/memory/table.d.ts +12 -1
  566. package/dist/src/vtab/memory/table.d.ts.map +1 -1
  567. package/dist/src/vtab/memory/table.js +12 -1
  568. package/dist/src/vtab/memory/table.js.map +1 -1
  569. package/dist/src/vtab/module.d.ts +59 -2
  570. package/dist/src/vtab/module.d.ts.map +1 -1
  571. package/dist/src/vtab/table.d.ts +8 -1
  572. package/dist/src/vtab/table.d.ts.map +1 -1
  573. package/dist/src/vtab/table.js.map +1 -1
  574. package/dist/src/vtab/test-support/commit-stall.d.ts +53 -0
  575. package/dist/src/vtab/test-support/commit-stall.d.ts.map +1 -0
  576. package/dist/src/vtab/test-support/commit-stall.js +73 -0
  577. package/dist/src/vtab/test-support/commit-stall.js.map +1 -0
  578. package/dist/src/vtab/test-support/committed-read-conformance.d.ts +96 -0
  579. package/dist/src/vtab/test-support/committed-read-conformance.d.ts.map +1 -0
  580. package/dist/src/vtab/test-support/committed-read-conformance.js +364 -0
  581. package/dist/src/vtab/test-support/committed-read-conformance.js.map +1 -0
  582. package/package.json +3 -3
  583. package/dist/src/util/working-table-iterable.d.ts.map +0 -1
  584. package/dist/src/util/working-table-iterable.js.map +0 -1
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Which attributes does a predicate need in scope?
3
+ *
4
+ * A predicate's dependencies are NOT just the column references in its own
5
+ * scalar tree. A sub-query operand (`exists (...)`, `x in (select ...)`, a
6
+ * scalar sub-query) hangs a RELATIONAL subtree off the scalar expression, and a
7
+ * correlated reference inside that subtree reads an outer attribute just as
8
+ * surely as a top-level `t.d` does. A rule that walks scalar children only sees
9
+ * an empty dependency set for `exists (select 1 from side where t.d > 0)` and
10
+ * will happily move the predicate below the node that defines `d`, stranding
11
+ * the reference and failing at runtime with "No row context found for column d".
12
+ *
13
+ * The relational half is answered by `collectExternalReferences`, which walks
14
+ * both `getChildren()` and `getRelations()` and subtracts everything the
15
+ * subtree defines for itself — what remains is exactly what it reads from
16
+ * outside.
17
+ */
18
+ import { type ScalarPlanNode } from '../nodes/plan-node.js';
19
+ export interface PredicateDependencies {
20
+ /** Attribute IDs referenced directly in the predicate's own scalar tree. */
21
+ readonly direct: ReadonlySet<number>;
22
+ /** Attribute IDs a sub-query operand references from OUTSIDE its own subtree. */
23
+ readonly correlated: ReadonlySet<number>;
24
+ }
25
+ /**
26
+ * Split a predicate's attribute dependencies into the ones its own scalar tree
27
+ * names and the ones its sub-query operands correlate to. Rules that only need
28
+ * "must be in scope" should use {@link collectPredicateAttributeIds}; rules that
29
+ * must treat a correlation differently from a plain reference read the two apart.
30
+ */
31
+ export declare function collectPredicateDependencies(expr: ScalarPlanNode): PredicateDependencies;
32
+ /** Union of both — the full set of attributes the predicate needs in scope. */
33
+ export declare function collectPredicateAttributeIds(expr: ScalarPlanNode): Set<number>;
34
+ //# sourceMappingURL=predicate-dependencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"predicate-dependencies.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/predicate-dependencies.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI9E,MAAM,WAAW,qBAAqB;IACrC,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC,iFAAiF;IACjF,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACzC;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,cAAc,GAAG,qBAAqB,CAKxF;AAED,+EAA+E;AAC/E,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,CAK9E"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Which attributes does a predicate need in scope?
3
+ *
4
+ * A predicate's dependencies are NOT just the column references in its own
5
+ * scalar tree. A sub-query operand (`exists (...)`, `x in (select ...)`, a
6
+ * scalar sub-query) hangs a RELATIONAL subtree off the scalar expression, and a
7
+ * correlated reference inside that subtree reads an outer attribute just as
8
+ * surely as a top-level `t.d` does. A rule that walks scalar children only sees
9
+ * an empty dependency set for `exists (select 1 from side where t.d > 0)` and
10
+ * will happily move the predicate below the node that defines `d`, stranding
11
+ * the reference and failing at runtime with "No row context found for column d".
12
+ *
13
+ * The relational half is answered by `collectExternalReferences`, which walks
14
+ * both `getChildren()` and `getRelations()` and subtracts everything the
15
+ * subtree defines for itself — what remains is exactly what it reads from
16
+ * outside.
17
+ */
18
+ import { isRelationalNode } from '../nodes/plan-node.js';
19
+ import { CapabilityDetectors } from '../framework/characteristics.js';
20
+ import { collectExternalReferences } from '../cache/correlation-detector.js';
21
+ /**
22
+ * Split a predicate's attribute dependencies into the ones its own scalar tree
23
+ * names and the ones its sub-query operands correlate to. Rules that only need
24
+ * "must be in scope" should use {@link collectPredicateAttributeIds}; rules that
25
+ * must treat a correlation differently from a plain reference read the two apart.
26
+ */
27
+ export function collectPredicateDependencies(expr) {
28
+ const direct = new Set();
29
+ const correlated = new Set();
30
+ walk(expr, direct, correlated);
31
+ return { direct, correlated };
32
+ }
33
+ /** Union of both — the full set of attributes the predicate needs in scope. */
34
+ export function collectPredicateAttributeIds(expr) {
35
+ const { direct, correlated } = collectPredicateDependencies(expr);
36
+ const ids = new Set(direct);
37
+ for (const id of correlated)
38
+ ids.add(id);
39
+ return ids;
40
+ }
41
+ // NOTE: each relational child costs two full walks of its subtree (one to collect
42
+ // what it defines, one to collect what it reads), and callers ask per conjunct per
43
+ // rule firing. Predicate sub-query bodies are small today so nothing was measured;
44
+ // if a rule ever shows up hot here, memoize per node — plan nodes are immutable, so
45
+ // a WeakMap keyed on the relational child is sound.
46
+ function walk(expr, direct, correlated) {
47
+ if (CapabilityDetectors.isColumnReference(expr)) {
48
+ direct.add(expr.attributeId);
49
+ }
50
+ for (const child of expr.getChildren()) {
51
+ if (isRelationalNode(child)) {
52
+ for (const id of collectExternalReferences(child))
53
+ correlated.add(id);
54
+ }
55
+ else {
56
+ walk(child, direct, correlated);
57
+ }
58
+ }
59
+ }
60
+ //# sourceMappingURL=predicate-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"predicate-dependencies.js","sourceRoot":"","sources":["../../../../src/planner/analysis/predicate-dependencies.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,gBAAgB,EAAuB,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAS7E;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAAoB;IAChE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;AAC/B,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,4BAA4B,CAAC,IAAoB;IAChE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAClE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,CAAC;IACpC,KAAK,MAAM,EAAE,IAAI,UAAU;QAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzC,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,kFAAkF;AAClF,mFAAmF;AACnF,mFAAmF;AACnF,oFAAoF;AACpF,oDAAoD;AACpD,SAAS,IAAI,CAAC,IAAoB,EAAE,MAAmB,EAAE,UAAuB;IAC/E,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACxC,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,KAAK,MAAM,EAAE,IAAI,yBAAyB,CAAC,KAAK,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,KAAuB,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QACnD,CAAC;IACF,CAAC;AACF,CAAC"}
@@ -57,7 +57,7 @@ import type { MaintainedTableSchema } from '../../schema/derivation.js';
57
57
  import type { TableSchema } from '../../schema/table.js';
58
58
  import type { AggregateFunctionSchema } from '../../schema/function.js';
59
59
  import type { SqlValue } from '../../common/types.js';
60
- export type RewriteFailureReason = 'no-candidate' | 'shape' | 'source-mismatch' | 'predicate-not-entailed' | 'missing-column' | 'aggregate-shape' | 'group-key-mismatch' | 'group-key-pinned' | 'aggregate-not-decomposable' | 'cost-declined';
60
+ export type RewriteFailureReason = 'no-candidate' | 'shape' | 'source-mismatch' | 'predicate-not-entailed' | 'missing-column' | 'aggregate-shape' | 'group-key-mismatch' | 'aggregate-not-decomposable' | 'cost-declined';
61
61
  export interface RewriteMatch {
62
62
  readonly mv: MaintainedTableSchema;
63
63
  readonly backing: TableSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"query-rewrite-matcher.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/query-rewrite-matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-rewrite-matcher.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/query-rewrite-matcher.ts"],"names":[],"mappings":"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"}
@@ -437,18 +437,6 @@ export function matchAggregateFragmentToMv(shape, mv, backing, isDeterministic,
437
437
  return fail('missing-column');
438
438
  }
439
439
  }
440
- // Group-key reorder guard. When the query WHERE constant-pins (`g = 1`, `g is
441
- // null`) or equates (`g1 = g2`) a group-key column AND there are ≥2 group keys,
442
- // the base's `rule-groupby-fd-simplification` drops the functionally-determined
443
- // group column and re-emits it as a picker `min` at a *shifted* output position,
444
- // changing the result's column ORDER. The rewrite preserves the pristine column
445
- // order, so the two would diverge — forgo to remain a faithful drop-in. (A single
446
- // group key is never dropped — the rule keeps ≥1 — and range/IN residuals create
447
- // no determining FD, so both stay eligible. Checks the full query WHERE, not just
448
- // the residual: a pin entailed by the MV still drives the base's simplification.)
449
- if (queryGroupSet.size >= 2 && queryClauses.some(c => clausePinsOrEquatesGroupCol(c, queryGroupSet))) {
450
- return fail('group-key-pinned');
451
- }
452
440
  // A rollup with a residual is sound: the residual coverage check above admits only
453
441
  // conjuncts over MV group-key columns, which partition whole MV groups — so the
454
442
  // residual `Filter` on the backing scan keeps or drops each backing group entire,
@@ -1074,20 +1062,6 @@ function baseColumnOfExpr(expr, baseTable) {
1074
1062
  }
1075
1063
  return undefined;
1076
1064
  }
1077
- /**
1078
- * True when `clause` constant-pins (`g = literal`, `g is null`) or equates
1079
- * (`g1 = g2`) a column in `groupSet` — the predicate shapes that give a group-key
1080
- * column a determining FD and so drive `rule-groupby-fd-simplification` to drop and
1081
- * reposition it. Range / IN (`or-of`) clauses create no such FD and return false.
1082
- */
1083
- function clausePinsOrEquatesGroupCol(clause, groupSet) {
1084
- switch (clause.kind) {
1085
- case 'eq-literal': return groupSet.has(clause.column);
1086
- case 'is-null': return groupSet.has(clause.column);
1087
- case 'eq-column': return groupSet.has(clause.left) || groupSet.has(clause.right);
1088
- default: return false; // range / or-of: no constant-determining FD
1089
- }
1090
- }
1091
1065
  /** The base-table column indices a recognized guard clause references. */
1092
1066
  function clauseColumns(clause) {
1093
1067
  switch (clause.kind) {
@@ -1 +1 @@
1
- {"version":3,"file":"query-rewrite-matcher.js","sourceRoot":"","sources":["../../../../src/planner/analysis/query-rewrite-matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-rewrite-matcher.js","sourceRoot":"","sources":["../../../../src/planner/analysis/query-rewrite-matcher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"alter-table.d.ts","sourceRoot":"","sources":["../../../../src/planner/building/alter-table.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,EAAY,KAAK,QAAQ,EAA2D,MAAM,uBAAuB,CAAC;AAczH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,GAAG,CAAC,cAAc,GACvB,QAAQ,CA6MV"}
1
+ {"version":3,"file":"alter-table.d.ts","sourceRoot":"","sources":["../../../../src/planner/building/alter-table.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,EAAY,KAAK,QAAQ,EAA2D,MAAM,uBAAuB,CAAC;AAezH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,GAAG,CAAC,cAAc,GACvB,QAAQ,CAyOV"}
@@ -10,14 +10,39 @@ import { validateDeterministicDefault, validateDeterministicGenerated } from '..
10
10
  import { tryFoldLiteral } from '../../parser/utils.js';
11
11
  import { inferType } from '../../types/registry.js';
12
12
  import { columnSchemaToScalarType } from '../type-utils.js';
13
- import { expressionToString } from '../../emit/ast-stringify.js';
13
+ import { astToString, expressionToString } from '../../emit/ast-stringify.js';
14
14
  import { validateReservedTags } from '../../schema/reserved-tags.js';
15
15
  import { validateAddColumnGeneratedRefs } from '../../schema/table.js';
16
16
  import { columnTagDiagnostics, raiseStmtTagDiagnostics } from './tag-diagnostics.js';
17
17
  import { planViewBody } from './create-view.js';
18
+ import { schemaAuthoredContext } from './schema-authored-context.js';
18
19
  export function buildAlterTableStmt(ctx, stmt) {
19
20
  const tableRetrieve = buildTableReference({ type: 'table', table: stmt.table }, ctx);
20
21
  const tableReference = tableRetrieve.tableRef; // Extract the actual TableReferenceNode
22
+ // Canonical, fully-qualified SQL for the whole statement, rendered ONCE here — the one
23
+ // place that holds the parsed action and the resolved table together. Rendered from a
24
+ // SYNTHETIC statement whose table identifier is rebuilt from the resolved TableSchema,
25
+ // not from `stmt.table` as the user wrote it: an unqualified `alter table orders …`
26
+ // must not become a statement a receiver resolves against a different default schema.
27
+ // Same qualification rule as `generateTableDDL` / the schema differ's synthetic ALTER
28
+ // (schema-differ.ts), so the two wire sources agree. The runtime arms thread it to the
29
+ // module (`SchemaChangeInfo.ddl` / `renameTable`'s `ddl`) and onto the public
30
+ // schema-change event.
31
+ //
32
+ // NOTE: rendered for EVERY arm, including the four that never announce anything (the tag
33
+ // arms, `set`/`drop maintained`) — `set maintained as <select>` therefore stringifies its
34
+ // whole SELECT body for a string nobody reads. Free today: ALTER is not a hot path and
35
+ // each statement builds once. If those arms ever start carrying a rendering cost that
36
+ // matters, render lazily and hand the arms a thunk instead of a string.
37
+ const { schemaName, name: tableName } = tableReference.tableSchema;
38
+ const canonicalStmt = {
39
+ type: 'alterTable',
40
+ table: schemaName.toLowerCase() === 'main'
41
+ ? { type: 'identifier', name: tableName }
42
+ : { type: 'identifier', name: tableName, schema: schemaName },
43
+ action: stmt.action,
44
+ };
45
+ const sql = astToString(canonicalStmt);
21
46
  switch (stmt.action.type) {
22
47
  case 'addConstraint': {
23
48
  // Reject a typo'd / mis-sited reserved `quereus.*` tag on the constraint at
@@ -30,19 +55,19 @@ export function buildAlterTableStmt(ctx, stmt) {
30
55
  ...stmt.action.constraint,
31
56
  operations
32
57
  };
33
- return new AddConstraintNode(ctx.scope, tableReference, constraintWithBitmask);
58
+ return new AddConstraintNode(ctx.scope, tableReference, constraintWithBitmask, sql);
34
59
  }
35
60
  case 'renameTable':
36
61
  return new AlterTableNode(ctx.scope, tableReference, {
37
62
  type: 'renameTable',
38
63
  newName: stmt.action.newName,
39
- });
64
+ }, sql);
40
65
  case 'renameColumn':
41
66
  return new AlterTableNode(ctx.scope, tableReference, {
42
67
  type: 'renameColumn',
43
68
  oldName: stmt.action.oldName,
44
69
  newName: stmt.action.newName,
45
- });
70
+ }, sql);
46
71
  case 'addColumn': {
47
72
  const column = stmt.action.column;
48
73
  // Reject a typo'd / mis-sited reserved `quereus.*` tag on the new column or any
@@ -78,29 +103,29 @@ export function buildAlterTableStmt(ctx, stmt) {
78
103
  column,
79
104
  backfill,
80
105
  checks,
81
- });
106
+ }, sql);
82
107
  }
83
108
  case 'dropColumn':
84
109
  return new AlterTableNode(ctx.scope, tableReference, {
85
110
  type: 'dropColumn',
86
111
  name: stmt.action.name,
87
- });
112
+ }, sql);
88
113
  case 'dropConstraint':
89
114
  return new AlterTableNode(ctx.scope, tableReference, {
90
115
  type: 'dropConstraint',
91
116
  name: stmt.action.name,
92
- });
117
+ }, sql);
93
118
  case 'renameConstraint':
94
119
  return new AlterTableNode(ctx.scope, tableReference, {
95
120
  type: 'renameConstraint',
96
121
  oldName: stmt.action.oldName,
97
122
  newName: stmt.action.newName,
98
- });
123
+ }, sql);
99
124
  case 'alterPrimaryKey':
100
125
  return new AlterTableNode(ctx.scope, tableReference, {
101
126
  type: 'alterPrimaryKey',
102
127
  columns: stmt.action.columns,
103
- });
128
+ }, sql);
104
129
  case 'alterColumn':
105
130
  return new AlterTableNode(ctx.scope, tableReference, {
106
131
  type: 'alterColumn',
@@ -109,7 +134,7 @@ export function buildAlterTableStmt(ctx, stmt) {
109
134
  setDataType: stmt.action.setDataType,
110
135
  setDefault: stmt.action.setDefault,
111
136
  setCollation: stmt.action.setCollation,
112
- });
137
+ }, sql);
113
138
  case 'setTags': {
114
139
  // Validate any reserved `quereus.*` tags at the matching site so a typo
115
140
  // (e.g. `quereus.expose_implicit_indx`) fails loudly here rather than being
@@ -127,7 +152,7 @@ export function buildAlterTableStmt(ctx, stmt) {
127
152
  target,
128
153
  mode: stmt.action.mode,
129
154
  tags: stmt.action.tags,
130
- });
155
+ }, sql);
131
156
  }
132
157
  case 'dropTags': {
133
158
  // DROP TAGS removes tags by key, so there is NO reserved-tag value
@@ -138,7 +163,7 @@ export function buildAlterTableStmt(ctx, stmt) {
138
163
  type: 'dropTags',
139
164
  target: stmt.action.target,
140
165
  keys: stmt.action.keys,
141
- });
166
+ }, sql);
142
167
  }
143
168
  case 'setMaintained': {
144
169
  // SET MAINTAINED AS <body> — attach / re-attach a derivation. Reuse the
@@ -151,7 +176,9 @@ export function buildAlterTableStmt(ctx, stmt) {
151
176
  // reshape-on-attach (attachMaintainedDerivation), so a build-time arity
152
177
  // gate would block legitimate reshapes.
153
178
  const tableSchema = tableReference.tableSchema;
154
- planViewBody(ctx, tableSchema.name, stmt.action.select);
179
+ // Home-schema body path: the derivation's unqualified source names must
180
+ // resolve next to the table the derivation attaches to.
181
+ planViewBody(ctx, tableSchema.name, stmt.action.select, tableSchema.schemaName);
155
182
  // Mirror the create-form gate: a generated column would silently diverge
156
183
  // from its expression once the body supplies every column's value.
157
184
  const generated = tableSchema.columns.find(c => c.generated);
@@ -168,12 +195,12 @@ export function buildAlterTableStmt(ctx, stmt) {
168
195
  type: 'setMaintained',
169
196
  columns: stmt.action.columns,
170
197
  select: stmt.action.select,
171
- });
198
+ }, sql);
172
199
  }
173
200
  case 'dropMaintained':
174
201
  // Maintained-ness is checked in the emitter against the LIVE table (the
175
202
  // build-time schema may be a cached statement's snapshot).
176
- return new AlterTableNode(ctx.scope, tableReference, { type: 'dropMaintained' });
203
+ return new AlterTableNode(ctx.scope, tableReference, { type: 'dropMaintained' }, sql);
177
204
  default:
178
205
  throw new QuereusError(
179
206
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -225,7 +252,12 @@ function buildAddColumnBackfill(ctx, tableReference, columnDef) {
225
252
  sourceRelation: 'add-column-backfill',
226
253
  }));
227
254
  const rowScope = buildRowDefaultScope(ctx.scope, tableSchema.columns, rowAttrs);
228
- const node = buildExpression({ ...ctx, scope: rowScope }, sourceExpr);
255
+ // Schema-authored SQL, wrapped exactly as the three DML builders wrap theirs, so the
256
+ // backfill expression resolves bare relation names against the altered table's own
257
+ // schema — not whatever path the ALTER runs on. The CTE half of the wrapper is inert
258
+ // here (ALTER is not an `AST.QueryExpr`, so it can neither be a CTE body nor carry a
259
+ // `with` clause of its own); the schema-path half is the load-bearing part.
260
+ const node = buildExpression({ ...schemaAuthoredContext(ctx, tableSchema.schemaName), scope: rowScope }, sourceExpr);
229
261
  // Same validator each arm's write-path build site uses, so an ALTER accepts exactly
230
262
  // what the equivalent CREATE TABLE + INSERT accepts. Both honour
231
263
  // `nondeterministic_schema`, so the escape hatch is unchanged.
@@ -294,8 +326,12 @@ function buildAddColumnChecks(ctx, tableReference, columnDef) {
294
326
  const rowAttrs = [...existingAttrs, newColAttr];
295
327
  const targetColumns = [...tableSchema.columns, { name: columnDef.name }];
296
328
  const rowScope = buildRowDefaultScope(ctx.scope, targetColumns, rowAttrs);
329
+ // Schema-authored, same as the backfill expression above and as every CHECK the DML
330
+ // builders compile: a bare relation name means the ALTERED table's own schema, not
331
+ // whatever path the ALTER runs on.
332
+ const checkCtx = { ...schemaAuthoredContext(ctx, tableSchema.schemaName), scope: rowScope };
297
333
  const predicates = checkConstraints.map(con => ({
298
- node: buildExpression({ ...ctx, scope: rowScope }, con.expr),
334
+ node: buildExpression(checkCtx, con.expr),
299
335
  name: con.name,
300
336
  exprText: expressionToString(con.expr),
301
337
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"alter-table.js","sourceRoot":"","sources":["../../../../src/planner/building/alter-table.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAA+C,MAAM,8BAA8B,CAAC;AAC3G,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAA0E,MAAM,uBAAuB,CAAC;AAEzH,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACtH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAgB,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,UAAU,mBAAmB,CACjC,GAAoB,EACpB,IAAwB;IAExB,MAAM,aAAa,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC;IACrF,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,wCAAwC;IAEvF,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,4EAA4E;YAC5E,6EAA6E;YAC7E,iFAAiF;YACjF,uBAAuB,CACrB,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,qBAAqB,CAAC,EACxE,IAAI,CACL,CAAC;YAEF,gFAAgF;YAChF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,QAAQ,EAAC,QAAQ,CAAC,CAAC;YAE5E,MAAM,qBAAqB,GAAG;gBAC5B,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU;gBACzB,UAAU;aACX,CAAC;YAEF,OAAO,IAAI,iBAAiB,CAC1B,GAAG,CAAC,KAAK,EACT,cAAc,EACd,qBAAqB,CACtB,CAAC;QACN,CAAC;QAEC,KAAK,aAAa;YAChB,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;aAC7B,CAAC,CAAC;QAEL,KAAK,cAAc;YACjB,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;aAC7B,CAAC,CAAC;QAEL,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAClC,gFAAgF;YAChF,+EAA+E;YAC/E,oEAAoE;YACpE,sEAAsE;YACtE,uBAAuB,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;YAC5D,4EAA4E;YAC5E,6EAA6E;YAC7E,6EAA6E;YAC7E,+EAA+E;YAC/E,gFAAgF;YAChF,6EAA6E;YAC7E,4DAA4D;YAC5D,4EAA4E;YAC5E,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YAC9E,IAAI,iBAAiB,EAAE,IAAI,EAAE,CAAC;gBAC5B,MAAM,kBAAkB,GAAG,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,eAAe;uBAClE,cAAc,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC3D,GAAG,CAAC,aAAa,CAAC,wBAAwB,CACxC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,WAAW,CAAC,IAAI,EAAE,kBAAkB,CACzF,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACrE,qFAAqF;YACrF,kFAAkF;YAClF,qFAAqF;YACrF,oFAAoF;YACpF,8EAA8E;YAC9E,oFAAoF;YACpF,WAAW;YACX,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACxF,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,WAAW;gBACjB,MAAM;gBACN,QAAQ;gBACR,MAAM;aACP,CAAC,CAAC;QACP,CAAC;QAEC,KAAK,YAAY;YACf,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;aACvB,CAAC,CAAC;QAEL,KAAK,gBAAgB;YACnB,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;aACvB,CAAC,CAAC;QAEL,KAAK,kBAAkB;YACrB,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;aAC7B,CAAC,CAAC;QAEL,KAAK,iBAAiB;YACpB,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;aAC7B,CAAC,CAAC;QAEL,KAAK,aAAa;YAChB,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,aAAa;gBACnB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAClC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAClC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBACpC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAClC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;aACvC,CAAC,CAAC;QAEL,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,wEAAwE;YACxE,4EAA4E;YAC5E,+EAA+E;YAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAClC,MAAM,IAAI,GACR,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB;gBAC5C,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,qBAAqB;oBACtD,CAAC,CAAC,gBAAgB,CAAC;YACrB,iFAAiF;YACjF,4EAA4E;YAC5E,+CAA+C;YAC/C,uBAAuB,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;YAC5E,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,SAAS;gBACf,MAAM;gBACN,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;aACvB,CAAC,CAAC;QACL,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,mEAAmE;YACnE,yEAAyE;YACzE,qEAAqE;YACrE,uEAAuE;YACvE,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC1B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;aACvB,CAAC,CAAC;QACL,CAAC;QAED,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,wEAAwE;YACxE,yEAAyE;YACzE,wEAAwE;YACxE,uEAAuE;YACvE,uEAAuE;YACvE,wEAAwE;YACxE,sEAAsE;YACtE,wEAAwE;YACxE,wCAAwC;YACxC,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC;YAC/C,YAAY,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxD,yEAAyE;YACzE,mEAAmE;YACnE,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC7D,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,YAAY,CACpB,gCAAgC,WAAW,CAAC,IAAI,cAAc,SAAS,CAAC,IAAI,2EAA2E,EACvJ,UAAU,CAAC,KAAK,EAChB,SAAS,EACT,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAC7B,CAAC;YACJ,CAAC;YACD,uEAAuE;YACvE,6CAA6C;YAC7C,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,CAAC;gBAC5C,MAAM,IAAI,YAAY,CACpB,gCAAgC,WAAW,CAAC,IAAI,cAAc,WAAW,CAAC,cAAc,sFAAsF,EAC9K,UAAU,CAAC,WAAW,EACtB,SAAS,EACT,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAC7B,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE;gBACnD,2DAA2D;gBAC3D,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;aAC3B,CAAC,CAAC;QACL,CAAC;QAED,KAAK,gBAAgB;YACnB,wEAAwE;YACxE,2DAA2D;YAC3D,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAEnF;YACE,MAAM,IAAI,YAAY;YACpB,8DAA8D;YAC9D,+BAAgC,IAAI,CAAC,MAAc,CAAC,IAAI,EAAE,EAC1D,UAAU,CAAC,QAAQ,CACpB,CAAC;IACN,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,sBAAsB,CAC7B,GAAoB,EACpB,cAAkC,EAClC,SAAwB;IAExB,qEAAqE;IACrE,qEAAqE;IACrE,MAAM,aAAa,GAAG,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC;IAChG,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,IAAI,CAAC;IACjF,MAAM,UAAU,GAAG,aAAa,IAAI,WAAW,CAAC;IAChD,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,qFAAqF;IACrF,yEAAyE;IACzE,8EAA8E;IAC9E,kFAAkF;IAClF,0DAA0D;IAC1D,IAAI,CAAC,aAAa,IAAI,cAAc,CAAC,UAAU,CAAC,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjF,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC;IAC/C,gFAAgF;IAChF,gFAAgF;IAChF,sBAAsB;IACtB,IAAI,aAAa,EAAE,CAAC;QAClB,8BAA8B,CAAC,aAAa,EAAE,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACvG,CAAC;IACD,kFAAkF;IAClF,iFAAiF;IACjF,8EAA8E;IAC9E,8EAA8E;IAC9E,MAAM,QAAQ,GAAgB,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/D,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE;QACzB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC;QACtC,cAAc,EAAE,qBAAqB;KACtC,CAAC,CAAC,CAAC;IACJ,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAChF,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,CAAmB,CAAC;IAExF,oFAAoF;IACpF,iEAAiE;IACjE,+DAA+D;IAC/D,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,EAAE,CAAC;QAChE,IAAI,aAAa,EAAE,CAAC;YAClB,8BAA8B,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,4BAA4B,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAkB,EAAE,CAAC;IACxC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvE,4FAA4F;IAC5F,6FAA6F;IAC7F,2FAA2F;IAC3F,4FAA4F;IAC5F,0CAA0C;IAC1C,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,WAAW,KAAK,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;IAC1F,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,oBAAoB,CAC3B,GAAoB,EACpB,cAAkC,EAClC,SAAwB;IAExB,MAAM,gBAAgB,GAAG,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IACjG,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEpD,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC;IAC/C,yFAAyF;IACzF,yFAAyF;IACzF,sFAAsF;IACtF,MAAM,aAAa,GAAgB,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpE,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE;QACzB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC;QACtC,cAAc,EAAE,kBAAkB;KACnC,CAAC,CAAC,CAAC;IACJ,MAAM,aAAa,GAAG,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IACpF,gFAAgF;IAChF,oFAAoF;IACpF,kCAAkC;IAClC,MAAM,eAAe,GAAG,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,SAAS,CAAC;IAC1F,MAAM,UAAU,GAAc;QAC5B,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE;QACzB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,IAAI,EAAE;YACJ,SAAS,EAAE,QAAiB;YAC5B,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;YAC1C,QAAQ,EAAE,CAAC,aAAa;YACxB,UAAU,EAAE,KAAK;YACjB,aAAa,EAAE,eAAe;YAC9B,oFAAoF;YACpF,eAAe,EAAE,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,UAAmB,CAAC,CAAC,CAAC,SAAS;SACjF;QACD,cAAc,EAAE,kBAAkB;KACnC,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,GAAG,aAAa,EAAE,UAAU,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,CAAC,GAAG,WAAW,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;IAE1E,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,EAAE,eAAe,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,IAAK,CAAmB;QAC/E,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,QAAQ,EAAE,kBAAkB,CAAC,GAAG,CAAC,IAAK,CAAC;KACxC,CAAC,CAAC,CAAC;IAEJ,MAAM,aAAa,GAAkB,EAAE,CAAC;IACxC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"alter-table.js","sourceRoot":"","sources":["../../../../src/planner/building/alter-table.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"constraint-builder.d.ts","sourceRoot":"","sources":["../../../../src/planner/building/constraint-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,SAAS,EAA+B,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAE7F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAoBhD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,eAAe,EACpB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,SAAS,EAAE,EAC1B,aAAa,EAAE,SAAS,EAAE,EAC1B,kBAAkB,EAAE,aAAa,EACjC,iBAAiB,GAAE,SAAS,EAAO;AACnC;;;;;GAKG;AACH,qBAAqB,GAAE,aAAa,CAAC,mBAAmB,CAAM,GAC7D,eAAe,EAAE,CA0KnB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,SAAS,EAAE,EAC1B,iBAAiB,GAAE,SAAS,EAAO;AACnC;;;;;;;;GAQG;AACH,sBAAsB,CAAC,EAAE,KAAK,GAC7B,kBAAkB,EAAE,CAqDtB"}
1
+ {"version":3,"file":"constraint-builder.d.ts","sourceRoot":"","sources":["../../../../src/planner/building/constraint-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,SAAS,EAA+B,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAE7F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAqBhD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,eAAe,EACpB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,SAAS,EAAE,EAC1B,aAAa,EAAE,SAAS,EAAE,EAC1B,kBAAkB,EAAE,aAAa,EACjC,iBAAiB,GAAE,SAAS,EAAO;AACnC;;;;;GAKG;AACH,qBAAqB,GAAE,aAAa,CAAC,mBAAmB,CAAM,GAC7D,eAAe,EAAE,CA4KnB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,SAAS,EAAE,EAC1B,iBAAiB,GAAE,SAAS,EAAO;AACnC;;;;;;;;GAQG;AACH,sBAAsB,CAAC,EAAE,KAAK,GAC7B,kBAAkB,EAAE,CAqDtB"}