kysely 0.16.9 → 0.17.1

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 (189) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -2
  3. package/dist/cjs/dialect/mysql/mysql-adapter.js +3 -4
  4. package/dist/cjs/dialect/mysql/mysql-introspector.js +2 -1
  5. package/dist/cjs/dialect/postgres/postgres-adapter.js +3 -2
  6. package/dist/cjs/dialect/sqlite/sqlite-introspector.js +2 -1
  7. package/dist/cjs/driver/connection-provider.d.ts +1 -1
  8. package/dist/cjs/driver/default-connection-provider.d.ts +1 -1
  9. package/dist/cjs/driver/default-connection-provider.js +1 -1
  10. package/dist/cjs/driver/single-connection-provider.d.ts +1 -1
  11. package/dist/cjs/driver/single-connection-provider.js +1 -1
  12. package/dist/cjs/index-nodeless.d.ts +2 -0
  13. package/dist/cjs/index-nodeless.js +2 -0
  14. package/dist/cjs/kysely.d.ts +3 -6
  15. package/dist/cjs/kysely.js +30 -41
  16. package/dist/cjs/migration/migrator.js +4 -4
  17. package/dist/cjs/operation-node/delete-query-node.d.ts +7 -0
  18. package/dist/cjs/operation-node/delete-query-node.js +15 -0
  19. package/dist/cjs/operation-node/operation-node-transformer.js +1 -1
  20. package/dist/cjs/operation-node/raw-node.d.ts +4 -2
  21. package/dist/cjs/operation-node/raw-node.js +8 -2
  22. package/dist/cjs/parser/complex-expression-parser.d.ts +5 -5
  23. package/dist/cjs/parser/complex-expression-parser.js +5 -4
  24. package/dist/cjs/parser/filter-parser.d.ts +9 -9
  25. package/dist/cjs/parser/filter-parser.js +31 -30
  26. package/dist/cjs/parser/group-by-parser.d.ts +1 -2
  27. package/dist/cjs/parser/group-by-parser.js +2 -2
  28. package/dist/cjs/parser/insert-values-parser.d.ts +1 -2
  29. package/dist/cjs/parser/insert-values-parser.js +6 -6
  30. package/dist/cjs/parser/join-parser.d.ts +1 -2
  31. package/dist/cjs/parser/join-parser.js +8 -7
  32. package/dist/cjs/parser/order-by-parser.d.ts +1 -2
  33. package/dist/cjs/parser/order-by-parser.js +4 -4
  34. package/dist/cjs/parser/parse-utils.d.ts +10 -0
  35. package/dist/cjs/parser/parse-utils.js +38 -0
  36. package/dist/cjs/parser/reference-parser.d.ts +2 -3
  37. package/dist/cjs/parser/reference-parser.js +5 -5
  38. package/dist/cjs/parser/select-parser.d.ts +1 -2
  39. package/dist/cjs/parser/select-parser.js +5 -5
  40. package/dist/cjs/parser/table-parser.d.ts +2 -3
  41. package/dist/cjs/parser/table-parser.js +5 -5
  42. package/dist/cjs/parser/update-set-parser.d.ts +1 -2
  43. package/dist/cjs/parser/update-set-parser.js +2 -2
  44. package/dist/cjs/parser/value-parser.d.ts +3 -4
  45. package/dist/cjs/parser/value-parser.js +7 -7
  46. package/dist/cjs/parser/with-parser.d.ts +1 -2
  47. package/dist/cjs/parser/with-parser.js +3 -2
  48. package/dist/cjs/query-builder/delete-query-builder.d.ts +77 -20
  49. package/dist/cjs/query-builder/delete-query-builder.js +81 -14
  50. package/dist/cjs/query-builder/expression-builder.d.ts +4 -13
  51. package/dist/cjs/query-builder/expression-builder.js +12 -21
  52. package/dist/cjs/query-builder/function-builder.d.ts +2 -6
  53. package/dist/cjs/query-builder/function-builder.js +5 -8
  54. package/dist/cjs/query-builder/insert-query-builder.d.ts +11 -9
  55. package/dist/cjs/query-builder/insert-query-builder.js +8 -7
  56. package/dist/cjs/query-builder/join-builder.d.ts +0 -2
  57. package/dist/cjs/query-builder/join-builder.js +8 -8
  58. package/dist/cjs/query-builder/on-conflict-builder.d.ts +24 -20
  59. package/dist/cjs/query-builder/on-conflict-builder.js +17 -17
  60. package/dist/cjs/query-builder/returning-interface.d.ts +2 -2
  61. package/dist/cjs/query-builder/select-query-builder.d.ts +43 -32
  62. package/dist/cjs/query-builder/select-query-builder.js +28 -26
  63. package/dist/cjs/query-builder/update-query-builder.d.ts +29 -25
  64. package/dist/cjs/query-builder/update-query-builder.js +22 -20
  65. package/dist/cjs/query-builder/where-interface.d.ts +20 -16
  66. package/dist/cjs/query-compiler/default-query-compiler.js +16 -7
  67. package/dist/cjs/query-creator.d.ts +24 -138
  68. package/dist/cjs/query-creator.js +19 -145
  69. package/dist/cjs/query-executor/default-query-executor.d.ts +14 -3
  70. package/dist/cjs/query-executor/default-query-executor.js +15 -17
  71. package/dist/cjs/query-executor/noop-query-executor.d.ts +13 -2
  72. package/dist/cjs/query-executor/noop-query-executor.js +9 -2
  73. package/dist/cjs/query-executor/query-executor-provider.d.ts +8 -0
  74. package/dist/cjs/query-executor/query-executor-provider.js +2 -0
  75. package/dist/cjs/query-executor/query-executor.d.ts +14 -6
  76. package/dist/cjs/query-executor/query-executor.js +4 -2
  77. package/dist/cjs/raw-builder/raw-builder.d.ts +42 -11
  78. package/dist/cjs/raw-builder/raw-builder.js +55 -56
  79. package/dist/cjs/raw-builder/sql.d.ts +323 -0
  80. package/dist/cjs/raw-builder/sql.js +153 -0
  81. package/dist/cjs/schema/alter-table-builder.d.ts +20 -8
  82. package/dist/cjs/schema/alter-table-builder.js +3 -3
  83. package/dist/cjs/schema/column-definition-builder.d.ts +20 -8
  84. package/dist/cjs/schema/create-index-builder.d.ts +3 -1
  85. package/dist/cjs/schema/create-index-builder.js +3 -1
  86. package/dist/cjs/schema/create-table-builder.d.ts +6 -2
  87. package/dist/cjs/schema/create-table-builder.js +8 -4
  88. package/dist/cjs/schema/create-view-builder.d.ts +3 -3
  89. package/dist/cjs/schema/create-view-builder.js +3 -3
  90. package/dist/cjs/util/query-id.js +10 -4
  91. package/dist/cjs/util/random-string.js +65 -2
  92. package/dist/esm/dialect/mysql/mysql-adapter.js +3 -4
  93. package/dist/esm/dialect/mysql/mysql-introspector.js +2 -1
  94. package/dist/esm/dialect/postgres/postgres-adapter.js +3 -2
  95. package/dist/esm/dialect/sqlite/sqlite-introspector.js +2 -1
  96. package/dist/esm/driver/connection-provider.d.ts +1 -1
  97. package/dist/esm/driver/default-connection-provider.d.ts +1 -1
  98. package/dist/esm/driver/default-connection-provider.js +1 -1
  99. package/dist/esm/driver/single-connection-provider.d.ts +1 -1
  100. package/dist/esm/driver/single-connection-provider.js +1 -1
  101. package/dist/esm/index-nodeless.d.ts +2 -0
  102. package/dist/esm/index-nodeless.js +2 -0
  103. package/dist/esm/kysely.d.ts +3 -6
  104. package/dist/esm/kysely.js +30 -41
  105. package/dist/esm/migration/migrator.js +4 -4
  106. package/dist/esm/operation-node/delete-query-node.d.ts +7 -0
  107. package/dist/esm/operation-node/delete-query-node.js +15 -0
  108. package/dist/esm/operation-node/operation-node-transformer.js +1 -1
  109. package/dist/esm/operation-node/raw-node.d.ts +4 -2
  110. package/dist/esm/operation-node/raw-node.js +8 -2
  111. package/dist/esm/parser/complex-expression-parser.d.ts +5 -5
  112. package/dist/esm/parser/complex-expression-parser.js +5 -4
  113. package/dist/esm/parser/filter-parser.d.ts +9 -9
  114. package/dist/esm/parser/filter-parser.js +31 -30
  115. package/dist/esm/parser/group-by-parser.d.ts +1 -2
  116. package/dist/esm/parser/group-by-parser.js +2 -2
  117. package/dist/esm/parser/insert-values-parser.d.ts +1 -2
  118. package/dist/esm/parser/insert-values-parser.js +6 -6
  119. package/dist/esm/parser/join-parser.d.ts +1 -2
  120. package/dist/esm/parser/join-parser.js +8 -7
  121. package/dist/esm/parser/order-by-parser.d.ts +1 -2
  122. package/dist/esm/parser/order-by-parser.js +4 -4
  123. package/dist/esm/parser/parse-utils.d.ts +10 -0
  124. package/dist/esm/parser/parse-utils.js +32 -0
  125. package/dist/esm/parser/reference-parser.d.ts +2 -3
  126. package/dist/esm/parser/reference-parser.js +5 -5
  127. package/dist/esm/parser/select-parser.d.ts +1 -2
  128. package/dist/esm/parser/select-parser.js +5 -5
  129. package/dist/esm/parser/table-parser.d.ts +2 -3
  130. package/dist/esm/parser/table-parser.js +5 -5
  131. package/dist/esm/parser/update-set-parser.d.ts +1 -2
  132. package/dist/esm/parser/update-set-parser.js +2 -2
  133. package/dist/esm/parser/value-parser.d.ts +3 -4
  134. package/dist/esm/parser/value-parser.js +7 -7
  135. package/dist/esm/parser/with-parser.d.ts +1 -2
  136. package/dist/esm/parser/with-parser.js +3 -2
  137. package/dist/esm/query-builder/delete-query-builder.d.ts +77 -20
  138. package/dist/esm/query-builder/delete-query-builder.js +81 -14
  139. package/dist/esm/query-builder/expression-builder.d.ts +4 -13
  140. package/dist/esm/query-builder/expression-builder.js +12 -21
  141. package/dist/esm/query-builder/function-builder.d.ts +2 -6
  142. package/dist/esm/query-builder/function-builder.js +5 -8
  143. package/dist/esm/query-builder/insert-query-builder.d.ts +11 -9
  144. package/dist/esm/query-builder/insert-query-builder.js +8 -7
  145. package/dist/esm/query-builder/join-builder.d.ts +0 -2
  146. package/dist/esm/query-builder/join-builder.js +8 -8
  147. package/dist/esm/query-builder/on-conflict-builder.d.ts +24 -20
  148. package/dist/esm/query-builder/on-conflict-builder.js +17 -17
  149. package/dist/esm/query-builder/returning-interface.d.ts +2 -2
  150. package/dist/esm/query-builder/select-query-builder.d.ts +43 -32
  151. package/dist/esm/query-builder/select-query-builder.js +28 -26
  152. package/dist/esm/query-builder/update-query-builder.d.ts +29 -25
  153. package/dist/esm/query-builder/update-query-builder.js +22 -20
  154. package/dist/esm/query-builder/where-interface.d.ts +20 -16
  155. package/dist/esm/query-compiler/default-query-compiler.js +16 -7
  156. package/dist/esm/query-creator.d.ts +24 -138
  157. package/dist/esm/query-creator.js +19 -145
  158. package/dist/esm/query-executor/default-query-executor.d.ts +14 -3
  159. package/dist/esm/query-executor/default-query-executor.js +15 -17
  160. package/dist/esm/query-executor/noop-query-executor.d.ts +13 -2
  161. package/dist/esm/query-executor/noop-query-executor.js +8 -1
  162. package/dist/esm/query-executor/query-executor-provider.d.ts +8 -0
  163. package/dist/esm/query-executor/query-executor-provider.js +2 -0
  164. package/dist/esm/query-executor/query-executor.d.ts +14 -6
  165. package/dist/esm/query-executor/query-executor.js +4 -2
  166. package/dist/esm/raw-builder/raw-builder.d.ts +42 -11
  167. package/dist/esm/raw-builder/raw-builder.js +56 -57
  168. package/dist/esm/raw-builder/sql.d.ts +323 -0
  169. package/dist/esm/raw-builder/sql.js +151 -0
  170. package/dist/esm/schema/alter-table-builder.d.ts +20 -8
  171. package/dist/esm/schema/alter-table-builder.js +3 -3
  172. package/dist/esm/schema/column-definition-builder.d.ts +20 -8
  173. package/dist/esm/schema/create-index-builder.d.ts +3 -1
  174. package/dist/esm/schema/create-index-builder.js +3 -1
  175. package/dist/esm/schema/create-table-builder.d.ts +6 -2
  176. package/dist/esm/schema/create-table-builder.js +8 -4
  177. package/dist/esm/schema/create-view-builder.d.ts +3 -3
  178. package/dist/esm/schema/create-view-builder.js +3 -3
  179. package/dist/esm/util/query-id.js +10 -4
  180. package/dist/esm/util/random-string.js +65 -2
  181. package/package.json +13 -13
  182. package/dist/cjs/parser/parse-context.d.ts +0 -55
  183. package/dist/cjs/parser/parse-context.js +0 -50
  184. package/dist/cjs/util/private-symbols.d.ts +0 -5
  185. package/dist/cjs/util/private-symbols.js +0 -8
  186. package/dist/esm/parser/parse-context.d.ts +0 -55
  187. package/dist/esm/parser/parse-context.js +0 -47
  188. package/dist/esm/util/private-symbols.d.ts +0 -5
  189. package/dist/esm/util/private-symbols.js +0 -6
