kysely 0.23.5 → 0.24.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 (294) hide show
  1. package/README.md +46 -24
  2. package/dist/cjs/dialect/mysql/mysql-adapter.js +2 -2
  3. package/dist/cjs/dialect/mysql/mysql-driver.d.ts +1 -1
  4. package/dist/cjs/dialect/mysql/mysql-driver.js +1 -1
  5. package/dist/cjs/dialect/postgres/postgres-adapter.js +1 -1
  6. package/dist/cjs/dialect/sqlite/sqlite-dialect.d.ts +1 -0
  7. package/dist/cjs/dialect/sqlite/sqlite-dialect.js +1 -0
  8. package/dist/cjs/driver/runtime-driver.js +4 -2
  9. package/dist/cjs/expression/expression-builder.d.ts +386 -0
  10. package/dist/cjs/expression/expression-builder.js +92 -0
  11. package/dist/cjs/expression/expression-wrapper.d.ts +92 -0
  12. package/dist/cjs/expression/expression-wrapper.js +54 -0
  13. package/dist/cjs/expression/expression.d.ts +1 -1
  14. package/dist/cjs/helpers/postgres.d.ts +133 -0
  15. package/dist/cjs/helpers/postgres.js +141 -0
  16. package/dist/cjs/index.d.ts +4 -3
  17. package/dist/cjs/index.js +4 -2
  18. package/dist/cjs/kysely.d.ts +10 -0
  19. package/dist/cjs/kysely.js +12 -1
  20. package/dist/cjs/migration/file-migration-provider.d.ts +5 -2
  21. package/dist/cjs/migration/migrator.d.ts +5 -2
  22. package/dist/cjs/operation-node/aggregate-function-node.d.ts +3 -3
  23. package/dist/cjs/operation-node/create-index-node.d.ts +2 -0
  24. package/dist/cjs/operation-node/delete-query-node.d.ts +0 -1
  25. package/dist/cjs/operation-node/delete-query-node.js +0 -6
  26. package/dist/cjs/operation-node/function-node.d.ts +13 -0
  27. package/dist/cjs/operation-node/function-node.js +19 -0
  28. package/dist/cjs/operation-node/operation-node-transformer.d.ts +2 -0
  29. package/dist/cjs/operation-node/operation-node-transformer.js +9 -0
  30. package/dist/cjs/operation-node/operation-node-visitor.d.ts +2 -0
  31. package/dist/cjs/operation-node/operation-node-visitor.js +1 -0
  32. package/dist/cjs/operation-node/operation-node.d.ts +1 -1
  33. package/dist/cjs/operation-node/operator-node.d.ts +13 -2
  34. package/dist/cjs/operation-node/operator-node.js +38 -3
  35. package/dist/cjs/operation-node/query-node.d.ts +25 -8
  36. package/dist/cjs/operation-node/query-node.js +9 -2
  37. package/dist/cjs/operation-node/select-query-node.d.ts +0 -1
  38. package/dist/cjs/operation-node/select-query-node.js +0 -6
  39. package/dist/cjs/operation-node/update-query-node.d.ts +0 -1
  40. package/dist/cjs/operation-node/update-query-node.js +0 -6
  41. package/dist/cjs/parser/binary-operation-parser.d.ts +9 -10
  42. package/dist/cjs/parser/binary-operation-parser.js +89 -39
  43. package/dist/cjs/parser/coalesce-parser.d.ts +0 -2
  44. package/dist/cjs/parser/coalesce-parser.js +0 -9
  45. package/dist/cjs/parser/expression-parser.d.ts +7 -3
  46. package/dist/cjs/parser/expression-parser.js +3 -3
  47. package/dist/cjs/parser/group-by-parser.d.ts +3 -2
  48. package/dist/cjs/parser/group-by-parser.js +3 -0
  49. package/dist/cjs/parser/insert-values-parser.d.ts +4 -1
  50. package/dist/cjs/parser/insert-values-parser.js +19 -13
  51. package/dist/cjs/parser/join-parser.js +1 -1
  52. package/dist/cjs/parser/parse-utils.d.ts +0 -2
  53. package/dist/cjs/parser/parse-utils.js +1 -8
  54. package/dist/cjs/parser/returning-parser.d.ts +2 -1
  55. package/dist/cjs/parser/select-parser.d.ts +5 -13
  56. package/dist/cjs/parser/select-parser.js +8 -4
  57. package/dist/cjs/parser/table-parser.d.ts +5 -3
  58. package/dist/cjs/parser/unary-operation-parser.d.ts +5 -2
  59. package/dist/cjs/parser/unary-operation-parser.js +9 -8
  60. package/dist/cjs/parser/update-set-parser.d.ts +4 -1
  61. package/dist/cjs/parser/update-set-parser.js +9 -4
  62. package/dist/cjs/parser/value-parser.d.ts +5 -0
  63. package/dist/cjs/parser/value-parser.js +1 -3
  64. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +1 -1
  65. package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.js +1 -1
  66. package/dist/cjs/query-builder/aggregate-function-builder.d.ts +40 -113
  67. package/dist/cjs/query-builder/aggregate-function-builder.js +23 -63
  68. package/dist/cjs/query-builder/delete-query-builder.d.ts +220 -201
  69. package/dist/cjs/query-builder/delete-query-builder.js +21 -27
  70. package/dist/cjs/query-builder/delete-result.js +3 -0
  71. package/dist/cjs/query-builder/deprecated-having-expression-builder.d.ts +62 -0
  72. package/dist/cjs/query-builder/deprecated-having-expression-builder.js +2 -0
  73. package/dist/cjs/query-builder/deprecated-on-expression-builder.d.ts +62 -0
  74. package/dist/cjs/query-builder/deprecated-on-expression-builder.js +2 -0
  75. package/dist/cjs/query-builder/deprecated-where-expression-builder.d.ts +62 -0
  76. package/dist/cjs/query-builder/deprecated-where-expression-builder.js +2 -0
  77. package/dist/cjs/query-builder/function-module.d.ts +40 -12
  78. package/dist/cjs/query-builder/function-module.js +43 -329
  79. package/dist/cjs/query-builder/having-interface.d.ts +19 -16
  80. package/dist/cjs/query-builder/insert-query-builder.d.ts +75 -26
  81. package/dist/cjs/query-builder/insert-query-builder.js +21 -29
  82. package/dist/cjs/query-builder/insert-result.js +3 -0
  83. package/dist/cjs/query-builder/join-builder.d.ts +23 -26
  84. package/dist/cjs/query-builder/join-builder.js +17 -22
  85. package/dist/cjs/query-builder/no-result-error.d.ts +1 -0
  86. package/dist/cjs/query-builder/no-result-error.js +5 -1
  87. package/dist/cjs/query-builder/on-conflict-builder.d.ts +158 -276
  88. package/dist/cjs/query-builder/on-conflict-builder.js +52 -36
  89. package/dist/cjs/query-builder/over-builder.d.ts +5 -0
  90. package/dist/cjs/query-builder/over-builder.js +7 -0
  91. package/dist/cjs/query-builder/returning-interface.d.ts +2 -2
  92. package/dist/cjs/query-builder/select-query-builder.d.ts +148 -237
  93. package/dist/cjs/query-builder/select-query-builder.js +333 -78
  94. package/dist/cjs/query-builder/update-query-builder.d.ts +145 -213
  95. package/dist/cjs/query-builder/update-query-builder.js +21 -115
  96. package/dist/cjs/query-builder/update-result.js +3 -0
  97. package/dist/cjs/query-builder/where-interface.d.ts +71 -184
  98. package/dist/cjs/query-compiler/default-query-compiler.d.ts +3 -0
  99. package/dist/cjs/query-compiler/default-query-compiler.js +17 -1
  100. package/dist/cjs/query-creator.d.ts +9 -2
  101. package/dist/cjs/query-creator.js +1 -24
  102. package/dist/cjs/query-executor/query-executor.d.ts +3 -3
  103. package/dist/cjs/raw-builder/raw-builder.d.ts +5 -3
  104. package/dist/cjs/raw-builder/raw-builder.js +13 -7
  105. package/dist/cjs/raw-builder/sql.d.ts +17 -9
  106. package/dist/cjs/raw-builder/sql.js +8 -2
  107. package/dist/cjs/schema/alter-column-builder.d.ts +5 -0
  108. package/dist/cjs/schema/alter-column-builder.js +7 -0
  109. package/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.d.ts +5 -0
  110. package/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.js +7 -0
  111. package/dist/cjs/schema/alter-table-drop-constraint-builder.d.ts +5 -0
  112. package/dist/cjs/schema/alter-table-drop-constraint-builder.js +7 -0
  113. package/dist/cjs/schema/column-definition-builder.d.ts +6 -1
  114. package/dist/cjs/schema/column-definition-builder.js +8 -1
  115. package/dist/cjs/schema/create-index-builder.d.ts +51 -9
  116. package/dist/cjs/schema/create-index-builder.js +17 -0
  117. package/dist/cjs/schema/create-schema-builder.d.ts +5 -0
  118. package/dist/cjs/schema/create-schema-builder.js +7 -0
  119. package/dist/cjs/schema/create-table-builder.d.ts +3 -1
  120. package/dist/cjs/schema/create-table-builder.js +3 -1
  121. package/dist/cjs/schema/create-type-builder.d.ts +5 -0
  122. package/dist/cjs/schema/create-type-builder.js +7 -0
  123. package/dist/cjs/schema/create-view-builder.d.ts +5 -0
  124. package/dist/cjs/schema/create-view-builder.js +7 -0
  125. package/dist/cjs/schema/drop-index-builder.d.ts +5 -0
  126. package/dist/cjs/schema/drop-index-builder.js +7 -0
  127. package/dist/cjs/schema/drop-schema-builder.d.ts +5 -0
  128. package/dist/cjs/schema/drop-schema-builder.js +7 -0
  129. package/dist/cjs/schema/drop-table-builder.d.ts +5 -0
  130. package/dist/cjs/schema/drop-table-builder.js +7 -0
  131. package/dist/cjs/schema/drop-type-builder.d.ts +5 -0
  132. package/dist/cjs/schema/drop-type-builder.js +7 -0
  133. package/dist/cjs/schema/drop-view-builder.d.ts +5 -0
  134. package/dist/cjs/schema/drop-view-builder.js +7 -0
  135. package/dist/cjs/schema/foreign-key-constraint-builder.d.ts +5 -0
  136. package/dist/cjs/schema/foreign-key-constraint-builder.js +7 -0
  137. package/dist/cjs/util/compilable.d.ts +1 -0
  138. package/dist/cjs/util/compilable.js +6 -0
  139. package/dist/cjs/util/explainable.d.ts +35 -0
  140. package/dist/cjs/util/log.d.ts +2 -0
  141. package/dist/cjs/util/object-utils.js +1 -1
  142. package/dist/cjs/util/streamable.d.ts +29 -0
  143. package/dist/cjs/util/streamable.js +2 -0
  144. package/dist/cjs/util/type-utils.d.ts +1 -0
  145. package/dist/esm/dialect/mysql/mysql-adapter.js +2 -2
  146. package/dist/esm/dialect/mysql/mysql-driver.d.ts +1 -1
  147. package/dist/esm/dialect/mysql/mysql-driver.js +1 -1
  148. package/dist/esm/dialect/postgres/postgres-adapter.js +1 -1
  149. package/dist/esm/dialect/sqlite/sqlite-dialect.d.ts +1 -0
  150. package/dist/esm/dialect/sqlite/sqlite-dialect.js +1 -0
  151. package/dist/esm/driver/runtime-driver.js +4 -2
  152. package/dist/esm/expression/expression-builder.d.ts +386 -0
  153. package/dist/esm/expression/expression-builder.js +88 -0
  154. package/dist/esm/expression/expression-wrapper.d.ts +92 -0
  155. package/dist/esm/expression/expression-wrapper.js +50 -0
  156. package/dist/esm/expression/expression.d.ts +1 -1
  157. package/dist/esm/helpers/postgres.d.ts +133 -0
  158. package/dist/esm/helpers/postgres.js +136 -0
  159. package/dist/esm/index.d.ts +4 -3
  160. package/dist/esm/index.js +2 -1
  161. package/dist/esm/kysely.d.ts +10 -0
  162. package/dist/esm/kysely.js +13 -2
  163. package/dist/esm/migration/file-migration-provider.d.ts +5 -2
  164. package/dist/esm/migration/migrator.d.ts +5 -2
  165. package/dist/esm/operation-node/aggregate-function-node.d.ts +3 -3
  166. package/dist/esm/operation-node/create-index-node.d.ts +2 -0
  167. package/dist/esm/operation-node/delete-query-node.d.ts +0 -1
  168. package/dist/esm/operation-node/delete-query-node.js +0 -6
  169. package/dist/esm/operation-node/function-node.d.ts +13 -0
  170. package/dist/esm/operation-node/function-node.js +17 -0
  171. package/dist/esm/operation-node/operation-node-transformer.d.ts +2 -0
  172. package/dist/esm/operation-node/operation-node-transformer.js +9 -0
  173. package/dist/esm/operation-node/operation-node-visitor.d.ts +2 -0
  174. package/dist/esm/operation-node/operation-node-visitor.js +1 -0
  175. package/dist/esm/operation-node/operation-node.d.ts +1 -1
  176. package/dist/esm/operation-node/operator-node.d.ts +13 -2
  177. package/dist/esm/operation-node/operator-node.js +34 -3
  178. package/dist/esm/operation-node/query-node.d.ts +25 -8
  179. package/dist/esm/operation-node/query-node.js +9 -2
  180. package/dist/esm/operation-node/select-query-node.d.ts +0 -1
  181. package/dist/esm/operation-node/select-query-node.js +0 -6
  182. package/dist/esm/operation-node/update-query-node.d.ts +0 -1
  183. package/dist/esm/operation-node/update-query-node.js +0 -6
  184. package/dist/esm/parser/binary-operation-parser.d.ts +9 -10
  185. package/dist/esm/parser/binary-operation-parser.js +85 -37
  186. package/dist/esm/parser/coalesce-parser.d.ts +0 -2
  187. package/dist/esm/parser/coalesce-parser.js +1 -7
  188. package/dist/esm/parser/expression-parser.d.ts +7 -3
  189. package/dist/esm/parser/expression-parser.js +3 -3
  190. package/dist/esm/parser/group-by-parser.d.ts +3 -2
  191. package/dist/esm/parser/group-by-parser.js +3 -0
  192. package/dist/esm/parser/insert-values-parser.d.ts +4 -1
  193. package/dist/esm/parser/insert-values-parser.js +18 -12
  194. package/dist/esm/parser/join-parser.js +2 -2
  195. package/dist/esm/parser/parse-utils.d.ts +0 -2
  196. package/dist/esm/parser/parse-utils.js +0 -6
  197. package/dist/esm/parser/returning-parser.d.ts +2 -1
  198. package/dist/esm/parser/select-parser.d.ts +5 -13
  199. package/dist/esm/parser/select-parser.js +7 -3
  200. package/dist/esm/parser/table-parser.d.ts +5 -3
  201. package/dist/esm/parser/unary-operation-parser.d.ts +5 -2
  202. package/dist/esm/parser/unary-operation-parser.js +8 -8
  203. package/dist/esm/parser/update-set-parser.d.ts +4 -1
  204. package/dist/esm/parser/update-set-parser.js +7 -2
  205. package/dist/esm/parser/value-parser.d.ts +5 -0
  206. package/dist/esm/parser/value-parser.js +1 -3
  207. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +1 -1
  208. package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.js +1 -1
  209. package/dist/esm/query-builder/aggregate-function-builder.d.ts +40 -113
  210. package/dist/esm/query-builder/aggregate-function-builder.js +24 -64
  211. package/dist/esm/query-builder/delete-query-builder.d.ts +220 -201
  212. package/dist/esm/query-builder/delete-query-builder.js +24 -30
  213. package/dist/esm/query-builder/delete-result.js +3 -0
  214. package/dist/esm/query-builder/deprecated-having-expression-builder.d.ts +62 -0
  215. package/dist/esm/query-builder/deprecated-having-expression-builder.js +2 -0
  216. package/dist/esm/query-builder/deprecated-on-expression-builder.d.ts +62 -0
  217. package/dist/esm/query-builder/deprecated-on-expression-builder.js +2 -0
  218. package/dist/esm/query-builder/deprecated-where-expression-builder.d.ts +62 -0
  219. package/dist/esm/query-builder/deprecated-where-expression-builder.js +2 -0
  220. package/dist/esm/query-builder/function-module.d.ts +40 -12
  221. package/dist/esm/query-builder/function-module.js +42 -328
  222. package/dist/esm/query-builder/having-interface.d.ts +19 -16
  223. package/dist/esm/query-builder/insert-query-builder.d.ts +75 -26
  224. package/dist/esm/query-builder/insert-query-builder.js +25 -33
  225. package/dist/esm/query-builder/insert-result.js +3 -0
  226. package/dist/esm/query-builder/join-builder.d.ts +23 -26
  227. package/dist/esm/query-builder/join-builder.js +18 -23
  228. package/dist/esm/query-builder/no-result-error.d.ts +1 -0
  229. package/dist/esm/query-builder/no-result-error.js +3 -0
  230. package/dist/esm/query-builder/on-conflict-builder.d.ts +158 -276
  231. package/dist/esm/query-builder/on-conflict-builder.js +54 -38
  232. package/dist/esm/query-builder/over-builder.d.ts +5 -0
  233. package/dist/esm/query-builder/over-builder.js +7 -0
  234. package/dist/esm/query-builder/returning-interface.d.ts +2 -2
  235. package/dist/esm/query-builder/select-query-builder.d.ts +148 -237
  236. package/dist/esm/query-builder/select-query-builder.js +337 -82
  237. package/dist/esm/query-builder/update-query-builder.d.ts +145 -213
  238. package/dist/esm/query-builder/update-query-builder.js +25 -119
  239. package/dist/esm/query-builder/update-result.js +3 -0
  240. package/dist/esm/query-builder/where-interface.d.ts +71 -184
  241. package/dist/esm/query-compiler/default-query-compiler.d.ts +3 -0
  242. package/dist/esm/query-compiler/default-query-compiler.js +17 -1
  243. package/dist/esm/query-creator.d.ts +9 -2
  244. package/dist/esm/query-creator.js +1 -24
  245. package/dist/esm/query-executor/query-executor.d.ts +3 -3
  246. package/dist/esm/raw-builder/raw-builder.d.ts +5 -3
  247. package/dist/esm/raw-builder/raw-builder.js +13 -7
  248. package/dist/esm/raw-builder/sql.d.ts +17 -9
  249. package/dist/esm/raw-builder/sql.js +8 -2
  250. package/dist/esm/schema/alter-column-builder.d.ts +5 -0
  251. package/dist/esm/schema/alter-column-builder.js +7 -0
  252. package/dist/esm/schema/alter-table-add-foreign-key-constraint-builder.d.ts +5 -0
  253. package/dist/esm/schema/alter-table-add-foreign-key-constraint-builder.js +7 -0
  254. package/dist/esm/schema/alter-table-drop-constraint-builder.d.ts +5 -0
  255. package/dist/esm/schema/alter-table-drop-constraint-builder.js +7 -0
  256. package/dist/esm/schema/column-definition-builder.d.ts +6 -1
  257. package/dist/esm/schema/column-definition-builder.js +8 -1
  258. package/dist/esm/schema/create-index-builder.d.ts +51 -9
  259. package/dist/esm/schema/create-index-builder.js +17 -0
  260. package/dist/esm/schema/create-schema-builder.d.ts +5 -0
  261. package/dist/esm/schema/create-schema-builder.js +7 -0
  262. package/dist/esm/schema/create-table-builder.d.ts +3 -1
  263. package/dist/esm/schema/create-table-builder.js +3 -1
  264. package/dist/esm/schema/create-type-builder.d.ts +5 -0
  265. package/dist/esm/schema/create-type-builder.js +7 -0
  266. package/dist/esm/schema/create-view-builder.d.ts +5 -0
  267. package/dist/esm/schema/create-view-builder.js +7 -0
  268. package/dist/esm/schema/drop-index-builder.d.ts +5 -0
  269. package/dist/esm/schema/drop-index-builder.js +7 -0
  270. package/dist/esm/schema/drop-schema-builder.d.ts +5 -0
  271. package/dist/esm/schema/drop-schema-builder.js +7 -0
  272. package/dist/esm/schema/drop-table-builder.d.ts +5 -0
  273. package/dist/esm/schema/drop-table-builder.js +7 -0
  274. package/dist/esm/schema/drop-type-builder.d.ts +5 -0
  275. package/dist/esm/schema/drop-type-builder.js +7 -0
  276. package/dist/esm/schema/drop-view-builder.d.ts +5 -0
  277. package/dist/esm/schema/drop-view-builder.js +7 -0
  278. package/dist/esm/schema/foreign-key-constraint-builder.d.ts +5 -0
  279. package/dist/esm/schema/foreign-key-constraint-builder.js +7 -0
  280. package/dist/esm/util/compilable.d.ts +1 -0
  281. package/dist/esm/util/compilable.js +4 -1
  282. package/dist/esm/util/explainable.d.ts +35 -0
  283. package/dist/esm/util/log.d.ts +2 -0
  284. package/dist/esm/util/object-utils.js +1 -1
  285. package/dist/esm/util/streamable.d.ts +29 -0
  286. package/dist/esm/util/streamable.js +2 -0
  287. package/dist/esm/util/type-utils.d.ts +1 -0
  288. package/helpers/postgres.d.ts +1 -0
  289. package/helpers/postgres.js +1 -0
  290. package/package.json +20 -9
  291. package/dist/cjs/query-builder/expression-builder.d.ts +0 -126
  292. package/dist/cjs/query-builder/expression-builder.js +0 -107
  293. package/dist/esm/query-builder/expression-builder.d.ts +0 -126
  294. package/dist/esm/query-builder/expression-builder.js +0 -104
