kysely 0.21.5 → 0.22.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.
- package/README.md +3 -2
- package/dist/cjs/dialect/sqlite/sqlite-query-compiler.d.ts +2 -0
- package/dist/cjs/dialect/sqlite/sqlite-query-compiler.js +4 -0
- package/dist/cjs/index.d.ts +10 -4
- package/dist/cjs/index.js +8 -2
- package/dist/cjs/kysely.d.ts +3 -3
- package/dist/cjs/kysely.js +3 -3
- package/dist/cjs/migration/file-migration-provider.js +7 -2
- package/dist/cjs/operation-node/aggregate-function-node.d.ts +22 -0
- package/dist/cjs/operation-node/aggregate-function-node.js +31 -0
- package/dist/cjs/operation-node/alias-node.d.ts +2 -1
- package/dist/cjs/operation-node/default-insert-value-node.d.ts +11 -0
- package/dist/cjs/operation-node/{union-node.js → default-insert-value-node.js} +5 -7
- package/dist/cjs/operation-node/group-by-node.d.ts +1 -1
- package/dist/cjs/operation-node/group-by-node.js +3 -3
- package/dist/cjs/operation-node/insert-query-node.d.ts +2 -1
- package/dist/cjs/operation-node/operation-node-transformer.d.ts +12 -2
- package/dist/cjs/operation-node/operation-node-transformer.js +43 -5
- package/dist/cjs/operation-node/operation-node-utils.d.ts +2 -1
- package/dist/cjs/operation-node/operation-node-visitor.d.ts +12 -2
- package/dist/cjs/operation-node/operation-node-visitor.js +6 -1
- package/dist/cjs/operation-node/operation-node.d.ts +1 -1
- package/dist/cjs/operation-node/over-node.d.ts +19 -0
- package/dist/cjs/operation-node/over-node.js +35 -0
- package/dist/cjs/operation-node/partition-by-item-node.d.ts +14 -0
- package/dist/cjs/operation-node/partition-by-item-node.js +18 -0
- package/dist/cjs/operation-node/partition-by-node.d.ts +14 -0
- package/dist/cjs/operation-node/partition-by-node.js +24 -0
- package/dist/cjs/operation-node/select-query-node.d.ts +3 -3
- package/dist/cjs/operation-node/select-query-node.js +4 -4
- package/dist/cjs/operation-node/set-operation-node.d.ts +18 -0
- package/dist/cjs/operation-node/set-operation-node.js +20 -0
- package/dist/cjs/operation-node/value-list-node.d.ts +3 -1
- package/dist/cjs/parser/complex-expression-parser.d.ts +6 -4
- package/dist/cjs/parser/group-by-parser.d.ts +1 -1
- package/dist/cjs/parser/group-by-parser.js +2 -2
- package/dist/cjs/parser/insert-values-parser.js +13 -4
- package/dist/cjs/parser/parse-utils.d.ts +2 -0
- package/dist/cjs/parser/parse-utils.js +9 -1
- package/dist/cjs/parser/partition-by-parser.d.ts +6 -0
- package/dist/cjs/parser/partition-by-parser.js +9 -0
- package/dist/cjs/parser/reference-parser.d.ts +2 -1
- package/dist/cjs/parser/select-parser.d.ts +4 -3
- package/dist/cjs/parser/set-operation-parser.d.ts +5 -0
- package/dist/cjs/parser/set-operation-parser.js +8 -0
- package/dist/cjs/parser/value-parser.d.ts +2 -1
- package/dist/cjs/query-builder/aggregate-function-builder.d.ts +117 -0
- package/dist/cjs/query-builder/aggregate-function-builder.js +146 -0
- package/dist/cjs/query-builder/expression-builder.d.ts +3 -3
- package/dist/cjs/query-builder/expression-builder.js +3 -3
- package/dist/cjs/query-builder/{function-builder.d.ts → function-module.d.ts} +49 -42
- package/dist/cjs/query-builder/{function-builder.js → function-module.js} +70 -59
- package/dist/cjs/query-builder/over-builder.d.ts +59 -0
- package/dist/cjs/query-builder/over-builder.js +50 -0
- package/dist/cjs/query-builder/select-query-builder.d.ts +63 -3
- package/dist/cjs/query-builder/select-query-builder.js +83 -3
- package/dist/cjs/query-compiler/default-query-compiler.d.ts +12 -2
- package/dist/cjs/query-compiler/default-query-compiler.js +44 -14
- package/dist/cjs/raw-builder/sql.d.ts +13 -5
- package/dist/cjs/raw-builder/sql.js +6 -0
- package/dist/cjs/util/object-utils.d.ts +1 -0
- package/dist/cjs/util/object-utils.js +5 -1
- package/dist/cjs/util/type-utils.d.ts +5 -1
- package/dist/esm/dialect/sqlite/sqlite-query-compiler.d.ts +2 -0
- package/dist/esm/dialect/sqlite/sqlite-query-compiler.js +4 -0
- package/dist/esm/index.d.ts +10 -4
- package/dist/esm/index.js +8 -2
- package/dist/esm/kysely.d.ts +3 -3
- package/dist/esm/kysely.js +3 -3
- package/dist/esm/migration/file-migration-provider.js +7 -2
- package/dist/esm/operation-node/aggregate-function-node.d.ts +22 -0
- package/dist/esm/operation-node/aggregate-function-node.js +29 -0
- package/dist/esm/operation-node/alias-node.d.ts +2 -1
- package/dist/esm/operation-node/default-insert-value-node.d.ts +11 -0
- package/dist/esm/operation-node/default-insert-value-node.js +15 -0
- package/dist/esm/operation-node/group-by-node.d.ts +1 -1
- package/dist/esm/operation-node/group-by-node.js +3 -3
- package/dist/esm/operation-node/insert-query-node.d.ts +2 -1
- package/dist/esm/operation-node/operation-node-transformer.d.ts +12 -2
- package/dist/esm/operation-node/operation-node-transformer.js +43 -5
- package/dist/esm/operation-node/operation-node-utils.d.ts +2 -1
- package/dist/esm/operation-node/operation-node-visitor.d.ts +12 -2
- package/dist/esm/operation-node/operation-node-visitor.js +6 -1
- package/dist/esm/operation-node/operation-node.d.ts +1 -1
- package/dist/esm/operation-node/over-node.d.ts +19 -0
- package/dist/esm/operation-node/over-node.js +33 -0
- package/dist/esm/operation-node/partition-by-item-node.d.ts +14 -0
- package/dist/esm/operation-node/partition-by-item-node.js +16 -0
- package/dist/esm/operation-node/partition-by-node.d.ts +14 -0
- package/dist/esm/operation-node/partition-by-node.js +22 -0
- package/dist/esm/operation-node/select-query-node.d.ts +3 -3
- package/dist/esm/operation-node/select-query-node.js +4 -4
- package/dist/esm/operation-node/set-operation-node.d.ts +18 -0
- package/dist/esm/operation-node/set-operation-node.js +18 -0
- package/dist/esm/operation-node/value-list-node.d.ts +3 -1
- package/dist/esm/parser/complex-expression-parser.d.ts +6 -4
- package/dist/esm/parser/group-by-parser.d.ts +1 -1
- package/dist/esm/parser/group-by-parser.js +2 -2
- package/dist/esm/parser/insert-values-parser.js +14 -5
- package/dist/esm/parser/parse-utils.d.ts +2 -0
- package/dist/esm/parser/parse-utils.js +7 -0
- package/dist/esm/parser/partition-by-parser.d.ts +6 -0
- package/dist/esm/parser/partition-by-parser.js +6 -0
- package/dist/esm/parser/reference-parser.d.ts +2 -1
- package/dist/esm/parser/select-parser.d.ts +4 -3
- package/dist/esm/parser/set-operation-parser.d.ts +5 -0
- package/dist/esm/parser/set-operation-parser.js +5 -0
- package/dist/esm/parser/value-parser.d.ts +2 -1
- package/dist/esm/query-builder/aggregate-function-builder.d.ts +117 -0
- package/dist/esm/query-builder/aggregate-function-builder.js +142 -0
- package/dist/esm/query-builder/expression-builder.d.ts +3 -3
- package/dist/esm/query-builder/expression-builder.js +3 -3
- package/dist/esm/query-builder/{function-builder.d.ts → function-module.d.ts} +49 -42
- package/dist/esm/query-builder/{function-builder.js → function-module.js} +69 -58
- package/dist/esm/query-builder/over-builder.d.ts +59 -0
- package/dist/esm/query-builder/over-builder.js +47 -0
- package/dist/esm/query-builder/select-query-builder.d.ts +63 -3
- package/dist/esm/query-builder/select-query-builder.js +83 -3
- package/dist/esm/query-compiler/default-query-compiler.d.ts +12 -2
- package/dist/esm/query-compiler/default-query-compiler.js +44 -14
- package/dist/esm/raw-builder/sql.d.ts +13 -5
- package/dist/esm/raw-builder/sql.js +6 -0
- package/dist/esm/util/object-utils.d.ts +1 -0
- package/dist/esm/util/object-utils.js +3 -0
- package/dist/esm/util/type-utils.d.ts +5 -1
- package/package.json +4 -1
- package/dist/cjs/operation-node/union-node.d.ts +0 -16
- package/dist/cjs/parser/union-parser.d.ts +0 -5
- package/dist/cjs/parser/union-parser.js +0 -8
- package/dist/esm/operation-node/union-node.d.ts +0 -16
- package/dist/esm/operation-node/union-node.js +0 -17
- package/dist/esm/parser/union-parser.d.ts +0 -5
- package/dist/esm/parser/union-parser.js +0 -5
|
@@ -19,6 +19,12 @@ export const sql = Object.assign((sqlFragments, ...parameters) => {
|
|
|
19
19
|
rawNode: RawNode.createWithChild(parseStringReference(columnReference)),
|
|
20
20
|
});
|
|
21
21
|
},
|
|
22
|
+
value(value) {
|
|
23
|
+
return new RawBuilder({
|
|
24
|
+
queryId: createQueryId(),
|
|
25
|
+
rawNode: RawNode.createWithChild(parseValueExpression(value)),
|
|
26
|
+
});
|
|
27
|
+
},
|
|
22
28
|
table(tableReference) {
|
|
23
29
|
return new RawBuilder({
|
|
24
30
|
queryId: createQueryId(),
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare function isEmpty(obj: ArrayLike<unknown> | string | object): boolean;
|
|
2
|
+
export declare function isUndefined(obj: unknown): obj is undefined;
|
|
2
3
|
export declare function isString(obj: unknown): obj is string;
|
|
3
4
|
export declare function isNumber(obj: unknown): obj is number;
|
|
4
5
|
export declare function isBoolean(obj: unknown): obj is boolean;
|
|
@@ -4,6 +4,7 @@ import { ExpressionBuilder } from '../query-builder/expression-builder.js';
|
|
|
4
4
|
import { InsertResult } from '../query-builder/insert-result.js';
|
|
5
5
|
import { DeleteResult } from '../query-builder/delete-result.js';
|
|
6
6
|
import { UpdateResult } from '../query-builder/update-result.js';
|
|
7
|
+
import { AggregateFunctionBuilder, AliasedAggregateFunctionBuilder } from '../query-builder/aggregate-function-builder.js';
|
|
7
8
|
/**
|
|
8
9
|
* Given an object type, extracts the union of all value types.
|
|
9
10
|
*/
|
|
@@ -102,10 +103,13 @@ export declare type AnySelectQueryBuilder = SelectQueryBuilder<any, any, any>;
|
|
|
102
103
|
export declare type AnyAliasedQueryBuilder = AliasedQueryBuilder<any, any, any, any>;
|
|
103
104
|
export declare type AnyRawBuilder = RawBuilder<any>;
|
|
104
105
|
export declare type AnyAliasedRawBuilder = AliasedRawBuilder<any, any>;
|
|
106
|
+
export declare type AnyAliasedAggregateFunctionBuilder = AliasedAggregateFunctionBuilder<any, any, any, any>;
|
|
105
107
|
export declare type SelectQueryBuilderFactory<DB, TB extends keyof DB> = (qb: ExpressionBuilder<DB, TB>) => AnySelectQueryBuilder;
|
|
106
108
|
export declare type AliasedQueryBuilderFactory<DB, TB extends keyof DB> = (qb: ExpressionBuilder<DB, TB>) => AnyAliasedQueryBuilder;
|
|
107
|
-
export declare type RawBuilderFactory<DB, TB extends keyof DB> = (qb: ExpressionBuilder<DB, TB>) =>
|
|
109
|
+
export declare type RawBuilderFactory<DB, TB extends keyof DB, O = any> = (qb: ExpressionBuilder<DB, TB>) => RawBuilder<O>;
|
|
108
110
|
export declare type AliasedRawBuilderFactory<DB, TB extends keyof DB> = (qb: ExpressionBuilder<DB, TB>) => AnyAliasedRawBuilder;
|
|
111
|
+
export declare type AggregateFunctionBuilderFactory<DB, TB extends keyof DB, O = unknown> = (qb: ExpressionBuilder<DB, TB>) => AggregateFunctionBuilder<DB, TB, O>;
|
|
112
|
+
export declare type AliasedAggregateFunctionBuilderFactory<DB, TB extends keyof DB> = (qb: ExpressionBuilder<DB, TB>) => AnyAliasedAggregateFunctionBuilder;
|
|
109
113
|
export declare type SingleResultType<O> = O extends InsertResult ? O : O extends DeleteResult ? O : O extends UpdateResult ? O : O | undefined;
|
|
110
114
|
export declare type UnknownRow = Record<string, unknown>;
|
|
111
115
|
export declare type Nullable<T> = {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kysely",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.22.0",
|
|
4
4
|
"description": "Type safe SQL query builder",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -41,6 +41,9 @@
|
|
|
41
41
|
},
|
|
42
42
|
"author": "Sami Koskimäki <sami@jakso.me>",
|
|
43
43
|
"license": "MIT",
|
|
44
|
+
"contributors": [
|
|
45
|
+
"Igal Klebanov <igalklebanov@gmail.com>"
|
|
46
|
+
],
|
|
44
47
|
"devDependencies": {
|
|
45
48
|
"@types/better-sqlite3": "^7.5.0",
|
|
46
49
|
"@types/chai": "^4.3.1",
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { OperationNode } from './operation-node.js';
|
|
2
|
-
import { RawNode } from './raw-node.js';
|
|
3
|
-
import { SelectQueryNode } from './select-query-node.js';
|
|
4
|
-
export declare type UnionExpressionNode = SelectQueryNode | RawNode;
|
|
5
|
-
export interface UnionNode extends OperationNode {
|
|
6
|
-
readonly kind: 'UnionNode';
|
|
7
|
-
readonly union: UnionExpressionNode;
|
|
8
|
-
readonly all: boolean;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
13
|
-
export declare const UnionNode: Readonly<{
|
|
14
|
-
is(node: OperationNode): node is UnionNode;
|
|
15
|
-
create(union: UnionExpressionNode, all: boolean): UnionNode;
|
|
16
|
-
}>;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { UnionNode } from '../operation-node/union-node.js';
|
|
2
|
-
import { SelectQueryBuilder } from '../query-builder/select-query-builder.js';
|
|
3
|
-
import { RawBuilder } from '../raw-builder/raw-builder.js';
|
|
4
|
-
export declare type UnionExpression<DB, O> = SelectQueryBuilder<DB, any, O> | RawBuilder<O>;
|
|
5
|
-
export declare function parseUnion(union: UnionExpression<any, any>, all: boolean): UnionNode;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseUnion = void 0;
|
|
4
|
-
const union_node_js_1 = require("../operation-node/union-node.js");
|
|
5
|
-
function parseUnion(union, all) {
|
|
6
|
-
return union_node_js_1.UnionNode.create(union.toOperationNode(), all);
|
|
7
|
-
}
|
|
8
|
-
exports.parseUnion = parseUnion;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { OperationNode } from './operation-node.js';
|
|
2
|
-
import { RawNode } from './raw-node.js';
|
|
3
|
-
import { SelectQueryNode } from './select-query-node.js';
|
|
4
|
-
export declare type UnionExpressionNode = SelectQueryNode | RawNode;
|
|
5
|
-
export interface UnionNode extends OperationNode {
|
|
6
|
-
readonly kind: 'UnionNode';
|
|
7
|
-
readonly union: UnionExpressionNode;
|
|
8
|
-
readonly all: boolean;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
13
|
-
export declare const UnionNode: Readonly<{
|
|
14
|
-
is(node: OperationNode): node is UnionNode;
|
|
15
|
-
create(union: UnionExpressionNode, all: boolean): UnionNode;
|
|
16
|
-
}>;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/// <reference types="./union-node.d.ts" />
|
|
2
|
-
import { freeze } from '../util/object-utils.js';
|
|
3
|
-
/**
|
|
4
|
-
* @internal
|
|
5
|
-
*/
|
|
6
|
-
export const UnionNode = freeze({
|
|
7
|
-
is(node) {
|
|
8
|
-
return node.kind === 'UnionNode';
|
|
9
|
-
},
|
|
10
|
-
create(union, all) {
|
|
11
|
-
return freeze({
|
|
12
|
-
kind: 'UnionNode',
|
|
13
|
-
union,
|
|
14
|
-
all,
|
|
15
|
-
});
|
|
16
|
-
},
|
|
17
|
-
});
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { UnionNode } from '../operation-node/union-node.js';
|
|
2
|
-
import { SelectQueryBuilder } from '../query-builder/select-query-builder.js';
|
|
3
|
-
import { RawBuilder } from '../raw-builder/raw-builder.js';
|
|
4
|
-
export declare type UnionExpression<DB, O> = SelectQueryBuilder<DB, any, O> | RawBuilder<O>;
|
|
5
|
-
export declare function parseUnion(union: UnionExpression<any, any>, all: boolean): UnionNode;
|