@@ -1,55 +0,0 @@
1
- import { DialectAdapter } from '../dialect/dialect-adapter.js';
2
- import { JoinType } from '../operation-node/join-node.js';
3
- import { JoinBuilder } from '../query-builder/join-builder.js';
4
- import { SelectQueryBuilder } from '../query-builder/select-query-builder.js';
5
- import { ExpressionBuilder } from '../query-builder/expression-builder.js';
6
- import { QueryCreator } from '../query-creator.js';
7
- import { TableExpression } from './table-parser.js';
8
- /**
9
- * This interface exposes everything the parsers need to be able to parse
10
- * method calls into {@link OperationNode} trees.
11
- */
12
- export interface ParseContext {
13
- readonly adapter: DialectAdapter;
14
- /**
15
- * Creates a select query builder with a {@link NoopQueryExecutor}.
16
- */
17
- createSelectQueryBuilder(): SelectQueryBuilder<any, any, any>;
18
- /**
19
- * Creates an expression builder for building stuff like subqueries.
20
- * {@link NoopQueryExecutor} is used as the executor and the queries
21
- * built using the returned builder can never be executed.
22
- */
23
- createExpressionBuilder(): ExpressionBuilder<any, any>;
24
- /**
25
- * Creates a query creator with a {@link NoopQueryExecutor}.
26
- */
27
- createQueryCreator(): QueryCreator<any>;
28
- /**
29
- * Creates an instance of a join builder.
30
- */
31
- createJoinBuilder(joinType: JoinType, table: TableExpression<any, any>): JoinBuilder<any, any>;
32
- }
33
- export declare class DefaultParseContext implements ParseContext {
34
- #private;
35
- constructor(adapter: DialectAdapter);
36
- get adapter(): DialectAdapter;
37
- /**
38
- * Creates a select query builder with a {@link NoopQueryExecutor}.
39
- */
40
- createSelectQueryBuilder(): SelectQueryBuilder<any, any, any>;
41
- /**
42
- * Creates an expression builder for building stuff like subqueries.
43
- * {@link NoopQueryExecutor} is used as the executor and the queries
44
- * built using the returned builder can never be executed.
45
- */
46
- createExpressionBuilder(): ExpressionBuilder<any, any>;
47
- /**
48
- * Creates a query creator with a {@link NoopQueryExecutor}.
49
- */
50
- createQueryCreator(): QueryCreator<any>;
51
- /**
52
- * Creates an instance of a join builder.
53
- */
54
- createJoinBuilder(joinType: JoinType, table: TableExpression<any, any>): JoinBuilder<any, any>;
55
- }
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DefaultParseContext = void 0;
4
- const join_node_js_1 = require("../operation-node/join-node.js");
5
- const select_query_node_js_1 = require("../operation-node/select-query-node.js");
6
- const join_builder_js_1 = require("../query-builder/join-builder.js");
7
- const select_query_builder_js_1 = require("../query-builder/select-query-builder.js");
8
- const expression_builder_js_1 = require("../query-builder/expression-builder.js");
9
- const query_creator_js_1 = require("../query-creator.js");
10
- const noop_query_executor_js_1 = require("../query-executor/noop-query-executor.js");
11
- const query_id_js_1 = require("../util/query-id.js");
12
- const table_parser_js_1 = require("./table-parser.js");
13
- class DefaultParseContext {
14
- #adapter;
15
- #noopExecutor;
16
- constructor(adapter) {
17
- this.#adapter = adapter;
18
- this.#noopExecutor = new noop_query_executor_js_1.NoopQueryExecutor();
19
- }
20
- get adapter() {
21
- return this.#adapter;
22
- }
23
- createSelectQueryBuilder() {
24
- return new select_query_builder_js_1.SelectQueryBuilder({
25
- queryId: (0, query_id_js_1.createQueryId)(),
26
- executor: this.#noopExecutor,
27
- parseContext: this,
28
- queryNode: select_query_node_js_1.SelectQueryNode.create((0, table_parser_js_1.parseTableExpressionOrList)(this, [])),
29
- });
30
- }
31
- createExpressionBuilder() {
32
- return new expression_builder_js_1.ExpressionBuilder({
33
- executor: this.#noopExecutor,
34
- parseContext: this,
35
- });
36
- }
37
- createQueryCreator() {
38
- return new query_creator_js_1.QueryCreator({
39
- executor: this.#noopExecutor,
40
- parseContext: this,
41
- });
42
- }
43
- createJoinBuilder(joinType, table) {
44
- return new join_builder_js_1.JoinBuilder({
45
- joinNode: join_node_js_1.JoinNode.create(joinType, (0, table_parser_js_1.parseTableExpression)(this, table)),
46
- parseContext: this,
47
- });
48
- }
49
- }
50
- exports.DefaultParseContext = DefaultParseContext;
@@ -1,5 +0,0 @@
1
- /**
2
- * @internal
3
- * @private
4
- */
5
- export declare const PRIVATE_ADAPTER: unique symbol;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PRIVATE_ADAPTER = void 0;
4
- /**
5
- * @internal
6
- * @private
7
- */
8
- exports.PRIVATE_ADAPTER = Symbol();
@@ -1,55 +0,0 @@
1
- import { DialectAdapter } from '../dialect/dialect-adapter.js';
2
- import { JoinType } from '../operation-node/join-node.js';
3
- import { JoinBuilder } from '../query-builder/join-builder.js';
4
- import { SelectQueryBuilder } from '../query-builder/select-query-builder.js';
5
- import { ExpressionBuilder } from '../query-builder/expression-builder.js';
6
- import { QueryCreator } from '../query-creator.js';
7
- import { TableExpression } from './table-parser.js';
8
- /**
9
- * This interface exposes everything the parsers need to be able to parse
10
- * method calls into {@link OperationNode} trees.
11
- */
12
- export interface ParseContext {
13
- readonly adapter: DialectAdapter;
14
- /**
15
- * Creates a select query builder with a {@link NoopQueryExecutor}.
16
- */
17
- createSelectQueryBuilder(): SelectQueryBuilder<any, any, any>;
18
- /**
19
- * Creates an expression builder for building stuff like subqueries.
20
- * {@link NoopQueryExecutor} is used as the executor and the queries
21
- * built using the returned builder can never be executed.
22
- */
23
- createExpressionBuilder(): ExpressionBuilder<any, any>;
24
- /**
25
- * Creates a query creator with a {@link NoopQueryExecutor}.
26
- */
27
- createQueryCreator(): QueryCreator<any>;
28
- /**
29
- * Creates an instance of a join builder.
30
- */
31
- createJoinBuilder(joinType: JoinType, table: TableExpression<any, any>): JoinBuilder<any, any>;
32
- }
33
- export declare class DefaultParseContext implements ParseContext {
34
- #private;
35
- constructor(adapter: DialectAdapter);
36
- get adapter(): DialectAdapter;
37
- /**
38
- * Creates a select query builder with a {@link NoopQueryExecutor}.
39
- */
40
- createSelectQueryBuilder(): SelectQueryBuilder<any, any, any>;
41
- /**
42
- * Creates an expression builder for building stuff like subqueries.
43
- * {@link NoopQueryExecutor} is used as the executor and the queries
44
- * built using the returned builder can never be executed.
45
- */
46
- createExpressionBuilder(): ExpressionBuilder<any, any>;
47
- /**
48
- * Creates a query creator with a {@link NoopQueryExecutor}.
49
- */
50
- createQueryCreator(): QueryCreator<any>;
51
- /**
52
- * Creates an instance of a join builder.
53
- */
54
- createJoinBuilder(joinType: JoinType, table: TableExpression<any, any>): JoinBuilder<any, any>;
55
- }
@@ -1,47 +0,0 @@
1
- /// <reference types="./parse-context.d.ts" />
2
- import { JoinNode } from '../operation-node/join-node.js';
3
- import { SelectQueryNode } from '../operation-node/select-query-node.js';
4
- import { JoinBuilder } from '../query-builder/join-builder.js';
5
- import { SelectQueryBuilder } from '../query-builder/select-query-builder.js';
6
- import { ExpressionBuilder } from '../query-builder/expression-builder.js';
7
- import { QueryCreator } from '../query-creator.js';
8
- import { NoopQueryExecutor } from '../query-executor/noop-query-executor.js';
9
- import { createQueryId } from '../util/query-id.js';
10
- import { parseTableExpression, parseTableExpressionOrList, } from './table-parser.js';
11
- export class DefaultParseContext {
12
- #adapter;
13
- #noopExecutor;
14
- constructor(adapter) {
15
- this.#adapter = adapter;
16
- this.#noopExecutor = new NoopQueryExecutor();
17
- }
18
- get adapter() {
19
- return this.#adapter;
20
- }
21
- createSelectQueryBuilder() {
22
- return new SelectQueryBuilder({
23
- queryId: createQueryId(),
24
- executor: this.#noopExecutor,
25
- parseContext: this,
26
- queryNode: SelectQueryNode.create(parseTableExpressionOrList(this, [])),
27
- });
28
- }
29
- createExpressionBuilder() {
30
- return new ExpressionBuilder({
31
- executor: this.#noopExecutor,
32
- parseContext: this,
33
- });
34
- }
35
- createQueryCreator() {
36
- return new QueryCreator({
37
- executor: this.#noopExecutor,
38
- parseContext: this,
39
- });
40
- }
41
- createJoinBuilder(joinType, table) {
42
- return new JoinBuilder({
43
- joinNode: JoinNode.create(joinType, parseTableExpression(this, table)),
44
- parseContext: this,
45
- });
46
- }
47
- }
@@ -1,5 +0,0 @@
1
- /**
2
- * @internal
3
- * @private
4
- */
5
- export declare const PRIVATE_ADAPTER: unique symbol;
@@ -1,6 +0,0 @@
1
- /// <reference types="./private-symbols.d.ts" />
2
- /**
3
- * @internal
4
- * @private
5
- */
6
- export const PRIVATE_ADAPTER = Symbol();