kysely 0.27.3 → 0.27.4
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.
- package/CONTRIBUTING.md +1 -1
- package/README.md +7 -7
- package/dist/cjs/dialect/dialect-adapter-base.d.ts +2 -1
- package/dist/cjs/dialect/dialect-adapter-base.js +4 -1
- package/dist/cjs/dialect/dialect-adapter.d.ts +5 -0
- package/dist/cjs/dialect/mssql/mssql-adapter.d.ts +1 -5
- package/dist/cjs/dialect/mssql/mssql-adapter.js +2 -4
- package/dist/cjs/dialect/mssql/mssql-dialect-config.d.ts +46 -26
- package/dist/cjs/dialect/mssql/mssql-driver.d.ts +1 -0
- package/dist/cjs/dialect/mssql/mssql-driver.js +95 -36
- package/dist/cjs/dialect/postgres/postgres-introspector.js +1 -1
- package/dist/cjs/driver/database-connection.d.ts +3 -1
- package/dist/cjs/dynamic/dynamic-reference-builder.js +2 -2
- package/dist/cjs/dynamic/dynamic.d.ts +1 -1
- package/dist/cjs/dynamic/dynamic.js +1 -1
- package/dist/cjs/expression/expression-builder.d.ts +2 -2
- package/dist/cjs/expression/expression-builder.js +2 -3
- package/dist/cjs/expression/expression.js +2 -3
- package/dist/cjs/helpers/mssql.js +3 -4
- package/dist/cjs/helpers/mysql.d.ts +3 -3
- package/dist/cjs/helpers/mysql.js +6 -7
- package/dist/cjs/helpers/postgres.d.ts +4 -4
- package/dist/cjs/helpers/postgres.js +7 -8
- package/dist/cjs/helpers/sqlite.js +3 -4
- package/dist/cjs/index.d.ts +28 -21
- package/dist/cjs/index.js +28 -21
- package/dist/cjs/kysely.d.ts +1 -1
- package/dist/cjs/kysely.js +3 -3
- package/dist/cjs/operation-node/alter-column-node.d.ts +1 -1
- package/dist/cjs/operation-node/case-node.d.ts +1 -1
- package/dist/cjs/operation-node/column-definition-node.d.ts +1 -0
- package/dist/cjs/operation-node/data-type-node.d.ts +2 -2
- package/dist/cjs/operation-node/data-type-node.js +5 -3
- package/dist/cjs/operation-node/delete-query-node.d.ts +2 -0
- package/dist/cjs/operation-node/foreign-key-constraint-node.d.ts +4 -4
- package/dist/cjs/operation-node/having-node.d.ts +1 -1
- package/dist/cjs/operation-node/insert-query-node.d.ts +2 -0
- package/dist/cjs/operation-node/merge-query-node.d.ts +2 -0
- package/dist/cjs/operation-node/on-node.d.ts +1 -1
- package/dist/cjs/operation-node/operation-node-source.js +1 -2
- package/dist/cjs/operation-node/operation-node-transformer.d.ts +2 -0
- package/dist/cjs/operation-node/operation-node-transformer.js +12 -0
- package/dist/cjs/operation-node/operation-node-visitor.d.ts +2 -0
- package/dist/cjs/operation-node/operation-node-visitor.js +1 -0
- package/dist/cjs/operation-node/operation-node.d.ts +1 -1
- package/dist/cjs/operation-node/operator-node.d.ts +3 -3
- package/dist/cjs/operation-node/operator-node.js +8 -6
- package/dist/cjs/operation-node/output-node.d.ts +13 -0
- package/dist/cjs/operation-node/output-node.js +26 -0
- package/dist/cjs/operation-node/query-node.d.ts +11 -6
- package/dist/cjs/operation-node/query-node.js +9 -0
- package/dist/cjs/operation-node/select-query-node.d.ts +1 -0
- package/dist/cjs/operation-node/select-query-node.js +6 -0
- package/dist/cjs/operation-node/update-query-node.d.ts +2 -0
- package/dist/cjs/operation-node/where-node.d.ts +1 -1
- package/dist/cjs/parser/binary-operation-parser.js +5 -6
- package/dist/cjs/parser/data-type-parser.js +1 -2
- package/dist/cjs/parser/default-value-parser.js +1 -2
- package/dist/cjs/parser/expression-parser.js +3 -4
- package/dist/cjs/parser/fetch-parser.js +1 -2
- package/dist/cjs/parser/group-by-parser.js +1 -2
- package/dist/cjs/parser/identifier-parser.js +1 -2
- package/dist/cjs/parser/insert-values-parser.js +1 -2
- package/dist/cjs/parser/join-parser.js +1 -2
- package/dist/cjs/parser/merge-parser.js +2 -3
- package/dist/cjs/parser/on-commit-action-parse.js +1 -2
- package/dist/cjs/parser/on-modify-action-parser.js +1 -2
- package/dist/cjs/parser/order-by-parser.js +3 -4
- package/dist/cjs/parser/parse-utils.js +4 -5
- package/dist/cjs/parser/partition-by-parser.js +1 -2
- package/dist/cjs/parser/reference-parser.js +8 -9
- package/dist/cjs/parser/returning-parser.d.ts +4 -3
- package/dist/cjs/parser/select-parser.js +2 -3
- package/dist/cjs/parser/set-operation-parser.js +1 -2
- package/dist/cjs/parser/table-parser.js +4 -5
- package/dist/cjs/parser/top-parser.js +1 -2
- package/dist/cjs/parser/unary-operation-parser.js +3 -4
- package/dist/cjs/parser/update-set-parser.js +2 -3
- package/dist/cjs/parser/value-parser.js +4 -5
- package/dist/cjs/parser/with-parser.js +1 -2
- package/dist/cjs/plugin/camel-case/camel-case-plugin.d.ts +2 -2
- package/dist/cjs/plugin/camel-case/camel-case-plugin.js +2 -2
- package/dist/cjs/plugin/camel-case/camel-case.js +2 -3
- package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.d.ts +18 -0
- package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.js +19 -11
- package/dist/cjs/query-builder/delete-query-builder.d.ts +89 -5
- package/dist/cjs/query-builder/delete-query-builder.js +19 -5
- package/dist/cjs/query-builder/function-module.d.ts +5 -5
- package/dist/cjs/query-builder/function-module.js +1 -2
- package/dist/cjs/query-builder/insert-query-builder.d.ts +95 -10
- package/dist/cjs/query-builder/insert-query-builder.js +25 -10
- package/dist/cjs/query-builder/merge-query-builder.d.ts +167 -3
- package/dist/cjs/query-builder/merge-query-builder.js +30 -1
- package/dist/cjs/query-builder/no-result-error.js +2 -2
- package/dist/cjs/query-builder/on-conflict-builder.d.ts +2 -2
- package/dist/cjs/query-builder/output-interface.d.ts +95 -0
- package/dist/cjs/query-builder/output-interface.js +2 -0
- package/dist/cjs/query-builder/returning-interface.d.ts +2 -0
- package/dist/cjs/query-builder/select-query-builder.d.ts +76 -11
- package/dist/cjs/query-builder/select-query-builder.js +7 -2
- package/dist/cjs/query-builder/update-query-builder.d.ts +95 -10
- package/dist/cjs/query-builder/update-query-builder.js +21 -7
- package/dist/cjs/query-builder/update-result.d.ts +9 -0
- package/dist/cjs/query-builder/update-result.js +9 -0
- package/dist/cjs/query-builder/where-interface.d.ts +1 -1
- package/dist/cjs/query-compiler/default-query-compiler.d.ts +2 -0
- package/dist/cjs/query-compiler/default-query-compiler.js +25 -1
- package/dist/cjs/query-creator.d.ts +56 -3
- package/dist/cjs/query-creator.js +54 -1
- package/dist/cjs/raw-builder/raw-builder.js +1 -2
- package/dist/cjs/raw-builder/sql.d.ts +5 -5
- package/dist/cjs/schema/alter-column-builder.js +3 -0
- package/dist/cjs/schema/alter-table-add-index-builder.d.ts +1 -1
- package/dist/cjs/schema/alter-table-add-index-builder.js +1 -1
- package/dist/cjs/schema/alter-table-builder.js +1 -2
- package/dist/cjs/schema/column-definition-builder.d.ts +5 -0
- package/dist/cjs/schema/column-definition-builder.js +7 -0
- package/dist/cjs/util/assert.js +2 -3
- package/dist/cjs/util/compilable.js +1 -2
- package/dist/cjs/util/json-object-args.js +1 -2
- package/dist/cjs/util/log-once.js +1 -2
- package/dist/cjs/util/object-utils.js +38 -26
- package/dist/cjs/util/performance-now.js +1 -2
- package/dist/cjs/util/prevent-await.js +1 -2
- package/dist/cjs/util/query-id.js +1 -2
- package/dist/cjs/util/random-string.js +1 -2
- package/dist/cjs/util/require-all-props.js +1 -2
- package/dist/cjs/util/stack-trace-utils.js +1 -2
- package/dist/esm/dialect/dialect-adapter-base.d.ts +2 -1
- package/dist/esm/dialect/dialect-adapter-base.js +4 -1
- package/dist/esm/dialect/dialect-adapter.d.ts +5 -0
- package/dist/esm/dialect/mssql/mssql-adapter.d.ts +1 -5
- package/dist/esm/dialect/mssql/mssql-adapter.js +2 -4
- package/dist/esm/dialect/mssql/mssql-dialect-config.d.ts +46 -26
- package/dist/esm/dialect/mssql/mssql-driver.d.ts +1 -0
- package/dist/esm/dialect/mssql/mssql-driver.js +95 -36
- package/dist/esm/dialect/postgres/postgres-introspector.js +1 -1
- package/dist/esm/driver/database-connection.d.ts +3 -1
- package/dist/esm/dynamic/dynamic.d.ts +1 -1
- package/dist/esm/dynamic/dynamic.js +1 -1
- package/dist/esm/expression/expression-builder.d.ts +2 -2
- package/dist/esm/helpers/mysql.d.ts +3 -3
- package/dist/esm/helpers/mysql.js +3 -3
- package/dist/esm/helpers/postgres.d.ts +4 -4
- package/dist/esm/helpers/postgres.js +4 -4
- package/dist/esm/index.d.ts +28 -21
- package/dist/esm/index.js +28 -21
- package/dist/esm/kysely.d.ts +1 -1
- package/dist/esm/kysely.js +1 -1
- package/dist/esm/operation-node/alter-column-node.d.ts +1 -1
- package/dist/esm/operation-node/case-node.d.ts +1 -1
- package/dist/esm/operation-node/column-definition-node.d.ts +1 -0
- package/dist/esm/operation-node/data-type-node.d.ts +2 -2
- package/dist/esm/operation-node/data-type-node.js +3 -1
- package/dist/esm/operation-node/delete-query-node.d.ts +2 -0
- package/dist/esm/operation-node/foreign-key-constraint-node.d.ts +4 -4
- package/dist/esm/operation-node/having-node.d.ts +1 -1
- package/dist/esm/operation-node/insert-query-node.d.ts +2 -0
- package/dist/esm/operation-node/merge-query-node.d.ts +2 -0
- package/dist/esm/operation-node/on-node.d.ts +1 -1
- package/dist/esm/operation-node/operation-node-transformer.d.ts +2 -0
- package/dist/esm/operation-node/operation-node-transformer.js +12 -0
- package/dist/esm/operation-node/operation-node-visitor.d.ts +2 -0
- package/dist/esm/operation-node/operation-node-visitor.js +1 -0
- package/dist/esm/operation-node/operation-node.d.ts +1 -1
- package/dist/esm/operation-node/operator-node.d.ts +3 -3
- package/dist/esm/operation-node/operator-node.js +2 -0
- package/dist/esm/operation-node/output-node.d.ts +13 -0
- package/dist/esm/operation-node/output-node.js +24 -0
- package/dist/esm/operation-node/query-node.d.ts +11 -6
- package/dist/esm/operation-node/query-node.js +9 -0
- package/dist/esm/operation-node/select-query-node.d.ts +1 -0
- package/dist/esm/operation-node/select-query-node.js +6 -0
- package/dist/esm/operation-node/update-query-node.d.ts +2 -0
- package/dist/esm/operation-node/where-node.d.ts +1 -1
- package/dist/esm/parser/returning-parser.d.ts +4 -3
- package/dist/esm/plugin/camel-case/camel-case-plugin.d.ts +2 -2
- package/dist/esm/plugin/camel-case/camel-case-plugin.js +2 -2
- package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.d.ts +18 -0
- package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.js +19 -11
- package/dist/esm/query-builder/delete-query-builder.d.ts +89 -5
- package/dist/esm/query-builder/delete-query-builder.js +19 -5
- package/dist/esm/query-builder/function-module.d.ts +5 -5
- package/dist/esm/query-builder/insert-query-builder.d.ts +95 -10
- package/dist/esm/query-builder/insert-query-builder.js +25 -10
- package/dist/esm/query-builder/merge-query-builder.d.ts +167 -3
- package/dist/esm/query-builder/merge-query-builder.js +30 -1
- package/dist/esm/query-builder/on-conflict-builder.d.ts +2 -2
- package/dist/esm/query-builder/output-interface.d.ts +95 -0
- package/dist/esm/query-builder/output-interface.js +2 -0
- package/dist/esm/query-builder/returning-interface.d.ts +2 -0
- package/dist/esm/query-builder/select-query-builder.d.ts +76 -11
- package/dist/esm/query-builder/select-query-builder.js +6 -0
- package/dist/esm/query-builder/update-query-builder.d.ts +95 -10
- package/dist/esm/query-builder/update-query-builder.js +21 -7
- package/dist/esm/query-builder/update-result.d.ts +9 -0
- package/dist/esm/query-builder/update-result.js +9 -0
- package/dist/esm/query-builder/where-interface.d.ts +1 -1
- package/dist/esm/query-compiler/default-query-compiler.d.ts +2 -0
- package/dist/esm/query-compiler/default-query-compiler.js +25 -1
- package/dist/esm/query-creator.d.ts +56 -3
- package/dist/esm/query-creator.js +54 -1
- package/dist/esm/raw-builder/sql.d.ts +5 -5
- package/dist/esm/schema/alter-column-builder.js +3 -0
- package/dist/esm/schema/alter-table-add-index-builder.d.ts +1 -1
- package/dist/esm/schema/alter-table-add-index-builder.js +1 -1
- package/dist/esm/schema/alter-table-builder.js +1 -2
- package/dist/esm/schema/column-definition-builder.d.ts +5 -0
- package/dist/esm/schema/column-definition-builder.js +7 -0
- package/dist/esm/util/object-utils.js +18 -5
- package/package.json +7 -6
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.jsonArrayFrom = jsonArrayFrom;
|
|
4
|
+
exports.jsonObjectFrom = jsonObjectFrom;
|
|
5
|
+
exports.jsonBuildObject = jsonBuildObject;
|
|
4
6
|
const sql_js_1 = require("../raw-builder/sql.js");
|
|
5
7
|
const json_object_args_js_1 = require("../util/json-object-args.js");
|
|
6
8
|
/**
|
|
7
9
|
* A MySQL helper for aggregating a subquery into a JSON array.
|
|
8
10
|
*
|
|
9
11
|
* NOTE: This helper is only guaranteed to fully work with the built-in `MysqlDialect`.
|
|
10
|
-
* While the produced SQL is compatible with all MySQL databases, some
|
|
12
|
+
* While the produced SQL is compatible with all MySQL databases, some third-party dialects
|
|
11
13
|
* may not parse the nested JSON into arrays. In these cases you can use the built in
|
|
12
14
|
* `ParseJSONResultsPlugin` to parse the results.
|
|
13
15
|
*
|
|
@@ -52,14 +54,13 @@ const json_object_args_js_1 = require("../util/json-object-args.js");
|
|
|
52
54
|
function jsonArrayFrom(expr) {
|
|
53
55
|
return (0, sql_js_1.sql) `(select cast(coalesce(json_arrayagg(json_object(${sql_js_1.sql.join(getMysqlJsonObjectArgs(expr.toOperationNode(), 'agg'))})), '[]') as json) from ${expr} as agg)`;
|
|
54
56
|
}
|
|
55
|
-
exports.jsonArrayFrom = jsonArrayFrom;
|
|
56
57
|
/**
|
|
57
58
|
* A MySQL helper for turning a subquery into a JSON object.
|
|
58
59
|
*
|
|
59
60
|
* The subquery must only return one row.
|
|
60
61
|
*
|
|
61
62
|
* NOTE: This helper is only guaranteed to fully work with the built-in `MysqlDialect`.
|
|
62
|
-
* While the produced SQL is compatible with all MySQL databases, some
|
|
63
|
+
* While the produced SQL is compatible with all MySQL databases, some third-party dialects
|
|
63
64
|
* may not parse the nested JSON into objects. In these cases you can use the built in
|
|
64
65
|
* `ParseJSONResultsPlugin` to parse the results.
|
|
65
66
|
*
|
|
@@ -104,12 +105,11 @@ exports.jsonArrayFrom = jsonArrayFrom;
|
|
|
104
105
|
function jsonObjectFrom(expr) {
|
|
105
106
|
return (0, sql_js_1.sql) `(select json_object(${sql_js_1.sql.join(getMysqlJsonObjectArgs(expr.toOperationNode(), 'obj'))}) from ${expr} as obj)`;
|
|
106
107
|
}
|
|
107
|
-
exports.jsonObjectFrom = jsonObjectFrom;
|
|
108
108
|
/**
|
|
109
109
|
* The MySQL `json_object` function.
|
|
110
110
|
*
|
|
111
111
|
* NOTE: This helper is only guaranteed to fully work with the built-in `MysqlDialect`.
|
|
112
|
-
* While the produced SQL is compatible with all MySQL databases, some
|
|
112
|
+
* While the produced SQL is compatible with all MySQL databases, some third-party dialects
|
|
113
113
|
* may not parse the nested JSON into objects. In these cases you can use the built in
|
|
114
114
|
* `ParseJSONResultsPlugin` to parse the results.
|
|
115
115
|
*
|
|
@@ -148,7 +148,6 @@ exports.jsonObjectFrom = jsonObjectFrom;
|
|
|
148
148
|
function jsonBuildObject(obj) {
|
|
149
149
|
return (0, sql_js_1.sql) `json_object(${sql_js_1.sql.join(Object.keys(obj).flatMap((k) => [sql_js_1.sql.lit(k), obj[k]]))})`;
|
|
150
150
|
}
|
|
151
|
-
exports.jsonBuildObject = jsonBuildObject;
|
|
152
151
|
function getMysqlJsonObjectArgs(node, table) {
|
|
153
152
|
try {
|
|
154
153
|
return (0, json_object_args_js_1.getJsonObjectArgs)(node, table);
|
|
@@ -15,7 +15,7 @@ import { Simplify } from '../util/type-utils.js';
|
|
|
15
15
|
* Please keep in mind that the helpers under the `kysely/helpers` folder, including
|
|
16
16
|
* `jsonArrayFrom`, are not guaranteed to work with third party dialects. In order for
|
|
17
17
|
* them to work, the dialect must automatically parse the `json` data type into
|
|
18
|
-
*
|
|
18
|
+
* JavaScript JSON values like objects and arrays. Some dialects might simply return
|
|
19
19
|
* the data as a JSON string. In these cases you can use the built in `ParseJSONResultsPlugin`
|
|
20
20
|
* to parse the results.
|
|
21
21
|
*
|
|
@@ -65,9 +65,9 @@ export declare function jsonArrayFrom<O>(expr: Expression<O>): RawBuilder<Simpli
|
|
|
65
65
|
* use the `jsonObjectFrom` helper to fetch person's favorite pet along with the person's id.
|
|
66
66
|
*
|
|
67
67
|
* Please keep in mind that the helpers under the `kysely/helpers` folder, including
|
|
68
|
-
* `jsonObjectFrom`, are not guaranteed to work with
|
|
68
|
+
* `jsonObjectFrom`, are not guaranteed to work with third-party dialects. In order for
|
|
69
69
|
* them to work, the dialect must automatically parse the `json` data type into
|
|
70
|
-
*
|
|
70
|
+
* JavaScript JSON values like objects and arrays. Some dialects might simply return
|
|
71
71
|
* the data as a JSON string. In these cases you can use the built in `ParseJSONResultsPlugin`
|
|
72
72
|
* to parse the results.
|
|
73
73
|
*
|
|
@@ -107,7 +107,7 @@ export declare function jsonObjectFrom<O>(expr: Expression<O>): RawBuilder<Simpl
|
|
|
107
107
|
* The PostgreSQL `json_build_object` function.
|
|
108
108
|
*
|
|
109
109
|
* NOTE: This helper is only guaranteed to fully work with the built-in `PostgresDialect`.
|
|
110
|
-
* While the produced SQL is compatible with all PostgreSQL databases, some
|
|
110
|
+
* While the produced SQL is compatible with all PostgreSQL databases, some third-party dialects
|
|
111
111
|
* may not parse the nested JSON into objects. In these cases you can use the built in
|
|
112
112
|
* `ParseJSONResultsPlugin` to parse the results.
|
|
113
113
|
*
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.jsonArrayFrom = jsonArrayFrom;
|
|
4
|
+
exports.jsonObjectFrom = jsonObjectFrom;
|
|
5
|
+
exports.jsonBuildObject = jsonBuildObject;
|
|
4
6
|
const sql_js_1 = require("../raw-builder/sql.js");
|
|
5
7
|
/**
|
|
6
8
|
* A postgres helper for aggregating a subquery (or other expression) into a JSONB array.
|
|
@@ -16,7 +18,7 @@ const sql_js_1 = require("../raw-builder/sql.js");
|
|
|
16
18
|
* Please keep in mind that the helpers under the `kysely/helpers` folder, including
|
|
17
19
|
* `jsonArrayFrom`, are not guaranteed to work with third party dialects. In order for
|
|
18
20
|
* them to work, the dialect must automatically parse the `json` data type into
|
|
19
|
-
*
|
|
21
|
+
* JavaScript JSON values like objects and arrays. Some dialects might simply return
|
|
20
22
|
* the data as a JSON string. In these cases you can use the built in `ParseJSONResultsPlugin`
|
|
21
23
|
* to parse the results.
|
|
22
24
|
*
|
|
@@ -54,7 +56,6 @@ const sql_js_1 = require("../raw-builder/sql.js");
|
|
|
54
56
|
function jsonArrayFrom(expr) {
|
|
55
57
|
return (0, sql_js_1.sql) `(select coalesce(json_agg(agg), '[]') from ${expr} as agg)`;
|
|
56
58
|
}
|
|
57
|
-
exports.jsonArrayFrom = jsonArrayFrom;
|
|
58
59
|
/**
|
|
59
60
|
* A postgres helper for turning a subquery (or other expression) into a JSON object.
|
|
60
61
|
*
|
|
@@ -69,9 +70,9 @@ exports.jsonArrayFrom = jsonArrayFrom;
|
|
|
69
70
|
* use the `jsonObjectFrom` helper to fetch person's favorite pet along with the person's id.
|
|
70
71
|
*
|
|
71
72
|
* Please keep in mind that the helpers under the `kysely/helpers` folder, including
|
|
72
|
-
* `jsonObjectFrom`, are not guaranteed to work with
|
|
73
|
+
* `jsonObjectFrom`, are not guaranteed to work with third-party dialects. In order for
|
|
73
74
|
* them to work, the dialect must automatically parse the `json` data type into
|
|
74
|
-
*
|
|
75
|
+
* JavaScript JSON values like objects and arrays. Some dialects might simply return
|
|
75
76
|
* the data as a JSON string. In these cases you can use the built in `ParseJSONResultsPlugin`
|
|
76
77
|
* to parse the results.
|
|
77
78
|
*
|
|
@@ -109,12 +110,11 @@ exports.jsonArrayFrom = jsonArrayFrom;
|
|
|
109
110
|
function jsonObjectFrom(expr) {
|
|
110
111
|
return (0, sql_js_1.sql) `(select to_json(obj) from ${expr} as obj)`;
|
|
111
112
|
}
|
|
112
|
-
exports.jsonObjectFrom = jsonObjectFrom;
|
|
113
113
|
/**
|
|
114
114
|
* The PostgreSQL `json_build_object` function.
|
|
115
115
|
*
|
|
116
116
|
* NOTE: This helper is only guaranteed to fully work with the built-in `PostgresDialect`.
|
|
117
|
-
* While the produced SQL is compatible with all PostgreSQL databases, some
|
|
117
|
+
* While the produced SQL is compatible with all PostgreSQL databases, some third-party dialects
|
|
118
118
|
* may not parse the nested JSON into objects. In these cases you can use the built in
|
|
119
119
|
* `ParseJSONResultsPlugin` to parse the results.
|
|
120
120
|
*
|
|
@@ -153,4 +153,3 @@ exports.jsonObjectFrom = jsonObjectFrom;
|
|
|
153
153
|
function jsonBuildObject(obj) {
|
|
154
154
|
return (0, sql_js_1.sql) `json_build_object(${sql_js_1.sql.join(Object.keys(obj).flatMap((k) => [sql_js_1.sql.lit(k), obj[k]]))})`;
|
|
155
155
|
}
|
|
156
|
-
exports.jsonBuildObject = jsonBuildObject;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.jsonArrayFrom = jsonArrayFrom;
|
|
4
|
+
exports.jsonObjectFrom = jsonObjectFrom;
|
|
5
|
+
exports.jsonBuildObject = jsonBuildObject;
|
|
4
6
|
const sql_js_1 = require("../raw-builder/sql.js");
|
|
5
7
|
const json_object_args_js_1 = require("../util/json-object-args.js");
|
|
6
8
|
/**
|
|
@@ -59,7 +61,6 @@ const json_object_args_js_1 = require("../util/json-object-args.js");
|
|
|
59
61
|
function jsonArrayFrom(expr) {
|
|
60
62
|
return (0, sql_js_1.sql) `(select coalesce(json_group_array(json_object(${sql_js_1.sql.join(getSqliteJsonObjectArgs(expr.toOperationNode(), 'agg'))})), '[]') from ${expr} as agg)`;
|
|
61
63
|
}
|
|
62
|
-
exports.jsonArrayFrom = jsonArrayFrom;
|
|
63
64
|
/**
|
|
64
65
|
* A SQLite helper for turning a subquery into a JSON object.
|
|
65
66
|
*
|
|
@@ -118,7 +119,6 @@ exports.jsonArrayFrom = jsonArrayFrom;
|
|
|
118
119
|
function jsonObjectFrom(expr) {
|
|
119
120
|
return (0, sql_js_1.sql) `(select json_object(${sql_js_1.sql.join(getSqliteJsonObjectArgs(expr.toOperationNode(), 'obj'))}) from ${expr} as obj)`;
|
|
120
121
|
}
|
|
121
|
-
exports.jsonObjectFrom = jsonObjectFrom;
|
|
122
122
|
/**
|
|
123
123
|
* The SQLite `json_object` function.
|
|
124
124
|
*
|
|
@@ -169,7 +169,6 @@ exports.jsonObjectFrom = jsonObjectFrom;
|
|
|
169
169
|
function jsonBuildObject(obj) {
|
|
170
170
|
return (0, sql_js_1.sql) `json_object(${sql_js_1.sql.join(Object.keys(obj).flatMap((k) => [sql_js_1.sql.lit(k), obj[k]]))})`;
|
|
171
171
|
}
|
|
172
|
-
exports.jsonBuildObject = jsonBuildObject;
|
|
173
172
|
function getSqliteJsonObjectArgs(node, table) {
|
|
174
173
|
try {
|
|
175
174
|
return (0, json_object_args_js_1.getJsonObjectArgs)(node, table);
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export { ExpressionBuilder, expressionBuilder, } from './expression/expression-b
|
|
|
5
5
|
export * from './expression/expression-wrapper.js';
|
|
6
6
|
export * from './query-builder/where-interface.js';
|
|
7
7
|
export * from './query-builder/returning-interface.js';
|
|
8
|
+
export * from './query-builder/output-interface.js';
|
|
8
9
|
export * from './query-builder/having-interface.js';
|
|
9
10
|
export * from './query-builder/select-query-builder.js';
|
|
10
11
|
export * from './query-builder/insert-query-builder.js';
|
|
@@ -91,17 +92,21 @@ export * from './plugin/with-schema/with-schema-plugin.js';
|
|
|
91
92
|
export * from './plugin/parse-json-results/parse-json-results-plugin.js';
|
|
92
93
|
export * from './operation-node/add-column-node.js';
|
|
93
94
|
export * from './operation-node/add-constraint-node.js';
|
|
95
|
+
export * from './operation-node/add-index-node.js';
|
|
96
|
+
export * from './operation-node/aggregate-function-node.js';
|
|
94
97
|
export * from './operation-node/alias-node.js';
|
|
95
98
|
export * from './operation-node/alter-column-node.js';
|
|
96
99
|
export * from './operation-node/alter-table-node.js';
|
|
97
100
|
export * from './operation-node/and-node.js';
|
|
101
|
+
export * from './operation-node/binary-operation-node.js';
|
|
98
102
|
export * from './operation-node/case-node.js';
|
|
103
|
+
export * from './operation-node/cast-node.js';
|
|
99
104
|
export * from './operation-node/check-constraint-node.js';
|
|
100
105
|
export * from './operation-node/column-definition-node.js';
|
|
101
106
|
export * from './operation-node/column-node.js';
|
|
102
107
|
export * from './operation-node/column-update-node.js';
|
|
103
|
-
export * from './operation-node/common-table-expression-node.js';
|
|
104
108
|
export * from './operation-node/common-table-expression-name-node.js';
|
|
109
|
+
export * from './operation-node/common-table-expression-node.js';
|
|
105
110
|
export * from './operation-node/constraint-node.js';
|
|
106
111
|
export * from './operation-node/create-index-node.js';
|
|
107
112
|
export * from './operation-node/create-schema-node.js';
|
|
@@ -109,6 +114,7 @@ export * from './operation-node/create-table-node.js';
|
|
|
109
114
|
export * from './operation-node/create-type-node.js';
|
|
110
115
|
export * from './operation-node/create-view-node.js';
|
|
111
116
|
export * from './operation-node/data-type-node.js';
|
|
117
|
+
export * from './operation-node/default-insert-value-node.js';
|
|
112
118
|
export * from './operation-node/default-value-node.js';
|
|
113
119
|
export * from './operation-node/delete-query-node.js';
|
|
114
120
|
export * from './operation-node/drop-column-node.js';
|
|
@@ -118,8 +124,11 @@ export * from './operation-node/drop-schema-node.js';
|
|
|
118
124
|
export * from './operation-node/drop-table-node.js';
|
|
119
125
|
export * from './operation-node/drop-type-node.js';
|
|
120
126
|
export * from './operation-node/drop-view-node.js';
|
|
127
|
+
export * from './operation-node/explain-node.js';
|
|
128
|
+
export * from './operation-node/fetch-node.js';
|
|
121
129
|
export * from './operation-node/foreign-key-constraint-node.js';
|
|
122
130
|
export * from './operation-node/from-node.js';
|
|
131
|
+
export * from './operation-node/function-node.js';
|
|
123
132
|
export * from './operation-node/generated-node.js';
|
|
124
133
|
export * from './operation-node/group-by-item-node.js';
|
|
125
134
|
export * from './operation-node/group-by-node.js';
|
|
@@ -127,8 +136,14 @@ export * from './operation-node/having-node.js';
|
|
|
127
136
|
export * from './operation-node/identifier-node.js';
|
|
128
137
|
export * from './operation-node/insert-query-node.js';
|
|
129
138
|
export * from './operation-node/join-node.js';
|
|
139
|
+
export * from './operation-node/json-operator-chain-node.js';
|
|
140
|
+
export * from './operation-node/json-path-leg-node.js';
|
|
141
|
+
export * from './operation-node/json-path-node.js';
|
|
142
|
+
export * from './operation-node/json-reference-node.js';
|
|
130
143
|
export * from './operation-node/limit-node.js';
|
|
131
144
|
export * from './operation-node/list-node.js';
|
|
145
|
+
export * from './operation-node/matched-node.js';
|
|
146
|
+
export * from './operation-node/merge-query-node.js';
|
|
132
147
|
export * from './operation-node/modify-column-node.js';
|
|
133
148
|
export * from './operation-node/offset-node.js';
|
|
134
149
|
export * from './operation-node/on-conflict-node.js';
|
|
@@ -142,7 +157,11 @@ export * from './operation-node/operator-node.js';
|
|
|
142
157
|
export * from './operation-node/or-node.js';
|
|
143
158
|
export * from './operation-node/order-by-item-node.js';
|
|
144
159
|
export * from './operation-node/order-by-node.js';
|
|
160
|
+
export * from './operation-node/output-node.js';
|
|
161
|
+
export * from './operation-node/over-node.js';
|
|
145
162
|
export * from './operation-node/parens-node.js';
|
|
163
|
+
export * from './operation-node/partition-by-item-node.js';
|
|
164
|
+
export * from './operation-node/partition-by-node.js';
|
|
146
165
|
export * from './operation-node/primary-constraint-node.js';
|
|
147
166
|
export * from './operation-node/primitive-value-list-node.js';
|
|
148
167
|
export * from './operation-node/query-node.js';
|
|
@@ -151,38 +170,26 @@ export * from './operation-node/reference-node.js';
|
|
|
151
170
|
export * from './operation-node/references-node.js';
|
|
152
171
|
export * from './operation-node/rename-column-node.js';
|
|
153
172
|
export * from './operation-node/returning-node.js';
|
|
173
|
+
export * from './operation-node/schemable-identifier-node.js';
|
|
154
174
|
export * from './operation-node/select-all-node.js';
|
|
155
|
-
export * from './operation-node/select-
|
|
175
|
+
export * from './operation-node/select-modifier-node.js';
|
|
156
176
|
export * from './operation-node/select-query-node.js';
|
|
157
177
|
export * from './operation-node/selection-node.js';
|
|
178
|
+
export * from './operation-node/set-operation-node.js';
|
|
179
|
+
export * from './operation-node/simple-reference-expression-node.js';
|
|
158
180
|
export * from './operation-node/table-node.js';
|
|
181
|
+
export * from './operation-node/top-node.js';
|
|
182
|
+
export * from './operation-node/tuple-node.js';
|
|
183
|
+
export * from './operation-node/unary-operation-node.js';
|
|
159
184
|
export * from './operation-node/unique-constraint-node.js';
|
|
160
185
|
export * from './operation-node/update-query-node.js';
|
|
186
|
+
export * from './operation-node/using-node.js';
|
|
161
187
|
export * from './operation-node/value-list-node.js';
|
|
162
188
|
export * from './operation-node/value-node.js';
|
|
163
189
|
export * from './operation-node/values-node.js';
|
|
164
190
|
export * from './operation-node/when-node.js';
|
|
165
191
|
export * from './operation-node/where-node.js';
|
|
166
192
|
export * from './operation-node/with-node.js';
|
|
167
|
-
export * from './operation-node/explain-node.js';
|
|
168
|
-
export * from './operation-node/default-insert-value-node.js';
|
|
169
|
-
export * from './operation-node/aggregate-function-node.js';
|
|
170
|
-
export * from './operation-node/over-node.js';
|
|
171
|
-
export * from './operation-node/partition-by-node.js';
|
|
172
|
-
export * from './operation-node/partition-by-item-node.js';
|
|
173
|
-
export * from './operation-node/set-operation-node.js';
|
|
174
|
-
export * from './operation-node/binary-operation-node.js';
|
|
175
|
-
export * from './operation-node/unary-operation-node.js';
|
|
176
|
-
export * from './operation-node/using-node.js';
|
|
177
|
-
export * from './operation-node/json-reference-node.js';
|
|
178
|
-
export * from './operation-node/json-path-leg-node.js';
|
|
179
|
-
export * from './operation-node/json-path-node.js';
|
|
180
|
-
export * from './operation-node/json-operator-chain-node.js';
|
|
181
|
-
export * from './operation-node/tuple-node.js';
|
|
182
|
-
export * from './operation-node/merge-query-node.js';
|
|
183
|
-
export * from './operation-node/matched-node.js';
|
|
184
|
-
export * from './operation-node/fetch-node.js';
|
|
185
|
-
export * from './operation-node/top-node.js';
|
|
186
193
|
export * from './util/column-type.js';
|
|
187
194
|
export * from './util/compilable.js';
|
|
188
195
|
export * from './util/explainable.js';
|
package/dist/cjs/index.js
CHANGED
|
@@ -23,6 +23,7 @@ Object.defineProperty(exports, "expressionBuilder", { enumerable: true, get: fun
|
|
|
23
23
|
__exportStar(require("./expression/expression-wrapper.js"), exports);
|
|
24
24
|
__exportStar(require("./query-builder/where-interface.js"), exports);
|
|
25
25
|
__exportStar(require("./query-builder/returning-interface.js"), exports);
|
|
26
|
+
__exportStar(require("./query-builder/output-interface.js"), exports);
|
|
26
27
|
__exportStar(require("./query-builder/having-interface.js"), exports);
|
|
27
28
|
__exportStar(require("./query-builder/select-query-builder.js"), exports);
|
|
28
29
|
__exportStar(require("./query-builder/insert-query-builder.js"), exports);
|
|
@@ -109,17 +110,21 @@ __exportStar(require("./plugin/with-schema/with-schema-plugin.js"), exports);
|
|
|
109
110
|
__exportStar(require("./plugin/parse-json-results/parse-json-results-plugin.js"), exports);
|
|
110
111
|
__exportStar(require("./operation-node/add-column-node.js"), exports);
|
|
111
112
|
__exportStar(require("./operation-node/add-constraint-node.js"), exports);
|
|
113
|
+
__exportStar(require("./operation-node/add-index-node.js"), exports);
|
|
114
|
+
__exportStar(require("./operation-node/aggregate-function-node.js"), exports);
|
|
112
115
|
__exportStar(require("./operation-node/alias-node.js"), exports);
|
|
113
116
|
__exportStar(require("./operation-node/alter-column-node.js"), exports);
|
|
114
117
|
__exportStar(require("./operation-node/alter-table-node.js"), exports);
|
|
115
118
|
__exportStar(require("./operation-node/and-node.js"), exports);
|
|
119
|
+
__exportStar(require("./operation-node/binary-operation-node.js"), exports);
|
|
116
120
|
__exportStar(require("./operation-node/case-node.js"), exports);
|
|
121
|
+
__exportStar(require("./operation-node/cast-node.js"), exports);
|
|
117
122
|
__exportStar(require("./operation-node/check-constraint-node.js"), exports);
|
|
118
123
|
__exportStar(require("./operation-node/column-definition-node.js"), exports);
|
|
119
124
|
__exportStar(require("./operation-node/column-node.js"), exports);
|
|
120
125
|
__exportStar(require("./operation-node/column-update-node.js"), exports);
|
|
121
|
-
__exportStar(require("./operation-node/common-table-expression-node.js"), exports);
|
|
122
126
|
__exportStar(require("./operation-node/common-table-expression-name-node.js"), exports);
|
|
127
|
+
__exportStar(require("./operation-node/common-table-expression-node.js"), exports);
|
|
123
128
|
__exportStar(require("./operation-node/constraint-node.js"), exports);
|
|
124
129
|
__exportStar(require("./operation-node/create-index-node.js"), exports);
|
|
125
130
|
__exportStar(require("./operation-node/create-schema-node.js"), exports);
|
|
@@ -127,6 +132,7 @@ __exportStar(require("./operation-node/create-table-node.js"), exports);
|
|
|
127
132
|
__exportStar(require("./operation-node/create-type-node.js"), exports);
|
|
128
133
|
__exportStar(require("./operation-node/create-view-node.js"), exports);
|
|
129
134
|
__exportStar(require("./operation-node/data-type-node.js"), exports);
|
|
135
|
+
__exportStar(require("./operation-node/default-insert-value-node.js"), exports);
|
|
130
136
|
__exportStar(require("./operation-node/default-value-node.js"), exports);
|
|
131
137
|
__exportStar(require("./operation-node/delete-query-node.js"), exports);
|
|
132
138
|
__exportStar(require("./operation-node/drop-column-node.js"), exports);
|
|
@@ -136,8 +142,11 @@ __exportStar(require("./operation-node/drop-schema-node.js"), exports);
|
|
|
136
142
|
__exportStar(require("./operation-node/drop-table-node.js"), exports);
|
|
137
143
|
__exportStar(require("./operation-node/drop-type-node.js"), exports);
|
|
138
144
|
__exportStar(require("./operation-node/drop-view-node.js"), exports);
|
|
145
|
+
__exportStar(require("./operation-node/explain-node.js"), exports);
|
|
146
|
+
__exportStar(require("./operation-node/fetch-node.js"), exports);
|
|
139
147
|
__exportStar(require("./operation-node/foreign-key-constraint-node.js"), exports);
|
|
140
148
|
__exportStar(require("./operation-node/from-node.js"), exports);
|
|
149
|
+
__exportStar(require("./operation-node/function-node.js"), exports);
|
|
141
150
|
__exportStar(require("./operation-node/generated-node.js"), exports);
|
|
142
151
|
__exportStar(require("./operation-node/group-by-item-node.js"), exports);
|
|
143
152
|
__exportStar(require("./operation-node/group-by-node.js"), exports);
|
|
@@ -145,8 +154,14 @@ __exportStar(require("./operation-node/having-node.js"), exports);
|
|
|
145
154
|
__exportStar(require("./operation-node/identifier-node.js"), exports);
|
|
146
155
|
__exportStar(require("./operation-node/insert-query-node.js"), exports);
|
|
147
156
|
__exportStar(require("./operation-node/join-node.js"), exports);
|
|
157
|
+
__exportStar(require("./operation-node/json-operator-chain-node.js"), exports);
|
|
158
|
+
__exportStar(require("./operation-node/json-path-leg-node.js"), exports);
|
|
159
|
+
__exportStar(require("./operation-node/json-path-node.js"), exports);
|
|
160
|
+
__exportStar(require("./operation-node/json-reference-node.js"), exports);
|
|
148
161
|
__exportStar(require("./operation-node/limit-node.js"), exports);
|
|
149
162
|
__exportStar(require("./operation-node/list-node.js"), exports);
|
|
163
|
+
__exportStar(require("./operation-node/matched-node.js"), exports);
|
|
164
|
+
__exportStar(require("./operation-node/merge-query-node.js"), exports);
|
|
150
165
|
__exportStar(require("./operation-node/modify-column-node.js"), exports);
|
|
151
166
|
__exportStar(require("./operation-node/offset-node.js"), exports);
|
|
152
167
|
__exportStar(require("./operation-node/on-conflict-node.js"), exports);
|
|
@@ -160,7 +175,11 @@ __exportStar(require("./operation-node/operator-node.js"), exports);
|
|
|
160
175
|
__exportStar(require("./operation-node/or-node.js"), exports);
|
|
161
176
|
__exportStar(require("./operation-node/order-by-item-node.js"), exports);
|
|
162
177
|
__exportStar(require("./operation-node/order-by-node.js"), exports);
|
|
178
|
+
__exportStar(require("./operation-node/output-node.js"), exports);
|
|
179
|
+
__exportStar(require("./operation-node/over-node.js"), exports);
|
|
163
180
|
__exportStar(require("./operation-node/parens-node.js"), exports);
|
|
181
|
+
__exportStar(require("./operation-node/partition-by-item-node.js"), exports);
|
|
182
|
+
__exportStar(require("./operation-node/partition-by-node.js"), exports);
|
|
164
183
|
__exportStar(require("./operation-node/primary-constraint-node.js"), exports);
|
|
165
184
|
__exportStar(require("./operation-node/primitive-value-list-node.js"), exports);
|
|
166
185
|
__exportStar(require("./operation-node/query-node.js"), exports);
|
|
@@ -169,38 +188,26 @@ __exportStar(require("./operation-node/reference-node.js"), exports);
|
|
|
169
188
|
__exportStar(require("./operation-node/references-node.js"), exports);
|
|
170
189
|
__exportStar(require("./operation-node/rename-column-node.js"), exports);
|
|
171
190
|
__exportStar(require("./operation-node/returning-node.js"), exports);
|
|
191
|
+
__exportStar(require("./operation-node/schemable-identifier-node.js"), exports);
|
|
172
192
|
__exportStar(require("./operation-node/select-all-node.js"), exports);
|
|
173
|
-
__exportStar(require("./operation-node/select-
|
|
193
|
+
__exportStar(require("./operation-node/select-modifier-node.js"), exports);
|
|
174
194
|
__exportStar(require("./operation-node/select-query-node.js"), exports);
|
|
175
195
|
__exportStar(require("./operation-node/selection-node.js"), exports);
|
|
196
|
+
__exportStar(require("./operation-node/set-operation-node.js"), exports);
|
|
197
|
+
__exportStar(require("./operation-node/simple-reference-expression-node.js"), exports);
|
|
176
198
|
__exportStar(require("./operation-node/table-node.js"), exports);
|
|
199
|
+
__exportStar(require("./operation-node/top-node.js"), exports);
|
|
200
|
+
__exportStar(require("./operation-node/tuple-node.js"), exports);
|
|
201
|
+
__exportStar(require("./operation-node/unary-operation-node.js"), exports);
|
|
177
202
|
__exportStar(require("./operation-node/unique-constraint-node.js"), exports);
|
|
178
203
|
__exportStar(require("./operation-node/update-query-node.js"), exports);
|
|
204
|
+
__exportStar(require("./operation-node/using-node.js"), exports);
|
|
179
205
|
__exportStar(require("./operation-node/value-list-node.js"), exports);
|
|
180
206
|
__exportStar(require("./operation-node/value-node.js"), exports);
|
|
181
207
|
__exportStar(require("./operation-node/values-node.js"), exports);
|
|
182
208
|
__exportStar(require("./operation-node/when-node.js"), exports);
|
|
183
209
|
__exportStar(require("./operation-node/where-node.js"), exports);
|
|
184
210
|
__exportStar(require("./operation-node/with-node.js"), exports);
|
|
185
|
-
__exportStar(require("./operation-node/explain-node.js"), exports);
|
|
186
|
-
__exportStar(require("./operation-node/default-insert-value-node.js"), exports);
|
|
187
|
-
__exportStar(require("./operation-node/aggregate-function-node.js"), exports);
|
|
188
|
-
__exportStar(require("./operation-node/over-node.js"), exports);
|
|
189
|
-
__exportStar(require("./operation-node/partition-by-node.js"), exports);
|
|
190
|
-
__exportStar(require("./operation-node/partition-by-item-node.js"), exports);
|
|
191
|
-
__exportStar(require("./operation-node/set-operation-node.js"), exports);
|
|
192
|
-
__exportStar(require("./operation-node/binary-operation-node.js"), exports);
|
|
193
|
-
__exportStar(require("./operation-node/unary-operation-node.js"), exports);
|
|
194
|
-
__exportStar(require("./operation-node/using-node.js"), exports);
|
|
195
|
-
__exportStar(require("./operation-node/json-reference-node.js"), exports);
|
|
196
|
-
__exportStar(require("./operation-node/json-path-leg-node.js"), exports);
|
|
197
|
-
__exportStar(require("./operation-node/json-path-node.js"), exports);
|
|
198
|
-
__exportStar(require("./operation-node/json-operator-chain-node.js"), exports);
|
|
199
|
-
__exportStar(require("./operation-node/tuple-node.js"), exports);
|
|
200
|
-
__exportStar(require("./operation-node/merge-query-node.js"), exports);
|
|
201
|
-
__exportStar(require("./operation-node/matched-node.js"), exports);
|
|
202
|
-
__exportStar(require("./operation-node/fetch-node.js"), exports);
|
|
203
|
-
__exportStar(require("./operation-node/top-node.js"), exports);
|
|
204
211
|
__exportStar(require("./util/column-type.js"), exports);
|
|
205
212
|
__exportStar(require("./util/compilable.js"), exports);
|
|
206
213
|
__exportStar(require("./util/explainable.js"), exports);
|
package/dist/cjs/kysely.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ import { DrainOuterGeneric } from './util/type-utils.js';
|
|
|
20
20
|
* The main Kysely class.
|
|
21
21
|
*
|
|
22
22
|
* You should create one instance of `Kysely` per database using the {@link Kysely}
|
|
23
|
-
* constructor. Each `Kysely` instance maintains
|
|
23
|
+
* constructor. Each `Kysely` instance maintains its own connection pool.
|
|
24
24
|
*
|
|
25
25
|
* ### Examples
|
|
26
26
|
*
|
package/dist/cjs/kysely.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TransactionBuilder = exports.ConnectionBuilder = exports.
|
|
3
|
+
exports.TransactionBuilder = exports.ConnectionBuilder = exports.Transaction = exports.Kysely = void 0;
|
|
4
|
+
exports.isKyselyProps = isKyselyProps;
|
|
4
5
|
const schema_js_1 = require("./schema/schema.js");
|
|
5
6
|
const dynamic_js_1 = require("./dynamic/dynamic.js");
|
|
6
7
|
const default_connection_provider_js_1 = require("./driver/default-connection-provider.js");
|
|
@@ -23,7 +24,7 @@ const with_schema_plugin_js_1 = require("./plugin/with-schema/with-schema-plugin
|
|
|
23
24
|
* The main Kysely class.
|
|
24
25
|
*
|
|
25
26
|
* You should create one instance of `Kysely` per database using the {@link Kysely}
|
|
26
|
-
* constructor. Each `Kysely` instance maintains
|
|
27
|
+
* constructor. Each `Kysely` instance maintains its own connection pool.
|
|
27
28
|
*
|
|
28
29
|
* ### Examples
|
|
29
30
|
*
|
|
@@ -373,7 +374,6 @@ function isKyselyProps(obj) {
|
|
|
373
374
|
(0, object_utils_js_1.isObject)(obj.executor) &&
|
|
374
375
|
(0, object_utils_js_1.isObject)(obj.dialect));
|
|
375
376
|
}
|
|
376
|
-
exports.isKyselyProps = isKyselyProps;
|
|
377
377
|
class ConnectionBuilder {
|
|
378
378
|
#props;
|
|
379
379
|
constructor(props) {
|
|
@@ -17,5 +17,5 @@ export interface AlterColumnNode extends OperationNode {
|
|
|
17
17
|
*/
|
|
18
18
|
export declare const AlterColumnNode: Readonly<{
|
|
19
19
|
is(node: OperationNode): node is AlterColumnNode;
|
|
20
|
-
create<T extends
|
|
20
|
+
create<T extends keyof AlterColumnNodeProps>(column: string, prop: T, value: Required<AlterColumnNodeProps>[T]): AlterColumnNode;
|
|
21
21
|
}>;
|
|
@@ -15,5 +15,5 @@ export declare const CaseNode: Readonly<{
|
|
|
15
15
|
create(value?: OperationNode): CaseNode;
|
|
16
16
|
cloneWithWhen(caseNode: CaseNode, when: WhenNode): CaseNode;
|
|
17
17
|
cloneWithThen(caseNode: CaseNode, then: OperationNode): CaseNode;
|
|
18
|
-
cloneWith(caseNode: CaseNode, props: Partial<Pick<CaseNode,
|
|
18
|
+
cloneWith(caseNode: CaseNode, props: Partial<Pick<CaseNode, "else" | "isStatement">>): CaseNode;
|
|
19
19
|
}>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { OperationNode } from './operation-node.js';
|
|
2
|
-
declare const SIMPLE_COLUMN_DATA_TYPES: readonly ["varchar", "char", "text", "integer", "int2", "int4", "int8", "smallint", "bigint", "boolean", "real", "double precision", "float4", "float8", "decimal", "numeric", "binary", "bytea", "date", "datetime", "time", "timetz", "timestamp", "timestamptz", "serial", "bigserial", "uuid", "json", "jsonb", "blob"];
|
|
2
|
+
declare const SIMPLE_COLUMN_DATA_TYPES: readonly ["varchar", "char", "text", "integer", "int2", "int4", "int8", "smallint", "bigint", "boolean", "real", "double precision", "float4", "float8", "decimal", "numeric", "binary", "bytea", "date", "datetime", "time", "timetz", "timestamp", "timestamptz", "serial", "bigserial", "uuid", "json", "jsonb", "blob", "varbinary"];
|
|
3
3
|
type SimpleColumnDataType = (typeof SIMPLE_COLUMN_DATA_TYPES)[number];
|
|
4
|
-
export type ColumnDataType = SimpleColumnDataType | `varchar(${number})` | `char(${number})` | `decimal(${number}, ${number})` | `numeric(${number}, ${number})` | `binary(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `timestamptz(${number})`;
|
|
4
|
+
export type ColumnDataType = SimpleColumnDataType | `varchar(${number})` | `char(${number})` | `decimal(${number}, ${number})` | `numeric(${number}, ${number})` | `binary(${number})` | `datetime(${number})` | `time(${number})` | `timetz(${number})` | `timestamp(${number})` | `timestamptz(${number})` | `varbinary(${number})`;
|
|
5
5
|
export type DataTypeParams = Omit<DataTypeNode, 'kind' | 'dataType'>;
|
|
6
6
|
export interface DataTypeNode extends OperationNode {
|
|
7
7
|
readonly kind: 'DataTypeNode';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.DataTypeNode = void 0;
|
|
4
|
+
exports.isColumnDataType = isColumnDataType;
|
|
4
5
|
const object_utils_js_1 = require("../util/object-utils.js");
|
|
5
6
|
const SIMPLE_COLUMN_DATA_TYPES = [
|
|
6
7
|
'varchar',
|
|
@@ -33,6 +34,7 @@ const SIMPLE_COLUMN_DATA_TYPES = [
|
|
|
33
34
|
'json',
|
|
34
35
|
'jsonb',
|
|
35
36
|
'blob',
|
|
37
|
+
'varbinary',
|
|
36
38
|
];
|
|
37
39
|
const COLUMN_DATA_TYPE_REGEX = [
|
|
38
40
|
/^varchar\(\d+\)$/,
|
|
@@ -42,9 +44,10 @@ const COLUMN_DATA_TYPE_REGEX = [
|
|
|
42
44
|
/^binary\(\d+\)$/,
|
|
43
45
|
/^datetime\(\d+\)$/,
|
|
44
46
|
/^time\(\d+\)$/,
|
|
45
|
-
/^
|
|
47
|
+
/^timetz\(\d+\)$/,
|
|
46
48
|
/^timestamp\(\d+\)$/,
|
|
47
49
|
/^timestamptz\(\d+\)$/,
|
|
50
|
+
/^varbinary\(\d+\)$/,
|
|
48
51
|
];
|
|
49
52
|
/**
|
|
50
53
|
* @internal
|
|
@@ -69,4 +72,3 @@ function isColumnDataType(dataType) {
|
|
|
69
72
|
}
|
|
70
73
|
return false;
|
|
71
74
|
}
|
|
72
|
-
exports.isColumnDataType = isColumnDataType;
|
|
@@ -10,6 +10,7 @@ import { OrderByItemNode } from './order-by-item-node.js';
|
|
|
10
10
|
import { ExplainNode } from './explain-node.js';
|
|
11
11
|
import { UsingNode } from './using-node.js';
|
|
12
12
|
import { TopNode } from './top-node.js';
|
|
13
|
+
import { OutputNode } from './output-node.js';
|
|
13
14
|
export interface DeleteQueryNode extends OperationNode {
|
|
14
15
|
readonly kind: 'DeleteQueryNode';
|
|
15
16
|
readonly from: FromNode;
|
|
@@ -22,6 +23,7 @@ export interface DeleteQueryNode extends OperationNode {
|
|
|
22
23
|
readonly limit?: LimitNode;
|
|
23
24
|
readonly explain?: ExplainNode;
|
|
24
25
|
readonly top?: TopNode;
|
|
26
|
+
readonly output?: OutputNode;
|
|
25
27
|
}
|
|
26
28
|
/**
|
|
27
29
|
* @internal
|
|
@@ -19,10 +19,10 @@ export declare const ForeignKeyConstraintNode: Readonly<{
|
|
|
19
19
|
is(node: OperationNode): node is ForeignKeyConstraintNode;
|
|
20
20
|
create(sourceColumns: ReadonlyArray<ColumnNode>, targetTable: TableNode, targetColumns: ReadonlyArray<ColumnNode>, constraintName?: string): ForeignKeyConstraintNode;
|
|
21
21
|
cloneWith(node: ForeignKeyConstraintNode, props: ForeignKeyConstraintNodeProps): Readonly<{
|
|
22
|
-
name?: IdentifierNode
|
|
23
|
-
onDelete?:
|
|
24
|
-
onUpdate?:
|
|
25
|
-
kind:
|
|
22
|
+
name?: IdentifierNode;
|
|
23
|
+
onDelete?: OnModifyForeignAction;
|
|
24
|
+
onUpdate?: OnModifyForeignAction;
|
|
25
|
+
kind: "ForeignKeyConstraintNode";
|
|
26
26
|
columns: ReadonlyArray<ColumnNode>;
|
|
27
27
|
references: ReferencesNode;
|
|
28
28
|
}>;
|
|
@@ -9,5 +9,5 @@ export interface HavingNode extends OperationNode {
|
|
|
9
9
|
export declare const HavingNode: Readonly<{
|
|
10
10
|
is(node: OperationNode): node is HavingNode;
|
|
11
11
|
create(filter: OperationNode): HavingNode;
|
|
12
|
-
cloneWithOperation(havingNode: HavingNode, operator:
|
|
12
|
+
cloneWithOperation(havingNode: HavingNode, operator: "And" | "Or", operation: OperationNode): HavingNode;
|
|
13
13
|
}>;
|
|
@@ -3,6 +3,7 @@ import { ExplainNode } from './explain-node.js';
|
|
|
3
3
|
import { OnConflictNode } from './on-conflict-node.js';
|
|
4
4
|
import { OnDuplicateKeyNode } from './on-duplicate-key-node.js';
|
|
5
5
|
import { OperationNode } from './operation-node.js';
|
|
6
|
+
import { OutputNode } from './output-node.js';
|
|
6
7
|
import { ReturningNode } from './returning-node.js';
|
|
7
8
|
import { TableNode } from './table-node.js';
|
|
8
9
|
import { TopNode } from './top-node.js';
|
|
@@ -22,6 +23,7 @@ export interface InsertQueryNode extends OperationNode {
|
|
|
22
23
|
readonly explain?: ExplainNode;
|
|
23
24
|
readonly defaultValues?: boolean;
|
|
24
25
|
readonly top?: TopNode;
|
|
26
|
+
readonly output?: OutputNode;
|
|
25
27
|
}
|
|
26
28
|
/**
|
|
27
29
|
* @internal
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AliasNode } from './alias-node.js';
|
|
2
2
|
import { JoinNode } from './join-node.js';
|
|
3
3
|
import { OperationNode } from './operation-node.js';
|
|
4
|
+
import { OutputNode } from './output-node.js';
|
|
4
5
|
import { TableNode } from './table-node.js';
|
|
5
6
|
import { TopNode } from './top-node.js';
|
|
6
7
|
import { WhenNode } from './when-node.js';
|
|
@@ -12,6 +13,7 @@ export interface MergeQueryNode extends OperationNode {
|
|
|
12
13
|
readonly whens?: ReadonlyArray<WhenNode>;
|
|
13
14
|
readonly with?: WithNode;
|
|
14
15
|
readonly top?: TopNode;
|
|
16
|
+
readonly output?: OutputNode;
|
|
15
17
|
}
|
|
16
18
|
/**
|
|
17
19
|
* @internal
|
|
@@ -9,5 +9,5 @@ export interface OnNode extends OperationNode {
|
|
|
9
9
|
export declare const OnNode: Readonly<{
|
|
10
10
|
is(node: OperationNode): node is OnNode;
|
|
11
11
|
create(filter: OperationNode): OnNode;
|
|
12
|
-
cloneWithOperation(onNode: OnNode, operator:
|
|
12
|
+
cloneWithOperation(onNode: OnNode, operator: "And" | "Or", operation: OperationNode): OnNode;
|
|
13
13
|
}>;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isOperationNodeSource =
|
|
3
|
+
exports.isOperationNodeSource = isOperationNodeSource;
|
|
4
4
|
const object_utils_js_1 = require("../util/object-utils.js");
|
|
5
5
|
function isOperationNodeSource(obj) {
|
|
6
6
|
return (0, object_utils_js_1.isObject)(obj) && (0, object_utils_js_1.isFunction)(obj.toOperationNode);
|
|
7
7
|
}
|
|
8
|
-
exports.isOperationNodeSource = isOperationNodeSource;
|