@@ -92,9 +92,12 @@ class OnConflictBuilder {
92
92
  whereRef(lhs, op, rhs) {
93
93
  return new OnConflictBuilder({
94
94
  ...this.#props,
95
- onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithIndexWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialFilter)(lhs, op, rhs)),
95
+ onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithIndexWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialComparison)(lhs, op, rhs)),
96
96
  });
97
97
  }
98
+ /**
99
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
100
+ */
98
101
  orWhere(...args) {
99
102
  return new OnConflictBuilder({
100
103
  ...this.#props,
@@ -102,20 +105,16 @@ class OnConflictBuilder {
102
105
  });
103
106
  }
104
107
  /**
105
- * Specify an index predicate for the index target.
106
- *
107
- * See {@link WhereInterface.orWhereRef} for more info.
108
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
108
109
  */
109
110
  orWhereRef(lhs, op, rhs) {
110
111
  return new OnConflictBuilder({
111
112
  ...this.#props,
112
- onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithIndexOrWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialFilter)(lhs, op, rhs)),
113
+ onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithIndexOrWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialComparison)(lhs, op, rhs)),
113
114
  });
114
115
  }
115
116
  /**
116
- * Specify an index predicate for the index target.
117
- *
118
- * See {@link WhereInterface.whereExists} for more info.
117
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
119
118
  */
120
119
  whereExists(arg) {
121
120
  return new OnConflictBuilder({
@@ -124,9 +123,7 @@ class OnConflictBuilder {
124
123
  });
125
124
  }
126
125
  /**
127
- * Specify an index predicate for the index target.
128
- *
129
- * See {@link WhereInterface.whereNotExists} for more info.
126
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
130
127
  */
131
128
  whereNotExists(arg) {
132
129
  return new OnConflictBuilder({
@@ -135,9 +132,7 @@ class OnConflictBuilder {
135
132
  });
136
133
  }
137
134
  /**
138
- * Specify an index predicate for the index target.
139
- *
140
- * See {@link WhereInterface.orWhereExists} for more info.
135
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
141
136
  */
142
137
  orWhereExists(arg) {
143
138
  return new OnConflictBuilder({
@@ -146,9 +141,7 @@ class OnConflictBuilder {
146
141
  });
147
142
  }
148
143
  /**
149
- * Specify an index predicate for the index target.
150
- *
151
- * See {@link WhereInterface.orWhereNotExists} for more info.
144
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
152
145
  */
153
146
  orWhereNotExists(arg) {
154
147
  return new OnConflictBuilder({
@@ -216,15 +209,38 @@ class OnConflictBuilder {
216
209
  * on conflict ("pic")
217
210
  * do update set "first_name" = $3
218
211
  * ```
212
+ *
213
+ * In the next example we use the `ref` method to reference
214
+ * columns of the virtual table `excluded` in a type-safe way
215
+ * to create an upsert operation:
216
+ *
217
+ * ```ts
218
+ * db.insertInto('person')
219
+ * .values(person)
220
+ * .onConflict((oc) => oc
221
+ * .column('id')
222
+ * .doUpdateSet((eb) => ({
223
+ * first_name: eb.ref('excluded.first_name'),
224
+ * last_name: eb.ref('excluded.last_name')
225
+ * }))
226
+ * )
227
+ * ```
219
228
  */
220
- doUpdateSet(updates) {
229
+ doUpdateSet(update) {
221
230
  return new OnConflictUpdateBuilder({
222
231
  ...this.#props,
223
232
  onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWith(this.#props.onConflictNode, {
224
- updates: (0, update_set_parser_js_1.parseUpdateObject)(updates),
233
+ updates: (0, update_set_parser_js_1.parseUpdateExpression)(update),
225
234
  }),
226
235
  });
227
236
  }
237
+ /**
238
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
239
+ * what the provided function returns.
240
+ */
241
+ $call(func) {
242
+ return func(this);
243
+ }
228
244
  }
229
245
  exports.OnConflictBuilder = OnConflictBuilder;
230
246
  (0, prevent_await_js_1.preventAwait)(OnConflictBuilder, "don't await OnConflictBuilder instances.");
@@ -258,9 +274,12 @@ class OnConflictUpdateBuilder {
258
274
  whereRef(lhs, op, rhs) {
259
275
  return new OnConflictUpdateBuilder({
260
276
  ...this.#props,
261
- onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithUpdateWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialFilter)(lhs, op, rhs)),
277
+ onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithUpdateWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialComparison)(lhs, op, rhs)),
262
278
  });
263
279
  }
280
+ /**
281
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
282
+ */
264
283
  orWhere(...args) {
265
284
  return new OnConflictUpdateBuilder({
266
285
  ...this.#props,
@@ -268,20 +287,16 @@ class OnConflictUpdateBuilder {
268
287
  });
269
288
  }
270
289
  /**
271
- * Specify a where condition for the update operation.
272
- *
273
- * See {@link WhereInterface.orWhereRef} for more info.
290
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
274
291
  */
275
292
  orWhereRef(lhs, op, rhs) {
276
293
  return new OnConflictUpdateBuilder({
277
294
  ...this.#props,
278
- onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithUpdateOrWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialFilter)(lhs, op, rhs)),
295
+ onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithUpdateOrWhere(this.#props.onConflictNode, (0, binary_operation_parser_js_1.parseReferentialComparison)(lhs, op, rhs)),
279
296
  });
280
297
  }
281
298
  /**
282
- * Specify a where condition for the update operation.
283
- *
284
- * See {@link WhereInterface.whereExists} for more info.
299
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
285
300
  */
286
301
  whereExists(arg) {
287
302
  return new OnConflictUpdateBuilder({
@@ -290,9 +305,7 @@ class OnConflictUpdateBuilder {
290
305
  });
291
306
  }
292
307
  /**
293
- * Specify a where condition for the update operation.
294
- *
295
- * See {@link WhereInterface.whereNotExists} for more info.
308
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
296
309
  */
297
310
  whereNotExists(arg) {
298
311
  return new OnConflictUpdateBuilder({
@@ -301,9 +314,7 @@ class OnConflictUpdateBuilder {
301
314
  });
302
315
  }
303
316
  /**
304
- * Specify a where condition for the update operation.
305
- *
306
- * See {@link WhereInterface.orWhereExists} for more info.
317
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
307
318
  */
308
319
  orWhereExists(arg) {
309
320
  return new OnConflictUpdateBuilder({
@@ -312,9 +323,7 @@ class OnConflictUpdateBuilder {
312
323
  });
313
324
  }
314
325
  /**
315
- * Specify a where condition for the update operation.
316
- *
317
- * See {@link WhereInterface.orWhereNotExists} for more info.
326
+ * @deprecated Follow [these](https://github.com/koskimas/kysely/releases/tag/0.24.0) instructions to migrate
318
327
  */
319
328
  orWhereNotExists(arg) {
320
329
  return new OnConflictUpdateBuilder({
@@ -328,6 +337,13 @@ class OnConflictUpdateBuilder {
328
337
  onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWithoutUpdateWhere(this.#props.onConflictNode),
329
338
  });
330
339
  }
340
+ /**
341
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
342
+ * what the provided function returns.
343
+ */
344
+ $call(func) {
345
+ return func(this);
346
+ }
331
347
  toOperationNode() {
332
348
  return this.#props.onConflictNode;
333
349
  }
@@ -52,6 +52,11 @@ export declare class OverBuilder<DB, TB extends keyof DB> implements OperationNo
52
52
  */
53
53
  partitionBy(partitionBy: ReadonlyArray<PartitionByExpression<DB, TB>>): OverBuilder<DB, TB>;
54
54
  partitionBy(partitionBy: PartitionByExpression<DB, TB>): OverBuilder<DB, TB>;
55
+ /**
56
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
57
+ * what the provided function returns.
58
+ */
59
+ $call<T>(func: (qb: this) => T): T;
55
60
  toOperationNode(): OverNode;
56
61
  }
57
62
  export interface OverBuilderProps {
@@ -42,6 +42,13 @@ class OverBuilder {
42
42
  overNode: over_node_js_1.OverNode.cloneWithPartitionByItems(this.#props.overNode, (0, partition_by_parser_js_1.parsePartitionBy)(partitionBy)),
43
43
  });
44
44
  }
45
+ /**
46
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
47
+ * what the provided function returns.
48
+ */
49
+ $call(func) {
50
+ return func(this);
51
+ }
45
52
  toOperationNode() {
46
53
  return this.#props.overNode;
47
54
  }
@@ -53,10 +53,10 @@ export interface ReturningInterface<DB, TB extends keyof DB, O> {
53
53
  * first_name: 'Jennifer',
54
54
  * last_name: 'Aniston'
55
55
  * })
56
- * .returning([
56
+ * .returning(eb => [
57
57
  * 'id as id',
58
58
  * sql<string>`concat(first_name, ' ', last_name)`.as('full_name'),
59
- * (qb) => qb.selectFrom('pets').select('pet.id').limit(1).as('first_pet_id')
59
+ * eb.selectFrom('pets').select('pet.id').limit(1).as('first_pet_id')
60
60
  * ])
61
61
  * .executeTakeFirst()
62
62
  * ```