mirror of
https://github.com/streetwriters/notesnook.git
synced 2025-12-23 06:59:31 +01:00
8945 lines
479 KiB
Diff
8945 lines
479 KiB
Diff
diff --git a/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.d.ts b/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.d.ts
|
||
index dc87916..e3fb628 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.d.ts
|
||
@@ -7,6 +7,14 @@ import { DialectAdapter, MigrationLockOptions } from './dialect-adapter.js';
|
||
* they are added and there will be less breaking changes.
|
||
*/
|
||
export declare abstract class DialectAdapterBase implements DialectAdapter {
|
||
+ /**
|
||
+ * Whether or not this dialect supports `if not exists` in creation of tables/schemas/views/etc.
|
||
+ *
|
||
+ * If this is false, Kysely's internal migrations tables and schemas are created
|
||
+ * without `if not exists` in migrations. This is not a problem if the dialect
|
||
+ * supports transactional DDL.
|
||
+ */
|
||
+ get supportsCreateIfNotExists(): boolean;
|
||
/**
|
||
* Whether or not this dialect supports transactional DDL.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.js b/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.js
|
||
index a8a950f..53c47b0 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.js
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.js
|
||
@@ -8,6 +8,9 @@ exports.DialectAdapterBase = void 0;
|
||
* they are added and there will be less breaking changes.
|
||
*/
|
||
class DialectAdapterBase {
|
||
+ get supportsCreateIfNotExists() {
|
||
+ return true;
|
||
+ }
|
||
get supportsTransactionalDdl() {
|
||
return false;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/dialect-adapter.d.ts b/node_modules/kysely/dist/cjs/dialect/dialect-adapter.d.ts
|
||
index 73a925a..73baab0 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/dialect-adapter.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/dialect-adapter.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { Kysely } from '../kysely.js';
|
||
+import { Kysely } from 'kysely/dist/cjs/kysely.js';
|
||
/**
|
||
* A `DialectAdapter` encapsulates all differences between dialects outside
|
||
* of `Driver` and `QueryCompiler`.
|
||
@@ -8,6 +8,14 @@ import { Kysely } from '../kysely.js';
|
||
* it. For that there's a `supportsTransactionalDdl` boolean in this interface.
|
||
*/
|
||
export interface DialectAdapter {
|
||
+ /**
|
||
+ * Whether or not this dialect supports `if not exists` in creation of tables/schemas/views/etc.
|
||
+ *
|
||
+ * If this is false, Kysely's internal migrations tables and schemas are created
|
||
+ * without `if not exists` in migrations. This is not a problem if the dialect
|
||
+ * supports transactional DDL.
|
||
+ */
|
||
+ readonly supportsCreateIfNotExists: boolean;
|
||
/**
|
||
* Whether or not this dialect supports transactional DDL.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/dialect.d.ts b/node_modules/kysely/dist/cjs/dialect/dialect.d.ts
|
||
index 58c74f9..a84ed23 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/dialect.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/dialect.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { Driver } from '../driver/driver.js';
|
||
-import { Kysely } from '../kysely.js';
|
||
-import { QueryCompiler } from '../query-compiler/query-compiler.js';
|
||
-import { DatabaseIntrospector } from './database-introspector.js';
|
||
-import { DialectAdapter } from './dialect-adapter.js';
|
||
+import { Driver } from 'kysely/dist/cjs/driver/driver.js';
|
||
+import { Kysely } from 'kysely/dist/cjs/kysely.js';
|
||
+import { QueryCompiler } from 'kysely/dist/cjs/query-compiler/query-compiler.js';
|
||
+import { DatabaseIntrospector } from 'kysely/dist/cjs/dialect/database-introspector.js';
|
||
+import { DialectAdapter } from 'kysely/dist/cjs/dialect/dialect-adapter.js';
|
||
/**
|
||
* A Dialect is the glue between Kysely and the underlying database engine.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/postgres/postgres-driver.js b/node_modules/kysely/dist/cjs/dialect/postgres/postgres-driver.js
|
||
index 4f205f4..a67ea6f 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/postgres/postgres-driver.js
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/postgres/postgres-driver.js
|
||
@@ -28,7 +28,7 @@ class PostgresDriver {
|
||
// The driver must take care of calling `onCreateConnection` when a new
|
||
// connection is created. The `pg` module doesn't provide an async hook
|
||
// for the connection creation. We need to call the method explicitly.
|
||
- if (this.#config?.onCreateConnection) {
|
||
+ if (this.#config.onCreateConnection) {
|
||
await this.#config.onCreateConnection(connection);
|
||
}
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts
|
||
index 69a0a7d..550df53 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
import { Kysely } from '../../kysely.js';
|
||
import { DialectAdapterBase } from '../dialect-adapter-base.js';
|
||
import { MigrationLockOptions } from '../dialect-adapter.js';
|
||
-export declare class SqliteAdapter implements DialectAdapterBase {
|
||
+export declare class SqliteAdapter extends DialectAdapterBase {
|
||
/**
|
||
* Whether or not this dialect supports transactional DDL.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.js b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.js
|
||
index 78850a0..ef9f504 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.js
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.js
|
||
@@ -1,7 +1,8 @@
|
||
"use strict";
|
||
Object.defineProperty(exports, "__esModule", { value: true });
|
||
exports.SqliteAdapter = void 0;
|
||
-class SqliteAdapter {
|
||
+const dialect_adapter_base_js_1 = require("../dialect-adapter-base.js");
|
||
+class SqliteAdapter extends dialect_adapter_base_js_1.DialectAdapterBase {
|
||
get supportsTransactionalDdl() {
|
||
return false;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts
|
||
index 810af98..a873682 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts
|
||
@@ -37,4 +37,5 @@ export interface SqliteStatement {
|
||
changes: number | bigint;
|
||
lastInsertRowid: number | bigint;
|
||
};
|
||
+ iterate(parameters: ReadonlyArray<unknown>): IterableIterator<unknown>;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-driver.js b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-driver.js
|
||
index 13594af..99676cf 100644
|
||
--- a/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-driver.js
|
||
+++ b/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-driver.js
|
||
@@ -1,6 +1,7 @@
|
||
"use strict";
|
||
Object.defineProperty(exports, "__esModule", { value: true });
|
||
exports.SqliteDriver = void 0;
|
||
+const select_query_node_js_1 = require("../../operation-node/select-query-node.js");
|
||
const compiled_query_js_1 = require("../../query-compiler/compiled-query.js");
|
||
const object_utils_js_1 = require("../../util/object-utils.js");
|
||
class SqliteDriver {
|
||
@@ -70,8 +71,20 @@ class SqliteConnection {
|
||
});
|
||
}
|
||
}
|
||
- async *streamQuery() {
|
||
- throw new Error("Sqlite driver doesn't support streaming");
|
||
+ async *streamQuery(compiledQuery, _chunkSize) {
|
||
+ const { sql, parameters, query } = compiledQuery;
|
||
+ const stmt = this.#db.prepare(sql);
|
||
+ if (select_query_node_js_1.SelectQueryNode.is(query)) {
|
||
+ const iter = stmt.iterate(parameters);
|
||
+ for (const row of iter) {
|
||
+ yield {
|
||
+ rows: [row],
|
||
+ };
|
||
+ }
|
||
+ }
|
||
+ else {
|
||
+ throw new Error('Sqlite driver only supports streaming of select queries');
|
||
+ }
|
||
}
|
||
}
|
||
class ConnectionMutex {
|
||
diff --git a/node_modules/kysely/dist/cjs/driver/connection-provider.d.ts b/node_modules/kysely/dist/cjs/driver/connection-provider.d.ts
|
||
index a75244c..8a5003c 100644
|
||
--- a/node_modules/kysely/dist/cjs/driver/connection-provider.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/driver/connection-provider.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { DatabaseConnection } from './database-connection.js';
|
||
+import { DatabaseConnection } from 'kysely/dist/cjs/driver/database-connection.js';
|
||
export interface ConnectionProvider {
|
||
/**
|
||
* Provides a connection for the callback and takes care of disposing
|
||
diff --git a/node_modules/kysely/dist/cjs/driver/database-connection.d.ts b/node_modules/kysely/dist/cjs/driver/database-connection.d.ts
|
||
index 8a4766e..2902362 100644
|
||
--- a/node_modules/kysely/dist/cjs/driver/database-connection.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/driver/database-connection.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
/**
|
||
* A single connection to the database engine.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/driver/driver.d.ts b/node_modules/kysely/dist/cjs/driver/driver.d.ts
|
||
index 00babcb..5f317f4 100644
|
||
--- a/node_modules/kysely/dist/cjs/driver/driver.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/driver/driver.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { ArrayItemType } from '../util/type-utils.js';
|
||
-import { DatabaseConnection } from './database-connection.js';
|
||
+import { ArrayItemType } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { DatabaseConnection } from 'kysely/dist/cjs/driver/database-connection.js';
|
||
/**
|
||
* A Driver creates and releases {@link DatabaseConnection | database connections}
|
||
* and is also responsible for connection pooling (if the dialect supports pooling).
|
||
@@ -40,5 +40,5 @@ export interface Driver {
|
||
export interface TransactionSettings {
|
||
readonly isolationLevel?: IsolationLevel;
|
||
}
|
||
-export declare const TRANSACTION_ISOLATION_LEVELS: readonly ["read uncommitted", "read committed", "repeatable read", "serializable"];
|
||
+export declare const TRANSACTION_ISOLATION_LEVELS: readonly ["read uncommitted", "read committed", "repeatable read", "serializable", "snapshot"];
|
||
export type IsolationLevel = ArrayItemType<typeof TRANSACTION_ISOLATION_LEVELS>;
|
||
diff --git a/node_modules/kysely/dist/cjs/driver/driver.js b/node_modules/kysely/dist/cjs/driver/driver.js
|
||
index 8acf3ea..80b9c33 100644
|
||
--- a/node_modules/kysely/dist/cjs/driver/driver.js
|
||
+++ b/node_modules/kysely/dist/cjs/driver/driver.js
|
||
@@ -6,4 +6,5 @@ exports.TRANSACTION_ISOLATION_LEVELS = [
|
||
'read committed',
|
||
'repeatable read',
|
||
'serializable',
|
||
+ 'snapshot',
|
||
];
|
||
diff --git a/node_modules/kysely/dist/cjs/driver/single-connection-provider.js b/node_modules/kysely/dist/cjs/driver/single-connection-provider.js
|
||
index cf064c4..db6bca0 100644
|
||
--- a/node_modules/kysely/dist/cjs/driver/single-connection-provider.js
|
||
+++ b/node_modules/kysely/dist/cjs/driver/single-connection-provider.js
|
||
@@ -1,6 +1,7 @@
|
||
"use strict";
|
||
Object.defineProperty(exports, "__esModule", { value: true });
|
||
exports.SingleConnectionProvider = void 0;
|
||
+const ignoreError = () => { };
|
||
class SingleConnectionProvider {
|
||
#connection;
|
||
#runningPromise;
|
||
@@ -9,17 +10,15 @@ class SingleConnectionProvider {
|
||
}
|
||
async provideConnection(consumer) {
|
||
while (this.#runningPromise) {
|
||
- await this.#runningPromise;
|
||
+ await this.#runningPromise.catch(ignoreError);
|
||
}
|
||
- const promise = this.#run(consumer);
|
||
- this.#runningPromise = promise
|
||
- .then(() => {
|
||
- this.#runningPromise = undefined;
|
||
- })
|
||
- .catch(() => {
|
||
+ // `#runningPromise` must be set to undefined before it's
|
||
+ // resolved or rejected. Otherwise the while loop above
|
||
+ // will misbehave.
|
||
+ this.#runningPromise = this.#run(consumer).finally(() => {
|
||
this.#runningPromise = undefined;
|
||
});
|
||
- return promise;
|
||
+ return this.#runningPromise;
|
||
}
|
||
// Run the runner in an async function to make sure it doesn't
|
||
// throw synchronous errors.
|
||
diff --git a/node_modules/kysely/dist/cjs/dynamic/dynamic-reference-builder.d.ts b/node_modules/kysely/dist/cjs/dynamic/dynamic-reference-builder.d.ts
|
||
index 650ce82..5c6fec7 100644
|
||
--- a/node_modules/kysely/dist/cjs/dynamic/dynamic-reference-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/dynamic/dynamic-reference-builder.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { SimpleReferenceExpressionNode } from '../operation-node/simple-reference-expression-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { SimpleReferenceExpressionNode } from 'kysely/dist/cjs/operation-node/simple-reference-expression-node.js';
|
||
export declare class DynamicReferenceBuilder<R extends string = never> implements OperationNodeSource {
|
||
#private;
|
||
get dynamicReference(): string;
|
||
diff --git a/node_modules/kysely/dist/cjs/dynamic/dynamic.d.ts b/node_modules/kysely/dist/cjs/dynamic/dynamic.d.ts
|
||
index f32b5ba..da5a1b7 100644
|
||
--- a/node_modules/kysely/dist/cjs/dynamic/dynamic.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/dynamic/dynamic.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { DynamicReferenceBuilder } from './dynamic-reference-builder.js';
|
||
+import { DynamicReferenceBuilder } from 'kysely/dist/cjs/dynamic/dynamic-reference-builder.js';
|
||
export declare class DynamicModule {
|
||
/**
|
||
* Creates a dynamic reference to a column that is not know at compile time.
|
||
diff --git a/node_modules/kysely/dist/cjs/expression/expression-builder.d.ts b/node_modules/kysely/dist/cjs/expression/expression-builder.d.ts
|
||
index 7b4a340..ba5c3a0 100644
|
||
--- a/node_modules/kysely/dist/cjs/expression/expression-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/expression/expression-builder.d.ts
|
||
@@ -1,19 +1,20 @@
|
||
-import { SelectQueryBuilder } from '../query-builder/select-query-builder.js';
|
||
-import { TableExpression, From, FromTables, ExtractTableAlias, AnyAliasedTable, PickTableWithAlias } from '../parser/table-parser.js';
|
||
-import { FunctionModule } from '../query-builder/function-module.js';
|
||
-import { ExtractTypeFromReferenceExpression, ReferenceExpression, SimpleReferenceExpression, StringReference } from '../parser/reference-parser.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { BinaryOperatorExpression, ComparisonOperatorExpression, FilterObject, OperandValueExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { Expression } from './expression.js';
|
||
-import { ExpressionWrapper } from './expression-wrapper.js';
|
||
-import { ComparisonOperator, JSONOperatorWith$, UnaryOperator } from '../operation-node/operator-node.js';
|
||
-import { SqlBool } from '../util/type-utils.js';
|
||
-import { ExtractTypeFromValueExpression } from '../parser/value-parser.js';
|
||
-import { CaseBuilder } from '../query-builder/case-builder.js';
|
||
-import { JSONPathBuilder } from '../query-builder/json-path-builder.js';
|
||
-import { OperandExpression } from '../parser/expression-parser.js';
|
||
-import { CallbackSelection, SelectCallback, SelectExpression, Selection } from '../parser/select-parser.js';
|
||
-import { RefTuple2, RefTuple3, RefTuple4, RefTuple5, ValTuple2, ValTuple3, ValTuple4, ValTuple5 } from '../parser/tuple-parser.js';
|
||
+import { SelectQueryBuilder } from 'kysely/dist/cjs/query-builder/select-query-builder.js';
|
||
+import { TableExpression, From, FromTables, ExtractTableAlias, AnyAliasedTable, PickTableWithAlias } from 'kysely/dist/cjs/parser/table-parser.js';
|
||
+import { FunctionModule } from 'kysely/dist/cjs/query-builder/function-module.js';
|
||
+import { ExtractTypeFromReferenceExpression, ReferenceExpression, SimpleReferenceExpression, StringReference } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { BinaryOperatorExpression, ComparisonOperatorExpression, FilterObject, OperandValueExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ExpressionWrapper } from 'kysely/dist/cjs/expression/expression-wrapper.js';
|
||
+import { ComparisonOperator, JSONOperatorWith$, UnaryOperator } from 'kysely/dist/cjs/operation-node/operator-node.js';
|
||
+import { SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { ExtractTypeFromValueExpression } from 'kysely/dist/cjs/parser/value-parser.js';
|
||
+import { CaseBuilder } from 'kysely/dist/cjs/query-builder/case-builder.js';
|
||
+import { JSONPathBuilder } from 'kysely/dist/cjs/query-builder/json-path-builder.js';
|
||
+import { OperandExpression } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { CallbackSelection, SelectCallback, SelectExpression, Selection } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
+import { RefTuple2, RefTuple3, RefTuple4, RefTuple5, ValTuple2, ValTuple3, ValTuple4, ValTuple5 } from 'kysely/dist/cjs/parser/tuple-parser.js';
|
||
+import { Selectable } from 'kysely/dist/cjs/util/column-type.js';
|
||
export interface ExpressionBuilder<DB, TB extends keyof DB> {
|
||
/**
|
||
* Creates a binary expression.
|
||
@@ -344,6 +345,30 @@ export interface ExpressionBuilder<DB, TB extends keyof DB> {
|
||
*/
|
||
ref<RE extends StringReference<DB, TB>>(reference: RE): ExpressionWrapper<DB, TB, ExtractTypeFromReferenceExpression<DB, TB, RE>>;
|
||
ref<RE extends StringReference<DB, TB>>(reference: RE, op: JSONOperatorWith$): JSONPathBuilder<ExtractTypeFromReferenceExpression<DB, TB, RE>>;
|
||
+ /**
|
||
+ * Creates a table reference.
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.selectFrom('person')
|
||
+ * .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
+ * .select(eb => [
|
||
+ * 'person.id',
|
||
+ * sql<Pet[]>`jsonb_agg(${eb.table('pet')})`.as('pets')
|
||
+ * ])
|
||
+ * .groupBy('person.id')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * select "person"."id", jsonb_agg("pet") as "pets"
|
||
+ * from "person"
|
||
+ * inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
+ * group by "person"."id"
|
||
+ * ```
|
||
+ */
|
||
+ table<T extends TB & string>(table: T): ExpressionWrapper<DB, TB, Selectable<DB[T]>>;
|
||
/**
|
||
* Returns a value expression.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/expression/expression-builder.js b/node_modules/kysely/dist/cjs/expression/expression-builder.js
|
||
index 172dfab..cdcef14 100644
|
||
--- a/node_modules/kysely/dist/cjs/expression/expression-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/expression/expression-builder.js
|
||
@@ -60,8 +60,11 @@ function createExpressionBuilder(executor = noop_query_executor_js_1.NOOP_QUERY_
|
||
}
|
||
return new json_path_builder_js_1.JSONPathBuilder((0, reference_parser_js_1.parseJSONReference)(reference, op));
|
||
},
|
||
+ table(table) {
|
||
+ return new expression_wrapper_js_1.ExpressionWrapper((0, table_parser_js_1.parseTable)(table));
|
||
+ },
|
||
val(value) {
|
||
- return new expression_wrapper_js_1.ExpressionWrapper((0, value_parser_js_1.parseValueExpressionOrList)(value));
|
||
+ return new expression_wrapper_js_1.ExpressionWrapper((0, value_parser_js_1.parseValueExpression)(value));
|
||
},
|
||
refTuple(...values) {
|
||
return new expression_wrapper_js_1.ExpressionWrapper(tuple_node_js_1.TupleNode.create(values.map(reference_parser_js_1.parseReferenceExpression)));
|
||
diff --git a/node_modules/kysely/dist/cjs/expression/expression-wrapper.d.ts b/node_modules/kysely/dist/cjs/expression/expression-wrapper.d.ts
|
||
index 19799fd..d3c7b9f 100644
|
||
--- a/node_modules/kysely/dist/cjs/expression/expression-wrapper.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/expression/expression-wrapper.d.ts
|
||
@@ -1,14 +1,14 @@
|
||
-import { AliasNode } from '../operation-node/alias-node.js';
|
||
-import { AndNode } from '../operation-node/and-node.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
-import { OrNode } from '../operation-node/or-node.js';
|
||
-import { ParensNode } from '../operation-node/parens-node.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { OperandExpression } from '../parser/expression-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { KyselyTypeError } from '../util/type-error.js';
|
||
-import { SqlBool } from '../util/type-utils.js';
|
||
-import { AliasableExpression, AliasedExpression, Expression } from './expression.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { AndNode } from 'kysely/dist/cjs/operation-node/and-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OrNode } from 'kysely/dist/cjs/operation-node/or-node.js';
|
||
+import { ParensNode } from 'kysely/dist/cjs/operation-node/parens-node.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { OperandExpression } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
+import { SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { AliasableExpression, AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
export declare class ExpressionWrapper<DB, TB extends keyof DB, T> implements AliasableExpression<T> {
|
||
#private;
|
||
constructor(node: OperationNode);
|
||
diff --git a/node_modules/kysely/dist/cjs/expression/expression.d.ts b/node_modules/kysely/dist/cjs/expression/expression.d.ts
|
||
index 336ff2a..426f092 100644
|
||
--- a/node_modules/kysely/dist/cjs/expression/expression.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/expression/expression.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { AliasNode } from '../operation-node/alias-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
/**
|
||
* `Expression` represents an arbitrary SQL expression with a type.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/helpers/sqlite.d.ts b/node_modules/kysely/dist/cjs/helpers/sqlite.d.ts
|
||
index 6d18663..35715c2 100644
|
||
--- a/node_modules/kysely/dist/cjs/helpers/sqlite.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/helpers/sqlite.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { SelectQueryBuilderExpression } from '../query-builder/select-query-builder-expression.js';
|
||
-import { RawBuilder } from '../raw-builder/raw-builder.js';
|
||
-import { Simplify } from '../util/type-utils.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { SelectQueryBuilderExpression } from 'kysely/dist/cjs/query-builder/select-query-builder-expression.js';
|
||
+import { RawBuilder } from 'kysely/dist/cjs/raw-builder/raw-builder.js';
|
||
+import { Simplify } from 'kysely/dist/cjs/util/type-utils.js';
|
||
/**
|
||
* A SQLite helper for aggregating a subquery into a JSON array.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/index.d.ts b/node_modules/kysely/dist/cjs/index.d.ts
|
||
index cf166f8..37cf701 100644
|
||
--- a/node_modules/kysely/dist/cjs/index.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/index.d.ts
|
||
@@ -72,6 +72,12 @@ export * from './dialect/postgres/postgres-dialect.js';
|
||
export * from './dialect/sqlite/sqlite-query-compiler.js';
|
||
export * from './dialect/sqlite/sqlite-introspector.js';
|
||
export * from './dialect/sqlite/sqlite-adapter.js';
|
||
+export * from './dialect/mssql/mssql-adapter.js';
|
||
+export * from './dialect/mssql/mssql-dialect-config.js';
|
||
+export * from './dialect/mssql/mssql-dialect.js';
|
||
+export * from './dialect/mssql/mssql-driver.js';
|
||
+export * from './dialect/mssql/mssql-introspector.js';
|
||
+export * from './dialect/mssql/mssql-query-compiler.js';
|
||
export * from './query-compiler/default-query-compiler.js';
|
||
export * from './query-compiler/query-compiler.js';
|
||
export * from './migration/migrator.js';
|
||
@@ -176,7 +182,7 @@ export * from './util/compilable.js';
|
||
export * from './util/explainable.js';
|
||
export * from './util/streamable.js';
|
||
export * from './util/log.js';
|
||
-export { AnyAliasedColumn, AnyAliasedColumnWithTable, AnyColumn, AnyColumnWithTable, Equals, UnknownRow, Simplify, SqlBool, } from './util/type-utils.js';
|
||
+export { AnyAliasedColumn, AnyAliasedColumnWithTable, AnyColumn, AnyColumnWithTable, Equals, UnknownRow, Simplify, SqlBool, Nullable, } from './util/type-utils.js';
|
||
export * from './util/infer-result.js';
|
||
export { logOnce } from './util/log-once.js';
|
||
export { SelectExpression, SelectCallback, SelectArg, Selection, CallbackSelection, } from './parser/select-parser.js';
|
||
diff --git a/node_modules/kysely/dist/cjs/kysely.d.ts b/node_modules/kysely/dist/cjs/kysely.d.ts
|
||
index 52e909a..b10152e 100644
|
||
--- a/node_modules/kysely/dist/cjs/kysely.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/kysely.d.ts
|
||
@@ -1,21 +1,21 @@
|
||
-import { Dialect } from './dialect/dialect.js';
|
||
-import { SchemaModule } from './schema/schema.js';
|
||
-import { DynamicModule } from './dynamic/dynamic.js';
|
||
-import { QueryExecutor } from './query-executor/query-executor.js';
|
||
-import { QueryCreator } from './query-creator.js';
|
||
-import { KyselyPlugin } from './plugin/kysely-plugin.js';
|
||
-import { DatabaseIntrospector } from './dialect/database-introspector.js';
|
||
-import { Driver, IsolationLevel } from './driver/driver.js';
|
||
-import { FunctionModule } from './query-builder/function-module.js';
|
||
-import { LogConfig } from './util/log.js';
|
||
-import { QueryExecutorProvider } from './query-executor/query-executor-provider.js';
|
||
-import { QueryResult } from './driver/database-connection.js';
|
||
-import { CompiledQuery } from './query-compiler/compiled-query.js';
|
||
-import { QueryId } from './util/query-id.js';
|
||
-import { Compilable } from './util/compilable.js';
|
||
-import { CaseBuilder } from './query-builder/case-builder.js';
|
||
-import { Expression } from './expression/expression.js';
|
||
-import { DrainOuterGeneric } from './util/type-utils.js';
|
||
+import { Dialect } from 'kysely/dist/cjs/dialect/dialect.js';
|
||
+import { SchemaModule } from 'kysely/dist/cjs/schema/schema.js';
|
||
+import { DynamicModule } from 'kysely/dist/cjs/dynamic/dynamic.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryCreator } from 'kysely/dist/cjs/query-creator.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { DatabaseIntrospector } from 'kysely/dist/cjs/dialect/database-introspector.js';
|
||
+import { Driver, IsolationLevel } from 'kysely/dist/cjs/driver/driver.js';
|
||
+import { FunctionModule } from 'kysely/dist/cjs/query-builder/function-module.js';
|
||
+import { LogConfig } from 'kysely/dist/cjs/util/log.js';
|
||
+import { QueryExecutorProvider } from 'kysely/dist/cjs/query-executor/query-executor-provider.js';
|
||
+import { QueryResult } from 'kysely/dist/cjs/driver/database-connection.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { CaseBuilder } from 'kysely/dist/cjs/query-builder/case-builder.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { DrainOuterGeneric } from 'kysely/dist/cjs/util/type-utils.js';
|
||
/**
|
||
* The main Kysely class.
|
||
*
|
||
@@ -66,7 +66,7 @@ export declare class Kysely<DB> extends QueryCreator<DB> implements QueryExecuto
|
||
/**
|
||
* Returns the {@link SchemaModule} module for building database schema.
|
||
*/
|
||
- get schema(): SchemaModule;
|
||
+ get schema(): SchemaModule<DB>;
|
||
/**
|
||
* Returns a the {@link DynamicModule} module.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/migration/migrator.js b/node_modules/kysely/dist/cjs/migration/migrator.js
|
||
index 76f2d83..6f1c144 100644
|
||
--- a/node_modules/kysely/dist/cjs/migration/migrator.js
|
||
+++ b/node_modules/kysely/dist/cjs/migration/migrator.js
|
||
@@ -220,10 +220,7 @@ class Migrator {
|
||
}
|
||
if (!(await this.#doesSchemaExists())) {
|
||
try {
|
||
- await this.#props.db.schema
|
||
- .createSchema(this.#migrationTableSchema)
|
||
- .ifNotExists()
|
||
- .execute();
|
||
+ await this.#createIfNotExists(this.#props.db.schema.createSchema(this.#migrationTableSchema));
|
||
}
|
||
catch (error) {
|
||
// At least on PostgreSQL, `if not exists` doesn't guarantee the `create schema`
|
||
@@ -239,20 +236,15 @@ class Migrator {
|
||
if (!(await this.#doesTableExists(this.#migrationTable))) {
|
||
try {
|
||
if (this.#migrationTableSchema) {
|
||
- await this.#props.db.schema
|
||
- .createSchema(this.#migrationTableSchema)
|
||
- .ifNotExists()
|
||
- .execute();
|
||
+ await this.#createIfNotExists(this.#props.db.schema.createSchema(this.#migrationTableSchema));
|
||
}
|
||
- await this.#props.db.schema
|
||
+ await this.#createIfNotExists(this.#props.db.schema
|
||
.withPlugin(this.#schemaPlugin)
|
||
.createTable(this.#migrationTable)
|
||
- .ifNotExists()
|
||
.addColumn('name', 'varchar(255)', (col) => col.notNull().primaryKey())
|
||
// The migration run time as ISO string. This is not a real date type as we
|
||
// can't know which data type is supported by all future dialects.
|
||
- .addColumn('timestamp', 'varchar(255)', (col) => col.notNull())
|
||
- .execute();
|
||
+ .addColumn('timestamp', 'varchar(255)', (col) => col.notNull()));
|
||
}
|
||
catch (error) {
|
||
// At least on PostgreSQL, `if not exists` doesn't guarantee the `create table`
|
||
@@ -267,13 +259,11 @@ class Migrator {
|
||
async #ensureMigrationLockTableExists() {
|
||
if (!(await this.#doesTableExists(this.#migrationLockTable))) {
|
||
try {
|
||
- await this.#props.db.schema
|
||
+ await this.#createIfNotExists(this.#props.db.schema
|
||
.withPlugin(this.#schemaPlugin)
|
||
.createTable(this.#migrationLockTable)
|
||
- .ifNotExists()
|
||
.addColumn('id', 'varchar(255)', (col) => col.notNull().primaryKey())
|
||
- .addColumn('is_locked', 'integer', (col) => col.notNull().defaultTo(0))
|
||
- .execute();
|
||
+ .addColumn('is_locked', 'integer', (col) => col.notNull().defaultTo(0)));
|
||
}
|
||
catch (error) {
|
||
// At least on PostgreSQL, `if not exists` doesn't guarantee the `create table`
|
||
@@ -481,6 +471,12 @@ class Migrator {
|
||
}
|
||
return { results };
|
||
}
|
||
+ async #createIfNotExists(qb) {
|
||
+ if (this.#props.db.getExecutor().adapter.supportsCreateIfNotExists) {
|
||
+ qb = qb.ifNotExists();
|
||
+ }
|
||
+ await qb.execute();
|
||
+ }
|
||
}
|
||
exports.Migrator = Migrator;
|
||
class MigrationResultSetError extends Error {
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/add-column-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/add-column-node.d.ts
|
||
index 03b5cff..fd8cd43 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/add-column-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/add-column-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { ColumnDefinitionNode } from './column-definition-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { ColumnDefinitionNode } from 'kysely/dist/cjs/operation-node/column-definition-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface AddColumnNode extends OperationNode {
|
||
readonly kind: 'AddColumnNode';
|
||
readonly column: ColumnDefinitionNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/add-constraint-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/add-constraint-node.d.ts
|
||
index a342b5b..aa7c2bd 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/add-constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/add-constraint-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ConstraintNode } from './constraint-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ConstraintNode } from 'kysely/dist/cjs/operation-node/constraint-node.js';
|
||
export interface AddConstraintNode extends OperationNode {
|
||
readonly kind: 'AddConstraintNode';
|
||
readonly constraint: ConstraintNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/add-index-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/add-index-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..5328a2a
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/add-index-node.d.ts
|
||
@@ -0,0 +1,21 @@
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { RawNode } from 'kysely/dist/cjs/operation-node/raw-node.js';
|
||
+export type AddIndexNodeProps = Omit<AddIndexNode, 'kind' | 'name'>;
|
||
+export interface AddIndexNode extends OperationNode {
|
||
+ readonly kind: 'AddIndexNode';
|
||
+ readonly name: IdentifierNode;
|
||
+ readonly columns?: OperationNode[];
|
||
+ readonly unique?: boolean;
|
||
+ readonly using?: RawNode;
|
||
+ readonly ifNotExists?: boolean;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const AddIndexNode: Readonly<{
|
||
+ is(node: OperationNode): node is AddIndexNode;
|
||
+ create(name: string): AddIndexNode;
|
||
+ cloneWith(node: AddIndexNode, props: AddIndexNodeProps): AddIndexNode;
|
||
+ cloneWithColumns(node: AddIndexNode, columns: OperationNode[]): AddIndexNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/add-index-node.js b/node_modules/kysely/dist/cjs/operation-node/add-index-node.js
|
||
new file mode 100644
|
||
index 0000000..0341e28
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/add-index-node.js
|
||
@@ -0,0 +1,31 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.AddIndexNode = void 0;
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+const identifier_node_js_1 = require("./identifier-node.js");
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+exports.AddIndexNode = (0, object_utils_js_1.freeze)({
|
||
+ is(node) {
|
||
+ return node.kind === 'AddIndexNode';
|
||
+ },
|
||
+ create(name) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ kind: 'AddIndexNode',
|
||
+ name: identifier_node_js_1.IdentifierNode.create(name)
|
||
+ });
|
||
+ },
|
||
+ cloneWith(node, props) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ ...node,
|
||
+ ...props,
|
||
+ });
|
||
+ },
|
||
+ cloneWithColumns(node, columns) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ ...node,
|
||
+ columns: [...(node.columns || []), ...columns],
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/aggregate-function-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/aggregate-function-node.d.ts
|
||
index a2a6857..b85dba9 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/aggregate-function-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/aggregate-function-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { OverNode } from './over-node.js';
|
||
-import { WhereNode } from './where-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OverNode } from 'kysely/dist/cjs/operation-node/over-node.js';
|
||
+import { WhereNode } from 'kysely/dist/cjs/operation-node/where-node.js';
|
||
export interface AggregateFunctionNode extends OperationNode {
|
||
readonly kind: 'AggregateFunctionNode';
|
||
readonly func: string;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/alias-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/alias-node.d.ts
|
||
index 552c69b..acd28e0 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/alias-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/alias-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface AliasNode extends OperationNode {
|
||
readonly kind: 'AliasNode';
|
||
readonly node: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/alter-column-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/alter-column-node.d.ts
|
||
index e888419..07d95d4 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/alter-column-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/alter-column-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { RawNode } from './raw-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { RawNode } from 'kysely/dist/cjs/operation-node/raw-node.js';
|
||
export type AlterColumnNodeProps = Omit<AlterColumnNode, 'kind' | 'column'>;
|
||
export interface AlterColumnNode extends OperationNode {
|
||
readonly kind: 'AlterColumnNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/alter-table-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/alter-table-node.d.ts
|
||
index 5b03535..0f2da61 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/alter-table-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/alter-table-node.d.ts
|
||
@@ -1,14 +1,16 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { AddColumnNode } from './add-column-node.js';
|
||
-import { DropColumnNode } from './drop-column-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { RenameColumnNode } from './rename-column-node.js';
|
||
-import { AlterColumnNode } from './alter-column-node.js';
|
||
-import { AddConstraintNode } from './add-constraint-node.js';
|
||
-import { DropConstraintNode } from './drop-constraint-node.js';
|
||
-import { ModifyColumnNode } from './modify-column-node.js';
|
||
-export type AlterTableNodeTableProps = Pick<AlterTableNode, 'renameTo' | 'setSchema' | 'addConstraint' | 'dropConstraint'>;
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { AddColumnNode } from 'kysely/dist/cjs/operation-node/add-column-node.js';
|
||
+import { DropColumnNode } from 'kysely/dist/cjs/operation-node/drop-column-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { RenameColumnNode } from 'kysely/dist/cjs/operation-node/rename-column-node.js';
|
||
+import { AlterColumnNode } from 'kysely/dist/cjs/operation-node/alter-column-node.js';
|
||
+import { AddConstraintNode } from 'kysely/dist/cjs/operation-node/add-constraint-node.js';
|
||
+import { DropConstraintNode } from 'kysely/dist/cjs/operation-node/drop-constraint-node.js';
|
||
+import { ModifyColumnNode } from 'kysely/dist/cjs/operation-node/modify-column-node.js';
|
||
+import { DropIndexNode } from 'kysely/dist/cjs/operation-node/drop-index-node.js';
|
||
+import { AddIndexNode } from 'kysely/dist/cjs/operation-node/add-index-node.js';
|
||
+export type AlterTableNodeTableProps = Pick<AlterTableNode, 'renameTo' | 'setSchema' | 'addConstraint' | 'dropConstraint' | 'addIndex' | 'dropIndex'>;
|
||
export type AlterTableColumnAlterationNode = RenameColumnNode | AddColumnNode | DropColumnNode | AlterColumnNode | ModifyColumnNode;
|
||
export interface AlterTableNode extends OperationNode {
|
||
readonly kind: 'AlterTableNode';
|
||
@@ -18,6 +20,8 @@ export interface AlterTableNode extends OperationNode {
|
||
readonly columnAlterations?: ReadonlyArray<AlterTableColumnAlterationNode>;
|
||
readonly addConstraint?: AddConstraintNode;
|
||
readonly dropConstraint?: DropConstraintNode;
|
||
+ readonly addIndex?: AddIndexNode;
|
||
+ readonly dropIndex?: DropIndexNode;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/and-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/and-node.d.ts
|
||
index ba1ffa4..5e24df8 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/and-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/and-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface AndNode extends OperationNode {
|
||
readonly kind: 'AndNode';
|
||
readonly left: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/binary-operation-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/binary-operation-node.d.ts
|
||
index c4adeab..b9087e9 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/binary-operation-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/binary-operation-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface BinaryOperationNode extends OperationNode {
|
||
readonly kind: 'BinaryOperationNode';
|
||
readonly leftOperand: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/case-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/case-node.d.ts
|
||
index 9a6dec1..5b55a5d 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/case-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/case-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { WhenNode } from './when-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { WhenNode } from 'kysely/dist/cjs/operation-node/when-node.js';
|
||
export interface CaseNode extends OperationNode {
|
||
readonly kind: 'CaseNode';
|
||
readonly value?: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/check-constraint-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/check-constraint-node.d.ts
|
||
index 6e74d7c..24ec7bb 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/check-constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/check-constraint-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
export interface CheckConstraintNode extends OperationNode {
|
||
readonly kind: 'CheckConstraintNode';
|
||
readonly expression: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/column-definition-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/column-definition-node.d.ts
|
||
index 6442d83..5e84167 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/column-definition-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/column-definition-node.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { CheckConstraintNode } from './check-constraint-node.js';
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { DefaultValueNode } from './default-value-node.js';
|
||
-import { GeneratedNode } from './generated-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ReferencesNode } from './references-node.js';
|
||
+import { CheckConstraintNode } from 'kysely/dist/cjs/operation-node/check-constraint-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { DefaultValueNode } from 'kysely/dist/cjs/operation-node/default-value-node.js';
|
||
+import { GeneratedNode } from 'kysely/dist/cjs/operation-node/generated-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ReferencesNode } from 'kysely/dist/cjs/operation-node/references-node.js';
|
||
export type ColumnDefinitionNodeProps = Omit<Partial<ColumnDefinitionNode>, 'kind' | 'dataType'>;
|
||
export interface ColumnDefinitionNode extends OperationNode {
|
||
readonly kind: 'ColumnDefinitionNode';
|
||
@@ -20,6 +20,7 @@ export interface ColumnDefinitionNode extends OperationNode {
|
||
readonly unsigned?: boolean;
|
||
readonly frontModifiers?: ReadonlyArray<OperationNode>;
|
||
readonly endModifiers?: ReadonlyArray<OperationNode>;
|
||
+ readonly nullsNotDistinct?: boolean;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/column-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/column-node.d.ts
|
||
index d07a8b4..9c71e55 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/column-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/column-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface ColumnNode extends OperationNode {
|
||
readonly kind: 'ColumnNode';
|
||
readonly column: IdentifierNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/column-update-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/column-update-node.d.ts
|
||
index 2e8ab34..865997c 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/column-update-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/column-update-node.d.ts
|
||
@@ -1,8 +1,7 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface ColumnUpdateNode extends OperationNode {
|
||
readonly kind: 'ColumnUpdateNode';
|
||
- readonly column: ColumnNode;
|
||
+ readonly column: OperationNode;
|
||
readonly value: OperationNode;
|
||
}
|
||
/**
|
||
@@ -10,5 +9,5 @@ export interface ColumnUpdateNode extends OperationNode {
|
||
*/
|
||
export declare const ColumnUpdateNode: Readonly<{
|
||
is(node: OperationNode): node is ColumnUpdateNode;
|
||
- create(column: ColumnNode, value: OperationNode): ColumnUpdateNode;
|
||
+ create(column: OperationNode, value: OperationNode): ColumnUpdateNode;
|
||
}>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/common-table-expression-name-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/common-table-expression-name-node.d.ts
|
||
index fd1fb2f..83d7924 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/common-table-expression-name-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/common-table-expression-name-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
export interface CommonTableExpressionNameNode extends OperationNode {
|
||
readonly kind: 'CommonTableExpressionNameNode';
|
||
readonly table: TableNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/common-table-expression-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/common-table-expression-node.d.ts
|
||
index c8a2f8a..34c1780 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/common-table-expression-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/common-table-expression-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { CommonTableExpressionNameNode } from './common-table-expression-name-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { CommonTableExpressionNameNode } from 'kysely/dist/cjs/operation-node/common-table-expression-name-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
type CommonTableExpressionNodeProps = Pick<CommonTableExpressionNode, 'materialized'>;
|
||
export interface CommonTableExpressionNode extends OperationNode {
|
||
readonly kind: 'CommonTableExpressionNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/constraint-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/constraint-node.d.ts
|
||
index ef3548e..6da12df 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/constraint-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { CheckConstraintNode } from './check-constraint-node.js';
|
||
-import { ForeignKeyConstraintNode } from './foreign-key-constraint-node.js';
|
||
-import { PrimaryKeyConstraintNode } from './primary-constraint-node.js';
|
||
-import { UniqueConstraintNode } from './unique-constraint-node.js';
|
||
+import { CheckConstraintNode } from 'kysely/dist/cjs/operation-node/check-constraint-node.js';
|
||
+import { ForeignKeyConstraintNode } from 'kysely/dist/cjs/operation-node/foreign-key-constraint-node.js';
|
||
+import { PrimaryKeyConstraintNode } from 'kysely/dist/cjs/operation-node/primary-constraint-node.js';
|
||
+import { UniqueConstraintNode } from 'kysely/dist/cjs/operation-node/unique-constraint-node.js';
|
||
export type ConstraintNode = PrimaryKeyConstraintNode | UniqueConstraintNode | CheckConstraintNode | ForeignKeyConstraintNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/create-index-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/create-index-node.d.ts
|
||
index a3a99d1..a18aa4a 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/create-index-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/create-index-node.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { RawNode } from './raw-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
-import { WhereNode } from './where-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { RawNode } from 'kysely/dist/cjs/operation-node/raw-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { WhereNode } from 'kysely/dist/cjs/operation-node/where-node.js';
|
||
export type CreateIndexNodeProps = Omit<CreateIndexNode, 'kind' | 'name'>;
|
||
export type IndexType = 'btree' | 'hash' | 'gist' | 'gin';
|
||
export interface CreateIndexNode extends OperationNode {
|
||
@@ -14,6 +14,7 @@ export interface CreateIndexNode extends OperationNode {
|
||
readonly using?: RawNode;
|
||
readonly ifNotExists?: boolean;
|
||
readonly where?: WhereNode;
|
||
+ readonly nullsNotDistinct?: boolean;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/create-schema-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/create-schema-node.d.ts
|
||
index bb609f3..6a4fa7a 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/create-schema-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/create-schema-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type CreateSchemaNodeParams = Omit<Partial<CreateSchemaNode>, 'kind' | 'schema'>;
|
||
export interface CreateSchemaNode extends OperationNode {
|
||
readonly kind: 'CreateSchemaNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/create-table-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/create-table-node.d.ts
|
||
index cc8ceda..988b651 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/create-table-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/create-table-node.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
-import { ConstraintNode } from './constraint-node.js';
|
||
-import { ColumnDefinitionNode } from './column-definition-node.js';
|
||
-import { ArrayItemType } from '../util/type-utils.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { ConstraintNode } from 'kysely/dist/cjs/operation-node/constraint-node.js';
|
||
+import { ColumnDefinitionNode } from 'kysely/dist/cjs/operation-node/column-definition-node.js';
|
||
+import { ArrayItemType } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export declare const ON_COMMIT_ACTIONS: string[];
|
||
export type OnCommitAction = ArrayItemType<typeof ON_COMMIT_ACTIONS>;
|
||
export type CreateTableNodeParams = Omit<CreateTableNode, 'kind' | 'table' | 'columns' | 'constraints' | 'frontModifiers' | 'endModifiers'>;
|
||
@@ -16,6 +16,7 @@ export interface CreateTableNode extends OperationNode {
|
||
readonly onCommit?: OnCommitAction;
|
||
readonly frontModifiers?: ReadonlyArray<OperationNode>;
|
||
readonly endModifiers?: ReadonlyArray<OperationNode>;
|
||
+ readonly selectQuery?: OperationNode;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/create-trigger-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/create-trigger-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..2eb8ae8
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/create-trigger-node.d.ts
|
||
@@ -0,0 +1,34 @@
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { QueryNode } from 'kysely/dist/cjs/operation-node/query-node.js';
|
||
+import { TriggerEventNode } from 'kysely/dist/cjs/operation-node/trigger-event-node.js';
|
||
+import { TriggerOrderNode } from 'kysely/dist/cjs/operation-node/trigger-order-node.js';
|
||
+import { FunctionNode } from 'kysely/dist/cjs/operation-node/function-node.js';
|
||
+export type TriggerTime = 'after' | 'before' | 'instead of';
|
||
+export type CreateTriggerNodeParams = Omit<CreateTriggerNode, 'kind' | 'name' | 'queries'>;
|
||
+export interface CreateTriggerNode extends OperationNode {
|
||
+ readonly kind: 'CreateTriggerNode';
|
||
+ readonly name: IdentifierNode;
|
||
+ readonly queries?: ReadonlyArray<QueryNode>;
|
||
+ readonly function?: FunctionNode;
|
||
+ readonly time?: TriggerTime;
|
||
+ readonly events?: ReadonlyArray<TriggerEventNode>;
|
||
+ readonly table?: TableNode;
|
||
+ readonly orReplace?: boolean;
|
||
+ readonly ifNotExists?: boolean;
|
||
+ readonly when?: OperationNode;
|
||
+ readonly temporary?: boolean;
|
||
+ readonly forEach?: 'row' | 'statement';
|
||
+ readonly order?: TriggerOrderNode;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const CreateTriggerNode: Readonly<{
|
||
+ is(node: OperationNode): node is CreateTriggerNode;
|
||
+ create(name: IdentifierNode): CreateTriggerNode;
|
||
+ cloneWithQuery(createTrigger: CreateTriggerNode, query: QueryNode): CreateTriggerNode;
|
||
+ cloneWithEvent(createTrigger: CreateTriggerNode, event: TriggerEventNode): CreateTriggerNode;
|
||
+ cloneWith(createTrigger: CreateTriggerNode, params: CreateTriggerNodeParams): CreateTriggerNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/create-trigger-node.js b/node_modules/kysely/dist/cjs/operation-node/create-trigger-node.js
|
||
new file mode 100644
|
||
index 0000000..47ba119
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/create-trigger-node.js
|
||
@@ -0,0 +1,36 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.CreateTriggerNode = void 0;
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+exports.CreateTriggerNode = (0, object_utils_js_1.freeze)({
|
||
+ is(node) {
|
||
+ return node.kind === 'CreateTriggerNode';
|
||
+ },
|
||
+ create(name) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ kind: 'CreateTriggerNode',
|
||
+ name,
|
||
+ });
|
||
+ },
|
||
+ cloneWithQuery(createTrigger, query) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ ...createTrigger,
|
||
+ queries: (0, object_utils_js_1.freeze)([...(createTrigger.queries || []), query]),
|
||
+ });
|
||
+ },
|
||
+ cloneWithEvent(createTrigger, event) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ ...createTrigger,
|
||
+ events: (0, object_utils_js_1.freeze)([...(createTrigger.events || []), event]),
|
||
+ });
|
||
+ },
|
||
+ cloneWith(createTrigger, params) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ ...createTrigger,
|
||
+ ...params,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/create-type-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/create-type-node.d.ts
|
||
index 3ab9c3b..382285f 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/create-type-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/create-type-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SchemableIdentifierNode } from './schemable-identifier-node.js';
|
||
-import { ValueListNode } from './value-list-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SchemableIdentifierNode } from 'kysely/dist/cjs/operation-node/schemable-identifier-node.js';
|
||
+import { ValueListNode } from 'kysely/dist/cjs/operation-node/value-list-node.js';
|
||
export type CreateTypeNodeParams = Omit<Partial<CreateTypeNode>, 'kind'>;
|
||
export interface CreateTypeNode extends OperationNode {
|
||
readonly kind: 'CreateTypeNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/create-view-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/create-view-node.d.ts
|
||
index 9aa1faa..8db7a40 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/create-view-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/create-view-node.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { RawNode } from './raw-node.js';
|
||
-import { SchemableIdentifierNode } from './schemable-identifier-node.js';
|
||
-import { SelectQueryNode } from './select-query-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { RawNode } from 'kysely/dist/cjs/operation-node/raw-node.js';
|
||
+import { SchemableIdentifierNode } from 'kysely/dist/cjs/operation-node/schemable-identifier-node.js';
|
||
+import { SelectQueryNode } from 'kysely/dist/cjs/operation-node/select-query-node.js';
|
||
export type CreateViewNodeParams = Omit<Partial<CreateViewNode>, 'kind' | 'name'>;
|
||
export interface CreateViewNode extends OperationNode {
|
||
readonly kind: 'CreateViewNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/data-type-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/data-type-node.d.ts
|
||
index 1ab9f33..83557e4 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/data-type-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/data-type-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type ColumnDataType = 'varchar' | `varchar(${number})` | 'char' | `char(${number})` | 'text' | 'integer' | 'int2' | 'int4' | 'int8' | 'bigint' | 'boolean' | 'real' | 'double precision' | 'float4' | 'float8' | 'decimal' | `decimal(${number}, ${number})` | 'numeric' | `numeric(${number}, ${number})` | 'binary' | `binary(${number})` | 'bytea' | 'date' | 'datetime' | `datetime(${number})` | 'time' | `time(${number})` | 'timetz' | `timetz(${number})` | 'timestamp' | `timestamp(${number})` | 'timestamptz' | `timestamptz(${number})` | 'serial' | 'bigserial' | 'uuid' | 'json' | 'jsonb' | 'blob';
|
||
export type DataTypeParams = Omit<DataTypeNode, 'kind' | 'dataType'>;
|
||
export interface DataTypeNode extends OperationNode {
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/default-value-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/default-value-node.d.ts
|
||
index 2df8841..0884b9c 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/default-value-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/default-value-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface DefaultValueNode extends OperationNode {
|
||
readonly kind: 'DefaultValueNode';
|
||
readonly defaultValue: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/delete-query-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/delete-query-node.d.ts
|
||
index 10d7f15..a993d3f 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/delete-query-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/delete-query-node.d.ts
|
||
@@ -1,14 +1,14 @@
|
||
-import { FromNode } from './from-node.js';
|
||
-import { JoinNode } from './join-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ReturningNode } from './returning-node.js';
|
||
-import { WhereNode } from './where-node.js';
|
||
-import { WithNode } from './with-node.js';
|
||
-import { LimitNode } from './limit-node.js';
|
||
-import { OrderByNode } from './order-by-node.js';
|
||
-import { OrderByItemNode } from './order-by-item-node.js';
|
||
-import { ExplainNode } from './explain-node.js';
|
||
-import { UsingNode } from './using-node.js';
|
||
+import { FromNode } from 'kysely/dist/cjs/operation-node/from-node.js';
|
||
+import { JoinNode } from 'kysely/dist/cjs/operation-node/join-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ReturningNode } from 'kysely/dist/cjs/operation-node/returning-node.js';
|
||
+import { WhereNode } from 'kysely/dist/cjs/operation-node/where-node.js';
|
||
+import { WithNode } from 'kysely/dist/cjs/operation-node/with-node.js';
|
||
+import { LimitNode } from 'kysely/dist/cjs/operation-node/limit-node.js';
|
||
+import { OrderByNode } from 'kysely/dist/cjs/operation-node/order-by-node.js';
|
||
+import { OrderByItemNode } from 'kysely/dist/cjs/operation-node/order-by-item-node.js';
|
||
+import { ExplainNode } from 'kysely/dist/cjs/operation-node/explain-node.js';
|
||
+import { UsingNode } from 'kysely/dist/cjs/operation-node/using-node.js';
|
||
export interface DeleteQueryNode extends OperationNode {
|
||
readonly kind: 'DeleteQueryNode';
|
||
readonly from: FromNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-column-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-column-node.d.ts
|
||
index 10e13a2..83fb6d7 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/drop-column-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-column-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ColumnNode } from './column-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
export interface DropColumnNode extends OperationNode {
|
||
readonly kind: 'DropColumnNode';
|
||
readonly column: ColumnNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-constraint-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-constraint-node.d.ts
|
||
index f5ccb05..f7f7660 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/drop-constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-constraint-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
export type DropConstraintNodeProps = Omit<DropConstraintNode, 'kind' | 'constraintName'>;
|
||
export interface DropConstraintNode extends OperationNode {
|
||
readonly kind: 'DropConstraintNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-index-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-index-node.d.ts
|
||
index 2cc565e..8159449 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/drop-index-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-index-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SchemableIdentifierNode } from './schemable-identifier-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SchemableIdentifierNode } from 'kysely/dist/cjs/operation-node/schemable-identifier-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
export type DropIndexNodeProps = Omit<DropIndexNode, 'kind' | 'name'>;
|
||
export interface DropIndexNode extends OperationNode {
|
||
readonly kind: 'DropIndexNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-schema-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-schema-node.d.ts
|
||
index 98166ad..34147fc 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/drop-schema-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-schema-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type DropSchemaNodeParams = Omit<Partial<DropSchemaNode>, 'kind' | 'schema'>;
|
||
export interface DropSchemaNode extends OperationNode {
|
||
readonly kind: 'DropSchemaNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-table-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-table-node.d.ts
|
||
index ab35e3e..ae42660 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/drop-table-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-table-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
export type DropTablexNodeParams = Omit<Partial<DropTableNode>, 'kind' | 'table'>;
|
||
export interface DropTableNode extends OperationNode {
|
||
readonly kind: 'DropTableNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-trigger-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-trigger-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..e391cf9
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-trigger-node.d.ts
|
||
@@ -0,0 +1,17 @@
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SchemableIdentifierNode } from 'kysely/dist/cjs/operation-node/schemable-identifier-node.js';
|
||
+export type DropTriggerNodeParams = Omit<Partial<DropTriggerNode>, 'kind' | 'name'>;
|
||
+export interface DropTriggerNode extends OperationNode {
|
||
+ readonly kind: 'DropTriggerNode';
|
||
+ readonly name: SchemableIdentifierNode;
|
||
+ readonly ifExists?: boolean;
|
||
+ readonly cascade?: boolean;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const DropTriggerNode: Readonly<{
|
||
+ is(node: OperationNode): node is DropTriggerNode;
|
||
+ create(name: SchemableIdentifierNode): DropTriggerNode;
|
||
+ cloneWith(dropTrigger: DropTriggerNode, params: DropTriggerNodeParams): DropTriggerNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-trigger-node.js b/node_modules/kysely/dist/cjs/operation-node/drop-trigger-node.js
|
||
new file mode 100644
|
||
index 0000000..2bb067e
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-trigger-node.js
|
||
@@ -0,0 +1,24 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.DropTriggerNode = void 0;
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+exports.DropTriggerNode = (0, object_utils_js_1.freeze)({
|
||
+ is(node) {
|
||
+ return node.kind === 'DropTriggerNode';
|
||
+ },
|
||
+ create(name) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ kind: 'DropTriggerNode',
|
||
+ name,
|
||
+ });
|
||
+ },
|
||
+ cloneWith(dropTrigger, params) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ ...dropTrigger,
|
||
+ ...params,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-type-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-type-node.d.ts
|
||
index 9693550..b162606 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/drop-type-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-type-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SchemableIdentifierNode } from './schemable-identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SchemableIdentifierNode } from 'kysely/dist/cjs/operation-node/schemable-identifier-node.js';
|
||
export type DropTypeNodeParams = Omit<Partial<DropTypeNode>, 'kind' | 'name'>;
|
||
export interface DropTypeNode extends OperationNode {
|
||
readonly kind: 'DropTypeNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/drop-view-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/drop-view-node.d.ts
|
||
index 2c4bf89..316775d 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/drop-view-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/drop-view-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SchemableIdentifierNode } from './schemable-identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SchemableIdentifierNode } from 'kysely/dist/cjs/operation-node/schemable-identifier-node.js';
|
||
export type DropViewNodeParams = Omit<Partial<DropViewNode>, 'kind' | 'name'>;
|
||
export interface DropViewNode extends OperationNode {
|
||
readonly kind: 'DropViewNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/explain-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/explain-node.d.ts
|
||
index 8cf89b5..ddd4cd0 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/explain-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/explain-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { ExplainFormat } from '../util/explainable.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { ExplainFormat } from 'kysely/dist/cjs/util/explainable.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface ExplainNode extends OperationNode {
|
||
readonly kind: 'ExplainNode';
|
||
readonly format?: ExplainFormat;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/foreign-key-constraint-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/foreign-key-constraint-node.d.ts
|
||
index c7fe574..408bd48 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/foreign-key-constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/foreign-key-constraint-node.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { OnModifyForeignAction, ReferencesNode } from './references-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OnModifyForeignAction, ReferencesNode } from 'kysely/dist/cjs/operation-node/references-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
export type ForeignKeyConstraintNodeProps = Omit<ForeignKeyConstraintNode, 'kind' | 'columns' | 'references'>;
|
||
export interface ForeignKeyConstraintNode extends OperationNode {
|
||
readonly kind: 'ForeignKeyConstraintNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/from-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/from-node.d.ts
|
||
index 2c46520..3d63e3b 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/from-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/from-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface FromNode extends OperationNode {
|
||
readonly kind: 'FromNode';
|
||
readonly froms: ReadonlyArray<OperationNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/function-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/function-node.d.ts
|
||
index 49aab00..05a1632 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/function-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/function-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface FunctionNode extends OperationNode {
|
||
readonly kind: 'FunctionNode';
|
||
readonly func: string;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/generated-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/generated-node.d.ts
|
||
index 5c86a9f..9a4c356 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/generated-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/generated-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type GeneratedNodeParams = Omit<GeneratedNode, 'kind' | 'expression'>;
|
||
export interface GeneratedNode extends OperationNode {
|
||
readonly kind: 'GeneratedNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/group-by-item-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/group-by-item-node.d.ts
|
||
index 475ce87..5aeb92c 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/group-by-item-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/group-by-item-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface GroupByItemNode extends OperationNode {
|
||
readonly kind: 'GroupByItemNode';
|
||
readonly groupBy: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/group-by-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/group-by-node.d.ts
|
||
index 9b0b108..c8e9315 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/group-by-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/group-by-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { GroupByItemNode } from './group-by-item-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { GroupByItemNode } from 'kysely/dist/cjs/operation-node/group-by-item-node.js';
|
||
export interface GroupByNode extends OperationNode {
|
||
readonly kind: 'GroupByNode';
|
||
readonly items: ReadonlyArray<GroupByItemNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/having-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/having-node.d.ts
|
||
index 14830a3..fe2c59e 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/having-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/having-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface HavingNode extends OperationNode {
|
||
readonly kind: 'HavingNode';
|
||
readonly having: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/identifier-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/identifier-node.d.ts
|
||
index f74014d..2ee967e 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/identifier-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/identifier-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface IdentifierNode extends OperationNode {
|
||
readonly kind: 'IdentifierNode';
|
||
readonly name: string;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/insert-query-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/insert-query-node.d.ts
|
||
index f28ce2c..56406a5 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/insert-query-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/insert-query-node.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { ExplainNode } from './explain-node.js';
|
||
-import { OnConflictNode } from './on-conflict-node.js';
|
||
-import { OnDuplicateKeyNode } from './on-duplicate-key-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ReturningNode } from './returning-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
-import { WithNode } from './with-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { ExplainNode } from 'kysely/dist/cjs/operation-node/explain-node.js';
|
||
+import { OnConflictNode } from 'kysely/dist/cjs/operation-node/on-conflict-node.js';
|
||
+import { OnDuplicateKeyNode } from 'kysely/dist/cjs/operation-node/on-duplicate-key-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ReturningNode } from 'kysely/dist/cjs/operation-node/returning-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { WithNode } from 'kysely/dist/cjs/operation-node/with-node.js';
|
||
export type InsertQueryNodeProps = Omit<InsertQueryNode, 'kind' | 'into'>;
|
||
export interface InsertQueryNode extends OperationNode {
|
||
readonly kind: 'InsertQueryNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/join-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/join-node.d.ts
|
||
index ceb98ea..f95944b 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/join-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/join-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OnNode } from './on-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OnNode } from 'kysely/dist/cjs/operation-node/on-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type JoinType = 'InnerJoin' | 'LeftJoin' | 'RightJoin' | 'FullJoin' | 'LateralInnerJoin' | 'LateralLeftJoin';
|
||
export interface JoinNode extends OperationNode {
|
||
readonly kind: 'JoinNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/json-operator-chain-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/json-operator-chain-node.d.ts
|
||
index 87cacdf..2dbbb66 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/json-operator-chain-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/json-operator-chain-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { OperatorNode } from './operator-node.js';
|
||
-import { ValueNode } from './value-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OperatorNode } from 'kysely/dist/cjs/operation-node/operator-node.js';
|
||
+import { ValueNode } from 'kysely/dist/cjs/operation-node/value-node.js';
|
||
export interface JSONOperatorChainNode extends OperationNode {
|
||
readonly kind: 'JSONOperatorChainNode';
|
||
readonly operator: OperatorNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/json-path-leg-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/json-path-leg-node.d.ts
|
||
index f0b498b..8b25b88 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/json-path-leg-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/json-path-leg-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type JSONPathLegType = 'Member' | 'ArrayLocation';
|
||
export interface JSONPathLegNode extends OperationNode {
|
||
readonly kind: 'JSONPathLegNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/json-path-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/json-path-node.d.ts
|
||
index 91243ed..93c8ccf 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/json-path-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/json-path-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { JSONPathLegNode } from './json-path-leg-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { OperatorNode } from './operator-node.js';
|
||
+import { JSONPathLegNode } from 'kysely/dist/cjs/operation-node/json-path-leg-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OperatorNode } from 'kysely/dist/cjs/operation-node/operator-node.js';
|
||
export interface JSONPathNode extends OperationNode {
|
||
readonly kind: 'JSONPathNode';
|
||
readonly inOperator?: OperatorNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/json-reference-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/json-reference-node.d.ts
|
||
index 9ba1b27..e225b19 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/json-reference-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/json-reference-node.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { JSONOperatorChainNode } from './json-operator-chain-node.js';
|
||
-import { JSONPathNode } from './json-path-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ReferenceNode } from './reference-node.js';
|
||
+import { JSONOperatorChainNode } from 'kysely/dist/cjs/operation-node/json-operator-chain-node.js';
|
||
+import { JSONPathNode } from 'kysely/dist/cjs/operation-node/json-path-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ReferenceNode } from 'kysely/dist/cjs/operation-node/reference-node.js';
|
||
export interface JSONReferenceNode extends OperationNode {
|
||
readonly kind: 'JSONReferenceNode';
|
||
readonly reference: ReferenceNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/limit-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/limit-node.d.ts
|
||
index 3c3de76..25d3c5a 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/limit-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/limit-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ValueNode } from './value-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ValueNode } from 'kysely/dist/cjs/operation-node/value-node.js';
|
||
export interface LimitNode extends OperationNode {
|
||
readonly kind: 'LimitNode';
|
||
readonly limit: ValueNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/modify-column-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/modify-column-node.d.ts
|
||
index e25d4cf..c414d3a 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/modify-column-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/modify-column-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { ColumnDefinitionNode } from './column-definition-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { ColumnDefinitionNode } from 'kysely/dist/cjs/operation-node/column-definition-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface ModifyColumnNode extends OperationNode {
|
||
readonly kind: 'ModifyColumnNode';
|
||
readonly column: ColumnDefinitionNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/offset-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/offset-node.d.ts
|
||
index 03158b0..daa5e72 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/offset-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/offset-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ValueNode } from './value-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ValueNode } from 'kysely/dist/cjs/operation-node/value-node.js';
|
||
export interface OffsetNode extends OperationNode {
|
||
readonly kind: 'OffsetNode';
|
||
readonly offset: ValueNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/on-conflict-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/on-conflict-node.d.ts
|
||
index bbd7b2c..71072c8 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/on-conflict-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/on-conflict-node.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { ColumnUpdateNode } from './column-update-node.js';
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { WhereNode } from './where-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { ColumnUpdateNode } from 'kysely/dist/cjs/operation-node/column-update-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { WhereNode } from 'kysely/dist/cjs/operation-node/where-node.js';
|
||
export type OnConflictNodeProps = Omit<OnConflictNode, 'kind' | 'indexWhere' | 'updateWhere'>;
|
||
export interface OnConflictNode extends OperationNode {
|
||
readonly kind: 'OnConflictNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/on-duplicate-key-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/on-duplicate-key-node.d.ts
|
||
index 63aa5b8..e2a6bdc 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/on-duplicate-key-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/on-duplicate-key-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { ColumnUpdateNode } from './column-update-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { ColumnUpdateNode } from 'kysely/dist/cjs/operation-node/column-update-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type OnDuplicateKeyNodeProps = Omit<OnDuplicateKeyNode, 'kind'>;
|
||
export interface OnDuplicateKeyNode extends OperationNode {
|
||
readonly kind: 'OnDuplicateKeyNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/on-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/on-node.d.ts
|
||
index 97f6383..f2508e3 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/on-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/on-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface OnNode extends OperationNode {
|
||
readonly kind: 'OnNode';
|
||
readonly on: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operation-node-source.d.ts b/node_modules/kysely/dist/cjs/operation-node/operation-node-source.d.ts
|
||
index 6dc3661..24698c3 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operation-node-source.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operation-node-source.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface OperationNodeSource {
|
||
toOperationNode(): OperationNode;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.d.ts b/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.d.ts
|
||
index 6b3a13c..5d7fd9d 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.d.ts
|
||
@@ -85,6 +85,11 @@ import { JSONPathNode } from './json-path-node.js';
|
||
import { JSONPathLegNode } from './json-path-leg-node.js';
|
||
import { JSONOperatorChainNode } from './json-operator-chain-node.js';
|
||
import { TupleNode } from './tuple-node.js';
|
||
+import { AddIndexNode } from './add-index-node.js';
|
||
+import { CreateTriggerNode } from './create-trigger-node.js';
|
||
+import { DropTriggerNode } from './drop-trigger-node.js';
|
||
+import { TriggerEventNode } from './trigger-event-node.js';
|
||
+import { TriggerOrderNode } from './trigger-order-node.js';
|
||
/**
|
||
* Transforms an operation node tree into another one.
|
||
*
|
||
@@ -139,9 +144,13 @@ export declare class OperationNodeTransformer {
|
||
protected transformDeleteQuery(node: DeleteQueryNode): DeleteQueryNode;
|
||
protected transformReturning(node: ReturningNode): ReturningNode;
|
||
protected transformCreateTable(node: CreateTableNode): CreateTableNode;
|
||
+ protected transformCreateTrigger(node: CreateTriggerNode): CreateTriggerNode;
|
||
+ protected transformTriggerEvent(node: TriggerEventNode): TriggerEventNode;
|
||
+ protected transformTriggerOrder(node: TriggerOrderNode): TriggerOrderNode;
|
||
protected transformColumnDefinition(node: ColumnDefinitionNode): ColumnDefinitionNode;
|
||
protected transformAddColumn(node: AddColumnNode): AddColumnNode;
|
||
protected transformDropTable(node: DropTableNode): DropTableNode;
|
||
+ protected transformDropTrigger(node: DropTriggerNode): DropTriggerNode;
|
||
protected transformOrderBy(node: OrderByNode): OrderByNode;
|
||
protected transformOrderByItem(node: OrderByItemNode): OrderByItemNode;
|
||
protected transformGroupBy(node: GroupByNode): GroupByNode;
|
||
@@ -199,6 +208,7 @@ export declare class OperationNodeTransformer {
|
||
protected transformJSONPathLeg(node: JSONPathLegNode): JSONPathLegNode;
|
||
protected transformJSONOperatorChain(node: JSONOperatorChainNode): JSONOperatorChainNode;
|
||
protected transformTuple(node: TupleNode): TupleNode;
|
||
+ protected transformAddIndex(node: AddIndexNode): AddIndexNode;
|
||
protected transformDataType(node: DataTypeNode): DataTypeNode;
|
||
protected transformSelectAll(node: SelectAllNode): SelectAllNode;
|
||
protected transformIdentifier(node: IdentifierNode): IdentifierNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.js b/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.js
|
||
index bc3d0a4..839914f 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.js
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.js
|
||
@@ -121,6 +121,11 @@ class OperationNodeTransformer {
|
||
JSONPathLegNode: this.transformJSONPathLeg.bind(this),
|
||
JSONOperatorChainNode: this.transformJSONOperatorChain.bind(this),
|
||
TupleNode: this.transformTuple.bind(this),
|
||
+ AddIndexNode: this.transformAddIndex.bind(this),
|
||
+ CreateTriggerNode: this.transformCreateTrigger.bind(this),
|
||
+ TriggerEventNode: this.transformTriggerEvent.bind(this),
|
||
+ TriggerOrderNode: this.transformTriggerOrder.bind(this),
|
||
+ DropTriggerNode: this.transformDropTrigger.bind(this),
|
||
});
|
||
transformNode(node) {
|
||
if (!node) {
|
||
@@ -297,6 +302,38 @@ class OperationNodeTransformer {
|
||
onCommit: node.onCommit,
|
||
frontModifiers: this.transformNodeList(node.frontModifiers),
|
||
endModifiers: this.transformNodeList(node.endModifiers),
|
||
+ selectQuery: this.transformNode(node.selectQuery),
|
||
+ });
|
||
+ }
|
||
+ transformCreateTrigger(node) {
|
||
+ return (0, require_all_props_js_1.requireAllProps)({
|
||
+ kind: 'CreateTriggerNode',
|
||
+ name: this.transformNode(node.name),
|
||
+ table: this.transformNode(node.table),
|
||
+ ifNotExists: node.ifNotExists,
|
||
+ time: node.time,
|
||
+ events: this.transformNodeList(node.events),
|
||
+ forEach: node.forEach,
|
||
+ orReplace: node.orReplace,
|
||
+ temporary: node.temporary,
|
||
+ queries: this.transformNodeList(node.queries),
|
||
+ function: this.transformNode(node.function),
|
||
+ when: this.transformNode(node.when),
|
||
+ order: this.transformNode(node.order),
|
||
+ });
|
||
+ }
|
||
+ transformTriggerEvent(node) {
|
||
+ return (0, require_all_props_js_1.requireAllProps)({
|
||
+ kind: 'TriggerEventNode',
|
||
+ event: node.event,
|
||
+ columns: this.transformNodeList(node.columns),
|
||
+ });
|
||
+ }
|
||
+ transformTriggerOrder(node) {
|
||
+ return (0, require_all_props_js_1.requireAllProps)({
|
||
+ kind: 'TriggerOrderNode',
|
||
+ order: node.order,
|
||
+ otherTriggerName: this.transformNode(node.otherTriggerName),
|
||
});
|
||
}
|
||
transformColumnDefinition(node) {
|
||
@@ -315,6 +352,7 @@ class OperationNodeTransformer {
|
||
generated: this.transformNode(node.generated),
|
||
frontModifiers: this.transformNodeList(node.frontModifiers),
|
||
endModifiers: this.transformNodeList(node.endModifiers),
|
||
+ nullsNotDistinct: node.nullsNotDistinct,
|
||
});
|
||
}
|
||
transformAddColumn(node) {
|
||
@@ -331,6 +369,14 @@ class OperationNodeTransformer {
|
||
cascade: node.cascade,
|
||
});
|
||
}
|
||
+ transformDropTrigger(node) {
|
||
+ return (0, require_all_props_js_1.requireAllProps)({
|
||
+ kind: 'DropTriggerNode',
|
||
+ name: this.transformNode(node.name),
|
||
+ ifExists: node.ifExists,
|
||
+ cascade: node.cascade,
|
||
+ });
|
||
+ }
|
||
transformOrderBy(node) {
|
||
return (0, require_all_props_js_1.requireAllProps)({
|
||
kind: 'OrderByNode',
|
||
@@ -416,6 +462,7 @@ class OperationNodeTransformer {
|
||
using: this.transformNode(node.using),
|
||
ifNotExists: node.ifNotExists,
|
||
where: this.transformNode(node.where),
|
||
+ nullsNotDistinct: node.nullsNotDistinct,
|
||
});
|
||
}
|
||
transformList(node) {
|
||
@@ -445,6 +492,7 @@ class OperationNodeTransformer {
|
||
kind: 'UniqueConstraintNode',
|
||
columns: this.transformNodeList(node.columns),
|
||
name: this.transformNode(node.name),
|
||
+ nullsNotDistinct: node.nullsNotDistinct,
|
||
});
|
||
}
|
||
transformForeignKeyConstraint(node) {
|
||
@@ -533,6 +581,8 @@ class OperationNodeTransformer {
|
||
columnAlterations: this.transformNodeList(node.columnAlterations),
|
||
addConstraint: this.transformNode(node.addConstraint),
|
||
dropConstraint: this.transformNode(node.dropConstraint),
|
||
+ addIndex: this.transformNode(node.addIndex),
|
||
+ dropIndex: this.transformNode(node.dropIndex),
|
||
});
|
||
}
|
||
transformDropColumn(node) {
|
||
@@ -765,6 +815,16 @@ class OperationNodeTransformer {
|
||
values: this.transformNodeList(node.values),
|
||
});
|
||
}
|
||
+ transformAddIndex(node) {
|
||
+ return (0, require_all_props_js_1.requireAllProps)({
|
||
+ kind: 'AddIndexNode',
|
||
+ name: this.transformNode(node.name),
|
||
+ columns: this.transformNodeList(node.columns),
|
||
+ unique: node.unique,
|
||
+ using: this.transformNode(node.using),
|
||
+ ifNotExists: node.ifNotExists,
|
||
+ });
|
||
+ }
|
||
transformDataType(node) {
|
||
// An Object.freezed leaf node. No need to clone.
|
||
return node;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.d.ts b/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.d.ts
|
||
index 7c267cd..6a66bc7 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.d.ts
|
||
@@ -85,6 +85,11 @@ import { JSONPathNode } from './json-path-node.js';
|
||
import { JSONPathLegNode } from './json-path-leg-node.js';
|
||
import { JSONOperatorChainNode } from './json-operator-chain-node.js';
|
||
import { TupleNode } from './tuple-node.js';
|
||
+import { AddIndexNode } from './add-index-node.js';
|
||
+import { CreateTriggerNode } from './create-trigger-node.js';
|
||
+import { DropTriggerNode } from './drop-trigger-node.js';
|
||
+import { TriggerEventNode } from './trigger-event-node.js';
|
||
+import { TriggerOrderNode } from './trigger-order-node.js';
|
||
export declare abstract class OperationNodeVisitor {
|
||
#private;
|
||
protected readonly nodeStack: OperationNode[];
|
||
@@ -108,9 +113,13 @@ export declare abstract class OperationNodeVisitor {
|
||
protected abstract visitDeleteQuery(node: DeleteQueryNode): void;
|
||
protected abstract visitReturning(node: ReturningNode): void;
|
||
protected abstract visitCreateTable(node: CreateTableNode): void;
|
||
+ protected abstract visitCreateTrigger(node: CreateTriggerNode): void;
|
||
+ protected abstract visitTriggerEvent(node: TriggerEventNode): void;
|
||
+ protected abstract visitTriggerOrder(node: TriggerOrderNode): void;
|
||
protected abstract visitAddColumn(node: AddColumnNode): void;
|
||
protected abstract visitColumnDefinition(node: ColumnDefinitionNode): void;
|
||
protected abstract visitDropTable(node: DropTableNode): void;
|
||
+ protected abstract visitDropTrigger(node: DropTriggerNode): void;
|
||
protected abstract visitOrderBy(node: OrderByNode): void;
|
||
protected abstract visitOrderByItem(node: OrderByItemNode): void;
|
||
protected abstract visitGroupBy(node: GroupByNode): void;
|
||
@@ -176,4 +185,5 @@ export declare abstract class OperationNodeVisitor {
|
||
protected abstract visitJSONPathLeg(node: JSONPathLegNode): void;
|
||
protected abstract visitJSONOperatorChain(node: JSONOperatorChainNode): void;
|
||
protected abstract visitTuple(node: TupleNode): void;
|
||
+ protected abstract visitAddIndex(node: AddIndexNode): void;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.js b/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.js
|
||
index 8a50e0b..acc4d6e 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.js
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.js
|
||
@@ -94,6 +94,11 @@ class OperationNodeVisitor {
|
||
JSONPathLegNode: this.visitJSONPathLeg.bind(this),
|
||
JSONOperatorChainNode: this.visitJSONOperatorChain.bind(this),
|
||
TupleNode: this.visitTuple.bind(this),
|
||
+ AddIndexNode: this.visitAddIndex.bind(this),
|
||
+ CreateTriggerNode: this.visitCreateTrigger.bind(this),
|
||
+ TriggerEventNode: this.visitTriggerEvent.bind(this),
|
||
+ TriggerOrderNode: this.visitTriggerOrder.bind(this),
|
||
+ DropTriggerNode: this.visitDropTrigger.bind(this),
|
||
});
|
||
visitNode = (node) => {
|
||
this.nodeStack.push(node);
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operation-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/operation-node.d.ts
|
||
index 24cad68..a01b9ed 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operation-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operation-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-export type OperationNodeKind = 'IdentifierNode' | 'SchemableIdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode' | 'SelectModifierNode' | 'CreateTypeNode' | 'DropTypeNode' | 'ExplainNode' | 'DefaultInsertValueNode' | 'AggregateFunctionNode' | 'OverNode' | 'PartitionByNode' | 'PartitionByItemNode' | 'SetOperationNode' | 'BinaryOperationNode' | 'UnaryOperationNode' | 'UsingNode' | 'FunctionNode' | 'CaseNode' | 'WhenNode' | 'JSONReferenceNode' | 'JSONPathNode' | 'JSONPathLegNode' | 'JSONOperatorChainNode' | 'TupleNode';
|
||
+export type OperationNodeKind = 'IdentifierNode' | 'SchemableIdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode' | 'SelectModifierNode' | 'CreateTypeNode' | 'DropTypeNode' | 'ExplainNode' | 'DefaultInsertValueNode' | 'AggregateFunctionNode' | 'OverNode' | 'PartitionByNode' | 'PartitionByItemNode' | 'SetOperationNode' | 'BinaryOperationNode' | 'UnaryOperationNode' | 'UsingNode' | 'FunctionNode' | 'CaseNode' | 'WhenNode' | 'JSONReferenceNode' | 'JSONPathNode' | 'JSONPathLegNode' | 'JSONOperatorChainNode' | 'TupleNode' | 'AddIndexNode' | 'CreateTriggerNode' | 'TriggerEventNode' | 'TriggerOrderNode' | 'DropTriggerNode';
|
||
export interface OperationNode {
|
||
readonly kind: OperationNodeKind;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operator-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/operator-node.d.ts
|
||
index 1076866..20a5fcb 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operator-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operator-node.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-export declare const COMPARISON_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp"];
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+export declare const COMPARISON_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "is distinct from", "is not distinct from"];
|
||
export declare const ARITHMETIC_OPERATORS: readonly ["+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>"];
|
||
export declare const JSON_OPERATORS: readonly ["->", "->>"];
|
||
-export declare const BINARY_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||"];
|
||
+export declare const BINARY_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "is distinct from", "is not distinct from", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||"];
|
||
export declare const UNARY_FILTER_OPERATORS: readonly ["exists", "not exists"];
|
||
export declare const UNARY_OPERATORS: readonly ["not", "-", "exists", "not exists"];
|
||
-export declare const OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||", "->", "->>", "not", "-", "exists", "not exists", "between", "between symmetric"];
|
||
+export declare const OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "is distinct from", "is not distinct from", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||", "->", "->>", "not", "-", "exists", "not exists", "between", "between symmetric"];
|
||
export type ComparisonOperator = (typeof COMPARISON_OPERATORS)[number];
|
||
export type ArithmeticOperator = (typeof ARITHMETIC_OPERATORS)[number];
|
||
export type JSONOperator = (typeof JSON_OPERATORS)[number];
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/operator-node.js b/node_modules/kysely/dist/cjs/operation-node/operator-node.js
|
||
index 1b4ff0a..5407a85 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/operator-node.js
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/operator-node.js
|
||
@@ -37,6 +37,8 @@ exports.COMPARISON_OPERATORS = [
|
||
'!!',
|
||
'<->',
|
||
'regexp',
|
||
+ 'is distinct from',
|
||
+ 'is not distinct from',
|
||
];
|
||
exports.ARITHMETIC_OPERATORS = [
|
||
'+',
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/or-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/or-node.d.ts
|
||
index 4d8e9ce..ca76ae2 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/or-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/or-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface OrNode extends OperationNode {
|
||
readonly kind: 'OrNode';
|
||
readonly left: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/order-by-item-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/order-by-item-node.d.ts
|
||
index 5a926f7..2964b97 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/order-by-item-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/order-by-item-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface OrderByItemNode extends OperationNode {
|
||
readonly kind: 'OrderByItemNode';
|
||
readonly orderBy: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/order-by-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/order-by-node.d.ts
|
||
index ec862ab..aad64f5 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/order-by-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/order-by-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { OrderByItemNode } from './order-by-item-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OrderByItemNode } from 'kysely/dist/cjs/operation-node/order-by-item-node.js';
|
||
export interface OrderByNode extends OperationNode {
|
||
readonly kind: 'OrderByNode';
|
||
readonly items: ReadonlyArray<OrderByItemNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/over-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/over-node.d.ts
|
||
index 90fa893..9f04bf1 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/over-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/over-node.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { OrderByItemNode } from './order-by-item-node.js';
|
||
-import { OrderByNode } from './order-by-node.js';
|
||
-import { PartitionByItemNode } from './partition-by-item-node.js';
|
||
-import { PartitionByNode } from './partition-by-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OrderByItemNode } from 'kysely/dist/cjs/operation-node/order-by-item-node.js';
|
||
+import { OrderByNode } from 'kysely/dist/cjs/operation-node/order-by-node.js';
|
||
+import { PartitionByItemNode } from 'kysely/dist/cjs/operation-node/partition-by-item-node.js';
|
||
+import { PartitionByNode } from 'kysely/dist/cjs/operation-node/partition-by-node.js';
|
||
export interface OverNode extends OperationNode {
|
||
readonly kind: 'OverNode';
|
||
readonly orderBy?: OrderByNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/parens-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/parens-node.d.ts
|
||
index 8a84c5d..8052a4f 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/parens-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/parens-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface ParensNode extends OperationNode {
|
||
readonly kind: 'ParensNode';
|
||
readonly node: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/partition-by-item-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/partition-by-item-node.d.ts
|
||
index 91b1035..d851bf5 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/partition-by-item-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/partition-by-item-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SimpleReferenceExpressionNode } from './simple-reference-expression-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SimpleReferenceExpressionNode } from 'kysely/dist/cjs/operation-node/simple-reference-expression-node.js';
|
||
export interface PartitionByItemNode extends OperationNode {
|
||
readonly kind: 'PartitionByItemNode';
|
||
readonly partitionBy: SimpleReferenceExpressionNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/partition-by-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/partition-by-node.d.ts
|
||
index 92f2c3d..3b9595c 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/partition-by-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/partition-by-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { PartitionByItemNode } from './partition-by-item-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { PartitionByItemNode } from 'kysely/dist/cjs/operation-node/partition-by-item-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface PartitionByNode extends OperationNode {
|
||
readonly kind: 'PartitionByNode';
|
||
readonly items: ReadonlyArray<PartitionByItemNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/primary-constraint-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/primary-constraint-node.d.ts
|
||
index 63de5ec..be729e7 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/primary-constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/primary-constraint-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface PrimaryKeyConstraintNode extends OperationNode {
|
||
readonly kind: 'PrimaryKeyConstraintNode';
|
||
readonly columns: ReadonlyArray<ColumnNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/primitive-value-list-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/primitive-value-list-node.d.ts
|
||
index d47b86f..142ebae 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/primitive-value-list-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/primitive-value-list-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
/**
|
||
* This node is basically just a performance optimization over the normal ValueListNode.
|
||
* The queries often contain large arrays of primitive values (for example in a `where in` list)
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/query-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/query-node.d.ts
|
||
index bf6ef92..133557d 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/query-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/query-node.d.ts
|
||
@@ -1,15 +1,15 @@
|
||
-import { InsertQueryNode } from './insert-query-node.js';
|
||
-import { SelectQueryNode } from './select-query-node.js';
|
||
-import { UpdateQueryNode } from './update-query-node.js';
|
||
-import { DeleteQueryNode } from './delete-query-node.js';
|
||
-import { WhereNode } from './where-node.js';
|
||
-import { JoinNode } from './join-node.js';
|
||
-import { SelectionNode } from './selection-node.js';
|
||
-import { ReturningNode } from './returning-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ExplainNode } from './explain-node.js';
|
||
-import { ExplainFormat } from '../util/explainable.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
+import { InsertQueryNode } from 'kysely/dist/cjs/operation-node/insert-query-node.js';
|
||
+import { SelectQueryNode } from 'kysely/dist/cjs/operation-node/select-query-node.js';
|
||
+import { UpdateQueryNode } from 'kysely/dist/cjs/operation-node/update-query-node.js';
|
||
+import { DeleteQueryNode } from 'kysely/dist/cjs/operation-node/delete-query-node.js';
|
||
+import { WhereNode } from 'kysely/dist/cjs/operation-node/where-node.js';
|
||
+import { JoinNode } from 'kysely/dist/cjs/operation-node/join-node.js';
|
||
+import { SelectionNode } from 'kysely/dist/cjs/operation-node/selection-node.js';
|
||
+import { ReturningNode } from 'kysely/dist/cjs/operation-node/returning-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ExplainNode } from 'kysely/dist/cjs/operation-node/explain-node.js';
|
||
+import { ExplainFormat } from 'kysely/dist/cjs/util/explainable.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
export type QueryNode = SelectQueryNode | InsertQueryNode | UpdateQueryNode | DeleteQueryNode;
|
||
type HasJoins = {
|
||
joins?: ReadonlyArray<JoinNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/raw-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/raw-node.d.ts
|
||
index d0ebaa1..e8493de 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/raw-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/raw-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface RawNode extends OperationNode {
|
||
readonly kind: 'RawNode';
|
||
readonly sqlFragments: ReadonlyArray<string>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/reference-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/reference-node.d.ts
|
||
index 25451af..06b6906 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/reference-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/reference-node.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
-import { SelectAllNode } from './select-all-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { SelectAllNode } from 'kysely/dist/cjs/operation-node/select-all-node.js';
|
||
export interface ReferenceNode extends OperationNode {
|
||
readonly kind: 'ReferenceNode';
|
||
readonly column: ColumnNode | SelectAllNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/references-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/references-node.d.ts
|
||
index bca9b92..261c6ca 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/references-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/references-node.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
-import { ArrayItemType } from '../util/type-utils.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { ArrayItemType } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export declare const ON_MODIFY_FOREIGN_ACTIONS: readonly ["no action", "restrict", "cascade", "set null", "set default"];
|
||
export type OnModifyForeignAction = ArrayItemType<typeof ON_MODIFY_FOREIGN_ACTIONS>;
|
||
export interface ReferencesNode extends OperationNode {
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/rename-column-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/rename-column-node.d.ts
|
||
index 6aaa14a..14f4d87 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/rename-column-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/rename-column-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { ColumnNode } from './column-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
export interface RenameColumnNode extends OperationNode {
|
||
readonly kind: 'RenameColumnNode';
|
||
readonly column: ColumnNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/returning-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/returning-node.d.ts
|
||
index 6504839..2000c94 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/returning-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/returning-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SelectionNode } from './selection-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SelectionNode } from 'kysely/dist/cjs/operation-node/selection-node.js';
|
||
export interface ReturningNode extends OperationNode {
|
||
readonly kind: 'ReturningNode';
|
||
readonly selections: ReadonlyArray<SelectionNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/schemable-identifier-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/schemable-identifier-node.d.ts
|
||
index 0373909..18afb74 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/schemable-identifier-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/schemable-identifier-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface SchemableIdentifierNode extends OperationNode {
|
||
readonly kind: 'SchemableIdentifierNode';
|
||
readonly schema?: IdentifierNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/select-all-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/select-all-node.d.ts
|
||
index ebdb84d..facdf67 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/select-all-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/select-all-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface SelectAllNode extends OperationNode {
|
||
readonly kind: 'SelectAllNode';
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/select-modifier-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/select-modifier-node.d.ts
|
||
index 6cafd87..2d3273f 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/select-modifier-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/select-modifier-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type SelectModifier = 'ForUpdate' | 'ForNoKeyUpdate' | 'ForShare' | 'ForKeyShare' | 'NoWait' | 'SkipLocked' | 'Distinct';
|
||
export interface SelectModifierNode extends OperationNode {
|
||
readonly kind: 'SelectModifierNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/select-query-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/select-query-node.d.ts
|
||
index 8566716..f6adbb0 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/select-query-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/select-query-node.d.ts
|
||
@@ -1,19 +1,19 @@
|
||
-import { FromNode } from './from-node.js';
|
||
-import { GroupByItemNode } from './group-by-item-node.js';
|
||
-import { GroupByNode } from './group-by-node.js';
|
||
-import { HavingNode } from './having-node.js';
|
||
-import { JoinNode } from './join-node.js';
|
||
-import { LimitNode } from './limit-node.js';
|
||
-import { OffsetNode } from './offset-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { OrderByItemNode } from './order-by-item-node.js';
|
||
-import { OrderByNode } from './order-by-node.js';
|
||
-import { SelectionNode } from './selection-node.js';
|
||
-import { WhereNode } from './where-node.js';
|
||
-import { WithNode } from './with-node.js';
|
||
-import { SelectModifierNode } from './select-modifier-node.js';
|
||
-import { ExplainNode } from './explain-node.js';
|
||
-import { SetOperationNode } from './set-operation-node.js';
|
||
+import { FromNode } from 'kysely/dist/cjs/operation-node/from-node.js';
|
||
+import { GroupByItemNode } from 'kysely/dist/cjs/operation-node/group-by-item-node.js';
|
||
+import { GroupByNode } from 'kysely/dist/cjs/operation-node/group-by-node.js';
|
||
+import { HavingNode } from 'kysely/dist/cjs/operation-node/having-node.js';
|
||
+import { JoinNode } from 'kysely/dist/cjs/operation-node/join-node.js';
|
||
+import { LimitNode } from 'kysely/dist/cjs/operation-node/limit-node.js';
|
||
+import { OffsetNode } from 'kysely/dist/cjs/operation-node/offset-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { OrderByItemNode } from 'kysely/dist/cjs/operation-node/order-by-item-node.js';
|
||
+import { OrderByNode } from 'kysely/dist/cjs/operation-node/order-by-node.js';
|
||
+import { SelectionNode } from 'kysely/dist/cjs/operation-node/selection-node.js';
|
||
+import { WhereNode } from 'kysely/dist/cjs/operation-node/where-node.js';
|
||
+import { WithNode } from 'kysely/dist/cjs/operation-node/with-node.js';
|
||
+import { SelectModifierNode } from 'kysely/dist/cjs/operation-node/select-modifier-node.js';
|
||
+import { ExplainNode } from 'kysely/dist/cjs/operation-node/explain-node.js';
|
||
+import { SetOperationNode } from 'kysely/dist/cjs/operation-node/set-operation-node.js';
|
||
export interface SelectQueryNode extends OperationNode {
|
||
readonly kind: 'SelectQueryNode';
|
||
readonly from?: FromNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/selection-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/selection-node.d.ts
|
||
index 65c3567..f82ed6a 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/selection-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/selection-node.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { AliasNode } from './alias-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SelectAllNode } from './select-all-node.js';
|
||
-import { SimpleReferenceExpressionNode } from './simple-reference-expression-node.js';
|
||
-import { TableNode } from './table-node.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SelectAllNode } from 'kysely/dist/cjs/operation-node/select-all-node.js';
|
||
+import { SimpleReferenceExpressionNode } from 'kysely/dist/cjs/operation-node/simple-reference-expression-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
type SelectionNodeChild = SimpleReferenceExpressionNode | AliasNode | SelectAllNode;
|
||
export interface SelectionNode extends OperationNode {
|
||
readonly kind: 'SelectionNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/set-operation-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/set-operation-node.d.ts
|
||
index 31f9efc..b924286 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/set-operation-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/set-operation-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type SetOperator = 'union' | 'intersect' | 'except';
|
||
export interface SetOperationNode extends OperationNode {
|
||
kind: 'SetOperationNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/simple-reference-expression-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/simple-reference-expression-node.d.ts
|
||
index f89eb48..7c6ef63 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/simple-reference-expression-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/simple-reference-expression-node.d.ts
|
||
@@ -1,3 +1,3 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { ReferenceNode } from './reference-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { ReferenceNode } from 'kysely/dist/cjs/operation-node/reference-node.js';
|
||
export type SimpleReferenceExpressionNode = ColumnNode | ReferenceNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/table-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/table-node.d.ts
|
||
index b6fba34..c6c3673 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/table-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/table-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { SchemableIdentifierNode } from './schemable-identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { SchemableIdentifierNode } from 'kysely/dist/cjs/operation-node/schemable-identifier-node.js';
|
||
export interface TableNode extends OperationNode {
|
||
readonly kind: 'TableNode';
|
||
readonly table: SchemableIdentifierNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/trigger-event-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/trigger-event-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..fcdf121
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/trigger-event-node.d.ts
|
||
@@ -0,0 +1,15 @@
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+export type TriggerEvent = 'delete' | 'update' | 'insert' | 'truncate';
|
||
+export type TriggerEventNodeParams = Omit<TriggerEventNode, 'kind'>;
|
||
+export interface TriggerEventNode extends OperationNode {
|
||
+ readonly kind: 'TriggerEventNode';
|
||
+ readonly event: TriggerEvent;
|
||
+ readonly columns?: ReadonlyArray<OperationNode>;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const TriggerEventNode: Readonly<{
|
||
+ is(node: OperationNode): node is TriggerEventNode;
|
||
+ create(event: TriggerEvent, columns?: ReadonlyArray<OperationNode>): TriggerEventNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/trigger-event-node.js b/node_modules/kysely/dist/cjs/operation-node/trigger-event-node.js
|
||
new file mode 100644
|
||
index 0000000..85f3975
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/trigger-event-node.js
|
||
@@ -0,0 +1,19 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.TriggerEventNode = void 0;
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+exports.TriggerEventNode = (0, object_utils_js_1.freeze)({
|
||
+ is(node) {
|
||
+ return node.kind === 'TriggerEventNode';
|
||
+ },
|
||
+ create(event, columns) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ kind: 'TriggerEventNode',
|
||
+ event,
|
||
+ columns,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/trigger-order-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/trigger-order-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..5db90ed
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/trigger-order-node.d.ts
|
||
@@ -0,0 +1,16 @@
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+export type TriggerOrder = 'follows' | 'precedes';
|
||
+export type TriggerOrderNodeParams = Omit<TriggerOrderNode, 'kind'>;
|
||
+export interface TriggerOrderNode extends OperationNode {
|
||
+ readonly kind: 'TriggerOrderNode';
|
||
+ readonly order: TriggerOrder;
|
||
+ readonly otherTriggerName: IdentifierNode;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const TriggerOrderNode: Readonly<{
|
||
+ is(node: OperationNode): node is TriggerOrderNode;
|
||
+ create(order: TriggerOrder, otherTriggerName: IdentifierNode): TriggerOrderNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/trigger-order-node.js b/node_modules/kysely/dist/cjs/operation-node/trigger-order-node.js
|
||
new file mode 100644
|
||
index 0000000..2b40780
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/trigger-order-node.js
|
||
@@ -0,0 +1,19 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.TriggerOrderNode = void 0;
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+exports.TriggerOrderNode = (0, object_utils_js_1.freeze)({
|
||
+ is(node) {
|
||
+ return node.kind === 'TriggerOrderNode';
|
||
+ },
|
||
+ create(order, otherTriggerName) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ kind: 'TriggerOrderNode',
|
||
+ order,
|
||
+ otherTriggerName,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.d.ts
|
||
index c179f1f..5111298 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.d.ts
|
||
@@ -1,15 +1,18 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
-import { IdentifierNode } from './identifier-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { IdentifierNode } from 'kysely/dist/cjs/operation-node/identifier-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface UniqueConstraintNode extends OperationNode {
|
||
readonly kind: 'UniqueConstraintNode';
|
||
readonly columns: ReadonlyArray<ColumnNode>;
|
||
readonly name?: IdentifierNode;
|
||
+ readonly nullsNotDistinct?: boolean;
|
||
}
|
||
+export type UniqueConstraintNodeProps = Omit<Partial<UniqueConstraintNode>, 'kind'>;
|
||
/**
|
||
* @internal
|
||
*/
|
||
export declare const UniqueConstraintNode: Readonly<{
|
||
is(node: OperationNode): node is UniqueConstraintNode;
|
||
- create(columns: string[], constraintName?: string): UniqueConstraintNode;
|
||
+ create(columns: string[], constraintName?: string, nullsNotDistinct?: boolean): UniqueConstraintNode;
|
||
+ cloneWith(node: UniqueConstraintNode, props: UniqueConstraintNodeProps): UniqueConstraintNode;
|
||
}>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.js b/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.js
|
||
index d615f74..ba9b265 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.js
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.js
|
||
@@ -11,11 +11,18 @@ exports.UniqueConstraintNode = (0, object_utils_js_1.freeze)({
|
||
is(node) {
|
||
return node.kind === 'UniqueConstraintNode';
|
||
},
|
||
- create(columns, constraintName) {
|
||
+ create(columns, constraintName, nullsNotDistinct) {
|
||
return (0, object_utils_js_1.freeze)({
|
||
kind: 'UniqueConstraintNode',
|
||
columns: (0, object_utils_js_1.freeze)(columns.map(column_node_js_1.ColumnNode.create)),
|
||
name: constraintName ? identifier_node_js_1.IdentifierNode.create(constraintName) : undefined,
|
||
+ nullsNotDistinct,
|
||
+ });
|
||
+ },
|
||
+ cloneWith(node, props) {
|
||
+ return (0, object_utils_js_1.freeze)({
|
||
+ ...node,
|
||
+ ...props,
|
||
});
|
||
},
|
||
});
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/update-query-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/update-query-node.d.ts
|
||
index 6fcc5e7..29fb124 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/update-query-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/update-query-node.d.ts
|
||
@@ -1,13 +1,13 @@
|
||
-import { ColumnUpdateNode } from './column-update-node.js';
|
||
-import { JoinNode } from './join-node.js';
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { PrimitiveValueListNode } from './primitive-value-list-node.js';
|
||
-import { ReturningNode } from './returning-node.js';
|
||
-import { ValueListNode } from './value-list-node.js';
|
||
-import { WhereNode } from './where-node.js';
|
||
-import { WithNode } from './with-node.js';
|
||
-import { FromNode } from './from-node.js';
|
||
-import { ExplainNode } from './explain-node.js';
|
||
+import { ColumnUpdateNode } from 'kysely/dist/cjs/operation-node/column-update-node.js';
|
||
+import { JoinNode } from 'kysely/dist/cjs/operation-node/join-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { PrimitiveValueListNode } from 'kysely/dist/cjs/operation-node/primitive-value-list-node.js';
|
||
+import { ReturningNode } from 'kysely/dist/cjs/operation-node/returning-node.js';
|
||
+import { ValueListNode } from 'kysely/dist/cjs/operation-node/value-list-node.js';
|
||
+import { WhereNode } from 'kysely/dist/cjs/operation-node/where-node.js';
|
||
+import { WithNode } from 'kysely/dist/cjs/operation-node/with-node.js';
|
||
+import { FromNode } from 'kysely/dist/cjs/operation-node/from-node.js';
|
||
+import { ExplainNode } from 'kysely/dist/cjs/operation-node/explain-node.js';
|
||
export type UpdateValuesNode = ValueListNode | PrimitiveValueListNode;
|
||
export interface UpdateQueryNode extends OperationNode {
|
||
readonly kind: 'UpdateQueryNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/using-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/using-node.d.ts
|
||
index 01da795..901c8e5 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/using-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/using-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface UsingNode extends OperationNode {
|
||
readonly kind: 'UsingNode';
|
||
readonly tables: ReadonlyArray<OperationNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/value-list-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/value-list-node.d.ts
|
||
index e48e781..bf4a346 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/value-list-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/value-list-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface ValueListNode extends OperationNode {
|
||
readonly kind: 'ValueListNode';
|
||
readonly values: ReadonlyArray<OperationNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/value-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/value-node.d.ts
|
||
index c5fdc09..6068adc 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/value-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/value-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface ValueNode extends OperationNode {
|
||
readonly kind: 'ValueNode';
|
||
readonly value: unknown;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/values-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/values-node.d.ts
|
||
index 86590c6..bb8127c 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/values-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/values-node.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { PrimitiveValueListNode } from './primitive-value-list-node.js';
|
||
-import { ValueListNode } from './value-list-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { PrimitiveValueListNode } from 'kysely/dist/cjs/operation-node/primitive-value-list-node.js';
|
||
+import { ValueListNode } from 'kysely/dist/cjs/operation-node/value-list-node.js';
|
||
export type ValuesItemNode = ValueListNode | PrimitiveValueListNode;
|
||
export interface ValuesNode extends OperationNode {
|
||
readonly kind: 'ValuesNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/when-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/when-node.d.ts
|
||
index c6f1db8..8be8ebb 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/when-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/when-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface WhenNode extends OperationNode {
|
||
readonly kind: 'WhenNode';
|
||
readonly condition: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/where-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/where-node.d.ts
|
||
index 44f9fbd..a3e79d1 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/where-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/where-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export interface WhereNode extends OperationNode {
|
||
readonly kind: 'WhereNode';
|
||
readonly where: OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/operation-node/with-node.d.ts b/node_modules/kysely/dist/cjs/operation-node/with-node.d.ts
|
||
index 78fecfd..d4fcebc 100644
|
||
--- a/node_modules/kysely/dist/cjs/operation-node/with-node.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/operation-node/with-node.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNode } from './operation-node.js';
|
||
-import { CommonTableExpressionNode } from './common-table-expression-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { CommonTableExpressionNode } from 'kysely/dist/cjs/operation-node/common-table-expression-node.js';
|
||
export type WithNodeParams = Omit<WithNode, 'kind' | 'expressions'>;
|
||
export interface WithNode extends OperationNode {
|
||
readonly kind: 'WithNode';
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/binary-operation-parser.d.ts b/node_modules/kysely/dist/cjs/parser/binary-operation-parser.d.ts
|
||
index 442aeb2..2585655 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/binary-operation-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/binary-operation-parser.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { BinaryOperationNode } from '../operation-node/binary-operation-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { ComparisonOperator, BinaryOperator, Operator } from '../operation-node/operator-node.js';
|
||
-import { ExtractTypeFromReferenceExpression, ExtractTypeFromStringReference, ReferenceExpression, StringReference } from './reference-parser.js';
|
||
-import { ValueExpression, ValueExpressionOrList } from './value-parser.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { SelectType } from '../util/column-type.js';
|
||
+import { BinaryOperationNode } from 'kysely/dist/cjs/operation-node/binary-operation-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { ComparisonOperator, BinaryOperator, Operator } from 'kysely/dist/cjs/operation-node/operator-node.js';
|
||
+import { ExtractTypeFromReferenceExpression, ExtractTypeFromStringReference, ReferenceExpression, StringReference } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { ValueExpression, ValueExpressionOrList } from 'kysely/dist/cjs/parser/value-parser.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { SelectType } from 'kysely/dist/cjs/util/column-type.js';
|
||
export type OperandValueExpression<DB, TB extends keyof DB, RE> = ValueExpression<DB, TB, ExtractTypeFromReferenceExpression<DB, TB, RE>>;
|
||
export type OperandValueExpressionOrList<DB, TB extends keyof DB, RE> = ValueExpressionOrList<DB, TB, ExtractTypeFromReferenceExpression<DB, TB, RE> | null>;
|
||
export type OperatorExpression = Operator | Expression<unknown>;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/binary-operation-parser.js b/node_modules/kysely/dist/cjs/parser/binary-operation-parser.js
|
||
index 2ebff87..b5e9a08 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/binary-operation-parser.js
|
||
+++ b/node_modules/kysely/dist/cjs/parser/binary-operation-parser.js
|
||
@@ -41,7 +41,7 @@ exports.parseFilterObject = parseFilterObject;
|
||
function parseFilterList(list, combinator) {
|
||
const combine = combinator === 'and' ? and_node_js_1.AndNode.create : or_node_js_1.OrNode.create;
|
||
if (list.length === 0) {
|
||
- return value_node_js_1.ValueNode.createImmediate(combinator === 'and');
|
||
+ return binary_operation_node_js_1.BinaryOperationNode.create(value_node_js_1.ValueNode.createImmediate(1), operator_node_js_1.OperatorNode.create('='), value_node_js_1.ValueNode.createImmediate(combinator === 'and' ? 1 : 0));
|
||
}
|
||
let node = toOperationNode(list[0]);
|
||
for (let i = 1; i < list.length; ++i) {
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/coalesce-parser.d.ts b/node_modules/kysely/dist/cjs/parser/coalesce-parser.d.ts
|
||
index ad11860..d71013b 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/coalesce-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/coalesce-parser.d.ts
|
||
@@ -1,2 +1,2 @@
|
||
-import { ExtractTypeFromReferenceExpression, ReferenceExpression } from './reference-parser.js';
|
||
+import { ExtractTypeFromReferenceExpression, ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
export type CoalesceReferenceExpressionList<DB, TB extends keyof DB, RE extends unknown[], O = never> = RE extends [] ? O : RE extends [infer L, ...infer R] ? L extends ReferenceExpression<any, any> ? null extends ExtractTypeFromReferenceExpression<DB, TB, L> ? CoalesceReferenceExpressionList<DB, TB, R extends ReferenceExpression<any, any>[] ? R : never, O | ExtractTypeFromReferenceExpression<DB, TB, L>> : Exclude<O, null> | ExtractTypeFromReferenceExpression<DB, TB, L> : never : never;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/data-type-parser.d.ts b/node_modules/kysely/dist/cjs/parser/data-type-parser.d.ts
|
||
index 5469925..2d9e6e9 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/data-type-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/data-type-parser.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { ColumnDataType } from '../operation-node/data-type-node.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ColumnDataType } from 'kysely/dist/cjs/operation-node/data-type-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type DataTypeExpression = ColumnDataType | Expression<any>;
|
||
export declare function parseDataTypeExpression(dataType: DataTypeExpression): OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/default-value-parser.d.ts b/node_modules/kysely/dist/cjs/parser/default-value-parser.d.ts
|
||
index 332773a..dda387f 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/default-value-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/default-value-parser.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export type DefaultValueExpression = unknown | Expression<unknown>;
|
||
export declare function parseDefaultValueExpression(value: DefaultValueExpression): OperationNode;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/expression-parser.d.ts b/node_modules/kysely/dist/cjs/parser/expression-parser.d.ts
|
||
index ad657a1..dc6f087 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/expression-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/expression-parser.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { AliasedExpression, Expression } from '../expression/expression.js';
|
||
-import { AliasNode } from '../operation-node/alias-node.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
-import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
-import { SelectQueryBuilderExpression } from '../query-builder/select-query-builder-expression.js';
|
||
+import { AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { ExpressionBuilder } from 'kysely/dist/cjs/expression/expression-builder.js';
|
||
+import { SelectQueryBuilderExpression } from 'kysely/dist/cjs/query-builder/select-query-builder-expression.js';
|
||
/**
|
||
* Like `Expression<V>` but also accepts a select query with an output
|
||
* type extending `Record<string, V>`. This type is useful because SQL
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/group-by-parser.d.ts b/node_modules/kysely/dist/cjs/parser/group-by-parser.d.ts
|
||
index 2338e36..19ffb2e 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/group-by-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/group-by-parser.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { GroupByItemNode } from '../operation-node/group-by-item-node.js';
|
||
-import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
-import { ReferenceExpression } from './reference-parser.js';
|
||
+import { GroupByItemNode } from 'kysely/dist/cjs/operation-node/group-by-item-node.js';
|
||
+import { ExpressionBuilder } from 'kysely/dist/cjs/expression/expression-builder.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
export type GroupByExpression<DB, TB extends keyof DB, O> = ReferenceExpression<DB, TB> | (keyof O & string);
|
||
export type GroupByArg<DB, TB extends keyof DB, O> = GroupByExpression<DB, TB, O> | ReadonlyArray<GroupByExpression<DB, TB, O>> | ((eb: ExpressionBuilder<DB, TB>) => ReadonlyArray<GroupByExpression<DB, TB, O>>);
|
||
export declare function parseGroupBy(groupBy: GroupByArg<any, any, any>): GroupByItemNode[];
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/insert-values-parser.d.ts b/node_modules/kysely/dist/cjs/parser/insert-values-parser.d.ts
|
||
index 4560fab..bd1a505 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/insert-values-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/insert-values-parser.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { ColumnNode } from '../operation-node/column-node.js';
|
||
-import { ValueExpression } from './value-parser.js';
|
||
-import { ValuesNode } from '../operation-node/values-node.js';
|
||
-import { NonNullableInsertKeys, NullableInsertKeys, InsertType } from '../util/column-type.js';
|
||
-import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { ValueExpression } from 'kysely/dist/cjs/parser/value-parser.js';
|
||
+import { ValuesNode } from 'kysely/dist/cjs/operation-node/values-node.js';
|
||
+import { NonNullableInsertKeys, NullableInsertKeys, InsertType } from 'kysely/dist/cjs/util/column-type.js';
|
||
+import { ExpressionBuilder } from 'kysely/dist/cjs/expression/expression-builder.js';
|
||
export type InsertObject<DB, TB extends keyof DB> = {
|
||
[C in NonNullableInsertKeys<DB[TB]>]: ValueExpression<DB, TB, InsertType<DB[TB][C]>>;
|
||
} & {
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/join-parser.d.ts b/node_modules/kysely/dist/cjs/parser/join-parser.d.ts
|
||
index fcf33ef..91e1f85 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/join-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/join-parser.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { JoinNode, JoinType } from '../operation-node/join-node.js';
|
||
-import { AnyColumn, AnyColumnWithTable, DrainOuterGeneric } from '../util/type-utils.js';
|
||
-import { From, FromTables } from './table-parser.js';
|
||
-import { JoinBuilder } from '../query-builder/join-builder.js';
|
||
+import { JoinNode, JoinType } from 'kysely/dist/cjs/operation-node/join-node.js';
|
||
+import { AnyColumn, AnyColumnWithTable, DrainOuterGeneric } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { From, FromTables } from 'kysely/dist/cjs/parser/table-parser.js';
|
||
+import { JoinBuilder } from 'kysely/dist/cjs/query-builder/join-builder.js';
|
||
export type JoinReferenceExpression<DB, TB extends keyof DB, TE> = DrainOuterGeneric<AnyJoinColumn<DB, TB, TE> | AnyJoinColumnWithTable<DB, TB, TE>>;
|
||
export type JoinCallbackExpression<DB, TB extends keyof DB, TE> = (join: JoinBuilder<From<DB, TE>, FromTables<DB, TB, TE>>) => JoinBuilder<any, any>;
|
||
type AnyJoinColumn<DB, TB extends keyof DB, TE> = AnyColumn<From<DB, TE>, FromTables<DB, TB, TE>>;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/order-by-parser.d.ts b/node_modules/kysely/dist/cjs/parser/order-by-parser.d.ts
|
||
index 40d5d0e..329449c 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/order-by-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/order-by-parser.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { OrderByItemNode } from '../operation-node/order-by-item-node.js';
|
||
-import { StringReference } from './reference-parser.js';
|
||
-import { ReferenceExpression } from './reference-parser.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { OrderByItemNode } from 'kysely/dist/cjs/operation-node/order-by-item-node.js';
|
||
+import { StringReference } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
export type OrderByDirection = 'asc' | 'desc';
|
||
export declare function isOrderByDirection(thing: unknown): thing is OrderByDirection;
|
||
export type DirectedOrderByStringReference<DB, TB extends keyof DB, O> = `${StringReference<DB, TB> | (keyof O & string)} ${OrderByDirection}`;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/partition-by-parser.d.ts b/node_modules/kysely/dist/cjs/parser/partition-by-parser.d.ts
|
||
index 4a08f74..15a1c3e 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/partition-by-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/partition-by-parser.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { DynamicReferenceBuilder } from '../dynamic/dynamic-reference-builder.js';
|
||
-import { PartitionByItemNode } from '../operation-node/partition-by-item-node.js';
|
||
-import { StringReference } from './reference-parser.js';
|
||
+import { DynamicReferenceBuilder } from 'kysely/dist/cjs/dynamic/dynamic-reference-builder.js';
|
||
+import { PartitionByItemNode } from 'kysely/dist/cjs/operation-node/partition-by-item-node.js';
|
||
+import { StringReference } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
export type PartitionByExpression<DB, TB extends keyof DB> = StringReference<DB, TB> | DynamicReferenceBuilder<any>;
|
||
export type PartitionByExpressionOrList<DB, TB extends keyof DB> = ReadonlyArray<PartitionByExpression<DB, TB>> | PartitionByExpression<DB, TB>;
|
||
export declare function parsePartitionBy(partitionBy: PartitionByExpressionOrList<any, any>): PartitionByItemNode[];
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/reference-parser.d.ts b/node_modules/kysely/dist/cjs/parser/reference-parser.d.ts
|
||
index cd4d656..9c530cf 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/reference-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/reference-parser.d.ts
|
||
@@ -1,22 +1,23 @@
|
||
-import { AliasNode } from '../operation-node/alias-node.js';
|
||
-import { ColumnNode } from '../operation-node/column-node.js';
|
||
-import { ReferenceNode } from '../operation-node/reference-node.js';
|
||
-import { AnyColumn, AnyColumnWithTable, ExtractColumnType } from '../util/type-utils.js';
|
||
-import { SelectQueryBuilderExpression } from '../query-builder/select-query-builder-expression.js';
|
||
-import { ExpressionOrFactory } from './expression-parser.js';
|
||
-import { DynamicReferenceBuilder } from '../dynamic/dynamic-reference-builder.js';
|
||
-import { SelectType } from '../util/column-type.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { SimpleReferenceExpressionNode } from '../operation-node/simple-reference-expression-node.js';
|
||
-import { OrderByDirection } from './order-by-parser.js';
|
||
-import { JSONOperatorWith$ } from '../operation-node/operator-node.js';
|
||
-import { JSONReferenceNode } from '../operation-node/json-reference-node.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { ColumnNode } from 'kysely/dist/cjs/operation-node/column-node.js';
|
||
+import { ReferenceNode } from 'kysely/dist/cjs/operation-node/reference-node.js';
|
||
+import { AnyColumn, AnyColumnWithTable, ExtractColumnType } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { SelectQueryBuilderExpression } from 'kysely/dist/cjs/query-builder/select-query-builder-expression.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { DynamicReferenceBuilder } from 'kysely/dist/cjs/dynamic/dynamic-reference-builder.js';
|
||
+import { SelectType } from 'kysely/dist/cjs/util/column-type.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { SimpleReferenceExpressionNode } from 'kysely/dist/cjs/operation-node/simple-reference-expression-node.js';
|
||
+import { OrderByDirection } from 'kysely/dist/cjs/parser/order-by-parser.js';
|
||
+import { JSONOperatorWith$ } from 'kysely/dist/cjs/operation-node/operator-node.js';
|
||
+import { JSONReferenceNode } from 'kysely/dist/cjs/operation-node/json-reference-node.js';
|
||
export type StringReference<DB, TB extends keyof DB> = AnyColumn<DB, TB> | AnyColumnWithTable<DB, TB>;
|
||
export type SimpleReferenceExpression<DB, TB extends keyof DB> = StringReference<DB, TB> | DynamicReferenceBuilder<any>;
|
||
export type ReferenceExpression<DB, TB extends keyof DB> = SimpleReferenceExpression<DB, TB> | ExpressionOrFactory<DB, TB, any>;
|
||
export type ReferenceExpressionOrList<DB, TB extends keyof DB> = ReferenceExpression<DB, TB> | ReadonlyArray<ReferenceExpression<DB, TB>>;
|
||
-export type ExtractTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = RE extends string ? SelectType<ExtractTypeFromStringReference<DB, TB, RE>> : RE extends SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends (qb: any) => SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends Expression<infer O> ? O : RE extends (qb: any) => Expression<infer O> ? O : DV;
|
||
+export type ExtractTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = SelectType<ExtractRawTypeFromReferenceExpression<DB, TB, RE, DV>>;
|
||
+export type ExtractRawTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = RE extends string ? ExtractTypeFromStringReference<DB, TB, RE> : RE extends SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends (qb: any) => SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends Expression<infer O> ? O : RE extends (qb: any) => Expression<infer O> ? O : DV;
|
||
export type ExtractTypeFromStringReference<DB, TB extends keyof DB, RE extends string, DV = unknown> = RE extends `${infer SC}.${infer T}.${infer C}` ? `${SC}.${T}` extends TB ? C extends keyof DB[`${SC}.${T}`] ? DB[`${SC}.${T}`][C] : never : never : RE extends `${infer T}.${infer C}` ? T extends TB ? C extends keyof DB[T] ? DB[T][C] : never : never : RE extends AnyColumn<DB, TB> ? ExtractColumnType<DB, TB, RE> : DV;
|
||
export type OrderedColumnName<C extends string> = C extends `${string} ${infer O}` ? O extends OrderByDirection ? C : never : C;
|
||
export type ExtractColumnNameFromOrderedColumnName<C extends string> = C extends `${infer CL} ${infer O}` ? O extends OrderByDirection ? CL : never : C;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/returning-parser.d.ts b/node_modules/kysely/dist/cjs/parser/returning-parser.d.ts
|
||
index 4a41b30..35ccad7 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/returning-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/returning-parser.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { DeleteResult } from '../query-builder/delete-result.js';
|
||
-import { InsertResult } from '../query-builder/insert-result.js';
|
||
-import { UpdateResult } from '../query-builder/update-result.js';
|
||
-import { Selection, AllSelection, CallbackSelection } from './select-parser.js';
|
||
+import { DeleteResult } from 'kysely/dist/cjs/query-builder/delete-result.js';
|
||
+import { InsertResult } from 'kysely/dist/cjs/query-builder/insert-result.js';
|
||
+import { UpdateResult } from 'kysely/dist/cjs/query-builder/update-result.js';
|
||
+import { Selection, AllSelection, CallbackSelection } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
export type ReturningRow<DB, TB extends keyof DB, O, SE> = O extends InsertResult ? Selection<DB, TB, SE> : O extends DeleteResult ? Selection<DB, TB, SE> : O extends UpdateResult ? Selection<DB, TB, SE> : O & Selection<DB, TB, SE>;
|
||
export type ReturningCallbackRow<DB, TB extends keyof DB, O, CB> = O extends InsertResult ? CallbackSelection<DB, TB, CB> : O extends DeleteResult ? CallbackSelection<DB, TB, CB> : O extends UpdateResult ? CallbackSelection<DB, TB, CB> : O & CallbackSelection<DB, TB, CB>;
|
||
export type ReturningAllRow<DB, TB extends keyof DB, O> = O extends InsertResult ? AllSelection<DB, TB> : O extends DeleteResult ? AllSelection<DB, TB> : O extends UpdateResult ? AllSelection<DB, TB> : O & AllSelection<DB, TB>;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/select-parser.d.ts b/node_modules/kysely/dist/cjs/parser/select-parser.d.ts
|
||
index d15c377..be1bcdb 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/select-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/select-parser.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { AliasedSelectQueryBuilder } from '../query-builder/select-query-builder.js';
|
||
-import { SelectionNode } from '../operation-node/selection-node.js';
|
||
-import { AnyAliasedColumn, AnyAliasedColumnWithTable, AnyColumn, AnyColumnWithTable, DrainOuterGeneric, ExtractColumnType } from '../util/type-utils.js';
|
||
-import { DynamicReferenceBuilder } from '../dynamic/dynamic-reference-builder.js';
|
||
-import { AliasedExpressionOrFactory } from './expression-parser.js';
|
||
-import { SelectType } from '../util/column-type.js';
|
||
-import { AliasedExpression } from '../expression/expression.js';
|
||
-import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
+import { AliasedSelectQueryBuilder } from 'kysely/dist/cjs/query-builder/select-query-builder.js';
|
||
+import { SelectionNode } from 'kysely/dist/cjs/operation-node/selection-node.js';
|
||
+import { AnyAliasedColumn, AnyAliasedColumnWithTable, AnyColumn, AnyColumnWithTable, DrainOuterGeneric, ExtractColumnType } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { DynamicReferenceBuilder } from 'kysely/dist/cjs/dynamic/dynamic-reference-builder.js';
|
||
+import { AliasedExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { SelectType } from 'kysely/dist/cjs/util/column-type.js';
|
||
+import { AliasedExpression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ExpressionBuilder } from 'kysely/dist/cjs/expression/expression-builder.js';
|
||
export type SelectExpression<DB, TB extends keyof DB> = AnyAliasedColumnWithTable<DB, TB> | AnyAliasedColumn<DB, TB> | AnyColumnWithTable<DB, TB> | AnyColumn<DB, TB> | DynamicReferenceBuilder<any> | AliasedExpressionOrFactory<DB, TB>;
|
||
export type SelectCallback<DB, TB extends keyof DB> = (eb: ExpressionBuilder<DB, TB>) => ReadonlyArray<SelectExpression<DB, TB>>;
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/set-operation-parser.d.ts b/node_modules/kysely/dist/cjs/parser/set-operation-parser.d.ts
|
||
index 34ffc3e..df5c497 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/set-operation-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/set-operation-parser.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { SetOperator, SetOperationNode } from '../operation-node/set-operation-node.js';
|
||
+import { ExpressionBuilder } from 'kysely/dist/cjs/expression/expression-builder.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { SetOperator, SetOperationNode } from 'kysely/dist/cjs/operation-node/set-operation-node.js';
|
||
export type SetOperandExpression<DB, O> = Expression<O> | ReadonlyArray<Expression<O>> | ((eb: ExpressionBuilder<DB, never>) => Expression<O> | ReadonlyArray<Expression<O>>);
|
||
export declare function parseSetOperations(operator: SetOperator, expression: SetOperandExpression<any, any>, all: boolean): SetOperationNode[];
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/table-parser.d.ts b/node_modules/kysely/dist/cjs/parser/table-parser.d.ts
|
||
index 05b58c4..98c5817 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/table-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/table-parser.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { AliasNode } from '../operation-node/alias-node.js';
|
||
-import { TableNode } from '../operation-node/table-node.js';
|
||
-import { AliasedExpressionOrFactory } from './expression-parser.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
-import { AliasedExpression } from '../expression/expression.js';
|
||
-import { DrainOuterGeneric, ShallowRecord } from '../util/type-utils.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { TableNode } from 'kysely/dist/cjs/operation-node/table-node.js';
|
||
+import { AliasedExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { AliasedExpression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { DrainOuterGeneric, ShallowRecord } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export type TableExpression<DB, TB extends keyof DB> = AnyAliasedTable<DB> | AnyTable<DB> | AliasedExpressionOrFactory<DB, TB>;
|
||
export type TableExpressionOrList<DB, TB extends keyof DB> = TableExpression<DB, TB> | ReadonlyArray<TableExpression<DB, TB>>;
|
||
export type TableReference<DB> = AnyAliasedTable<DB> | AnyTable<DB> | AliasedExpression<any, any>;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/tuple-parser.d.ts b/node_modules/kysely/dist/cjs/parser/tuple-parser.d.ts
|
||
index 032ea46..2101bdf 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/tuple-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/tuple-parser.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { DrainOuterGeneric } from '../util/type-utils.js';
|
||
-import { ExtractTypeFromReferenceExpression } from './reference-parser.js';
|
||
-import { ExtractTypeFromValueExpression } from './value-parser.js';
|
||
+import { DrainOuterGeneric } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { ExtractTypeFromReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { ExtractTypeFromValueExpression } from 'kysely/dist/cjs/parser/value-parser.js';
|
||
export type RefTuple2<DB, TB extends keyof DB, R1, R2> = DrainOuterGeneric<[
|
||
ExtractTypeFromReferenceExpression<DB, TB, R1>,
|
||
ExtractTypeFromReferenceExpression<DB, TB, R2>
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/update-set-parser.d.ts b/node_modules/kysely/dist/cjs/parser/update-set-parser.d.ts
|
||
index d4b2dd0..184e344 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/update-set-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/update-set-parser.d.ts
|
||
@@ -1,10 +1,13 @@
|
||
-import { ColumnUpdateNode } from '../operation-node/column-update-node.js';
|
||
-import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
-import { UpdateKeys, UpdateType } from '../util/column-type.js';
|
||
-import { ValueExpression } from './value-parser.js';
|
||
+import { ColumnUpdateNode } from 'kysely/dist/cjs/operation-node/column-update-node.js';
|
||
+import { ExpressionBuilder } from 'kysely/dist/cjs/expression/expression-builder.js';
|
||
+import { UpdateKeys, UpdateType } from 'kysely/dist/cjs/util/column-type.js';
|
||
+import { ValueExpression } from 'kysely/dist/cjs/parser/value-parser.js';
|
||
+import { ExtractRawTypeFromReferenceExpression, ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
export type UpdateObject<DB, TB extends keyof DB, UT extends keyof DB = TB> = {
|
||
[C in UpdateKeys<DB[UT]>]?: ValueExpression<DB, TB, UpdateType<DB[UT][C]>> | undefined;
|
||
};
|
||
export type UpdateObjectFactory<DB, TB extends keyof DB, UT extends keyof DB> = (eb: ExpressionBuilder<DB, TB>) => UpdateObject<DB, TB, UT>;
|
||
-export type UpdateExpression<DB, TB extends keyof DB, UT extends keyof DB = TB> = UpdateObject<DB, TB, UT> | UpdateObjectFactory<DB, TB, UT>;
|
||
-export declare function parseUpdateExpression(update: UpdateExpression<any, any, any>): ReadonlyArray<ColumnUpdateNode>;
|
||
+export type UpdateObjectExpression<DB, TB extends keyof DB, UT extends keyof DB = TB> = UpdateObject<DB, TB, UT> | UpdateObjectFactory<DB, TB, UT>;
|
||
+export type ExtractUpdateTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = UpdateType<ExtractRawTypeFromReferenceExpression<DB, TB, RE, DV>>;
|
||
+export declare function parseUpdate(...args: [UpdateObjectExpression<any, any, any>] | [ReferenceExpression<any, any>, ValueExpression<any, any, any>]): ReadonlyArray<ColumnUpdateNode>;
|
||
+export declare function parseUpdateObjectExpression(update: UpdateObjectExpression<any, any, any>): ReadonlyArray<ColumnUpdateNode>;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/update-set-parser.js b/node_modules/kysely/dist/cjs/parser/update-set-parser.js
|
||
index bbb1618..e741a9e 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/update-set-parser.js
|
||
+++ b/node_modules/kysely/dist/cjs/parser/update-set-parser.js
|
||
@@ -1,12 +1,22 @@
|
||
"use strict";
|
||
Object.defineProperty(exports, "__esModule", { value: true });
|
||
-exports.parseUpdateExpression = void 0;
|
||
+exports.parseUpdateObjectExpression = exports.parseUpdate = void 0;
|
||
const column_node_js_1 = require("../operation-node/column-node.js");
|
||
const column_update_node_js_1 = require("../operation-node/column-update-node.js");
|
||
const expression_builder_js_1 = require("../expression/expression-builder.js");
|
||
const object_utils_js_1 = require("../util/object-utils.js");
|
||
const value_parser_js_1 = require("./value-parser.js");
|
||
-function parseUpdateExpression(update) {
|
||
+const reference_parser_js_1 = require("./reference-parser.js");
|
||
+function parseUpdate(...args) {
|
||
+ if (args.length === 2) {
|
||
+ return [
|
||
+ column_update_node_js_1.ColumnUpdateNode.create((0, reference_parser_js_1.parseReferenceExpression)(args[0]), (0, value_parser_js_1.parseValueExpression)(args[1])),
|
||
+ ];
|
||
+ }
|
||
+ return parseUpdateObjectExpression(args[0]);
|
||
+}
|
||
+exports.parseUpdate = parseUpdate;
|
||
+function parseUpdateObjectExpression(update) {
|
||
const updateObj = (0, object_utils_js_1.isFunction)(update) ? update((0, expression_builder_js_1.expressionBuilder)()) : update;
|
||
return Object.entries(updateObj)
|
||
.filter(([_, value]) => value !== undefined)
|
||
@@ -14,4 +24,4 @@ function parseUpdateExpression(update) {
|
||
return column_update_node_js_1.ColumnUpdateNode.create(column_node_js_1.ColumnNode.create(key), (0, value_parser_js_1.parseValueExpression)(value));
|
||
});
|
||
}
|
||
-exports.parseUpdateExpression = parseUpdateExpression;
|
||
+exports.parseUpdateObjectExpression = parseUpdateObjectExpression;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/value-parser.d.ts b/node_modules/kysely/dist/cjs/parser/value-parser.d.ts
|
||
index 353d16e..ce7dc8b 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/value-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/value-parser.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { ValueNode } from '../operation-node/value-node.js';
|
||
-import { ExpressionOrFactory } from './expression-parser.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { SelectQueryBuilderExpression } from '../query-builder/select-query-builder-expression.js';
|
||
+import { ValueNode } from 'kysely/dist/cjs/operation-node/value-node.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { SelectQueryBuilderExpression } from 'kysely/dist/cjs/query-builder/select-query-builder-expression.js';
|
||
export type ValueExpression<DB, TB extends keyof DB, V> = V | ExpressionOrFactory<DB, TB, V>;
|
||
export type ValueExpressionOrList<DB, TB extends keyof DB, V> = ValueExpression<DB, TB, V> | ReadonlyArray<ValueExpression<DB, TB, V>>;
|
||
export type ExtractTypeFromValueExpressionOrList<VE> = VE extends ReadonlyArray<infer AV> ? ExtractTypeFromValueExpression<AV> : ExtractTypeFromValueExpression<VE>;
|
||
diff --git a/node_modules/kysely/dist/cjs/parser/with-parser.d.ts b/node_modules/kysely/dist/cjs/parser/with-parser.d.ts
|
||
index 63183fc..d4092ce 100644
|
||
--- a/node_modules/kysely/dist/cjs/parser/with-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/parser/with-parser.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { UpdateQueryBuilder } from '../query-builder/update-query-builder.js';
|
||
-import { DeleteQueryBuilder } from '../query-builder/delete-query-builder.js';
|
||
-import { InsertQueryBuilder } from '../query-builder/insert-query-builder.js';
|
||
-import { QueryCreator } from '../query-creator.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { ShallowRecord } from '../util/type-utils.js';
|
||
-import { CTEBuilderCallback } from '../query-builder/cte-builder.js';
|
||
-import { CommonTableExpressionNode } from '../operation-node/common-table-expression-node.js';
|
||
+import { UpdateQueryBuilder } from 'kysely/dist/cjs/query-builder/update-query-builder.js';
|
||
+import { DeleteQueryBuilder } from 'kysely/dist/cjs/query-builder/delete-query-builder.js';
|
||
+import { InsertQueryBuilder } from 'kysely/dist/cjs/query-builder/insert-query-builder.js';
|
||
+import { QueryCreator } from 'kysely/dist/cjs/query-creator.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ShallowRecord } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { CTEBuilderCallback } from 'kysely/dist/cjs/query-builder/cte-builder.js';
|
||
+import { CommonTableExpressionNode } from 'kysely/dist/cjs/operation-node/common-table-expression-node.js';
|
||
export type CommonTableExpression<DB, CN extends string> = (creator: QueryCreator<DB>) => CommonTableExpressionOutput<DB, CN>;
|
||
export type RecursiveCommonTableExpression<DB, CN extends string> = (creator: QueryCreator<DB & {
|
||
[K in ExtractTableFromCommonTableExpressionName<CN>]: ExtractRowFromCommonTableExpressionName<CN>;
|
||
diff --git a/node_modules/kysely/dist/cjs/plugin/kysely-plugin.d.ts b/node_modules/kysely/dist/cjs/plugin/kysely-plugin.d.ts
|
||
index 098e5c8..35ca9da 100644
|
||
--- a/node_modules/kysely/dist/cjs/plugin/kysely-plugin.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/plugin/kysely-plugin.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { QueryResult } from '../driver/database-connection.js';
|
||
-import { RootOperationNode } from '../query-compiler/query-compiler.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { UnknownRow } from '../util/type-utils.js';
|
||
+import { QueryResult } from 'kysely/dist/cjs/driver/database-connection.js';
|
||
+import { RootOperationNode } from 'kysely/dist/cjs/query-compiler/query-compiler.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { UnknownRow } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export interface KyselyPlugin {
|
||
/**
|
||
* This is called for each query before it is executed. You can modify the query by
|
||
diff --git a/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-transformer.js b/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-transformer.js
|
||
index 4b3caa6..97287a4 100644
|
||
--- a/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-transformer.js
|
||
+++ b/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-transformer.js
|
||
@@ -19,12 +19,14 @@ const ROOT_OPERATION_NODES = (0, object_utils_js_1.freeze)({
|
||
CreateTableNode: true,
|
||
CreateTypeNode: true,
|
||
CreateViewNode: true,
|
||
+ CreateTriggerNode: true,
|
||
DeleteQueryNode: true,
|
||
DropIndexNode: true,
|
||
DropSchemaNode: true,
|
||
DropTableNode: true,
|
||
DropTypeNode: true,
|
||
DropViewNode: true,
|
||
+ DropTriggerNode: true,
|
||
InsertQueryNode: true,
|
||
RawNode: true,
|
||
SelectQueryNode: true,
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/aggregate-function-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/aggregate-function-builder.d.ts
|
||
index 6f9b8ee..85401ee 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/aggregate-function-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/aggregate-function-builder.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { AggregateFunctionNode } from '../operation-node/aggregate-function-node.js';
|
||
-import { AliasNode } from '../operation-node/alias-node.js';
|
||
-import { OverBuilder } from './over-builder.js';
|
||
-import { AliasableExpression, AliasedExpression, Expression } from '../expression/expression.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { SqlBool } from '../util/type-utils.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
+import { AggregateFunctionNode } from 'kysely/dist/cjs/operation-node/aggregate-function-node.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { OverBuilder } from 'kysely/dist/cjs/query-builder/over-builder.js';
|
||
+import { AliasableExpression, AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
export declare class AggregateFunctionBuilder<DB, TB extends keyof DB, O = unknown> implements AliasableExpression<O> {
|
||
#private;
|
||
constructor(props: AggregateFunctionBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/case-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/case-builder.d.ts
|
||
index bbe83c7..4bc9062 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/case-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/case-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { ExpressionWrapper } from '../expression/expression-wrapper.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { CaseNode } from '../operation-node/case-node.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { KyselyTypeError } from '../util/type-error.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ExpressionWrapper } from 'kysely/dist/cjs/expression/expression-wrapper.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { CaseNode } from 'kysely/dist/cjs/operation-node/case-node.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
export declare class CaseBuilder<DB, TB extends keyof DB, W = unknown, O = never> implements Whenable<DB, TB, W, O> {
|
||
#private;
|
||
constructor(props: CaseBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/cte-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/cte-builder.d.ts
|
||
index 8564d5b..ef22570 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/cte-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/cte-builder.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CommonTableExpressionNode } from '../operation-node/common-table-expression-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CommonTableExpressionNode } from 'kysely/dist/cjs/operation-node/common-table-expression-node.js';
|
||
export declare class CTEBuilder<N extends string> implements OperationNodeSource {
|
||
#private;
|
||
constructor(props: CTEBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/delete-query-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/delete-query-builder.d.ts
|
||
index f510d14..841ec03 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/delete-query-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/delete-query-builder.d.ts
|
||
@@ -1,28 +1,28 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { JoinCallbackExpression, JoinReferenceExpression } from '../parser/join-parser.js';
|
||
-import { From, FromTables, TableExpression } from '../parser/table-parser.js';
|
||
-import { SelectExpression, SelectCallback } from '../parser/select-parser.js';
|
||
-import { ReturningAllRow, ReturningCallbackRow, ReturningRow } from '../parser/returning-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { QueryNode } from '../operation-node/query-node.js';
|
||
-import { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, SimplifyResult, SimplifySingleResult, SqlBool } from '../util/type-utils.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
-import { WhereInterface } from './where-interface.js';
|
||
-import { ReturningInterface } from './returning-interface.js';
|
||
-import { NoResultErrorConstructor } from './no-result-error.js';
|
||
-import { DeleteResult } from './delete-result.js';
|
||
-import { DeleteQueryNode } from '../operation-node/delete-query-node.js';
|
||
-import { OrderByDirectionExpression, OrderByExpression } from '../parser/order-by-parser.js';
|
||
-import { Explainable, ExplainFormat } from '../util/explainable.js';
|
||
-import { AliasedExpression, Expression } from '../expression/expression.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { KyselyTypeError } from '../util/type-error.js';
|
||
-import { Streamable } from '../util/streamable.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { JoinCallbackExpression, JoinReferenceExpression } from 'kysely/dist/cjs/parser/join-parser.js';
|
||
+import { From, FromTables, TableExpression } from 'kysely/dist/cjs/parser/table-parser.js';
|
||
+import { SelectExpression, SelectCallback } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
+import { ReturningAllRow, ReturningCallbackRow, ReturningRow } from 'kysely/dist/cjs/parser/returning-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { QueryNode } from 'kysely/dist/cjs/operation-node/query-node.js';
|
||
+import { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, SimplifyResult, SimplifySingleResult, SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { WhereInterface } from 'kysely/dist/cjs/query-builder/where-interface.js';
|
||
+import { ReturningInterface } from 'kysely/dist/cjs/query-builder/returning-interface.js';
|
||
+import { NoResultErrorConstructor } from 'kysely/dist/cjs/query-builder/no-result-error.js';
|
||
+import { DeleteResult } from 'kysely/dist/cjs/query-builder/delete-result.js';
|
||
+import { DeleteQueryNode } from 'kysely/dist/cjs/operation-node/delete-query-node.js';
|
||
+import { OrderByDirectionExpression, OrderByExpression } from 'kysely/dist/cjs/parser/order-by-parser.js';
|
||
+import { Explainable, ExplainFormat } from 'kysely/dist/cjs/util/explainable.js';
|
||
+import { AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
+import { Streamable } from 'kysely/dist/cjs/util/streamable.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
export declare class DeleteQueryBuilder<DB, TB extends keyof DB, O> implements WhereInterface<DB, TB>, ReturningInterface<DB, TB, O>, OperationNodeSource, Compilable<O>, Explainable, Streamable<O> {
|
||
#private;
|
||
constructor(props: DeleteQueryBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/function-module.d.ts b/node_modules/kysely/dist/cjs/query-builder/function-module.d.ts
|
||
index 592c5e9..5620351 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/function-module.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/function-module.d.ts
|
||
@@ -1,12 +1,13 @@
|
||
-import { DynamicReferenceBuilder } from '../dynamic/dynamic-reference-builder.js';
|
||
-import { ExpressionWrapper } from '../expression/expression-wrapper.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { CoalesceReferenceExpressionList } from '../parser/coalesce-parser.js';
|
||
-import { ExtractTypeFromReferenceExpression, ReferenceExpression, StringReference, ExtractTypeFromStringReference } from '../parser/reference-parser.js';
|
||
-import { KyselyTypeError } from '../util/type-error.js';
|
||
-import { Equals, IsAny } from '../util/type-utils.js';
|
||
-import { AggregateFunctionBuilder } from './aggregate-function-builder.js';
|
||
-import { SelectQueryBuilderExpression } from '../query-builder/select-query-builder-expression.js';
|
||
+import { DynamicReferenceBuilder } from 'kysely/dist/cjs/dynamic/dynamic-reference-builder.js';
|
||
+import { ExpressionWrapper } from 'kysely/dist/cjs/expression/expression-wrapper.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { CoalesceReferenceExpressionList } from 'kysely/dist/cjs/parser/coalesce-parser.js';
|
||
+import { ExtractTypeFromReferenceExpression, ReferenceExpression, StringReference, ExtractTypeFromStringReference } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
+import { Equals, IsAny } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { AggregateFunctionBuilder } from 'kysely/dist/cjs/query-builder/aggregate-function-builder.js';
|
||
+import { SelectQueryBuilderExpression } from 'kysely/dist/cjs/query-builder/select-query-builder-expression.js';
|
||
+import { Selectable } from 'kysely/dist/cjs/util/column-type.js';
|
||
/**
|
||
* Helpers for type safe SQL function calls.
|
||
*
|
||
@@ -17,21 +18,47 @@ import { SelectQueryBuilderExpression } from '../query-builder/select-query-buil
|
||
*
|
||
* <!-- siteExample("select", "Function calls", 60) -->
|
||
*
|
||
- * This example uses the `fn` module to select some aggregates:
|
||
+ * This example shows how to create function calls. These examples also work in any
|
||
+ * other place (`where` calls, updates, inserts etc.). The only difference is that you
|
||
+ * leave out the alias (the `as` call) if you use these in any other place than `select`.
|
||
*
|
||
* ```ts
|
||
+ * import { sql } from 'kysely'
|
||
+ *
|
||
* const result = await db.selectFrom('person')
|
||
* .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
- * .select(({ fn }) => [
|
||
+ * .select(({ fn, val, ref }) => [
|
||
* 'person.id',
|
||
*
|
||
* // The `fn` module contains the most common
|
||
* // functions.
|
||
* fn.count<number>('pet.id').as('pet_count'),
|
||
*
|
||
- * // You can call any function using the
|
||
- * // `agg` method
|
||
- * fn.agg<string[]>('array_agg', ['pet.name']).as('pet_names')
|
||
+ * // You can call any function by calling `fn`
|
||
+ * // directly. The arguments are treated as column
|
||
+ * // references by default. If you want to pass in
|
||
+ * // values, use the `val` function.
|
||
+ * fn<string>('concat', [
|
||
+ * val('Ms. '),
|
||
+ * 'first_name',
|
||
+ * val(' '),
|
||
+ * 'last_name'
|
||
+ * ]).as('full_name_with_title'),
|
||
+ *
|
||
+ * // You can call any aggregate function using the
|
||
+ * // `fn.agg` function.
|
||
+ * fn.agg<string[]>('array_agg', ['pet.name']).as('pet_names'),
|
||
+ *
|
||
+ * // And once again, you can use the `sql`
|
||
+ * // template tag. The template tag substitutions
|
||
+ * // are treated as values by default. If you want
|
||
+ * // to reference columns, you can use the `ref`
|
||
+ * // function.
|
||
+ * sql<string>`concat(
|
||
+ * ${ref('first_name')},
|
||
+ * ' ',
|
||
+ * ${ref('last_name')}
|
||
+ * )`.as('full_name')
|
||
* ])
|
||
* .groupBy('person.id')
|
||
* .having((eb) => eb.fn.count('pet.id'), '>', 10)
|
||
@@ -44,11 +71,13 @@ import { SelectQueryBuilderExpression } from '../query-builder/select-query-buil
|
||
* select
|
||
* "person"."id",
|
||
* count("pet"."id") as "pet_count",
|
||
- * array_agg("pet"."name") as "pet_names"
|
||
+ * concat($1, "first_name", $2, "last_name") as "full_name_with_title",
|
||
+ * array_agg("pet"."name") as "pet_names",
|
||
+ * concat("first_name", ' ', "last_name") as "full_name"
|
||
* from "person"
|
||
* inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
* group by "person"."id"
|
||
- * having count("pet"."id") > $1
|
||
+ * having count("pet"."id") > $3
|
||
* ```
|
||
*/
|
||
export interface FunctionModule<DB, TB extends keyof DB> {
|
||
@@ -540,6 +569,50 @@ export interface FunctionModule<DB, TB extends keyof DB> {
|
||
any<RE extends StringReference<DB, TB>>(expr: RE): Exclude<ExtractTypeFromStringReference<DB, TB, RE>, null> extends ReadonlyArray<infer I> ? ExpressionWrapper<DB, TB, I> : KyselyTypeError<'any(expr) call failed: expr must be an array'>;
|
||
any<T>(subquery: SelectQueryBuilderExpression<Record<string, T>>): ExpressionWrapper<DB, TB, T>;
|
||
any<T>(expr: Expression<ReadonlyArray<T>>): ExpressionWrapper<DB, TB, T>;
|
||
+ /**
|
||
+ * Creates a json_agg function call.
|
||
+ *
|
||
+ * This function is only available on PostgreSQL.
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.selectFrom('person')
|
||
+ * .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
+ * .select((eb) => ['first_name', eb.fn.jsonAgg('pet').as('pets')])
|
||
+ * .groupBy('person.first_name')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * select "first_name", json_agg("pet") as "pets"
|
||
+ * from "person"
|
||
+ * inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
+ * group by "person"."first_name"
|
||
+ * ```
|
||
+ */
|
||
+ jsonAgg<T extends (TB & string) | Expression<unknown>>(table: T): AggregateFunctionBuilder<DB, TB, T extends TB ? Selectable<DB[T]>[] : T extends Expression<infer O> ? O[] : never>;
|
||
+ /**
|
||
+ * Creates a to_json function call.
|
||
+ *
|
||
+ * This function is only available on PostgreSQL.
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.selectFrom('person')
|
||
+ * .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
+ * .select((eb) => ['first_name', eb.fn.toJson('pet').as('pet')])
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * select "first_name", to_json("pet") as "pet"
|
||
+ * from "person"
|
||
+ * inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
+ * ```
|
||
+ */
|
||
+ toJson<T extends (TB & string) | Expression<unknown>>(table: T): ExpressionWrapper<DB, TB, T extends TB ? Selectable<DB[T]> : T extends Expression<infer O> ? O : never>;
|
||
}
|
||
export declare function createFunctionModule<DB, TB extends keyof DB>(): FunctionModule<DB, TB>;
|
||
type OutputBoundStringReference<DB, TB extends keyof DB, C extends StringReference<DB, TB>, O> = IsAny<O> extends true ? C : Equals<ExtractTypeFromReferenceExpression<DB, TB, C> | null, O | null> extends true ? C : never;
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/function-module.js b/node_modules/kysely/dist/cjs/query-builder/function-module.js
|
||
index b894b62..01a2a51 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/function-module.js
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/function-module.js
|
||
@@ -7,6 +7,8 @@ const function_node_js_1 = require("../operation-node/function-node.js");
|
||
const reference_parser_js_1 = require("../parser/reference-parser.js");
|
||
const select_parser_js_1 = require("../parser/select-parser.js");
|
||
const aggregate_function_builder_js_1 = require("./aggregate-function-builder.js");
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+const table_parser_js_1 = require("../parser/table-parser.js");
|
||
function createFunctionModule() {
|
||
const fn = (name, args) => {
|
||
return new expression_wrapper_js_1.ExpressionWrapper(function_node_js_1.FunctionNode.create(name, (0, reference_parser_js_1.parseReferenceExpressionOrList)(args)));
|
||
@@ -44,6 +46,18 @@ function createFunctionModule() {
|
||
any(column) {
|
||
return fn('any', [column]);
|
||
},
|
||
+ jsonAgg(table) {
|
||
+ return new aggregate_function_builder_js_1.AggregateFunctionBuilder({
|
||
+ aggregateFunctionNode: aggregate_function_node_js_1.AggregateFunctionNode.create('json_agg', [
|
||
+ (0, object_utils_js_1.isString)(table) ? (0, table_parser_js_1.parseTable)(table) : table.toOperationNode(),
|
||
+ ]),
|
||
+ });
|
||
+ },
|
||
+ toJson(table) {
|
||
+ return new expression_wrapper_js_1.ExpressionWrapper(function_node_js_1.FunctionNode.create('to_json', [
|
||
+ (0, object_utils_js_1.isString)(table) ? (0, table_parser_js_1.parseTable)(table) : table.toOperationNode(),
|
||
+ ]));
|
||
+ },
|
||
});
|
||
}
|
||
exports.createFunctionModule = createFunctionModule;
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/having-interface.d.ts b/node_modules/kysely/dist/cjs/query-builder/having-interface.d.ts
|
||
index b9f72e1..529d504 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/having-interface.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/having-interface.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { SqlBool } from '../util/type-utils.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export interface HavingInterface<DB, TB extends keyof DB> {
|
||
/**
|
||
* Just like {@link WhereInterface.where | where} but adds a `having` statement
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.d.ts
|
||
index 6be4113..f4c749a 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.d.ts
|
||
@@ -1,26 +1,26 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { SelectExpression, SelectCallback } from '../parser/select-parser.js';
|
||
-import { InsertObjectOrList, InsertObjectOrListFactory } from '../parser/insert-values-parser.js';
|
||
-import { InsertQueryNode } from '../operation-node/insert-query-node.js';
|
||
-import { QueryNode } from '../operation-node/query-node.js';
|
||
-import { NarrowPartial, SimplifyResult, SimplifySingleResult } from '../util/type-utils.js';
|
||
-import { UpdateExpression } from '../parser/update-set-parser.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { InsertResult } from './insert-result.js';
|
||
-import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
-import { ReturningCallbackRow, ReturningRow } from '../parser/returning-parser.js';
|
||
-import { NoResultErrorConstructor } from './no-result-error.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
-import { ReturningInterface } from './returning-interface.js';
|
||
-import { OnConflictBuilder, OnConflictDatabase, OnConflictDoNothingBuilder, OnConflictTables, OnConflictUpdateBuilder } from './on-conflict-builder.js';
|
||
-import { Selectable } from '../util/column-type.js';
|
||
-import { Explainable, ExplainFormat } from '../util/explainable.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { KyselyTypeError } from '../util/type-error.js';
|
||
-import { Streamable } from '../util/streamable.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { SelectExpression, SelectCallback } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
+import { InsertObjectOrList, InsertObjectOrListFactory } from 'kysely/dist/cjs/parser/insert-values-parser.js';
|
||
+import { InsertQueryNode } from 'kysely/dist/cjs/operation-node/insert-query-node.js';
|
||
+import { QueryNode } from 'kysely/dist/cjs/operation-node/query-node.js';
|
||
+import { NarrowPartial, SimplifyResult, SimplifySingleResult } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { UpdateObjectExpression } from 'kysely/dist/cjs/parser/update-set-parser.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { InsertResult } from 'kysely/dist/cjs/query-builder/insert-result.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { ReturningCallbackRow, ReturningRow } from 'kysely/dist/cjs/parser/returning-parser.js';
|
||
+import { NoResultErrorConstructor } from 'kysely/dist/cjs/query-builder/no-result-error.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { ReturningInterface } from 'kysely/dist/cjs/query-builder/returning-interface.js';
|
||
+import { OnConflictBuilder, OnConflictDatabase, OnConflictDoNothingBuilder, OnConflictTables, OnConflictUpdateBuilder } from 'kysely/dist/cjs/query-builder/on-conflict-builder.js';
|
||
+import { Selectable } from 'kysely/dist/cjs/util/column-type.js';
|
||
+import { Explainable, ExplainFormat } from 'kysely/dist/cjs/util/explainable.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
+import { Streamable } from 'kysely/dist/cjs/util/streamable.js';
|
||
export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements ReturningInterface<DB, TB, O>, OperationNodeSource, Compilable<O>, Explainable, Streamable<O> {
|
||
#private;
|
||
constructor(props: InsertQueryBuilderProps);
|
||
@@ -60,13 +60,18 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* })
|
||
* .executeTakeFirst()
|
||
*
|
||
+ * // `insertId` is only available on dialects that
|
||
+ * // automatically return the id of the inserted row
|
||
+ * // such as MySQL and SQLite. On PostgreSQL, for example,
|
||
+ * // you need to add a `returning` clause to the query to
|
||
+ * // get anything out. See the "returning data" example.
|
||
* console.log(result.insertId)
|
||
* ```
|
||
*
|
||
- * The generated SQL (PostgreSQL):
|
||
+ * The generated SQL (MySQL):
|
||
*
|
||
* ```sql
|
||
- * insert into "person" ("first_name", "last_name", "age") values ($1, $2, $3)
|
||
+ * insert into `person` (`first_name`, `last_name`, `age`) values (?, ?, ?)
|
||
* ```
|
||
*
|
||
* <!-- siteExample("insert", "Multiple rows", 20) -->
|
||
@@ -131,11 +136,14 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* ```ts
|
||
* import { sql } from 'kysely'
|
||
*
|
||
+ * const ani = "Ani"
|
||
+ * const ston = "ston"
|
||
+ *
|
||
* const result = await db
|
||
* .insertInto('person')
|
||
* .values(({ ref, selectFrom, fn }) => ({
|
||
* first_name: 'Jennifer',
|
||
- * last_name: sql`${'Ani'} || ${'ston'}`,
|
||
+ * last_name: sql`concat(${ani}, ${ston})`,
|
||
* middle_name: ref('first_name'),
|
||
* age: selectFrom('person')
|
||
* .select(fn.avg<number>('age')
|
||
@@ -147,8 +155,18 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* The generated SQL (PostgreSQL):
|
||
*
|
||
* ```sql
|
||
- * insert into "person" ("first_name", "last_name", "age")
|
||
- * values ($1, $2 || $3, (select avg("age") as "avg_age" from "person"))
|
||
+ * insert into "person" (
|
||
+ * "first_name",
|
||
+ * "last_name",
|
||
+ * "middle_name",
|
||
+ * "age"
|
||
+ * )
|
||
+ * values (
|
||
+ * $1,
|
||
+ * concat($2, $3),
|
||
+ * "first_name",
|
||
+ * (select avg("age") as "avg_age" from "person")
|
||
+ * )
|
||
* ```
|
||
*
|
||
* You can also use the callback version of subqueries or raw expressions:
|
||
@@ -208,7 +226,7 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* .select((eb) => [
|
||
* 'pet.name',
|
||
* eb.val('Petson').as('last_name'),
|
||
- * eb.val(7).as('age'),
|
||
+ * eb.lit(7).as('age'),
|
||
* ])
|
||
* )
|
||
* .execute()
|
||
@@ -218,7 +236,7 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
*
|
||
* ```sql
|
||
* insert into "person" ("first_name", "last_name", "age")
|
||
- * select "pet"."name", $1 as "first_name", $2 as "last_name" from "pet"
|
||
+ * select "pet"."name", $1 as "last_name", 7 as "age from "pet"
|
||
* ```
|
||
*/
|
||
expression(expression: ExpressionOrFactory<DB, TB, any>): InsertQueryBuilder<DB, TB, O>;
|
||
@@ -414,7 +432,7 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* .onDuplicateKeyUpdate({ species: 'hamster' })
|
||
* ```
|
||
*/
|
||
- onDuplicateKeyUpdate(update: UpdateExpression<DB, TB, TB>): InsertQueryBuilder<DB, TB, O>;
|
||
+ onDuplicateKeyUpdate(update: UpdateObjectExpression<DB, TB, TB>): InsertQueryBuilder<DB, TB, O>;
|
||
/**
|
||
* Allows you to return data from modified rows.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.js b/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.js
|
||
index ba57ff0..d89d1b8 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.js
|
||
@@ -77,7 +77,7 @@ class InsertQueryBuilder {
|
||
* .select((eb) => [
|
||
* 'pet.name',
|
||
* eb.val('Petson').as('last_name'),
|
||
- * eb.val(7).as('age'),
|
||
+ * eb.lit(7).as('age'),
|
||
* ])
|
||
* )
|
||
* .execute()
|
||
@@ -87,7 +87,7 @@ class InsertQueryBuilder {
|
||
*
|
||
* ```sql
|
||
* insert into "person" ("first_name", "last_name", "age")
|
||
- * select "pet"."name", $1 as "first_name", $2 as "last_name" from "pet"
|
||
+ * select "pet"."name", $1 as "last_name", 7 as "age from "pet"
|
||
* ```
|
||
*/
|
||
expression(expression) {
|
||
@@ -310,7 +310,7 @@ class InsertQueryBuilder {
|
||
return new InsertQueryBuilder({
|
||
...this.#props,
|
||
queryNode: insert_query_node_js_1.InsertQueryNode.cloneWith(this.#props.queryNode, {
|
||
- onDuplicateKey: on_duplicate_key_node_js_1.OnDuplicateKeyNode.create((0, update_set_parser_js_1.parseUpdateExpression)(update)),
|
||
+ onDuplicateKey: on_duplicate_key_node_js_1.OnDuplicateKeyNode.create((0, update_set_parser_js_1.parseUpdateObjectExpression)(update)),
|
||
}),
|
||
});
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/insert-result.d.ts b/node_modules/kysely/dist/cjs/query-builder/insert-result.d.ts
|
||
index c16fb08..d22a9e5 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/insert-result.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/insert-result.d.ts
|
||
@@ -23,7 +23,14 @@
|
||
*/
|
||
export declare class InsertResult {
|
||
/**
|
||
- * The auto incrementing primary key
|
||
+ * The auto incrementing primary key of the inserted row.
|
||
+ *
|
||
+ * This property can be undefined when the query contains an `on conflict`
|
||
+ * clause that makes the query succeed even when nothing gets inserted.
|
||
+ *
|
||
+ * This property is always undefined on dialects like PostgreSQL that
|
||
+ * don't return the inserted id by default. On those dialects you need
|
||
+ * to use the {@link ReturningInterface.returning | returning} method.
|
||
*/
|
||
readonly insertId: bigint | undefined;
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/insert-result.js b/node_modules/kysely/dist/cjs/query-builder/insert-result.js
|
||
index 6a3246d..b564a4a 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/insert-result.js
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/insert-result.js
|
||
@@ -26,7 +26,14 @@ exports.InsertResult = void 0;
|
||
*/
|
||
class InsertResult {
|
||
/**
|
||
- * The auto incrementing primary key
|
||
+ * The auto incrementing primary key of the inserted row.
|
||
+ *
|
||
+ * This property can be undefined when the query contains an `on conflict`
|
||
+ * clause that makes the query succeed even when nothing gets inserted.
|
||
+ *
|
||
+ * This property is always undefined on dialects like PostgreSQL that
|
||
+ * don't return the inserted id by default. On those dialects you need
|
||
+ * to use the {@link ReturningInterface.returning | returning} method.
|
||
*/
|
||
insertId;
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/join-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/join-builder.d.ts
|
||
index 475acb1..06a0488 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/join-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/join-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { JoinNode } from '../operation-node/join-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { SqlBool } from '../util/type-utils.js';
|
||
+import { JoinNode } from 'kysely/dist/cjs/operation-node/join-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export declare class JoinBuilder<DB, TB extends keyof DB> implements OperationNodeSource {
|
||
#private;
|
||
constructor(props: JoinBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/json-path-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/json-path-builder.d.ts
|
||
index f173489..93dfff0 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/json-path-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/json-path-builder.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { AliasableExpression, AliasedExpression, Expression } from '../expression/expression.js';
|
||
-import { AliasNode } from '../operation-node/alias-node.js';
|
||
-import { JSONReferenceNode } from '../operation-node/json-reference-node.js';
|
||
-import { OperationNode } from '../operation-node/operation-node.js';
|
||
+import { AliasableExpression, AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { AliasNode } from 'kysely/dist/cjs/operation-node/alias-node.js';
|
||
+import { JSONReferenceNode } from 'kysely/dist/cjs/operation-node/json-reference-node.js';
|
||
+import { OperationNode } from 'kysely/dist/cjs/operation-node/operation-node.js';
|
||
export declare class JSONPathBuilder<S, O = S> {
|
||
#private;
|
||
constructor(node: JSONReferenceNode);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/no-result-error.d.ts b/node_modules/kysely/dist/cjs/query-builder/no-result-error.d.ts
|
||
index b6423c2..2ac85ee 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/no-result-error.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/no-result-error.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { QueryNode } from '../operation-node/query-node.js';
|
||
+import { QueryNode } from 'kysely/dist/cjs/operation-node/query-node.js';
|
||
export type NoResultErrorConstructor = new (node: QueryNode) => Error;
|
||
export declare class NoResultError extends Error {
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.d.ts
|
||
index 803563e..f1bfe85 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.d.ts
|
||
@@ -1,12 +1,12 @@
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { OnConflictNode } from '../operation-node/on-conflict-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { UpdateExpression } from '../parser/update-set-parser.js';
|
||
-import { AnyColumn, SqlBool } from '../util/type-utils.js';
|
||
-import { WhereInterface } from './where-interface.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { OnConflictNode } from 'kysely/dist/cjs/operation-node/on-conflict-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { UpdateObjectExpression } from 'kysely/dist/cjs/parser/update-set-parser.js';
|
||
+import { AnyColumn, SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { WhereInterface } from 'kysely/dist/cjs/query-builder/where-interface.js';
|
||
export declare class OnConflictBuilder<DB, TB extends keyof DB> implements WhereInterface<DB, TB> {
|
||
#private;
|
||
constructor(props: OnConflictBuilderProps);
|
||
@@ -435,7 +435,7 @@ export declare class OnConflictBuilder<DB, TB extends keyof DB> implements Where
|
||
* )
|
||
* ```
|
||
*/
|
||
- doUpdateSet(update: UpdateExpression<OnConflictDatabase<DB, TB>, OnConflictTables<TB>, OnConflictTables<TB>>): OnConflictUpdateBuilder<OnConflictDatabase<DB, TB>, OnConflictTables<TB>>;
|
||
+ doUpdateSet(update: UpdateObjectExpression<OnConflictDatabase<DB, TB>, OnConflictTables<TB>, OnConflictTables<TB>>): OnConflictUpdateBuilder<OnConflictDatabase<DB, TB>, OnConflictTables<TB>>;
|
||
/**
|
||
* Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
* what the provided function returns.
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.js b/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.js
|
||
index cfb3a0b..b3b7e7e 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.js
|
||
@@ -175,7 +175,7 @@ class OnConflictBuilder {
|
||
return new OnConflictUpdateBuilder({
|
||
...this.#props,
|
||
onConflictNode: on_conflict_node_js_1.OnConflictNode.cloneWith(this.#props.onConflictNode, {
|
||
- updates: (0, update_set_parser_js_1.parseUpdateExpression)(update),
|
||
+ updates: (0, update_set_parser_js_1.parseUpdateObjectExpression)(update),
|
||
}),
|
||
});
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/over-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/over-builder.d.ts
|
||
index 8517b91..1564fc1 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/over-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/over-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { DynamicReferenceBuilder } from '../dynamic/dynamic-reference-builder.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { OverNode } from '../operation-node/over-node.js';
|
||
-import { OrderByDirectionExpression } from '../parser/order-by-parser.js';
|
||
-import { PartitionByExpression } from '../parser/partition-by-parser.js';
|
||
-import { StringReference } from '../parser/reference-parser.js';
|
||
+import { DynamicReferenceBuilder } from 'kysely/dist/cjs/dynamic/dynamic-reference-builder.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { OverNode } from 'kysely/dist/cjs/operation-node/over-node.js';
|
||
+import { OrderByDirectionExpression } from 'kysely/dist/cjs/parser/order-by-parser.js';
|
||
+import { PartitionByExpression } from 'kysely/dist/cjs/parser/partition-by-parser.js';
|
||
+import { StringReference } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
export declare class OverBuilder<DB, TB extends keyof DB> implements OperationNodeSource {
|
||
#private;
|
||
constructor(props: OverBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/returning-interface.d.ts b/node_modules/kysely/dist/cjs/query-builder/returning-interface.d.ts
|
||
index 6c10c86..fb1bd5c 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/returning-interface.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/returning-interface.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { ReturningCallbackRow, ReturningRow } from '../parser/returning-parser.js';
|
||
-import { SelectCallback, SelectExpression } from '../parser/select-parser.js';
|
||
-import { Selectable } from '../util/column-type.js';
|
||
+import { ReturningCallbackRow, ReturningRow } from 'kysely/dist/cjs/parser/returning-parser.js';
|
||
+import { SelectCallback, SelectExpression } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
+import { Selectable } from 'kysely/dist/cjs/util/column-type.js';
|
||
export interface ReturningInterface<DB, TB extends keyof DB, O> {
|
||
/**
|
||
* Allows you to return data from modified rows.
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/select-query-builder-expression.d.ts b/node_modules/kysely/dist/cjs/query-builder/select-query-builder-expression.d.ts
|
||
index 3593f25..42c4c56 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/select-query-builder-expression.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/select-query-builder-expression.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { AliasableExpression } from '../expression/expression.js';
|
||
-import { SelectQueryNode } from '../operation-node/select-query-node.js';
|
||
+import { AliasableExpression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { SelectQueryNode } from 'kysely/dist/cjs/operation-node/select-query-node.js';
|
||
export interface SelectQueryBuilderExpression<O> extends AliasableExpression<O> {
|
||
get isSelectQueryBuilder(): true;
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/select-query-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/select-query-builder.d.ts
|
||
index b26ebf1..8221028 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/select-query-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/select-query-builder.d.ts
|
||
@@ -1,30 +1,30 @@
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { JoinCallbackExpression, JoinReferenceExpression } from '../parser/join-parser.js';
|
||
-import { TableExpression } from '../parser/table-parser.js';
|
||
-import { SelectExpression, Selection, AllSelection, SelectCallback, CallbackSelection } from '../parser/select-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { SelectQueryNode } from '../operation-node/select-query-node.js';
|
||
-import { QueryNode } from '../operation-node/query-node.js';
|
||
-import { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, Simplify, SimplifySingleResult, SqlBool } from '../util/type-utils.js';
|
||
-import { OrderByDirectionExpression, OrderByExpression, DirectedOrderByStringReference, UndirectedOrderByExpression } from '../parser/order-by-parser.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { GroupByArg } from '../parser/group-by-parser.js';
|
||
-import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
-import { WhereInterface } from './where-interface.js';
|
||
-import { NoResultErrorConstructor } from './no-result-error.js';
|
||
-import { HavingInterface } from './having-interface.js';
|
||
-import { Explainable, ExplainFormat } from '../util/explainable.js';
|
||
-import { SetOperandExpression } from '../parser/set-operation-parser.js';
|
||
-import { AliasedExpression, Expression } from '../expression/expression.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { KyselyTypeError } from '../util/type-error.js';
|
||
-import { Selectable } from '../util/column-type.js';
|
||
-import { Streamable } from '../util/streamable.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
-import { ExpressionWrapper } from '../expression/expression-wrapper.js';
|
||
-import { SelectQueryBuilderExpression } from './select-query-builder-expression.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { JoinCallbackExpression, JoinReferenceExpression } from 'kysely/dist/cjs/parser/join-parser.js';
|
||
+import { TableExpression } from 'kysely/dist/cjs/parser/table-parser.js';
|
||
+import { SelectExpression, Selection, AllSelection, SelectCallback, CallbackSelection } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { SelectQueryNode } from 'kysely/dist/cjs/operation-node/select-query-node.js';
|
||
+import { QueryNode } from 'kysely/dist/cjs/operation-node/query-node.js';
|
||
+import { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, Simplify, SimplifySingleResult, SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { OrderByDirectionExpression, OrderByExpression, DirectedOrderByStringReference, UndirectedOrderByExpression } from 'kysely/dist/cjs/parser/order-by-parser.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { GroupByArg } from 'kysely/dist/cjs/parser/group-by-parser.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { WhereInterface } from 'kysely/dist/cjs/query-builder/where-interface.js';
|
||
+import { NoResultErrorConstructor } from 'kysely/dist/cjs/query-builder/no-result-error.js';
|
||
+import { HavingInterface } from 'kysely/dist/cjs/query-builder/having-interface.js';
|
||
+import { Explainable, ExplainFormat } from 'kysely/dist/cjs/util/explainable.js';
|
||
+import { SetOperandExpression } from 'kysely/dist/cjs/parser/set-operation-parser.js';
|
||
+import { AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
+import { Selectable } from 'kysely/dist/cjs/util/column-type.js';
|
||
+import { Streamable } from 'kysely/dist/cjs/util/streamable.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { ExpressionWrapper } from 'kysely/dist/cjs/expression/expression-wrapper.js';
|
||
+import { SelectQueryBuilderExpression } from 'kysely/dist/cjs/query-builder/select-query-builder-expression.js';
|
||
export interface SelectQueryBuilder<DB, TB extends keyof DB, O> extends WhereInterface<DB, TB>, HavingInterface<DB, TB>, SelectQueryBuilderExpression<O>, Compilable<O>, Explainable, Streamable<O> {
|
||
/**
|
||
* Adds a `where` expression to the query.
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/update-query-builder.d.ts b/node_modules/kysely/dist/cjs/query-builder/update-query-builder.d.ts
|
||
index 3d30eed..f98f0b3 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/update-query-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/update-query-builder.d.ts
|
||
@@ -1,29 +1,30 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { JoinCallbackExpression, JoinReferenceExpression } from '../parser/join-parser.js';
|
||
-import { TableExpression, From, FromTables } from '../parser/table-parser.js';
|
||
-import { SelectExpression, SelectCallback } from '../parser/select-parser.js';
|
||
-import { ReturningCallbackRow, ReturningRow } from '../parser/returning-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { QueryNode } from '../operation-node/query-node.js';
|
||
-import { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, SimplifyResult, SimplifySingleResult, SqlBool } from '../util/type-utils.js';
|
||
-import { UpdateQueryNode } from '../operation-node/update-query-node.js';
|
||
-import { UpdateObject, UpdateObjectFactory } from '../parser/update-set-parser.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { UpdateResult } from './update-result.js';
|
||
-import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
-import { WhereInterface } from './where-interface.js';
|
||
-import { ReturningInterface } from './returning-interface.js';
|
||
-import { NoResultErrorConstructor } from './no-result-error.js';
|
||
-import { Selectable } from '../util/column-type.js';
|
||
-import { Explainable, ExplainFormat } from '../util/explainable.js';
|
||
-import { AliasedExpression, Expression } from '../expression/expression.js';
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { KyselyTypeError } from '../util/type-error.js';
|
||
-import { Streamable } from '../util/streamable.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { JoinCallbackExpression, JoinReferenceExpression } from 'kysely/dist/cjs/parser/join-parser.js';
|
||
+import { TableExpression, From, FromTables } from 'kysely/dist/cjs/parser/table-parser.js';
|
||
+import { SelectExpression, SelectCallback } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
+import { ReturningCallbackRow, ReturningRow } from 'kysely/dist/cjs/parser/returning-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { QueryNode } from 'kysely/dist/cjs/operation-node/query-node.js';
|
||
+import { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, SimplifyResult, SimplifySingleResult, SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { UpdateQueryNode } from 'kysely/dist/cjs/operation-node/update-query-node.js';
|
||
+import { UpdateObject, UpdateObjectFactory, ExtractUpdateTypeFromReferenceExpression } from 'kysely/dist/cjs/parser/update-set-parser.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { UpdateResult } from 'kysely/dist/cjs/query-builder/update-result.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { WhereInterface } from 'kysely/dist/cjs/query-builder/where-interface.js';
|
||
+import { ReturningInterface } from 'kysely/dist/cjs/query-builder/returning-interface.js';
|
||
+import { NoResultErrorConstructor } from 'kysely/dist/cjs/query-builder/no-result-error.js';
|
||
+import { Selectable } from 'kysely/dist/cjs/util/column-type.js';
|
||
+import { Explainable, ExplainFormat } from 'kysely/dist/cjs/util/explainable.js';
|
||
+import { AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
+import { Streamable } from 'kysely/dist/cjs/util/streamable.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { ValueExpression } from 'kysely/dist/cjs/parser/value-parser.js';
|
||
export declare class UpdateQueryBuilder<DB, UT extends keyof DB, TB extends keyof DB, O> implements WhereInterface<DB, TB>, ReturningInterface<DB, TB, O>, OperationNodeSource, Compilable<O>, Explainable, Streamable<O> {
|
||
#private;
|
||
constructor(props: UpdateQueryBuilderProps);
|
||
@@ -625,6 +626,20 @@ export declare class UpdateQueryBuilder<DB, UT extends keyof DB, TB extends keyo
|
||
* "id" = $4
|
||
* ```
|
||
*
|
||
+ * If you provide two arguments the first one is interpreted as the column
|
||
+ * (or other target) and the second as the value:
|
||
+ *
|
||
+ * ```ts
|
||
+ * const result = await db
|
||
+ * .updateTable('person')
|
||
+ * .set('first_name', 'Foo')
|
||
+ * // As always, both arguments can be arbitrary expressions or
|
||
+ * // callbacks that give you access to an expression builder:
|
||
+ * .set(sql`address['postalCode']`, (eb) => eb.val('61710))
|
||
+ * .where('id', '=', '1')
|
||
+ * .executeTakeFirst()
|
||
+ * ```
|
||
+ *
|
||
* On PostgreSQL you can chain `returning` to the query to get
|
||
* the updated rows' columns (or any other expression) as the
|
||
* return value:
|
||
@@ -682,6 +697,7 @@ export declare class UpdateQueryBuilder<DB, UT extends keyof DB, TB extends keyo
|
||
*/
|
||
set(update: UpdateObject<DB, TB, UT>): UpdateQueryBuilder<DB, UT, TB, O>;
|
||
set(update: UpdateObjectFactory<DB, TB, UT>): UpdateQueryBuilder<DB, UT, TB, O>;
|
||
+ set<RE extends ReferenceExpression<DB, UT>>(key: RE, value: ValueExpression<DB, TB, ExtractUpdateTypeFromReferenceExpression<DB, UT, RE>>): UpdateQueryBuilder<DB, UT, TB, O>;
|
||
/**
|
||
* Allows you to return data from modified rows.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/update-query-builder.js b/node_modules/kysely/dist/cjs/query-builder/update-query-builder.js
|
||
index 1207bfd..6d24d8f 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/update-query-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/update-query-builder.js
|
||
@@ -65,10 +65,10 @@ class UpdateQueryBuilder {
|
||
queryNode: query_node_js_1.QueryNode.cloneWithJoin(this.#props.queryNode, (0, join_parser_js_1.parseJoin)('FullJoin', args)),
|
||
});
|
||
}
|
||
- set(update) {
|
||
+ set(...args) {
|
||
return new UpdateQueryBuilder({
|
||
...this.#props,
|
||
- queryNode: update_query_node_js_1.UpdateQueryNode.cloneWithUpdates(this.#props.queryNode, (0, update_set_parser_js_1.parseUpdateExpression)(update)),
|
||
+ queryNode: update_query_node_js_1.UpdateQueryNode.cloneWithUpdates(this.#props.queryNode, (0, update_set_parser_js_1.parseUpdate)(...args)),
|
||
});
|
||
}
|
||
returning(selection) {
|
||
diff --git a/node_modules/kysely/dist/cjs/query-builder/where-interface.d.ts b/node_modules/kysely/dist/cjs/query-builder/where-interface.d.ts
|
||
index 9de8d7e..2225ee1 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-builder/where-interface.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-builder/where-interface.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
-import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { SqlBool } from '../util/type-utils.js';
|
||
-import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
export interface WhereInterface<DB, TB extends keyof DB> {
|
||
/**
|
||
* Adds a `where` expression to the query.
|
||
diff --git a/node_modules/kysely/dist/cjs/query-compiler/compiled-query.d.ts b/node_modules/kysely/dist/cjs/query-compiler/compiled-query.d.ts
|
||
index 9635b1f..5c4caec 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-compiler/compiled-query.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-compiler/compiled-query.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { RootOperationNode } from './query-compiler.js';
|
||
+import { RootOperationNode } from 'kysely/dist/cjs/query-compiler/query-compiler.js';
|
||
export interface CompiledQuery<O = unknown> {
|
||
readonly query: RootOperationNode;
|
||
readonly sql: string;
|
||
diff --git a/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.d.ts b/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.d.ts
|
||
index dbd954a..2f73125 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.d.ts
|
||
@@ -48,7 +48,7 @@ import { RootOperationNode, QueryCompiler } from './query-compiler.js';
|
||
import { HavingNode } from '../operation-node/having-node.js';
|
||
import { CreateSchemaNode } from '../operation-node/create-schema-node.js';
|
||
import { DropSchemaNode } from '../operation-node/drop-schema-node.js';
|
||
-import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
+import { AlterTableColumnAlterationNode, AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
import { DropColumnNode } from '../operation-node/drop-column-node.js';
|
||
import { RenameColumnNode } from '../operation-node/rename-column-node.js';
|
||
import { AlterColumnNode } from '../operation-node/alter-column-node.js';
|
||
@@ -88,6 +88,11 @@ import { JSONPathNode } from '../operation-node/json-path-node.js';
|
||
import { JSONPathLegNode } from '../operation-node/json-path-leg-node.js';
|
||
import { JSONOperatorChainNode } from '../operation-node/json-operator-chain-node.js';
|
||
import { TupleNode } from '../operation-node/tuple-node.js';
|
||
+import { AddIndexNode } from '../operation-node/add-index-node.js';
|
||
+import { CreateTriggerNode } from '../operation-node/create-trigger-node.js';
|
||
+import { DropTriggerNode } from '../operation-node/drop-trigger-node.js';
|
||
+import { TriggerEventNode } from '../operation-node/trigger-event-node.js';
|
||
+import { TriggerOrderNode } from '../operation-node/trigger-order-node.js';
|
||
export declare class DefaultQueryCompiler extends OperationNodeVisitor implements QueryCompiler {
|
||
#private;
|
||
protected get numParameters(): number;
|
||
@@ -124,6 +129,10 @@ export declare class DefaultQueryCompiler extends OperationNodeVisitor implement
|
||
protected visitTable(node: TableNode): void;
|
||
protected visitSchemableIdentifier(node: SchemableIdentifierNode): void;
|
||
protected visitCreateTable(node: CreateTableNode): void;
|
||
+ protected visitCreateTrigger(node: CreateTriggerNode): void;
|
||
+ protected visitTriggerEvent(node: TriggerEventNode): void;
|
||
+ protected visitTriggerOrder(node: TriggerOrderNode): void;
|
||
+ protected visitDropTrigger(node: DropTriggerNode): void;
|
||
protected visitColumnDefinition(node: ColumnDefinitionNode): void;
|
||
protected getAutoIncrement(): string;
|
||
protected visitReferences(node: ReferencesNode): void;
|
||
@@ -184,6 +193,7 @@ export declare class DefaultQueryCompiler extends OperationNodeVisitor implement
|
||
protected visitJSONPath(node: JSONPathNode): void;
|
||
protected visitJSONPathLeg(node: JSONPathLegNode): void;
|
||
protected visitJSONOperatorChain(node: JSONOperatorChainNode): void;
|
||
+ protected visitAddIndex(node: AddIndexNode): void;
|
||
protected append(str: string): void;
|
||
protected appendValue(parameter: unknown): void;
|
||
protected getLeftIdentifierWrapper(): string;
|
||
@@ -197,4 +207,10 @@ export declare class DefaultQueryCompiler extends OperationNodeVisitor implement
|
||
protected addParameter(parameter: unknown): void;
|
||
protected appendImmediateValue(value: unknown): void;
|
||
protected sortSelectModifiers(arr: SelectModifierNode[]): ReadonlyArray<SelectModifierNode>;
|
||
+ protected compileColumnAlterations(columnAlterations: readonly AlterTableColumnAlterationNode[]): void;
|
||
+ /**
|
||
+ * controls whether the dialect adds a "type" keyword before a column's new data
|
||
+ * type in an ALTER TABLE statement.
|
||
+ */
|
||
+ protected announcesNewColumnDataType(): boolean;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.js b/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.js
|
||
index faf80c6..e1c4561 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.js
|
||
+++ b/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.js
|
||
@@ -1,6 +1,7 @@
|
||
"use strict";
|
||
Object.defineProperty(exports, "__esModule", { value: true });
|
||
exports.DefaultQueryCompiler = void 0;
|
||
+const create_table_node_js_1 = require("../operation-node/create-table-node.js");
|
||
const insert_query_node_js_1 = require("../operation-node/insert-query-node.js");
|
||
const operation_node_visitor_js_1 = require("../operation-node/operation-node-visitor.js");
|
||
const operator_node_js_1 = require("../operation-node/operator-node.js");
|
||
@@ -32,6 +33,7 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
const wrapInParens = this.parentNode !== undefined &&
|
||
!parens_node_js_1.ParensNode.is(this.parentNode) &&
|
||
!insert_query_node_js_1.InsertQueryNode.is(this.parentNode) &&
|
||
+ !create_table_node_js_1.CreateTableNode.is(this.parentNode) &&
|
||
!create_view_node_js_1.CreateViewNode.is(this.parentNode) &&
|
||
!set_operation_node_js_1.SetOperationNode.is(this.parentNode);
|
||
if (this.parentNode === undefined && node.explain) {
|
||
@@ -348,17 +350,83 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
this.append('if not exists ');
|
||
}
|
||
this.visitNode(node.table);
|
||
- this.append(' (');
|
||
- this.compileList([...node.columns, ...(node.constraints ?? [])]);
|
||
- this.append(')');
|
||
- if (node.onCommit) {
|
||
- this.append(' on commit ');
|
||
- this.append(node.onCommit);
|
||
+ if (node.selectQuery) {
|
||
+ this.append(' as ');
|
||
+ this.visitNode(node.selectQuery);
|
||
}
|
||
- if (node.endModifiers && node.endModifiers.length > 0) {
|
||
- this.append(' ');
|
||
- this.compileList(node.endModifiers, ' ');
|
||
+ else {
|
||
+ this.append(' (');
|
||
+ this.compileList([...node.columns, ...(node.constraints ?? [])]);
|
||
+ this.append(')');
|
||
+ if (node.onCommit) {
|
||
+ this.append(' on commit ');
|
||
+ this.append(node.onCommit);
|
||
+ }
|
||
+ if (node.endModifiers && node.endModifiers.length > 0) {
|
||
+ this.append(' ');
|
||
+ this.compileList(node.endModifiers, ' ');
|
||
+ }
|
||
+ }
|
||
+ }
|
||
+ visitCreateTrigger(node) {
|
||
+ if (!node.time)
|
||
+ throw new Error('Trigger time is required.');
|
||
+ if (!node.events)
|
||
+ throw new Error('Trigger event is required.');
|
||
+ if (!node.table)
|
||
+ throw new Error('Trigger table is required.');
|
||
+ this.append('create ');
|
||
+ if (node.temporary) {
|
||
+ this.append('temporary ');
|
||
}
|
||
+ if (node.orReplace) {
|
||
+ this.append('or replace ');
|
||
+ }
|
||
+ this.append('trigger ');
|
||
+ if (node.ifNotExists) {
|
||
+ this.append('if not exists ');
|
||
+ }
|
||
+ this.visitNode(node.name);
|
||
+ this.append(` ${node.time} `);
|
||
+ this.compileList(node.events, ' or ');
|
||
+ this.append(' on ');
|
||
+ this.visitNode(node.table);
|
||
+ if (node.forEach)
|
||
+ this.append(` for each ${node.forEach} `);
|
||
+ if (node.when) {
|
||
+ this.append(' when ');
|
||
+ this.visitNode(node.when);
|
||
+ }
|
||
+ if (node.order)
|
||
+ this.visitNode(node.order);
|
||
+ if (node.queries) {
|
||
+ this.append(' begin ');
|
||
+ this.compileList(node.queries, '; ');
|
||
+ this.append('; ');
|
||
+ this.append('end');
|
||
+ }
|
||
+ else if (node.function) {
|
||
+ this.append(' execute function ');
|
||
+ this.visitNode(node.function);
|
||
+ }
|
||
+ }
|
||
+ visitTriggerEvent(node) {
|
||
+ this.append(`${node.event} `);
|
||
+ if (node.event === 'update' && node.columns) {
|
||
+ this.append('of ');
|
||
+ this.compileList(node.columns, ', ');
|
||
+ }
|
||
+ }
|
||
+ visitTriggerOrder(node) {
|
||
+ this.append(`${node.order} `);
|
||
+ this.visitNode(node.otherTriggerName);
|
||
+ }
|
||
+ visitDropTrigger(node) {
|
||
+ this.append('drop trigger ');
|
||
+ if (node.ifExists) {
|
||
+ this.append('if exists ');
|
||
+ }
|
||
+ this.visitNode(node.name);
|
||
}
|
||
visitColumnDefinition(node) {
|
||
this.visitNode(node.column);
|
||
@@ -385,6 +453,9 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
if (node.unique) {
|
||
this.append(' unique');
|
||
}
|
||
+ if (node.nullsNotDistinct) {
|
||
+ this.append(' nulls not distinct');
|
||
+ }
|
||
if (node.primaryKey) {
|
||
this.append(' primary key');
|
||
}
|
||
@@ -565,6 +636,9 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
this.compileList(node.columns);
|
||
this.append(')');
|
||
}
|
||
+ if (node.nullsNotDistinct) {
|
||
+ this.append(' nulls not distinct');
|
||
+ }
|
||
if (node.where) {
|
||
this.append(' ');
|
||
this.visitNode(node.where);
|
||
@@ -617,7 +691,11 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
this.visitNode(node.name);
|
||
this.append(' ');
|
||
}
|
||
- this.append('unique (');
|
||
+ this.append('unique');
|
||
+ if (node.nullsNotDistinct) {
|
||
+ this.append(' nulls not distinct');
|
||
+ }
|
||
+ this.append(' (');
|
||
this.compileList(node.columns);
|
||
this.append(')');
|
||
}
|
||
@@ -698,7 +776,13 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
this.visitNode(node.dropConstraint);
|
||
}
|
||
if (node.columnAlterations) {
|
||
- this.compileList(node.columnAlterations);
|
||
+ this.compileColumnAlterations(node.columnAlterations);
|
||
+ }
|
||
+ if (node.addIndex) {
|
||
+ this.visitNode(node.addIndex);
|
||
+ }
|
||
+ if (node.dropIndex) {
|
||
+ this.visitNode(node.dropIndex);
|
||
}
|
||
}
|
||
visitAddColumn(node) {
|
||
@@ -720,7 +804,9 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
this.visitNode(node.column);
|
||
this.append(' ');
|
||
if (node.dataType) {
|
||
- this.append('type ');
|
||
+ if (this.announcesNewColumnDataType()) {
|
||
+ this.append('type ');
|
||
+ }
|
||
this.visitNode(node.dataType);
|
||
if (node.dataTypeExpression) {
|
||
this.append('using ');
|
||
@@ -1006,6 +1092,23 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
this.visitNode(node.values[i]);
|
||
}
|
||
}
|
||
+ visitAddIndex(node) {
|
||
+ this.append('add ');
|
||
+ if (node.unique) {
|
||
+ this.append('unique ');
|
||
+ }
|
||
+ this.append('index ');
|
||
+ this.visitNode(node.name);
|
||
+ if (node.columns) {
|
||
+ this.append(' (');
|
||
+ this.compileList(node.columns);
|
||
+ this.append(')');
|
||
+ }
|
||
+ if (node.using) {
|
||
+ this.append(' using ');
|
||
+ this.visitNode(node.using);
|
||
+ }
|
||
+ }
|
||
append(str) {
|
||
this.#sql += str;
|
||
}
|
||
@@ -1079,6 +1182,16 @@ class DefaultQueryCompiler extends operation_node_visitor_js_1.OperationNodeVisi
|
||
: 1);
|
||
return (0, object_utils_js_1.freeze)(arr);
|
||
}
|
||
+ compileColumnAlterations(columnAlterations) {
|
||
+ this.compileList(columnAlterations);
|
||
+ }
|
||
+ /**
|
||
+ * controls whether the dialect adds a "type" keyword before a column's new data
|
||
+ * type in an ALTER TABLE statement.
|
||
+ */
|
||
+ announcesNewColumnDataType() {
|
||
+ return true;
|
||
+ }
|
||
}
|
||
exports.DefaultQueryCompiler = DefaultQueryCompiler;
|
||
const SELECT_MODIFIER_SQL = (0, object_utils_js_1.freeze)({
|
||
diff --git a/node_modules/kysely/dist/cjs/query-compiler/query-compiler.d.ts b/node_modules/kysely/dist/cjs/query-compiler/query-compiler.d.ts
|
||
index e3a8555..96702eb 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-compiler/query-compiler.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-compiler/query-compiler.d.ts
|
||
@@ -1,18 +1,20 @@
|
||
-import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
-import { CreateIndexNode } from '../operation-node/create-index-node.js';
|
||
-import { CreateSchemaNode } from '../operation-node/create-schema-node.js';
|
||
-import { CreateTableNode } from '../operation-node/create-table-node.js';
|
||
-import { CreateTypeNode } from '../operation-node/create-type-node.js';
|
||
-import { CreateViewNode } from '../operation-node/create-view-node.js';
|
||
-import { DropIndexNode } from '../operation-node/drop-index-node.js';
|
||
-import { DropSchemaNode } from '../operation-node/drop-schema-node.js';
|
||
-import { DropTableNode } from '../operation-node/drop-table-node.js';
|
||
-import { DropTypeNode } from '../operation-node/drop-type-node.js';
|
||
-import { DropViewNode } from '../operation-node/drop-view-node.js';
|
||
-import { QueryNode } from '../operation-node/query-node.js';
|
||
-import { RawNode } from '../operation-node/raw-node.js';
|
||
-import { CompiledQuery } from './compiled-query.js';
|
||
-export type RootOperationNode = QueryNode | CreateTableNode | CreateIndexNode | CreateSchemaNode | CreateViewNode | DropTableNode | DropIndexNode | DropSchemaNode | DropViewNode | AlterTableNode | RawNode | CreateTypeNode | DropTypeNode;
|
||
+import { AlterTableNode } from 'kysely/dist/cjs/operation-node/alter-table-node.js';
|
||
+import { CreateIndexNode } from 'kysely/dist/cjs/operation-node/create-index-node.js';
|
||
+import { CreateSchemaNode } from 'kysely/dist/cjs/operation-node/create-schema-node.js';
|
||
+import { CreateTableNode } from 'kysely/dist/cjs/operation-node/create-table-node.js';
|
||
+import { CreateTriggerNode } from 'kysely/dist/cjs/operation-node/create-trigger-node.js';
|
||
+import { CreateTypeNode } from 'kysely/dist/cjs/operation-node/create-type-node.js';
|
||
+import { CreateViewNode } from 'kysely/dist/cjs/operation-node/create-view-node.js';
|
||
+import { DropIndexNode } from 'kysely/dist/cjs/operation-node/drop-index-node.js';
|
||
+import { DropSchemaNode } from 'kysely/dist/cjs/operation-node/drop-schema-node.js';
|
||
+import { DropTableNode } from 'kysely/dist/cjs/operation-node/drop-table-node.js';
|
||
+import { DropTriggerNode } from 'kysely/dist/cjs/operation-node/drop-trigger-node.js';
|
||
+import { DropTypeNode } from 'kysely/dist/cjs/operation-node/drop-type-node.js';
|
||
+import { DropViewNode } from 'kysely/dist/cjs/operation-node/drop-view-node.js';
|
||
+import { QueryNode } from 'kysely/dist/cjs/operation-node/query-node.js';
|
||
+import { RawNode } from 'kysely/dist/cjs/operation-node/raw-node.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+export type RootOperationNode = QueryNode | CreateTableNode | CreateIndexNode | CreateSchemaNode | CreateViewNode | DropTableNode | DropIndexNode | DropSchemaNode | DropViewNode | AlterTableNode | RawNode | CreateTypeNode | DropTypeNode | CreateTriggerNode | DropTriggerNode;
|
||
/**
|
||
* a `QueryCompiler` compiles a query expressed as a tree of `OperationNodes` into SQL.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/cjs/query-creator.d.ts b/node_modules/kysely/dist/cjs/query-creator.d.ts
|
||
index 8399ab7..b8262e4 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-creator.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-creator.d.ts
|
||
@@ -1,17 +1,17 @@
|
||
-import { SelectQueryBuilder } from './query-builder/select-query-builder.js';
|
||
-import { InsertQueryBuilder } from './query-builder/insert-query-builder.js';
|
||
-import { DeleteQueryBuilder } from './query-builder/delete-query-builder.js';
|
||
-import { UpdateQueryBuilder } from './query-builder/update-query-builder.js';
|
||
-import { TableExpression, From, FromTables, TableReference, ExtractTableAlias, AnyAliasedTable, PickTableWithAlias } from './parser/table-parser.js';
|
||
-import { QueryExecutor } from './query-executor/query-executor.js';
|
||
-import { CommonTableExpression, QueryCreatorWithCommonTableExpression, RecursiveCommonTableExpression } from './parser/with-parser.js';
|
||
-import { WithNode } from './operation-node/with-node.js';
|
||
-import { InsertResult } from './query-builder/insert-result.js';
|
||
-import { DeleteResult } from './query-builder/delete-result.js';
|
||
-import { UpdateResult } from './query-builder/update-result.js';
|
||
-import { KyselyPlugin } from './plugin/kysely-plugin.js';
|
||
-import { CTEBuilderCallback } from './query-builder/cte-builder.js';
|
||
-import { CallbackSelection, SelectCallback, SelectExpression, Selection } from './parser/select-parser.js';
|
||
+import { SelectQueryBuilder } from 'kysely/dist/cjs/query-builder/select-query-builder.js';
|
||
+import { InsertQueryBuilder } from 'kysely/dist/cjs/query-builder/insert-query-builder.js';
|
||
+import { DeleteQueryBuilder } from 'kysely/dist/cjs/query-builder/delete-query-builder.js';
|
||
+import { UpdateQueryBuilder } from 'kysely/dist/cjs/query-builder/update-query-builder.js';
|
||
+import { TableExpression, From, FromTables, TableReference, ExtractTableAlias, AnyAliasedTable, PickTableWithAlias } from 'kysely/dist/cjs/parser/table-parser.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { CommonTableExpression, QueryCreatorWithCommonTableExpression, RecursiveCommonTableExpression } from 'kysely/dist/cjs/parser/with-parser.js';
|
||
+import { WithNode } from 'kysely/dist/cjs/operation-node/with-node.js';
|
||
+import { InsertResult } from 'kysely/dist/cjs/query-builder/insert-result.js';
|
||
+import { DeleteResult } from 'kysely/dist/cjs/query-builder/delete-result.js';
|
||
+import { UpdateResult } from 'kysely/dist/cjs/query-builder/update-result.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { CTEBuilderCallback } from 'kysely/dist/cjs/query-builder/cte-builder.js';
|
||
+import { CallbackSelection, SelectCallback, SelectExpression, Selection } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
export declare class QueryCreator<DB> {
|
||
#private;
|
||
constructor(props: QueryCreatorProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/query-executor/query-executor-provider.d.ts b/node_modules/kysely/dist/cjs/query-executor/query-executor-provider.d.ts
|
||
index 9b5ec45..767ca78 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-executor/query-executor-provider.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-executor/query-executor-provider.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { QueryExecutor } from './query-executor.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
/**
|
||
* @internal
|
||
* @private
|
||
diff --git a/node_modules/kysely/dist/cjs/query-executor/query-executor.d.ts b/node_modules/kysely/dist/cjs/query-executor/query-executor.d.ts
|
||
index 6c57fca..c17e603 100644
|
||
--- a/node_modules/kysely/dist/cjs/query-executor/query-executor.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/query-executor/query-executor.d.ts
|
||
@@ -1,10 +1,10 @@
|
||
-import { ConnectionProvider } from '../driver/connection-provider.js';
|
||
-import { QueryResult } from '../driver/database-connection.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { RootOperationNode } from '../query-compiler/query-compiler.js';
|
||
-import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { DialectAdapter } from '../dialect/dialect-adapter.js';
|
||
+import { ConnectionProvider } from 'kysely/dist/cjs/driver/connection-provider.js';
|
||
+import { QueryResult } from 'kysely/dist/cjs/driver/database-connection.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { RootOperationNode } from 'kysely/dist/cjs/query-compiler/query-compiler.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { DialectAdapter } from 'kysely/dist/cjs/dialect/dialect-adapter.js';
|
||
/**
|
||
* This interface abstracts away the details of how to compile a query into SQL
|
||
* and execute it. Instead of passing around all those details, {@link SelectQueryBuilder}
|
||
diff --git a/node_modules/kysely/dist/cjs/raw-builder/raw-builder.d.ts b/node_modules/kysely/dist/cjs/raw-builder/raw-builder.d.ts
|
||
index 9016b18..c9e130b 100644
|
||
--- a/node_modules/kysely/dist/cjs/raw-builder/raw-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/raw-builder/raw-builder.d.ts
|
||
@@ -1,10 +1,10 @@
|
||
-import { QueryResult } from '../driver/database-connection.js';
|
||
-import { RawNode } from '../operation-node/raw-node.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
-import { QueryExecutorProvider } from '../query-executor/query-executor-provider.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { AliasableExpression, AliasedExpression, Expression } from '../expression/expression.js';
|
||
+import { QueryResult } from 'kysely/dist/cjs/driver/database-connection.js';
|
||
+import { RawNode } from 'kysely/dist/cjs/operation-node/raw-node.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { QueryExecutorProvider } from 'kysely/dist/cjs/query-executor/query-executor-provider.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { AliasableExpression, AliasedExpression, Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
/**
|
||
* An instance of this class can be used to create raw SQL snippets or queries.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-column-builder.d.ts b/node_modules/kysely/dist/cjs/schema/alter-column-builder.d.ts
|
||
index 01a5163..f53cd32 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/alter-column-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-column-builder.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { AlterColumnNode } from '../operation-node/alter-column-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { DataTypeExpression } from '../parser/data-type-parser.js';
|
||
-import { DefaultValueExpression } from '../parser/default-value-parser.js';
|
||
+import { AlterColumnNode } from 'kysely/dist/cjs/operation-node/alter-column-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { DataTypeExpression } from 'kysely/dist/cjs/parser/data-type-parser.js';
|
||
+import { DefaultValueExpression } from 'kysely/dist/cjs/parser/default-value-parser.js';
|
||
export declare class AlterColumnBuilder {
|
||
#private;
|
||
constructor(column: string);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.d.ts b/node_modules/kysely/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.d.ts
|
||
index 62afe0f..12e0dcf 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { OnModifyForeignAction } from '../operation-node/references-node.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { ForeignKeyConstraintBuilder, ForeignKeyConstraintBuilderInterface } from './foreign-key-constraint-builder.js';
|
||
+import { AlterTableNode } from 'kysely/dist/cjs/operation-node/alter-table-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { OnModifyForeignAction } from 'kysely/dist/cjs/operation-node/references-node.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { ForeignKeyConstraintBuilder, ForeignKeyConstraintBuilderInterface } from 'kysely/dist/cjs/schema/foreign-key-constraint-builder.js';
|
||
export declare class AlterTableAddForeignKeyConstraintBuilder implements ForeignKeyConstraintBuilderInterface<AlterTableAddForeignKeyConstraintBuilder>, OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: AlterTableAddForeignKeyConstraintBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.d.ts b/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..7b94e46
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.d.ts
|
||
@@ -0,0 +1,104 @@
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { AlterTableNode } from 'kysely/dist/cjs/operation-node/alter-table-node.js';
|
||
+import { IndexType } from 'kysely/dist/cjs/operation-node/create-index-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { OrderedColumnName } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+export declare class AlterTableAddIndexBuilder implements OperationNodeSource, Compilable {
|
||
+ #private;
|
||
+ constructor(props: AlterTableAddIndexBuilderProps);
|
||
+ /**
|
||
+ * Makes the index unique.
|
||
+ */
|
||
+ unique(): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Adds a column to the index.
|
||
+ *
|
||
+ * Also see {@link columns} for adding multiple columns at once or {@link expression}
|
||
+ * for specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .createIndex('person_first_name_and_age_index')
|
||
+ * .column('first_name')
|
||
+ * .column('age desc')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ column<CL extends string>(column: OrderedColumnName<CL>): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Specifies a list of columns for the index.
|
||
+ *
|
||
+ * Also see {@link column} for adding a single column or {@link expression} for
|
||
+ * specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_and_age_index')
|
||
+ * .columns(['first_name', 'age desc'])
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ columns<CL extends string>(columns: OrderedColumnName<CL>[]): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Specifies an arbitrary expression for the index.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * import { sql } from 'kysely'
|
||
+ *
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_index')
|
||
+ * .expression(sql`(first_name < 'Sami')`)
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_index` ((first_name < 'Sami'))
|
||
+ * ```
|
||
+ */
|
||
+ expression(expression: Expression<any>): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Specifies the index type.
|
||
+ */
|
||
+ using(indexType: IndexType): AlterTableAddIndexBuilder;
|
||
+ using(indexType: string): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call<T>(func: (qb: this) => T): T;
|
||
+ toOperationNode(): AlterTableNode;
|
||
+ compile(): CompiledQuery;
|
||
+ execute(): Promise<void>;
|
||
+}
|
||
+export interface AlterTableAddIndexBuilderProps {
|
||
+ readonly queryId: QueryId;
|
||
+ readonly executor: QueryExecutor;
|
||
+ readonly node: AlterTableNode;
|
||
+}
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.js b/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.js
|
||
new file mode 100644
|
||
index 0000000..005284b
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.js
|
||
@@ -0,0 +1,146 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.AlterTableAddIndexBuilder = void 0;
|
||
+const add_index_node_js_1 = require("../operation-node/add-index-node.js");
|
||
+const alter_table_node_js_1 = require("../operation-node/alter-table-node.js");
|
||
+const raw_node_js_1 = require("../operation-node/raw-node.js");
|
||
+const reference_parser_js_1 = require("../parser/reference-parser.js");
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+const prevent_await_js_1 = require("../util/prevent-await.js");
|
||
+class AlterTableAddIndexBuilder {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = (0, object_utils_js_1.freeze)(props);
|
||
+ }
|
||
+ /**
|
||
+ * Makes the index unique.
|
||
+ */
|
||
+ unique() {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: add_index_node_js_1.AddIndexNode.cloneWith(this.#props.node.addIndex, {
|
||
+ unique: true,
|
||
+ }),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds a column to the index.
|
||
+ *
|
||
+ * Also see {@link columns} for adding multiple columns at once or {@link expression}
|
||
+ * for specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .createIndex('person_first_name_and_age_index')
|
||
+ * .column('first_name')
|
||
+ * .column('age desc')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ column(column) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: add_index_node_js_1.AddIndexNode.cloneWithColumns(this.#props.node.addIndex, [(0, reference_parser_js_1.parseOrderedColumnName)(column)]),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Specifies a list of columns for the index.
|
||
+ *
|
||
+ * Also see {@link column} for adding a single column or {@link expression} for
|
||
+ * specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_and_age_index')
|
||
+ * .columns(['first_name', 'age desc'])
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ columns(columns) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: add_index_node_js_1.AddIndexNode.cloneWithColumns(this.#props.node.addIndex, columns.map(reference_parser_js_1.parseOrderedColumnName)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Specifies an arbitrary expression for the index.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * import { sql } from 'kysely'
|
||
+ *
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_index')
|
||
+ * .expression(sql`(first_name < 'Sami')`)
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_index` ((first_name < 'Sami'))
|
||
+ * ```
|
||
+ */
|
||
+ expression(expression) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: add_index_node_js_1.AddIndexNode.cloneWithColumns(this.#props.node.addIndex, [expression.toOperationNode()]),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ using(indexType) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: add_index_node_js_1.AddIndexNode.cloneWith(this.#props.node.addIndex, {
|
||
+ using: raw_node_js_1.RawNode.createWithSql(indexType),
|
||
+ }),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call(func) {
|
||
+ return func(this);
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#props.executor.transformQuery(this.#props.node, this.#props.queryId);
|
||
+ }
|
||
+ compile() {
|
||
+ return this.#props.executor.compileQuery(this.toOperationNode(), this.#props.queryId);
|
||
+ }
|
||
+ async execute() {
|
||
+ await this.#props.executor.executeQuery(this.compile(), this.#props.queryId);
|
||
+ }
|
||
+}
|
||
+exports.AlterTableAddIndexBuilder = AlterTableAddIndexBuilder;
|
||
+(0, prevent_await_js_1.preventAwait)(AlterTableAddIndexBuilder, "don't await AlterTableAddIndexBuilder instances directly. To execute the query you need to call `execute`");
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-table-builder.d.ts b/node_modules/kysely/dist/cjs/schema/alter-table-builder.d.ts
|
||
index b0726ca..07e7284 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/alter-table-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-table-builder.d.ts
|
||
@@ -1,16 +1,18 @@
|
||
-import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { ColumnDefinitionBuilderCallback } from './column-definition-builder.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { DataTypeExpression } from '../parser/data-type-parser.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { AlterColumnBuilderCallback } from './alter-column-builder.js';
|
||
-import { AlterTableExecutor } from './alter-table-executor.js';
|
||
-import { AlterTableAddForeignKeyConstraintBuilder } from './alter-table-add-foreign-key-constraint-builder.js';
|
||
-import { AlterTableDropConstraintBuilder } from './alter-table-drop-constraint-builder.js';
|
||
+import { AlterTableNode } from 'kysely/dist/cjs/operation-node/alter-table-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { ColumnDefinitionBuilderCallback } from 'kysely/dist/cjs/schema/column-definition-builder.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { DataTypeExpression } from 'kysely/dist/cjs/parser/data-type-parser.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { AlterColumnBuilderCallback } from 'kysely/dist/cjs/schema/alter-column-builder.js';
|
||
+import { AlterTableExecutor } from 'kysely/dist/cjs/schema/alter-table-executor.js';
|
||
+import { AlterTableAddForeignKeyConstraintBuilder } from 'kysely/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.js';
|
||
+import { AlterTableDropConstraintBuilder } from 'kysely/dist/cjs/schema/alter-table-drop-constraint-builder.js';
|
||
+import { AlterTableAddIndexBuilder } from 'kysely/dist/cjs/schema/alter-table-add-index-builder.js';
|
||
+import { UniqueConstraintNodeBuilderCallback } from 'kysely/dist/cjs/schema/unique-constraint-builder.js';
|
||
/**
|
||
* This builder can be used to create a `alter table` query.
|
||
*/
|
||
@@ -35,7 +37,7 @@ export declare class AlterTableBuilder implements ColumnAlteringInterface {
|
||
/**
|
||
* See {@link CreateTableBuilder.addUniqueConstraint}
|
||
*/
|
||
- addUniqueConstraint(constraintName: string, columns: string[]): AlterTableExecutor;
|
||
+ addUniqueConstraint(constraintName: string, columns: string[], build?: UniqueConstraintNodeBuilderCallback): AlterTableExecutor;
|
||
/**
|
||
* See {@link CreateTableBuilder.addCheckConstraint}
|
||
*/
|
||
@@ -53,6 +55,44 @@ export declare class AlterTableBuilder implements ColumnAlteringInterface {
|
||
*/
|
||
addPrimaryKeyConstraint(constraintName: string, columns: string[]): AlterTableExecutor;
|
||
dropConstraint(constraintName: string): AlterTableDropConstraintBuilder;
|
||
+ /**
|
||
+ * This can be used to add index to table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .addIndex('person_email_index')
|
||
+ * .column('email')
|
||
+ * .unique()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add unique index `person_email_index` (`email`)
|
||
+ * ```
|
||
+ */
|
||
+ addIndex(indexName: string): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * This can be used to drop index from table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .dropIndex('person_email_index')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` drop index `test_first_name_index`
|
||
+ * ```
|
||
+ */
|
||
+ dropIndex(indexName: string): AlterTableExecutor;
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-table-builder.js b/node_modules/kysely/dist/cjs/schema/alter-table-builder.js
|
||
index a3fb975..0c586d8 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/alter-table-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-table-builder.js
|
||
@@ -25,6 +25,10 @@ const alter_table_executor_js_1 = require("./alter-table-executor.js");
|
||
const alter_table_add_foreign_key_constraint_builder_js_1 = require("./alter-table-add-foreign-key-constraint-builder.js");
|
||
const alter_table_drop_constraint_builder_js_1 = require("./alter-table-drop-constraint-builder.js");
|
||
const primary_constraint_node_js_1 = require("../operation-node/primary-constraint-node.js");
|
||
+const drop_index_node_js_1 = require("../operation-node/drop-index-node.js");
|
||
+const add_index_node_js_1 = require("../operation-node/add-index-node.js");
|
||
+const alter_table_add_index_builder_js_1 = require("./alter-table-add-index-builder.js");
|
||
+const unique_constraint_builder_js_1 = require("./unique-constraint-builder.js");
|
||
/**
|
||
* This builder can be used to create a `alter table` query.
|
||
*/
|
||
@@ -85,11 +89,12 @@ class AlterTableBuilder {
|
||
/**
|
||
* See {@link CreateTableBuilder.addUniqueConstraint}
|
||
*/
|
||
- addUniqueConstraint(constraintName, columns) {
|
||
+ addUniqueConstraint(constraintName, columns, build = object_utils_js_1.noop) {
|
||
+ const uniqueConstraintBuilder = build(new unique_constraint_builder_js_1.UniqueConstraintNodeBuilder(unique_constraint_node_js_1.UniqueConstraintNode.create(columns, constraintName)));
|
||
return new alter_table_executor_js_1.AlterTableExecutor({
|
||
...this.#props,
|
||
node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
- addConstraint: add_constraint_node_js_1.AddConstraintNode.create(unique_constraint_node_js_1.UniqueConstraintNode.create(columns, constraintName)),
|
||
+ addConstraint: add_constraint_node_js_1.AddConstraintNode.create(uniqueConstraintBuilder.toOperationNode()),
|
||
}),
|
||
});
|
||
}
|
||
@@ -136,6 +141,58 @@ class AlterTableBuilder {
|
||
}),
|
||
});
|
||
}
|
||
+ /**
|
||
+ * This can be used to add index to table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .addIndex('person_email_index')
|
||
+ * .column('email')
|
||
+ * .unique()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add unique index `person_email_index` (`email`)
|
||
+ * ```
|
||
+ */
|
||
+ addIndex(indexName) {
|
||
+ return new alter_table_add_index_builder_js_1.AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: add_index_node_js_1.AddIndexNode.create(indexName),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * This can be used to drop index from table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .dropIndex('person_email_index')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` drop index `test_first_name_index`
|
||
+ * ```
|
||
+ */
|
||
+ dropIndex(indexName) {
|
||
+ return new alter_table_executor_js_1.AlterTableExecutor({
|
||
+ ...this.#props,
|
||
+ node: alter_table_node_js_1.AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ dropIndex: drop_index_node_js_1.DropIndexNode.create(indexName),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-table-drop-constraint-builder.d.ts b/node_modules/kysely/dist/cjs/schema/alter-table-drop-constraint-builder.d.ts
|
||
index 02cad63..6b40efd 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/alter-table-drop-constraint-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-table-drop-constraint-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
+import { AlterTableNode } from 'kysely/dist/cjs/operation-node/alter-table-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
export declare class AlterTableDropConstraintBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: AlterTableDropConstraintBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/alter-table-executor.d.ts b/node_modules/kysely/dist/cjs/schema/alter-table-executor.d.ts
|
||
index ca2aef1..6b8d89f 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/alter-table-executor.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/alter-table-executor.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
+import { AlterTableNode } from 'kysely/dist/cjs/operation-node/alter-table-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
export declare class AlterTableExecutor implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: AlterTableExecutorProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/column-definition-builder.d.ts b/node_modules/kysely/dist/cjs/schema/column-definition-builder.d.ts
|
||
index 2a99c4c..9633440 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/column-definition-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/column-definition-builder.d.ts
|
||
@@ -1,8 +1,8 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { OnModifyForeignAction } from '../operation-node/references-node.js';
|
||
-import { ColumnDefinitionNode } from '../operation-node/column-definition-node.js';
|
||
-import { DefaultValueExpression } from '../parser/default-value-parser.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { OnModifyForeignAction } from 'kysely/dist/cjs/operation-node/references-node.js';
|
||
+import { ColumnDefinitionNode } from 'kysely/dist/cjs/operation-node/column-definition-node.js';
|
||
+import { DefaultValueExpression } from 'kysely/dist/cjs/parser/default-value-parser.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
export declare class ColumnDefinitionBuilder implements OperationNodeSource {
|
||
#private;
|
||
constructor(node: ColumnDefinitionNode);
|
||
@@ -183,6 +183,31 @@ export declare class ColumnDefinitionBuilder implements OperationNodeSource {
|
||
* ```
|
||
*/
|
||
modifyFront(modifier: Expression<any>): ColumnDefinitionBuilder;
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier.
|
||
+ * Should be used with `unique` constraint.
|
||
+ *
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('person')
|
||
+ * .addColumn('id', 'integer', col => col.primaryKey())
|
||
+ * .addColumn('first_name', 'varchar(30)', col => col.unique().nullsNotDistinct())
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create table "person" (
|
||
+ * "id" integer primary key,
|
||
+ * "first_name" varchar(30) unique nulls not distinct
|
||
+ * )
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct(): ColumnDefinitionBuilder;
|
||
/**
|
||
* This can be used to add any additional SQL to the end of the column definition.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/column-definition-builder.js b/node_modules/kysely/dist/cjs/schema/column-definition-builder.js
|
||
index aebbf98..eef0fcc 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/column-definition-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/schema/column-definition-builder.js
|
||
@@ -258,6 +258,33 @@ class ColumnDefinitionBuilder {
|
||
modifyFront(modifier) {
|
||
return new ColumnDefinitionBuilder(column_definition_node_js_1.ColumnDefinitionNode.cloneWithFrontModifier(this.#node, modifier.toOperationNode()));
|
||
}
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier.
|
||
+ * Should be used with `unique` constraint.
|
||
+ *
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('person')
|
||
+ * .addColumn('id', 'integer', col => col.primaryKey())
|
||
+ * .addColumn('first_name', 'varchar(30)', col => col.unique().nullsNotDistinct())
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create table "person" (
|
||
+ * "id" integer primary key,
|
||
+ * "first_name" varchar(30) unique nulls not distinct
|
||
+ * )
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct() {
|
||
+ return new ColumnDefinitionBuilder(column_definition_node_js_1.ColumnDefinitionNode.cloneWith(this.#node, { nullsNotDistinct: true }));
|
||
+ }
|
||
/**
|
||
* This can be used to add any additional SQL to the end of the column definition.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-index-builder.d.ts b/node_modules/kysely/dist/cjs/schema/create-index-builder.d.ts
|
||
index 27502c4..38bb2cb 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/create-index-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-index-builder.d.ts
|
||
@@ -1,14 +1,14 @@
|
||
-import { CreateIndexNode, IndexType } from '../operation-node/create-index-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { ExtractColumnNameFromOrderedColumnName, OrderedColumnName } from '../parser/reference-parser.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
-import { ComparisonOperatorExpression } from '../parser/binary-operation-parser.js';
|
||
-import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
-import { ShallowRecord, SqlBool } from '../util/type-utils.js';
|
||
+import { CreateIndexNode, IndexType } from 'kysely/dist/cjs/operation-node/create-index-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { ExtractColumnNameFromOrderedColumnName, OrderedColumnName } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { ComparisonOperatorExpression } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { ExpressionBuilder } from 'kysely/dist/cjs/expression/expression-builder.js';
|
||
+import { ShallowRecord, SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export declare class CreateIndexBuilder<C = never> implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: CreateIndexBuilderProps);
|
||
@@ -22,6 +22,29 @@ export declare class CreateIndexBuilder<C = never> implements OperationNodeSourc
|
||
* Makes the index unique.
|
||
*/
|
||
unique(): CreateIndexBuilder<C>;
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier to index.
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createIndex('person_first_name_index')
|
||
+ * .on('person')
|
||
+ * .column('first_name')
|
||
+ * .nullsNotDistinct()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create index "person_first_name_index"
|
||
+ * on "test" ("first_name")
|
||
+ * nulls not distinct;
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct(): CreateIndexBuilder<C>;
|
||
/**
|
||
* Specifies the table for the index.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-index-builder.js b/node_modules/kysely/dist/cjs/schema/create-index-builder.js
|
||
index 4de7de6..e0e00a0 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/create-index-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-index-builder.js
|
||
@@ -39,6 +39,36 @@ class CreateIndexBuilder {
|
||
}),
|
||
});
|
||
}
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier to index.
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createIndex('person_first_name_index')
|
||
+ * .on('person')
|
||
+ * .column('first_name')
|
||
+ * .nullsNotDistinct()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create index "person_first_name_index"
|
||
+ * on "test" ("first_name")
|
||
+ * nulls not distinct;
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct() {
|
||
+ return new CreateIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_index_node_js_1.CreateIndexNode.cloneWith(this.#props.node, {
|
||
+ nullsNotDistinct: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Specifies the table for the index.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-schema-builder.d.ts b/node_modules/kysely/dist/cjs/schema/create-schema-builder.d.ts
|
||
index 34974f5..fb0068d 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/create-schema-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-schema-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { CreateSchemaNode } from '../operation-node/create-schema-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
+import { CreateSchemaNode } from 'kysely/dist/cjs/operation-node/create-schema-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
export declare class CreateSchemaBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: CreateSchemaBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-table-builder.d.ts b/node_modules/kysely/dist/cjs/schema/create-table-builder.d.ts
|
||
index e160575..e5e27e4 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/create-table-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-table-builder.d.ts
|
||
@@ -1,13 +1,14 @@
|
||
-import { CreateTableNode, OnCommitAction } from '../operation-node/create-table-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { ColumnDefinitionBuilder } from './column-definition-builder.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { ForeignKeyConstraintBuilder } from './foreign-key-constraint-builder.js';
|
||
-import { DataTypeExpression } from '../parser/data-type-parser.js';
|
||
-import { Expression } from '../expression/expression.js';
|
||
+import { CreateTableNode, OnCommitAction } from 'kysely/dist/cjs/operation-node/create-table-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { ColumnDefinitionBuilder } from 'kysely/dist/cjs/schema/column-definition-builder.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { ForeignKeyConstraintBuilder } from 'kysely/dist/cjs/schema/foreign-key-constraint-builder.js';
|
||
+import { DataTypeExpression } from 'kysely/dist/cjs/parser/data-type-parser.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
+import { UniqueConstraintNodeBuilderCallback } from 'kysely/dist/cjs/schema/unique-constraint-builder.js';
|
||
/**
|
||
* This builder can be used to create a `create table` query.
|
||
*/
|
||
@@ -56,7 +57,7 @@ export declare class CreateTableBuilder<TB extends string, C extends string = ne
|
||
* ```
|
||
*
|
||
* With this method, it's once again good to remember that Kysely just builds the
|
||
- * query and doesn't provide the same API for all databses. For example, some
|
||
+ * query and doesn't provide the same API for all databases. For example, some
|
||
* databases like older MySQL don't support the `references` statement in the
|
||
* column definition. Instead foreign key constraints need to be defined in the
|
||
* `create table` query. See the next example:
|
||
@@ -104,8 +105,13 @@ export declare class CreateTableBuilder<TB extends string, C extends string = ne
|
||
* ```ts
|
||
* addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'])
|
||
* ```
|
||
+ *
|
||
+ * In dialects such as PostgreSQL you can specify `nulls not distinct` as follows:
|
||
+ * ```ts
|
||
+ * addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'], (builder) => builder.nullsNotDistinct())
|
||
+ * ```
|
||
*/
|
||
- addUniqueConstraint(constraintName: string, columns: C[]): CreateTableBuilder<TB, C>;
|
||
+ addUniqueConstraint(constraintName: string, columns: C[], build?: UniqueConstraintNodeBuilderCallback): CreateTableBuilder<TB, C>;
|
||
/**
|
||
* Adds a check constraint.
|
||
*
|
||
@@ -205,6 +211,26 @@ export declare class CreateTableBuilder<TB extends string, C extends string = ne
|
||
* ```
|
||
*/
|
||
modifyEnd(modifier: Expression<any>): CreateTableBuilder<TB, C>;
|
||
+ /**
|
||
+ * Allows to create table from `select` query.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('copy')
|
||
+ * .temporary()
|
||
+ * .as(db.selectFrom('person').select(['first_name', 'last_name']))
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create temporary table "copy" as
|
||
+ * select "first_name", "last_name" from "person"
|
||
+ * ```
|
||
+ */
|
||
+ as(expression: Expression<unknown>): CreateTableBuilder<string, never>;
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-table-builder.js b/node_modules/kysely/dist/cjs/schema/create-table-builder.js
|
||
index 5053177..73590bf 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/create-table-builder.js
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-table-builder.js
|
||
@@ -15,6 +15,8 @@ const unique_constraint_node_js_1 = require("../operation-node/unique-constraint
|
||
const check_constraint_node_js_1 = require("../operation-node/check-constraint-node.js");
|
||
const table_parser_js_1 = require("../parser/table-parser.js");
|
||
const on_commit_action_parse_js_1 = require("../parser/on-commit-action-parse.js");
|
||
+const unique_constraint_builder_js_1 = require("./unique-constraint-builder.js");
|
||
+const expression_parser_js_1 = require("../parser/expression-parser.js");
|
||
/**
|
||
* This builder can be used to create a `create table` query.
|
||
*/
|
||
@@ -86,7 +88,7 @@ class CreateTableBuilder {
|
||
* ```
|
||
*
|
||
* With this method, it's once again good to remember that Kysely just builds the
|
||
- * query and doesn't provide the same API for all databses. For example, some
|
||
+ * query and doesn't provide the same API for all databases. For example, some
|
||
* databases like older MySQL don't support the `references` statement in the
|
||
* column definition. Instead foreign key constraints need to be defined in the
|
||
* `create table` query. See the next example:
|
||
@@ -145,11 +147,17 @@ class CreateTableBuilder {
|
||
* ```ts
|
||
* addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'])
|
||
* ```
|
||
+ *
|
||
+ * In dialects such as PostgreSQL you can specify `nulls not distinct` as follows:
|
||
+ * ```ts
|
||
+ * addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'], (builder) => builder.nullsNotDistinct())
|
||
+ * ```
|
||
*/
|
||
- addUniqueConstraint(constraintName, columns) {
|
||
+ addUniqueConstraint(constraintName, columns, build = object_utils_js_1.noop) {
|
||
+ const uniqueConstraintBuilder = build(new unique_constraint_builder_js_1.UniqueConstraintNodeBuilder(unique_constraint_node_js_1.UniqueConstraintNode.create(columns, constraintName)));
|
||
return new CreateTableBuilder({
|
||
...this.#props,
|
||
- node: create_table_node_js_1.CreateTableNode.cloneWithConstraint(this.#props.node, unique_constraint_node_js_1.UniqueConstraintNode.create(columns, constraintName)),
|
||
+ node: create_table_node_js_1.CreateTableNode.cloneWithConstraint(this.#props.node, uniqueConstraintBuilder.toOperationNode()),
|
||
});
|
||
}
|
||
/**
|
||
@@ -272,6 +280,33 @@ class CreateTableBuilder {
|
||
node: create_table_node_js_1.CreateTableNode.cloneWithEndModifier(this.#props.node, modifier.toOperationNode()),
|
||
});
|
||
}
|
||
+ /**
|
||
+ * Allows to create table from `select` query.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('copy')
|
||
+ * .temporary()
|
||
+ * .as(db.selectFrom('person').select(['first_name', 'last_name']))
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create temporary table "copy" as
|
||
+ * select "first_name", "last_name" from "person"
|
||
+ * ```
|
||
+ */
|
||
+ as(expression) {
|
||
+ return new CreateTableBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_table_node_js_1.CreateTableNode.cloneWith(this.#props.node, {
|
||
+ selectQuery: (0, expression_parser_js_1.parseExpression)(expression),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-trigger-builder.d.ts b/node_modules/kysely/dist/cjs/schema/create-trigger-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..6106ec7
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-trigger-builder.d.ts
|
||
@@ -0,0 +1,68 @@
|
||
+import { CreateTriggerNode } from 'kysely/dist/cjs/operation-node/create-trigger-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from 'kysely/dist/cjs/parser/binary-operation-parser.js';
|
||
+import { ReferenceExpression } from 'kysely/dist/cjs/parser/reference-parser.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { AnyColumn, AnyColumnWithTable, SqlBool } from 'kysely/dist/cjs/util/type-utils.js';
|
||
+import { TriggerEvent } from 'kysely/dist/cjs/operation-node/trigger-event-node.js';
|
||
+import { ExpressionOrFactory } from 'kysely/dist/cjs/parser/expression-parser.js';
|
||
+import { TriggerQueryCreator } from 'kysely/dist/cjs/trigger-query-creator.js';
|
||
+export type DatabaseWithOldNewTables<DB, TB extends keyof DB> = DB & {
|
||
+ old: DB[TB];
|
||
+ new: DB[TB];
|
||
+};
|
||
+/**
|
||
+ * This builder can be used to create a `create table` query.
|
||
+ */
|
||
+export declare class CreateTriggerBuilder<DB, TB extends keyof DB> implements OperationNodeSource, Compilable {
|
||
+ #private;
|
||
+ constructor(props: CreateTriggerBuilderProps);
|
||
+ before(): CreateTriggerBuilder<DB, TB>;
|
||
+ after(): CreateTriggerBuilder<DB, TB>;
|
||
+ insteadOf(): CreateTriggerBuilder<DB, TB>;
|
||
+ addEvent<E extends TriggerEvent>(event: E, columns?: E extends 'update' ? AnyColumn<DB, TB>[] : never[]): CreateTriggerBuilder<DB, TB>;
|
||
+ forEachRow(): CreateTriggerBuilder<DB, TB>;
|
||
+ forEachStatement(): CreateTriggerBuilder<DB, TB>;
|
||
+ follows(otherTriggerName: string): CreateTriggerBuilder<DB, TB>;
|
||
+ precedes(otherTriggerName: string): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Specifies the table for the trigger.
|
||
+ */
|
||
+ onTable<TE extends keyof DB & string>(table: TE, schema?: string): CreateTriggerBuilder<DB, TE>;
|
||
+ /**
|
||
+ * Adds the "temporary" modifier.
|
||
+ *
|
||
+ * Use this to create a temporary trigger.
|
||
+ */
|
||
+ temporary(): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Adds the "if not exists" modifier.
|
||
+ *
|
||
+ * If the trigger already exists, no error is thrown if this method has been called.
|
||
+ */
|
||
+ ifNotExists(): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Only supported on PostgreSQL
|
||
+ */
|
||
+ orReplace(): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Adds a query to the trigger.
|
||
+ */
|
||
+ addQuery(build: QueryCreatorCallback<DB, TB>): CreateTriggerBuilder<DB, TB>;
|
||
+ function(name: string, args: ReadonlyArray<ReferenceExpression<any, any>>): CreateTriggerBuilder<DB, TB>;
|
||
+ when<RE extends AnyColumnWithTable<DatabaseWithOldNewTables<DB, TB>, 'old' | 'new'>>(lhs: RE, op: ComparisonOperatorExpression, rhs: OperandValueExpressionOrList<DB, TB, RE>): CreateTriggerBuilder<DB, TB>;
|
||
+ when(factory: ExpressionOrFactory<DatabaseWithOldNewTables<DB, TB>, 'old' | 'new', SqlBool>): CreateTriggerBuilder<DB, TB>;
|
||
+ $call<T>(func: (qb: this) => T): T;
|
||
+ toOperationNode(): CreateTriggerNode;
|
||
+ compile(): CompiledQuery;
|
||
+ execute(): Promise<void>;
|
||
+}
|
||
+export interface CreateTriggerBuilderProps {
|
||
+ readonly queryId: QueryId;
|
||
+ readonly executor: QueryExecutor;
|
||
+ readonly node: CreateTriggerNode;
|
||
+}
|
||
+export type QueryCreatorCallback<DB, TB extends keyof DB> = (creator: TriggerQueryCreator<DB, TB>) => OperationNodeSource;
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-trigger-builder.js b/node_modules/kysely/dist/cjs/schema/create-trigger-builder.js
|
||
new file mode 100644
|
||
index 0000000..ebc814c
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-trigger-builder.js
|
||
@@ -0,0 +1,180 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.CreateTriggerBuilder = void 0;
|
||
+const create_trigger_node_js_1 = require("../operation-node/create-trigger-node.js");
|
||
+const query_node_js_1 = require("../operation-node/query-node.js");
|
||
+const binary_operation_parser_js_1 = require("../parser/binary-operation-parser.js");
|
||
+const reference_parser_js_1 = require("../parser/reference-parser.js");
|
||
+const immediate_value_transformer_js_1 = require("../plugin/immediate-value/immediate-value-transformer.js");
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+const prevent_await_js_1 = require("../util/prevent-await.js");
|
||
+const identifier_node_js_1 = require("../operation-node/identifier-node.js");
|
||
+const trigger_order_node_js_1 = require("../operation-node/trigger-order-node.js");
|
||
+const trigger_event_node_js_1 = require("../operation-node/trigger-event-node.js");
|
||
+const function_node_js_1 = require("../operation-node/function-node.js");
|
||
+const trigger_query_creator_js_1 = require("../trigger-query-creator.js");
|
||
+const table_node_js_1 = require("../operation-node/table-node.js");
|
||
+/**
|
||
+ * This builder can be used to create a `create table` query.
|
||
+ */
|
||
+class CreateTriggerBuilder {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = (0, object_utils_js_1.freeze)(props);
|
||
+ }
|
||
+ before() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ time: 'before',
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ after() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ time: 'after',
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ insteadOf() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ time: 'instead of',
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ addEvent(event, columns) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWithEvent(this.#props.node, trigger_event_node_js_1.TriggerEventNode.create(event, columns?.map(reference_parser_js_1.parseOrderedColumnName))),
|
||
+ });
|
||
+ }
|
||
+ forEachRow() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ forEach: `row`,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ forEachStatement() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ forEach: `statement`,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ follows(otherTriggerName) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ order: trigger_order_node_js_1.TriggerOrderNode.create('follows', identifier_node_js_1.IdentifierNode.create(otherTriggerName)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ precedes(otherTriggerName) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ order: trigger_order_node_js_1.TriggerOrderNode.create('precedes', identifier_node_js_1.IdentifierNode.create(otherTriggerName)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Specifies the table for the trigger.
|
||
+ */
|
||
+ onTable(table, schema) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ table: schema
|
||
+ ? table_node_js_1.TableNode.createWithSchema(schema, table)
|
||
+ : table_node_js_1.TableNode.create(table),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds the "temporary" modifier.
|
||
+ *
|
||
+ * Use this to create a temporary trigger.
|
||
+ */
|
||
+ temporary() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ temporary: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds the "if not exists" modifier.
|
||
+ *
|
||
+ * If the trigger already exists, no error is thrown if this method has been called.
|
||
+ */
|
||
+ ifNotExists() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ ifNotExists: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Only supported on PostgreSQL
|
||
+ */
|
||
+ orReplace() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ orReplace: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds a query to the trigger.
|
||
+ */
|
||
+ addQuery(build) {
|
||
+ const node = build(new trigger_query_creator_js_1.TriggerQueryCreator({ executor: this.#props.executor })).toOperationNode();
|
||
+ if (!query_node_js_1.QueryNode.is(node))
|
||
+ throw new Error('Must be a query node.');
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWithQuery(this.#props.node, node),
|
||
+ });
|
||
+ }
|
||
+ function(name, args) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ function: function_node_js_1.FunctionNode.create(name, (0, reference_parser_js_1.parseReferenceExpressionOrList)(args)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ when(...args) {
|
||
+ const transformer = new immediate_value_transformer_js_1.ImmediateValueTransformer();
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ when: transformer.transformNode((0, binary_operation_parser_js_1.parseValueBinaryOperationOrExpression)(args)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ $call(func) {
|
||
+ return func(this);
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#props.executor.transformQuery(this.#props.node, this.#props.queryId);
|
||
+ }
|
||
+ compile() {
|
||
+ return this.#props.executor.compileQuery(this.toOperationNode(), this.#props.queryId);
|
||
+ }
|
||
+ async execute() {
|
||
+ await this.#props.executor.executeQuery(this.compile(), this.#props.queryId);
|
||
+ }
|
||
+}
|
||
+exports.CreateTriggerBuilder = CreateTriggerBuilder;
|
||
+(0, prevent_await_js_1.preventAwait)(CreateTriggerBuilder, "don't await CreateTriggerBuilder instances directly. To execute the query you need to call `execute`");
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-type-builder.d.ts b/node_modules/kysely/dist/cjs/schema/create-type-builder.d.ts
|
||
index 8cc367c..3845c7b 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/create-type-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-type-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { CreateTypeNode } from '../operation-node/create-type-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { CreateTypeNode } from 'kysely/dist/cjs/operation-node/create-type-node.js';
|
||
export declare class CreateTypeBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: CreateTypeBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/create-view-builder.d.ts b/node_modules/kysely/dist/cjs/schema/create-view-builder.d.ts
|
||
index 6786e99..de6f5cb 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/create-view-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/create-view-builder.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { CreateViewNode } from '../operation-node/create-view-node.js';
|
||
-import { RawBuilder } from '../raw-builder/raw-builder.js';
|
||
-import { SelectQueryBuilder } from '../query-builder/select-query-builder.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { CreateViewNode } from 'kysely/dist/cjs/operation-node/create-view-node.js';
|
||
+import { RawBuilder } from 'kysely/dist/cjs/raw-builder/raw-builder.js';
|
||
+import { SelectQueryBuilder } from 'kysely/dist/cjs/query-builder/select-query-builder.js';
|
||
export declare class CreateViewBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: CreateViewBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/drop-index-builder.d.ts b/node_modules/kysely/dist/cjs/schema/drop-index-builder.d.ts
|
||
index 36357d4..20486d3 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/drop-index-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/drop-index-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { DropIndexNode } from '../operation-node/drop-index-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
+import { DropIndexNode } from 'kysely/dist/cjs/operation-node/drop-index-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
export declare class DropIndexBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: DropIndexBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/drop-schema-builder.d.ts b/node_modules/kysely/dist/cjs/schema/drop-schema-builder.d.ts
|
||
index 052411c..fc46202 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/drop-schema-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/drop-schema-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { DropSchemaNode } from '../operation-node/drop-schema-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
+import { DropSchemaNode } from 'kysely/dist/cjs/operation-node/drop-schema-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
export declare class DropSchemaBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: DropSchemaBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/drop-table-builder.d.ts b/node_modules/kysely/dist/cjs/schema/drop-table-builder.d.ts
|
||
index 824492a..c9ab11d 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/drop-table-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/drop-table-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { DropTableNode } from '../operation-node/drop-table-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
+import { DropTableNode } from 'kysely/dist/cjs/operation-node/drop-table-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
export declare class DropTableBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: DropTableBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/drop-trigger-builder.d.ts b/node_modules/kysely/dist/cjs/schema/drop-trigger-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..8f86888
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/drop-trigger-builder.d.ts
|
||
@@ -0,0 +1,25 @@
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { DropTriggerNode } from 'kysely/dist/cjs/operation-node/drop-trigger-node.js';
|
||
+export declare class DropTriggerBuilder implements OperationNodeSource, Compilable {
|
||
+ #private;
|
||
+ constructor(props: DropTriggerBuilderProps);
|
||
+ ifExists(): DropTriggerBuilder;
|
||
+ cascade(): DropTriggerBuilder;
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call<T>(func: (qb: this) => T): T;
|
||
+ toOperationNode(): DropTriggerNode;
|
||
+ compile(): CompiledQuery;
|
||
+ execute(): Promise<void>;
|
||
+}
|
||
+export interface DropTriggerBuilderProps {
|
||
+ readonly queryId: QueryId;
|
||
+ readonly executor: QueryExecutor;
|
||
+ readonly node: DropTriggerNode;
|
||
+}
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/drop-trigger-builder.js b/node_modules/kysely/dist/cjs/schema/drop-trigger-builder.js
|
||
new file mode 100644
|
||
index 0000000..1c55383
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/drop-trigger-builder.js
|
||
@@ -0,0 +1,46 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.DropTriggerBuilder = void 0;
|
||
+const prevent_await_js_1 = require("../util/prevent-await.js");
|
||
+const object_utils_js_1 = require("../util/object-utils.js");
|
||
+const drop_trigger_node_js_1 = require("../operation-node/drop-trigger-node.js");
|
||
+class DropTriggerBuilder {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = (0, object_utils_js_1.freeze)(props);
|
||
+ }
|
||
+ ifExists() {
|
||
+ return new DropTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: drop_trigger_node_js_1.DropTriggerNode.cloneWith(this.#props.node, {
|
||
+ ifExists: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ cascade() {
|
||
+ return new DropTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: drop_trigger_node_js_1.DropTriggerNode.cloneWith(this.#props.node, {
|
||
+ cascade: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call(func) {
|
||
+ return func(this);
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#props.executor.transformQuery(this.#props.node, this.#props.queryId);
|
||
+ }
|
||
+ compile() {
|
||
+ return this.#props.executor.compileQuery(this.toOperationNode(), this.#props.queryId);
|
||
+ }
|
||
+ async execute() {
|
||
+ await this.#props.executor.executeQuery(this.compile(), this.#props.queryId);
|
||
+ }
|
||
+}
|
||
+exports.DropTriggerBuilder = DropTriggerBuilder;
|
||
+(0, prevent_await_js_1.preventAwait)(DropTriggerBuilder, "don't await DropTriggerBuilder instances directly. To execute the query you need to call `execute`");
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/drop-type-builder.d.ts b/node_modules/kysely/dist/cjs/schema/drop-type-builder.d.ts
|
||
index 1c93cb5..6fef602 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/drop-type-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/drop-type-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { DropTypeNode } from '../operation-node/drop-type-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
+import { DropTypeNode } from 'kysely/dist/cjs/operation-node/drop-type-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
export declare class DropTypeBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: DropTypeBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/drop-view-builder.d.ts b/node_modules/kysely/dist/cjs/schema/drop-view-builder.d.ts
|
||
index c16f06c..77b7070 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/drop-view-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/drop-view-builder.d.ts
|
||
@@ -1,9 +1,9 @@
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { Compilable } from '../util/compilable.js';
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { QueryId } from '../util/query-id.js';
|
||
-import { DropViewNode } from '../operation-node/drop-view-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { Compilable } from 'kysely/dist/cjs/util/compilable.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { QueryId } from 'kysely/dist/cjs/util/query-id.js';
|
||
+import { DropViewNode } from 'kysely/dist/cjs/operation-node/drop-view-node.js';
|
||
export declare class DropViewBuilder implements OperationNodeSource, Compilable {
|
||
#private;
|
||
constructor(props: DropViewBuilderProps);
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/foreign-key-constraint-builder.d.ts b/node_modules/kysely/dist/cjs/schema/foreign-key-constraint-builder.d.ts
|
||
index 1d29ef8..02fb0b4 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/foreign-key-constraint-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/foreign-key-constraint-builder.d.ts
|
||
@@ -1,6 +1,6 @@
|
||
-import { ForeignKeyConstraintNode } from '../operation-node/foreign-key-constraint-node.js';
|
||
-import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
-import { OnModifyForeignAction } from '../operation-node/references-node.js';
|
||
+import { ForeignKeyConstraintNode } from 'kysely/dist/cjs/operation-node/foreign-key-constraint-node.js';
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { OnModifyForeignAction } from 'kysely/dist/cjs/operation-node/references-node.js';
|
||
export interface ForeignKeyConstraintBuilderInterface<R> {
|
||
onDelete(onDelete: OnModifyForeignAction): R;
|
||
onUpdate(onUpdate: OnModifyForeignAction): R;
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/schema.d.ts b/node_modules/kysely/dist/cjs/schema/schema.d.ts
|
||
index 8634b84..52b57cb 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/schema.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/schema/schema.d.ts
|
||
@@ -1,20 +1,22 @@
|
||
-import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
-import { AlterTableBuilder } from './alter-table-builder.js';
|
||
-import { CreateIndexBuilder } from './create-index-builder.js';
|
||
-import { CreateSchemaBuilder } from './create-schema-builder.js';
|
||
-import { CreateTableBuilder } from './create-table-builder.js';
|
||
-import { DropIndexBuilder } from './drop-index-builder.js';
|
||
-import { DropSchemaBuilder } from './drop-schema-builder.js';
|
||
-import { DropTableBuilder } from './drop-table-builder.js';
|
||
-import { CreateViewBuilder } from './create-view-builder.js';
|
||
-import { DropViewBuilder } from './drop-view-builder.js';
|
||
-import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
-import { CreateTypeBuilder } from './create-type-builder.js';
|
||
-import { DropTypeBuilder } from './drop-type-builder.js';
|
||
+import { QueryExecutor } from 'kysely/dist/cjs/query-executor/query-executor.js';
|
||
+import { AlterTableBuilder } from 'kysely/dist/cjs/schema/alter-table-builder.js';
|
||
+import { CreateIndexBuilder } from 'kysely/dist/cjs/schema/create-index-builder.js';
|
||
+import { CreateSchemaBuilder } from 'kysely/dist/cjs/schema/create-schema-builder.js';
|
||
+import { CreateTableBuilder } from 'kysely/dist/cjs/schema/create-table-builder.js';
|
||
+import { DropIndexBuilder } from 'kysely/dist/cjs/schema/drop-index-builder.js';
|
||
+import { DropSchemaBuilder } from 'kysely/dist/cjs/schema/drop-schema-builder.js';
|
||
+import { DropTableBuilder } from 'kysely/dist/cjs/schema/drop-table-builder.js';
|
||
+import { CreateViewBuilder } from 'kysely/dist/cjs/schema/create-view-builder.js';
|
||
+import { DropViewBuilder } from 'kysely/dist/cjs/schema/drop-view-builder.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { CreateTypeBuilder } from 'kysely/dist/cjs/schema/create-type-builder.js';
|
||
+import { DropTypeBuilder } from 'kysely/dist/cjs/schema/drop-type-builder.js';
|
||
+import { CreateTriggerBuilder } from 'kysely/dist/cjs/schema/create-trigger-builder.js';
|
||
+import { DropTriggerBuilder } from 'kysely/dist/cjs/schema/drop-trigger-builder.js';
|
||
/**
|
||
* Provides methods for building database schema.
|
||
*/
|
||
-export declare class SchemaModule {
|
||
+export declare class SchemaModule<DB> {
|
||
#private;
|
||
constructor(executor: QueryExecutor);
|
||
/**
|
||
@@ -201,16 +203,18 @@ export declare class SchemaModule {
|
||
* ```
|
||
*/
|
||
dropType(typeName: string): DropTypeBuilder;
|
||
+ createTrigger(name: string): CreateTriggerBuilder<DB, keyof DB>;
|
||
+ dropTrigger(triggerName: string): DropTriggerBuilder;
|
||
/**
|
||
* Returns a copy of this schema module with the given plugin installed.
|
||
*/
|
||
- withPlugin(plugin: KyselyPlugin): SchemaModule;
|
||
+ withPlugin(plugin: KyselyPlugin): SchemaModule<DB>;
|
||
/**
|
||
* Returns a copy of this schema module without any plugins.
|
||
*/
|
||
- withoutPlugins(): SchemaModule;
|
||
+ withoutPlugins(): SchemaModule<DB>;
|
||
/**
|
||
* See {@link QueryCreator.withSchema}
|
||
*/
|
||
- withSchema(schema: string): SchemaModule;
|
||
+ withSchema(schema: string): SchemaModule<DB>;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/schema.js b/node_modules/kysely/dist/cjs/schema/schema.js
|
||
index 052622f..7b979ab 100644
|
||
--- a/node_modules/kysely/dist/cjs/schema/schema.js
|
||
+++ b/node_modules/kysely/dist/cjs/schema/schema.js
|
||
@@ -27,6 +27,11 @@ const drop_type_builder_js_1 = require("./drop-type-builder.js");
|
||
const create_type_node_js_1 = require("../operation-node/create-type-node.js");
|
||
const drop_type_node_js_1 = require("../operation-node/drop-type-node.js");
|
||
const identifier_parser_js_1 = require("../parser/identifier-parser.js");
|
||
+const create_trigger_builder_js_1 = require("./create-trigger-builder.js");
|
||
+const create_trigger_node_js_1 = require("../operation-node/create-trigger-node.js");
|
||
+const identifier_node_js_1 = require("../operation-node/identifier-node.js");
|
||
+const drop_trigger_node_js_1 = require("../operation-node/drop-trigger-node.js");
|
||
+const drop_trigger_builder_js_1 = require("./drop-trigger-builder.js");
|
||
/**
|
||
* Provides methods for building database schema.
|
||
*/
|
||
@@ -285,6 +290,20 @@ class SchemaModule {
|
||
node: drop_type_node_js_1.DropTypeNode.create((0, identifier_parser_js_1.parseSchemableIdentifier)(typeName)),
|
||
});
|
||
}
|
||
+ createTrigger(name) {
|
||
+ return new create_trigger_builder_js_1.CreateTriggerBuilder({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#executor,
|
||
+ node: create_trigger_node_js_1.CreateTriggerNode.create(identifier_node_js_1.IdentifierNode.create(name)),
|
||
+ });
|
||
+ }
|
||
+ dropTrigger(triggerName) {
|
||
+ return new drop_trigger_builder_js_1.DropTriggerBuilder({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#executor,
|
||
+ node: drop_trigger_node_js_1.DropTriggerNode.create((0, identifier_parser_js_1.parseSchemableIdentifier)(triggerName)),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Returns a copy of this schema module with the given plugin installed.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.d.ts b/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..420398a
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.d.ts
|
||
@@ -0,0 +1,14 @@
|
||
+import { OperationNodeSource } from 'kysely/dist/cjs/operation-node/operation-node-source.js';
|
||
+import { UniqueConstraintNode } from 'kysely/dist/cjs/operation-node/unique-constraint-node.js';
|
||
+export declare class UniqueConstraintNodeBuilder implements OperationNodeSource {
|
||
+ #private;
|
||
+ constructor(node: UniqueConstraintNode);
|
||
+ toOperationNode(): UniqueConstraintNode;
|
||
+ /**
|
||
+ * Adds `nulls not distinct` to the unique constraint definition
|
||
+ *
|
||
+ * Supported by PostgreSQL dialect only
|
||
+ */
|
||
+ nullsNotDistinct(): UniqueConstraintNodeBuilder;
|
||
+}
|
||
+export type UniqueConstraintNodeBuilderCallback = (builder: UniqueConstraintNodeBuilder) => UniqueConstraintNodeBuilder;
|
||
diff --git a/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.js b/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.js
|
||
new file mode 100644
|
||
index 0000000..9931354
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.js
|
||
@@ -0,0 +1,24 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.UniqueConstraintNodeBuilder = void 0;
|
||
+const unique_constraint_node_js_1 = require("../operation-node/unique-constraint-node.js");
|
||
+const prevent_await_js_1 = require("../util/prevent-await.js");
|
||
+class UniqueConstraintNodeBuilder {
|
||
+ #node;
|
||
+ constructor(node) {
|
||
+ this.#node = node;
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#node;
|
||
+ }
|
||
+ /**
|
||
+ * Adds `nulls not distinct` to the unique constraint definition
|
||
+ *
|
||
+ * Supported by PostgreSQL dialect only
|
||
+ */
|
||
+ nullsNotDistinct() {
|
||
+ return new UniqueConstraintNodeBuilder(unique_constraint_node_js_1.UniqueConstraintNode.cloneWith(this.#node, { nullsNotDistinct: true }));
|
||
+ }
|
||
+}
|
||
+exports.UniqueConstraintNodeBuilder = UniqueConstraintNodeBuilder;
|
||
+(0, prevent_await_js_1.preventAwait)(UniqueConstraintNodeBuilder, "don't await UniqueConstraintNodeBuilder instances directly.");
|
||
diff --git a/node_modules/kysely/dist/cjs/trigger-query-creator.d.ts b/node_modules/kysely/dist/cjs/trigger-query-creator.d.ts
|
||
new file mode 100644
|
||
index 0000000..9b7599f
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/trigger-query-creator.d.ts
|
||
@@ -0,0 +1,35 @@
|
||
+import { SelectQueryBuilder } from 'kysely/dist/cjs/query-builder/select-query-builder.js';
|
||
+import { InsertQueryBuilder } from 'kysely/dist/cjs/query-builder/insert-query-builder.js';
|
||
+import { DeleteQueryBuilder } from 'kysely/dist/cjs/query-builder/delete-query-builder.js';
|
||
+import { UpdateQueryBuilder } from 'kysely/dist/cjs/query-builder/update-query-builder.js';
|
||
+import { TableExpression, From, FromTables, TableReference, ExtractTableAlias, AnyAliasedTable, PickTableWithAlias } from 'kysely/dist/cjs/parser/table-parser.js';
|
||
+import { InsertResult } from 'kysely/dist/cjs/query-builder/insert-result.js';
|
||
+import { DeleteResult } from 'kysely/dist/cjs/query-builder/delete-result.js';
|
||
+import { UpdateResult } from 'kysely/dist/cjs/query-builder/update-result.js';
|
||
+import { KyselyPlugin } from 'kysely/dist/cjs/plugin/kysely-plugin.js';
|
||
+import { CallbackSelection, SelectCallback, SelectExpression, Selection } from 'kysely/dist/cjs/parser/select-parser.js';
|
||
+import { QueryCreatorProps } from 'kysely/dist/cjs/query-creator.js';
|
||
+import { DatabaseWithOldNewTables } from 'kysely/dist/cjs/schema/create-trigger-builder.js';
|
||
+export declare class TriggerQueryCreator<DB, TB extends keyof DB> {
|
||
+ #private;
|
||
+ constructor(props: QueryCreatorProps);
|
||
+ selectFrom<TE extends keyof DB & string>(from: TE[]): SelectQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends TableExpression<DB, keyof DB>>(from: TE[]): SelectQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TE>, FromTables<DB, never, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends keyof DB & string>(from: TE): SelectQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends AnyAliasedTable<DB>>(from: TE): SelectQueryBuilder<DatabaseWithOldNewTables<DB, TB> & PickTableWithAlias<DatabaseWithOldNewTables<DB, TB>, TE>, ExtractTableAlias<DB, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends TableExpression<DB, keyof DB>>(from: TE): SelectQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TE>, FromTables<DB, never, TE> | 'new' | 'old', {}>;
|
||
+ selectNoFrom<SE extends SelectExpression<DB, never>>(selections: ReadonlyArray<SE>): SelectQueryBuilder<DB, never, Selection<DB, never, SE>>;
|
||
+ selectNoFrom<CB extends SelectCallback<DB, never>>(callback: CB): SelectQueryBuilder<DB, never, CallbackSelection<DB, never, CB>>;
|
||
+ selectNoFrom<SE extends SelectExpression<DB, never>>(selection: SE): SelectQueryBuilder<DB, never, Selection<DB, never, SE>>;
|
||
+ insertInto<T extends keyof DB & string>(table: T): InsertQueryBuilder<DB, T, InsertResult>;
|
||
+ replaceInto<T extends keyof DB & string>(table: T): InsertQueryBuilder<DB, T, InsertResult>;
|
||
+ deleteFrom<TR extends keyof DB & string>(from: TR[]): DeleteQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TR> | 'new' | 'old', DeleteResult>;
|
||
+ deleteFrom<TR extends TableReference<DB>>(tables: TR[]): DeleteQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TR>, FromTables<DB, never, TR> | 'new' | 'old', DeleteResult>;
|
||
+ deleteFrom<TR extends keyof DB & string>(from: TR): DeleteQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TR> | 'new' | 'old', DeleteResult>;
|
||
+ deleteFrom<TR extends TableReference<DB>>(table: TR): DeleteQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TR>, FromTables<DB, never, TR> | 'new' | 'old', DeleteResult>;
|
||
+ updateTable<TR extends keyof DB & string>(table: TR): UpdateQueryBuilder<DB, ExtractTableAlias<DB, TR>, ExtractTableAlias<DB, TR>, UpdateResult>;
|
||
+ updateTable<TR extends AnyAliasedTable<DB>>(table: TR): UpdateQueryBuilder<DB & PickTableWithAlias<DB, TR>, ExtractTableAlias<DB, TR>, ExtractTableAlias<DB, TR>, UpdateResult>;
|
||
+ updateTable<TR extends TableReference<DB>>(table: TR): UpdateQueryBuilder<From<DB, TR>, FromTables<DB, never, TR>, FromTables<DB, never, TR>, UpdateResult>;
|
||
+ withPlugin(plugin: KyselyPlugin): TriggerQueryCreator<DB, TB>;
|
||
+ withoutPlugins(): TriggerQueryCreator<DB, TB>;
|
||
+}
|
||
diff --git a/node_modules/kysely/dist/cjs/trigger-query-creator.js b/node_modules/kysely/dist/cjs/trigger-query-creator.js
|
||
new file mode 100644
|
||
index 0000000..5d4d073
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/cjs/trigger-query-creator.js
|
||
@@ -0,0 +1,76 @@
|
||
+"use strict";
|
||
+Object.defineProperty(exports, "__esModule", { value: true });
|
||
+exports.TriggerQueryCreator = void 0;
|
||
+const select_query_builder_js_1 = require("./query-builder/select-query-builder.js");
|
||
+const insert_query_builder_js_1 = require("./query-builder/insert-query-builder.js");
|
||
+const delete_query_builder_js_1 = require("./query-builder/delete-query-builder.js");
|
||
+const update_query_builder_js_1 = require("./query-builder/update-query-builder.js");
|
||
+const delete_query_node_js_1 = require("./operation-node/delete-query-node.js");
|
||
+const insert_query_node_js_1 = require("./operation-node/insert-query-node.js");
|
||
+const select_query_node_js_1 = require("./operation-node/select-query-node.js");
|
||
+const update_query_node_js_1 = require("./operation-node/update-query-node.js");
|
||
+const table_parser_js_1 = require("./parser/table-parser.js");
|
||
+const query_id_js_1 = require("./util/query-id.js");
|
||
+const object_utils_js_1 = require("./util/object-utils.js");
|
||
+const select_parser_js_1 = require("./parser/select-parser.js");
|
||
+class TriggerQueryCreator {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = (0, object_utils_js_1.freeze)(props);
|
||
+ }
|
||
+ selectFrom(from) {
|
||
+ return (0, select_query_builder_js_1.createSelectQueryBuilder)({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: select_query_node_js_1.SelectQueryNode.createFrom((0, table_parser_js_1.parseTableExpressionOrList)(from), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ selectNoFrom(selection) {
|
||
+ return (0, select_query_builder_js_1.createSelectQueryBuilder)({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: select_query_node_js_1.SelectQueryNode.cloneWithSelections(select_query_node_js_1.SelectQueryNode.create(this.#props.withNode), (0, select_parser_js_1.parseSelectArg)(selection)),
|
||
+ });
|
||
+ }
|
||
+ insertInto(table) {
|
||
+ return new insert_query_builder_js_1.InsertQueryBuilder({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: insert_query_node_js_1.InsertQueryNode.create((0, table_parser_js_1.parseTable)(table), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ replaceInto(table) {
|
||
+ return new insert_query_builder_js_1.InsertQueryBuilder({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: insert_query_node_js_1.InsertQueryNode.create((0, table_parser_js_1.parseTable)(table), this.#props.withNode, true),
|
||
+ });
|
||
+ }
|
||
+ deleteFrom(tables) {
|
||
+ return new delete_query_builder_js_1.DeleteQueryBuilder({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: delete_query_node_js_1.DeleteQueryNode.create((0, table_parser_js_1.parseTableExpressionOrList)(tables), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ updateTable(table) {
|
||
+ return new update_query_builder_js_1.UpdateQueryBuilder({
|
||
+ queryId: (0, query_id_js_1.createQueryId)(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: update_query_node_js_1.UpdateQueryNode.create((0, table_parser_js_1.parseTableExpression)(table), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ withPlugin(plugin) {
|
||
+ return new TriggerQueryCreator({
|
||
+ ...this.#props,
|
||
+ executor: this.#props.executor.withPlugin(plugin),
|
||
+ });
|
||
+ }
|
||
+ withoutPlugins() {
|
||
+ return new TriggerQueryCreator({
|
||
+ ...this.#props,
|
||
+ executor: this.#props.executor.withoutPlugins(),
|
||
+ });
|
||
+ }
|
||
+}
|
||
+exports.TriggerQueryCreator = TriggerQueryCreator;
|
||
diff --git a/node_modules/kysely/dist/cjs/util/column-type.d.ts b/node_modules/kysely/dist/cjs/util/column-type.d.ts
|
||
index bb33464..88a26b2 100644
|
||
--- a/node_modules/kysely/dist/cjs/util/column-type.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/util/column-type.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { DrainOuterGeneric } from './type-utils.js';
|
||
+import { DrainOuterGeneric } from 'kysely/dist/cjs/util/type-utils.js';
|
||
/**
|
||
* This type can be used to specify a different type for
|
||
* select, insert and update operations.
|
||
diff --git a/node_modules/kysely/dist/cjs/util/compilable.d.ts b/node_modules/kysely/dist/cjs/util/compilable.d.ts
|
||
index 638b5d0..5c8f0e9 100644
|
||
--- a/node_modules/kysely/dist/cjs/util/compilable.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/util/compilable.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
export interface Compilable<O = unknown> {
|
||
compile(): CompiledQuery<O>;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/cjs/util/explainable.d.ts b/node_modules/kysely/dist/cjs/util/explainable.d.ts
|
||
index 5e05810..86789f2 100644
|
||
--- a/node_modules/kysely/dist/cjs/util/explainable.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/util/explainable.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-import { Expression } from '../expression/expression.js';
|
||
+import { Expression } from 'kysely/dist/cjs/expression/expression.js';
|
||
export type ExplainFormat = 'text' | 'xml' | 'json' | 'yaml' | 'traditional' | 'tree';
|
||
export interface Explainable {
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/cjs/util/log.d.ts b/node_modules/kysely/dist/cjs/util/log.d.ts
|
||
index 840a172..69c7b55 100644
|
||
--- a/node_modules/kysely/dist/cjs/util/log.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/util/log.d.ts
|
||
@@ -1,5 +1,5 @@
|
||
-import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
-import { ArrayItemType } from './type-utils.js';
|
||
+import { CompiledQuery } from 'kysely/dist/cjs/query-compiler/compiled-query.js';
|
||
+import { ArrayItemType } from 'kysely/dist/cjs/util/type-utils.js';
|
||
export declare const LOG_LEVELS: readonly ["query", "error"];
|
||
export type LogLevel = ArrayItemType<typeof LOG_LEVELS>;
|
||
export interface QueryLogEvent {
|
||
diff --git a/node_modules/kysely/dist/cjs/util/object-utils.d.ts b/node_modules/kysely/dist/cjs/util/object-utils.d.ts
|
||
index 1b9f563..c9fa82b 100644
|
||
--- a/node_modules/kysely/dist/cjs/util/object-utils.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/util/object-utils.d.ts
|
||
@@ -6,7 +6,7 @@ export declare function isNumber(obj: unknown): obj is number;
|
||
export declare function isBoolean(obj: unknown): obj is boolean;
|
||
export declare function isNull(obj: unknown): obj is null;
|
||
export declare function isDate(obj: unknown): obj is Date;
|
||
-export declare function isBigInt(obj: unknown): obj is BigInt;
|
||
+export declare function isBigInt(obj: unknown): obj is bigint;
|
||
export declare function isBuffer(obj: unknown): obj is {
|
||
length: number;
|
||
};
|
||
diff --git a/node_modules/kysely/dist/cjs/util/type-utils.d.ts b/node_modules/kysely/dist/cjs/util/type-utils.d.ts
|
||
index 5fd42ff..4daf187 100644
|
||
--- a/node_modules/kysely/dist/cjs/util/type-utils.d.ts
|
||
+++ b/node_modules/kysely/dist/cjs/util/type-utils.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
-import { InsertResult } from '../query-builder/insert-result.js';
|
||
-import { DeleteResult } from '../query-builder/delete-result.js';
|
||
-import { UpdateResult } from '../query-builder/update-result.js';
|
||
-import { KyselyTypeError } from './type-error.js';
|
||
+import { InsertResult } from 'kysely/dist/cjs/query-builder/insert-result.js';
|
||
+import { DeleteResult } from 'kysely/dist/cjs/query-builder/delete-result.js';
|
||
+import { UpdateResult } from 'kysely/dist/cjs/query-builder/update-result.js';
|
||
+import { KyselyTypeError } from 'kysely/dist/cjs/util/type-error.js';
|
||
/**
|
||
* Given a database type and a union of table names in that db, returns
|
||
* a union type with all possible column names.
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.d.ts b/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.d.ts
|
||
index dc87916..e3fb628 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.d.ts
|
||
@@ -7,6 +7,14 @@ import { DialectAdapter, MigrationLockOptions } from './dialect-adapter.js';
|
||
* they are added and there will be less breaking changes.
|
||
*/
|
||
export declare abstract class DialectAdapterBase implements DialectAdapter {
|
||
+ /**
|
||
+ * Whether or not this dialect supports `if not exists` in creation of tables/schemas/views/etc.
|
||
+ *
|
||
+ * If this is false, Kysely's internal migrations tables and schemas are created
|
||
+ * without `if not exists` in migrations. This is not a problem if the dialect
|
||
+ * supports transactional DDL.
|
||
+ */
|
||
+ get supportsCreateIfNotExists(): boolean;
|
||
/**
|
||
* Whether or not this dialect supports transactional DDL.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.js b/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.js
|
||
index b5f7843..7065ce6 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.js
|
||
+++ b/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.js
|
||
@@ -6,6 +6,9 @@
|
||
* they are added and there will be less breaking changes.
|
||
*/
|
||
export class DialectAdapterBase {
|
||
+ get supportsCreateIfNotExists() {
|
||
+ return true;
|
||
+ }
|
||
get supportsTransactionalDdl() {
|
||
return false;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/dialect-adapter.d.ts b/node_modules/kysely/dist/esm/dialect/dialect-adapter.d.ts
|
||
index 73a925a..fe7f1b3 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/dialect-adapter.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/dialect/dialect-adapter.d.ts
|
||
@@ -8,6 +8,14 @@ import { Kysely } from '../kysely.js';
|
||
* it. For that there's a `supportsTransactionalDdl` boolean in this interface.
|
||
*/
|
||
export interface DialectAdapter {
|
||
+ /**
|
||
+ * Whether or not this dialect supports `if not exists` in creation of tables/schemas/views/etc.
|
||
+ *
|
||
+ * If this is false, Kysely's internal migrations tables and schemas are created
|
||
+ * without `if not exists` in migrations. This is not a problem if the dialect
|
||
+ * supports transactional DDL.
|
||
+ */
|
||
+ readonly supportsCreateIfNotExists: boolean;
|
||
/**
|
||
* Whether or not this dialect supports transactional DDL.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/postgres/postgres-driver.js b/node_modules/kysely/dist/esm/dialect/postgres/postgres-driver.js
|
||
index c83b381..3bcddb6 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/postgres/postgres-driver.js
|
||
+++ b/node_modules/kysely/dist/esm/dialect/postgres/postgres-driver.js
|
||
@@ -26,7 +26,7 @@ export class PostgresDriver {
|
||
// The driver must take care of calling `onCreateConnection` when a new
|
||
// connection is created. The `pg` module doesn't provide an async hook
|
||
// for the connection creation. We need to call the method explicitly.
|
||
- if (this.#config?.onCreateConnection) {
|
||
+ if (this.#config.onCreateConnection) {
|
||
await this.#config.onCreateConnection(connection);
|
||
}
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.d.ts b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.d.ts
|
||
index 69a0a7d..550df53 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.d.ts
|
||
@@ -1,7 +1,7 @@
|
||
import { Kysely } from '../../kysely.js';
|
||
import { DialectAdapterBase } from '../dialect-adapter-base.js';
|
||
import { MigrationLockOptions } from '../dialect-adapter.js';
|
||
-export declare class SqliteAdapter implements DialectAdapterBase {
|
||
+export declare class SqliteAdapter extends DialectAdapterBase {
|
||
/**
|
||
* Whether or not this dialect supports transactional DDL.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.js b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.js
|
||
index f095ebb..4f1b71f 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.js
|
||
+++ b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.js
|
||
@@ -1,5 +1,6 @@
|
||
/// <reference types="./sqlite-adapter.d.ts" />
|
||
-export class SqliteAdapter {
|
||
+import { DialectAdapterBase } from '../dialect-adapter-base.js';
|
||
+export class SqliteAdapter extends DialectAdapterBase {
|
||
get supportsTransactionalDdl() {
|
||
return false;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts
|
||
index 810af98..a873682 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts
|
||
@@ -37,4 +37,5 @@ export interface SqliteStatement {
|
||
changes: number | bigint;
|
||
lastInsertRowid: number | bigint;
|
||
};
|
||
+ iterate(parameters: ReadonlyArray<unknown>): IterableIterator<unknown>;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-driver.js b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-driver.js
|
||
index 23f21e3..d20935f 100644
|
||
--- a/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-driver.js
|
||
+++ b/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-driver.js
|
||
@@ -1,4 +1,5 @@
|
||
/// <reference types="./sqlite-driver.d.ts" />
|
||
+import { SelectQueryNode } from '../../operation-node/select-query-node.js';
|
||
import { CompiledQuery } from '../../query-compiler/compiled-query.js';
|
||
import { freeze, isFunction } from '../../util/object-utils.js';
|
||
export class SqliteDriver {
|
||
@@ -67,8 +68,20 @@ class SqliteConnection {
|
||
});
|
||
}
|
||
}
|
||
- async *streamQuery() {
|
||
- throw new Error("Sqlite driver doesn't support streaming");
|
||
+ async *streamQuery(compiledQuery, _chunkSize) {
|
||
+ const { sql, parameters, query } = compiledQuery;
|
||
+ const stmt = this.#db.prepare(sql);
|
||
+ if (SelectQueryNode.is(query)) {
|
||
+ const iter = stmt.iterate(parameters);
|
||
+ for (const row of iter) {
|
||
+ yield {
|
||
+ rows: [row],
|
||
+ };
|
||
+ }
|
||
+ }
|
||
+ else {
|
||
+ throw new Error('Sqlite driver only supports streaming of select queries');
|
||
+ }
|
||
}
|
||
}
|
||
class ConnectionMutex {
|
||
diff --git a/node_modules/kysely/dist/esm/driver/driver.d.ts b/node_modules/kysely/dist/esm/driver/driver.d.ts
|
||
index 00babcb..11d2d55 100644
|
||
--- a/node_modules/kysely/dist/esm/driver/driver.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/driver/driver.d.ts
|
||
@@ -40,5 +40,5 @@ export interface Driver {
|
||
export interface TransactionSettings {
|
||
readonly isolationLevel?: IsolationLevel;
|
||
}
|
||
-export declare const TRANSACTION_ISOLATION_LEVELS: readonly ["read uncommitted", "read committed", "repeatable read", "serializable"];
|
||
+export declare const TRANSACTION_ISOLATION_LEVELS: readonly ["read uncommitted", "read committed", "repeatable read", "serializable", "snapshot"];
|
||
export type IsolationLevel = ArrayItemType<typeof TRANSACTION_ISOLATION_LEVELS>;
|
||
diff --git a/node_modules/kysely/dist/esm/driver/driver.js b/node_modules/kysely/dist/esm/driver/driver.js
|
||
index 88c2a07..2ae1469 100644
|
||
--- a/node_modules/kysely/dist/esm/driver/driver.js
|
||
+++ b/node_modules/kysely/dist/esm/driver/driver.js
|
||
@@ -4,4 +4,5 @@ export const TRANSACTION_ISOLATION_LEVELS = [
|
||
'read committed',
|
||
'repeatable read',
|
||
'serializable',
|
||
+ 'snapshot',
|
||
];
|
||
diff --git a/node_modules/kysely/dist/esm/driver/single-connection-provider.js b/node_modules/kysely/dist/esm/driver/single-connection-provider.js
|
||
index aafebb7..ef341ee 100644
|
||
--- a/node_modules/kysely/dist/esm/driver/single-connection-provider.js
|
||
+++ b/node_modules/kysely/dist/esm/driver/single-connection-provider.js
|
||
@@ -1,4 +1,5 @@
|
||
/// <reference types="./single-connection-provider.d.ts" />
|
||
+const ignoreError = () => { };
|
||
export class SingleConnectionProvider {
|
||
#connection;
|
||
#runningPromise;
|
||
@@ -7,17 +8,15 @@ export class SingleConnectionProvider {
|
||
}
|
||
async provideConnection(consumer) {
|
||
while (this.#runningPromise) {
|
||
- await this.#runningPromise;
|
||
+ await this.#runningPromise.catch(ignoreError);
|
||
}
|
||
- const promise = this.#run(consumer);
|
||
- this.#runningPromise = promise
|
||
- .then(() => {
|
||
- this.#runningPromise = undefined;
|
||
- })
|
||
- .catch(() => {
|
||
+ // `#runningPromise` must be set to undefined before it's
|
||
+ // resolved or rejected. Otherwise the while loop above
|
||
+ // will misbehave.
|
||
+ this.#runningPromise = this.#run(consumer).finally(() => {
|
||
this.#runningPromise = undefined;
|
||
});
|
||
- return promise;
|
||
+ return this.#runningPromise;
|
||
}
|
||
// Run the runner in an async function to make sure it doesn't
|
||
// throw synchronous errors.
|
||
diff --git a/node_modules/kysely/dist/esm/expression/expression-builder.d.ts b/node_modules/kysely/dist/esm/expression/expression-builder.d.ts
|
||
index 7b4a340..07933a1 100644
|
||
--- a/node_modules/kysely/dist/esm/expression/expression-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/expression/expression-builder.d.ts
|
||
@@ -14,6 +14,7 @@ import { JSONPathBuilder } from '../query-builder/json-path-builder.js';
|
||
import { OperandExpression } from '../parser/expression-parser.js';
|
||
import { CallbackSelection, SelectCallback, SelectExpression, Selection } from '../parser/select-parser.js';
|
||
import { RefTuple2, RefTuple3, RefTuple4, RefTuple5, ValTuple2, ValTuple3, ValTuple4, ValTuple5 } from '../parser/tuple-parser.js';
|
||
+import { Selectable } from '../util/column-type.js';
|
||
export interface ExpressionBuilder<DB, TB extends keyof DB> {
|
||
/**
|
||
* Creates a binary expression.
|
||
@@ -344,6 +345,30 @@ export interface ExpressionBuilder<DB, TB extends keyof DB> {
|
||
*/
|
||
ref<RE extends StringReference<DB, TB>>(reference: RE): ExpressionWrapper<DB, TB, ExtractTypeFromReferenceExpression<DB, TB, RE>>;
|
||
ref<RE extends StringReference<DB, TB>>(reference: RE, op: JSONOperatorWith$): JSONPathBuilder<ExtractTypeFromReferenceExpression<DB, TB, RE>>;
|
||
+ /**
|
||
+ * Creates a table reference.
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.selectFrom('person')
|
||
+ * .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
+ * .select(eb => [
|
||
+ * 'person.id',
|
||
+ * sql<Pet[]>`jsonb_agg(${eb.table('pet')})`.as('pets')
|
||
+ * ])
|
||
+ * .groupBy('person.id')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * select "person"."id", jsonb_agg("pet") as "pets"
|
||
+ * from "person"
|
||
+ * inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
+ * group by "person"."id"
|
||
+ * ```
|
||
+ */
|
||
+ table<T extends TB & string>(table: T): ExpressionWrapper<DB, TB, Selectable<DB[T]>>;
|
||
/**
|
||
* Returns a value expression.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/expression/expression-builder.js b/node_modules/kysely/dist/esm/expression/expression-builder.js
|
||
index f550460..86b0098 100644
|
||
--- a/node_modules/kysely/dist/esm/expression/expression-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/expression/expression-builder.js
|
||
@@ -1,7 +1,7 @@
|
||
/// <reference types="./expression-builder.d.ts" />
|
||
import { createSelectQueryBuilder, } from '../query-builder/select-query-builder.js';
|
||
import { SelectQueryNode } from '../operation-node/select-query-node.js';
|
||
-import { parseTableExpressionOrList, } from '../parser/table-parser.js';
|
||
+import { parseTableExpressionOrList, parseTable, } from '../parser/table-parser.js';
|
||
import { WithSchemaPlugin } from '../plugin/with-schema/with-schema-plugin.js';
|
||
import { createQueryId } from '../util/query-id.js';
|
||
import { createFunctionModule, } from '../query-builder/function-module.js';
|
||
@@ -11,7 +11,7 @@ import { ParensNode } from '../operation-node/parens-node.js';
|
||
import { ExpressionWrapper } from './expression-wrapper.js';
|
||
import { OperatorNode, } from '../operation-node/operator-node.js';
|
||
import { parseUnaryOperation } from '../parser/unary-operation-parser.js';
|
||
-import { parseSafeImmediateValue, parseValueExpression, parseValueExpressionOrList, } from '../parser/value-parser.js';
|
||
+import { parseSafeImmediateValue, parseValueExpression, } from '../parser/value-parser.js';
|
||
import { NOOP_QUERY_EXECUTOR } from '../query-executor/noop-query-executor.js';
|
||
import { CaseBuilder } from '../query-builder/case-builder.js';
|
||
import { CaseNode } from '../operation-node/case-node.js';
|
||
@@ -58,8 +58,11 @@ export function createExpressionBuilder(executor = NOOP_QUERY_EXECUTOR) {
|
||
}
|
||
return new JSONPathBuilder(parseJSONReference(reference, op));
|
||
},
|
||
+ table(table) {
|
||
+ return new ExpressionWrapper(parseTable(table));
|
||
+ },
|
||
val(value) {
|
||
- return new ExpressionWrapper(parseValueExpressionOrList(value));
|
||
+ return new ExpressionWrapper(parseValueExpression(value));
|
||
},
|
||
refTuple(...values) {
|
||
return new ExpressionWrapper(TupleNode.create(values.map(parseReferenceExpression)));
|
||
diff --git a/node_modules/kysely/dist/esm/index.d.ts b/node_modules/kysely/dist/esm/index.d.ts
|
||
index cf166f8..37cf701 100644
|
||
--- a/node_modules/kysely/dist/esm/index.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/index.d.ts
|
||
@@ -72,6 +72,12 @@ export * from './dialect/postgres/postgres-dialect.js';
|
||
export * from './dialect/sqlite/sqlite-query-compiler.js';
|
||
export * from './dialect/sqlite/sqlite-introspector.js';
|
||
export * from './dialect/sqlite/sqlite-adapter.js';
|
||
+export * from './dialect/mssql/mssql-adapter.js';
|
||
+export * from './dialect/mssql/mssql-dialect-config.js';
|
||
+export * from './dialect/mssql/mssql-dialect.js';
|
||
+export * from './dialect/mssql/mssql-driver.js';
|
||
+export * from './dialect/mssql/mssql-introspector.js';
|
||
+export * from './dialect/mssql/mssql-query-compiler.js';
|
||
export * from './query-compiler/default-query-compiler.js';
|
||
export * from './query-compiler/query-compiler.js';
|
||
export * from './migration/migrator.js';
|
||
@@ -176,7 +182,7 @@ export * from './util/compilable.js';
|
||
export * from './util/explainable.js';
|
||
export * from './util/streamable.js';
|
||
export * from './util/log.js';
|
||
-export { AnyAliasedColumn, AnyAliasedColumnWithTable, AnyColumn, AnyColumnWithTable, Equals, UnknownRow, Simplify, SqlBool, } from './util/type-utils.js';
|
||
+export { AnyAliasedColumn, AnyAliasedColumnWithTable, AnyColumn, AnyColumnWithTable, Equals, UnknownRow, Simplify, SqlBool, Nullable, } from './util/type-utils.js';
|
||
export * from './util/infer-result.js';
|
||
export { logOnce } from './util/log-once.js';
|
||
export { SelectExpression, SelectCallback, SelectArg, Selection, CallbackSelection, } from './parser/select-parser.js';
|
||
diff --git a/node_modules/kysely/dist/esm/kysely.d.ts b/node_modules/kysely/dist/esm/kysely.d.ts
|
||
index 52e909a..8e45b8c 100644
|
||
--- a/node_modules/kysely/dist/esm/kysely.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/kysely.d.ts
|
||
@@ -66,7 +66,7 @@ export declare class Kysely<DB> extends QueryCreator<DB> implements QueryExecuto
|
||
/**
|
||
* Returns the {@link SchemaModule} module for building database schema.
|
||
*/
|
||
- get schema(): SchemaModule;
|
||
+ get schema(): SchemaModule<DB>;
|
||
/**
|
||
* Returns a the {@link DynamicModule} module.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/migration/migrator.js b/node_modules/kysely/dist/esm/migration/migrator.js
|
||
index 8c7a0b4..7d3a26a 100644
|
||
--- a/node_modules/kysely/dist/esm/migration/migrator.js
|
||
+++ b/node_modules/kysely/dist/esm/migration/migrator.js
|
||
@@ -218,10 +218,7 @@ export class Migrator {
|
||
}
|
||
if (!(await this.#doesSchemaExists())) {
|
||
try {
|
||
- await this.#props.db.schema
|
||
- .createSchema(this.#migrationTableSchema)
|
||
- .ifNotExists()
|
||
- .execute();
|
||
+ await this.#createIfNotExists(this.#props.db.schema.createSchema(this.#migrationTableSchema));
|
||
}
|
||
catch (error) {
|
||
// At least on PostgreSQL, `if not exists` doesn't guarantee the `create schema`
|
||
@@ -237,20 +234,15 @@ export class Migrator {
|
||
if (!(await this.#doesTableExists(this.#migrationTable))) {
|
||
try {
|
||
if (this.#migrationTableSchema) {
|
||
- await this.#props.db.schema
|
||
- .createSchema(this.#migrationTableSchema)
|
||
- .ifNotExists()
|
||
- .execute();
|
||
+ await this.#createIfNotExists(this.#props.db.schema.createSchema(this.#migrationTableSchema));
|
||
}
|
||
- await this.#props.db.schema
|
||
+ await this.#createIfNotExists(this.#props.db.schema
|
||
.withPlugin(this.#schemaPlugin)
|
||
.createTable(this.#migrationTable)
|
||
- .ifNotExists()
|
||
.addColumn('name', 'varchar(255)', (col) => col.notNull().primaryKey())
|
||
// The migration run time as ISO string. This is not a real date type as we
|
||
// can't know which data type is supported by all future dialects.
|
||
- .addColumn('timestamp', 'varchar(255)', (col) => col.notNull())
|
||
- .execute();
|
||
+ .addColumn('timestamp', 'varchar(255)', (col) => col.notNull()));
|
||
}
|
||
catch (error) {
|
||
// At least on PostgreSQL, `if not exists` doesn't guarantee the `create table`
|
||
@@ -265,13 +257,11 @@ export class Migrator {
|
||
async #ensureMigrationLockTableExists() {
|
||
if (!(await this.#doesTableExists(this.#migrationLockTable))) {
|
||
try {
|
||
- await this.#props.db.schema
|
||
+ await this.#createIfNotExists(this.#props.db.schema
|
||
.withPlugin(this.#schemaPlugin)
|
||
.createTable(this.#migrationLockTable)
|
||
- .ifNotExists()
|
||
.addColumn('id', 'varchar(255)', (col) => col.notNull().primaryKey())
|
||
- .addColumn('is_locked', 'integer', (col) => col.notNull().defaultTo(0))
|
||
- .execute();
|
||
+ .addColumn('is_locked', 'integer', (col) => col.notNull().defaultTo(0)));
|
||
}
|
||
catch (error) {
|
||
// At least on PostgreSQL, `if not exists` doesn't guarantee the `create table`
|
||
@@ -479,6 +469,12 @@ export class Migrator {
|
||
}
|
||
return { results };
|
||
}
|
||
+ async #createIfNotExists(qb) {
|
||
+ if (this.#props.db.getExecutor().adapter.supportsCreateIfNotExists) {
|
||
+ qb = qb.ifNotExists();
|
||
+ }
|
||
+ await qb.execute();
|
||
+ }
|
||
}
|
||
class MigrationResultSetError extends Error {
|
||
#resultSet;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/add-index-node.d.ts b/node_modules/kysely/dist/esm/operation-node/add-index-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..b81f95f
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/add-index-node.d.ts
|
||
@@ -0,0 +1,21 @@
|
||
+import { IdentifierNode } from './identifier-node.js';
|
||
+import { OperationNode } from './operation-node.js';
|
||
+import { RawNode } from './raw-node.js';
|
||
+export type AddIndexNodeProps = Omit<AddIndexNode, 'kind' | 'name'>;
|
||
+export interface AddIndexNode extends OperationNode {
|
||
+ readonly kind: 'AddIndexNode';
|
||
+ readonly name: IdentifierNode;
|
||
+ readonly columns?: OperationNode[];
|
||
+ readonly unique?: boolean;
|
||
+ readonly using?: RawNode;
|
||
+ readonly ifNotExists?: boolean;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const AddIndexNode: Readonly<{
|
||
+ is(node: OperationNode): node is AddIndexNode;
|
||
+ create(name: string): AddIndexNode;
|
||
+ cloneWith(node: AddIndexNode, props: AddIndexNodeProps): AddIndexNode;
|
||
+ cloneWithColumns(node: AddIndexNode, columns: OperationNode[]): AddIndexNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/add-index-node.js b/node_modules/kysely/dist/esm/operation-node/add-index-node.js
|
||
new file mode 100644
|
||
index 0000000..134b7d8
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/add-index-node.js
|
||
@@ -0,0 +1,29 @@
|
||
+/// <reference types="./add-index-node.d.ts" />
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+import { IdentifierNode } from './identifier-node.js';
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export const AddIndexNode = freeze({
|
||
+ is(node) {
|
||
+ return node.kind === 'AddIndexNode';
|
||
+ },
|
||
+ create(name) {
|
||
+ return freeze({
|
||
+ kind: 'AddIndexNode',
|
||
+ name: IdentifierNode.create(name)
|
||
+ });
|
||
+ },
|
||
+ cloneWith(node, props) {
|
||
+ return freeze({
|
||
+ ...node,
|
||
+ ...props,
|
||
+ });
|
||
+ },
|
||
+ cloneWithColumns(node, columns) {
|
||
+ return freeze({
|
||
+ ...node,
|
||
+ columns: [...(node.columns || []), ...columns],
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/alter-table-node.d.ts b/node_modules/kysely/dist/esm/operation-node/alter-table-node.d.ts
|
||
index 5b03535..b09aca3 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/alter-table-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/alter-table-node.d.ts
|
||
@@ -8,7 +8,9 @@ import { AlterColumnNode } from './alter-column-node.js';
|
||
import { AddConstraintNode } from './add-constraint-node.js';
|
||
import { DropConstraintNode } from './drop-constraint-node.js';
|
||
import { ModifyColumnNode } from './modify-column-node.js';
|
||
-export type AlterTableNodeTableProps = Pick<AlterTableNode, 'renameTo' | 'setSchema' | 'addConstraint' | 'dropConstraint'>;
|
||
+import { DropIndexNode } from './drop-index-node.js';
|
||
+import { AddIndexNode } from './add-index-node.js';
|
||
+export type AlterTableNodeTableProps = Pick<AlterTableNode, 'renameTo' | 'setSchema' | 'addConstraint' | 'dropConstraint' | 'addIndex' | 'dropIndex'>;
|
||
export type AlterTableColumnAlterationNode = RenameColumnNode | AddColumnNode | DropColumnNode | AlterColumnNode | ModifyColumnNode;
|
||
export interface AlterTableNode extends OperationNode {
|
||
readonly kind: 'AlterTableNode';
|
||
@@ -18,6 +20,8 @@ export interface AlterTableNode extends OperationNode {
|
||
readonly columnAlterations?: ReadonlyArray<AlterTableColumnAlterationNode>;
|
||
readonly addConstraint?: AddConstraintNode;
|
||
readonly dropConstraint?: DropConstraintNode;
|
||
+ readonly addIndex?: AddIndexNode;
|
||
+ readonly dropIndex?: DropIndexNode;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/column-definition-node.d.ts b/node_modules/kysely/dist/esm/operation-node/column-definition-node.d.ts
|
||
index 6442d83..b518d35 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/column-definition-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/column-definition-node.d.ts
|
||
@@ -20,6 +20,7 @@ export interface ColumnDefinitionNode extends OperationNode {
|
||
readonly unsigned?: boolean;
|
||
readonly frontModifiers?: ReadonlyArray<OperationNode>;
|
||
readonly endModifiers?: ReadonlyArray<OperationNode>;
|
||
+ readonly nullsNotDistinct?: boolean;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/column-update-node.d.ts b/node_modules/kysely/dist/esm/operation-node/column-update-node.d.ts
|
||
index 2e8ab34..bb59937 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/column-update-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/column-update-node.d.ts
|
||
@@ -1,8 +1,7 @@
|
||
-import { ColumnNode } from './column-node.js';
|
||
import { OperationNode } from './operation-node.js';
|
||
export interface ColumnUpdateNode extends OperationNode {
|
||
readonly kind: 'ColumnUpdateNode';
|
||
- readonly column: ColumnNode;
|
||
+ readonly column: OperationNode;
|
||
readonly value: OperationNode;
|
||
}
|
||
/**
|
||
@@ -10,5 +9,5 @@ export interface ColumnUpdateNode extends OperationNode {
|
||
*/
|
||
export declare const ColumnUpdateNode: Readonly<{
|
||
is(node: OperationNode): node is ColumnUpdateNode;
|
||
- create(column: ColumnNode, value: OperationNode): ColumnUpdateNode;
|
||
+ create(column: OperationNode, value: OperationNode): ColumnUpdateNode;
|
||
}>;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/create-index-node.d.ts b/node_modules/kysely/dist/esm/operation-node/create-index-node.d.ts
|
||
index a3a99d1..d474032 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/create-index-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/create-index-node.d.ts
|
||
@@ -14,6 +14,7 @@ export interface CreateIndexNode extends OperationNode {
|
||
readonly using?: RawNode;
|
||
readonly ifNotExists?: boolean;
|
||
readonly where?: WhereNode;
|
||
+ readonly nullsNotDistinct?: boolean;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/create-table-node.d.ts b/node_modules/kysely/dist/esm/operation-node/create-table-node.d.ts
|
||
index cc8ceda..f36036c 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/create-table-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/create-table-node.d.ts
|
||
@@ -16,6 +16,7 @@ export interface CreateTableNode extends OperationNode {
|
||
readonly onCommit?: OnCommitAction;
|
||
readonly frontModifiers?: ReadonlyArray<OperationNode>;
|
||
readonly endModifiers?: ReadonlyArray<OperationNode>;
|
||
+ readonly selectQuery?: OperationNode;
|
||
}
|
||
/**
|
||
* @internal
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/create-trigger-node.d.ts b/node_modules/kysely/dist/esm/operation-node/create-trigger-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..8244954
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/create-trigger-node.d.ts
|
||
@@ -0,0 +1,34 @@
|
||
+import { OperationNode } from './operation-node.js';
|
||
+import { TableNode } from './table-node.js';
|
||
+import { IdentifierNode } from './identifier-node.js';
|
||
+import { QueryNode } from './query-node.js';
|
||
+import { TriggerEventNode } from './trigger-event-node.js';
|
||
+import { TriggerOrderNode } from './trigger-order-node.js';
|
||
+import { FunctionNode } from './function-node.js';
|
||
+export type TriggerTime = 'after' | 'before' | 'instead of';
|
||
+export type CreateTriggerNodeParams = Omit<CreateTriggerNode, 'kind' | 'name' | 'queries'>;
|
||
+export interface CreateTriggerNode extends OperationNode {
|
||
+ readonly kind: 'CreateTriggerNode';
|
||
+ readonly name: IdentifierNode;
|
||
+ readonly queries?: ReadonlyArray<QueryNode>;
|
||
+ readonly function?: FunctionNode;
|
||
+ readonly time?: TriggerTime;
|
||
+ readonly events?: ReadonlyArray<TriggerEventNode>;
|
||
+ readonly table?: TableNode;
|
||
+ readonly orReplace?: boolean;
|
||
+ readonly ifNotExists?: boolean;
|
||
+ readonly when?: OperationNode;
|
||
+ readonly temporary?: boolean;
|
||
+ readonly forEach?: 'row' | 'statement';
|
||
+ readonly order?: TriggerOrderNode;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const CreateTriggerNode: Readonly<{
|
||
+ is(node: OperationNode): node is CreateTriggerNode;
|
||
+ create(name: IdentifierNode): CreateTriggerNode;
|
||
+ cloneWithQuery(createTrigger: CreateTriggerNode, query: QueryNode): CreateTriggerNode;
|
||
+ cloneWithEvent(createTrigger: CreateTriggerNode, event: TriggerEventNode): CreateTriggerNode;
|
||
+ cloneWith(createTrigger: CreateTriggerNode, params: CreateTriggerNodeParams): CreateTriggerNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/create-trigger-node.js b/node_modules/kysely/dist/esm/operation-node/create-trigger-node.js
|
||
new file mode 100644
|
||
index 0000000..90dd0f3
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/create-trigger-node.js
|
||
@@ -0,0 +1,34 @@
|
||
+/// <reference types="./create-trigger-node.d.ts" />
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export const CreateTriggerNode = freeze({
|
||
+ is(node) {
|
||
+ return node.kind === 'CreateTriggerNode';
|
||
+ },
|
||
+ create(name) {
|
||
+ return freeze({
|
||
+ kind: 'CreateTriggerNode',
|
||
+ name,
|
||
+ });
|
||
+ },
|
||
+ cloneWithQuery(createTrigger, query) {
|
||
+ return freeze({
|
||
+ ...createTrigger,
|
||
+ queries: freeze([...(createTrigger.queries || []), query]),
|
||
+ });
|
||
+ },
|
||
+ cloneWithEvent(createTrigger, event) {
|
||
+ return freeze({
|
||
+ ...createTrigger,
|
||
+ events: freeze([...(createTrigger.events || []), event]),
|
||
+ });
|
||
+ },
|
||
+ cloneWith(createTrigger, params) {
|
||
+ return freeze({
|
||
+ ...createTrigger,
|
||
+ ...params,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/drop-trigger-node.d.ts b/node_modules/kysely/dist/esm/operation-node/drop-trigger-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..4e38772
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/drop-trigger-node.d.ts
|
||
@@ -0,0 +1,17 @@
|
||
+import { OperationNode } from './operation-node.js';
|
||
+import { SchemableIdentifierNode } from './schemable-identifier-node.js';
|
||
+export type DropTriggerNodeParams = Omit<Partial<DropTriggerNode>, 'kind' | 'name'>;
|
||
+export interface DropTriggerNode extends OperationNode {
|
||
+ readonly kind: 'DropTriggerNode';
|
||
+ readonly name: SchemableIdentifierNode;
|
||
+ readonly ifExists?: boolean;
|
||
+ readonly cascade?: boolean;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const DropTriggerNode: Readonly<{
|
||
+ is(node: OperationNode): node is DropTriggerNode;
|
||
+ create(name: SchemableIdentifierNode): DropTriggerNode;
|
||
+ cloneWith(dropTrigger: DropTriggerNode, params: DropTriggerNodeParams): DropTriggerNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/drop-trigger-node.js b/node_modules/kysely/dist/esm/operation-node/drop-trigger-node.js
|
||
new file mode 100644
|
||
index 0000000..ebabeb4
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/drop-trigger-node.js
|
||
@@ -0,0 +1,22 @@
|
||
+/// <reference types="./drop-trigger-node.d.ts" />
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export const DropTriggerNode = freeze({
|
||
+ is(node) {
|
||
+ return node.kind === 'DropTriggerNode';
|
||
+ },
|
||
+ create(name) {
|
||
+ return freeze({
|
||
+ kind: 'DropTriggerNode',
|
||
+ name,
|
||
+ });
|
||
+ },
|
||
+ cloneWith(dropTrigger, params) {
|
||
+ return freeze({
|
||
+ ...dropTrigger,
|
||
+ ...params,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.d.ts b/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.d.ts
|
||
index 6b3a13c..5d7fd9d 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.d.ts
|
||
@@ -85,6 +85,11 @@ import { JSONPathNode } from './json-path-node.js';
|
||
import { JSONPathLegNode } from './json-path-leg-node.js';
|
||
import { JSONOperatorChainNode } from './json-operator-chain-node.js';
|
||
import { TupleNode } from './tuple-node.js';
|
||
+import { AddIndexNode } from './add-index-node.js';
|
||
+import { CreateTriggerNode } from './create-trigger-node.js';
|
||
+import { DropTriggerNode } from './drop-trigger-node.js';
|
||
+import { TriggerEventNode } from './trigger-event-node.js';
|
||
+import { TriggerOrderNode } from './trigger-order-node.js';
|
||
/**
|
||
* Transforms an operation node tree into another one.
|
||
*
|
||
@@ -139,9 +144,13 @@ export declare class OperationNodeTransformer {
|
||
protected transformDeleteQuery(node: DeleteQueryNode): DeleteQueryNode;
|
||
protected transformReturning(node: ReturningNode): ReturningNode;
|
||
protected transformCreateTable(node: CreateTableNode): CreateTableNode;
|
||
+ protected transformCreateTrigger(node: CreateTriggerNode): CreateTriggerNode;
|
||
+ protected transformTriggerEvent(node: TriggerEventNode): TriggerEventNode;
|
||
+ protected transformTriggerOrder(node: TriggerOrderNode): TriggerOrderNode;
|
||
protected transformColumnDefinition(node: ColumnDefinitionNode): ColumnDefinitionNode;
|
||
protected transformAddColumn(node: AddColumnNode): AddColumnNode;
|
||
protected transformDropTable(node: DropTableNode): DropTableNode;
|
||
+ protected transformDropTrigger(node: DropTriggerNode): DropTriggerNode;
|
||
protected transformOrderBy(node: OrderByNode): OrderByNode;
|
||
protected transformOrderByItem(node: OrderByItemNode): OrderByItemNode;
|
||
protected transformGroupBy(node: GroupByNode): GroupByNode;
|
||
@@ -199,6 +208,7 @@ export declare class OperationNodeTransformer {
|
||
protected transformJSONPathLeg(node: JSONPathLegNode): JSONPathLegNode;
|
||
protected transformJSONOperatorChain(node: JSONOperatorChainNode): JSONOperatorChainNode;
|
||
protected transformTuple(node: TupleNode): TupleNode;
|
||
+ protected transformAddIndex(node: AddIndexNode): AddIndexNode;
|
||
protected transformDataType(node: DataTypeNode): DataTypeNode;
|
||
protected transformSelectAll(node: SelectAllNode): SelectAllNode;
|
||
protected transformIdentifier(node: IdentifierNode): IdentifierNode;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.js b/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.js
|
||
index f35075b..9e216f8 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.js
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.js
|
||
@@ -119,6 +119,11 @@ export class OperationNodeTransformer {
|
||
JSONPathLegNode: this.transformJSONPathLeg.bind(this),
|
||
JSONOperatorChainNode: this.transformJSONOperatorChain.bind(this),
|
||
TupleNode: this.transformTuple.bind(this),
|
||
+ AddIndexNode: this.transformAddIndex.bind(this),
|
||
+ CreateTriggerNode: this.transformCreateTrigger.bind(this),
|
||
+ TriggerEventNode: this.transformTriggerEvent.bind(this),
|
||
+ TriggerOrderNode: this.transformTriggerOrder.bind(this),
|
||
+ DropTriggerNode: this.transformDropTrigger.bind(this),
|
||
});
|
||
transformNode(node) {
|
||
if (!node) {
|
||
@@ -295,6 +300,38 @@ export class OperationNodeTransformer {
|
||
onCommit: node.onCommit,
|
||
frontModifiers: this.transformNodeList(node.frontModifiers),
|
||
endModifiers: this.transformNodeList(node.endModifiers),
|
||
+ selectQuery: this.transformNode(node.selectQuery),
|
||
+ });
|
||
+ }
|
||
+ transformCreateTrigger(node) {
|
||
+ return requireAllProps({
|
||
+ kind: 'CreateTriggerNode',
|
||
+ name: this.transformNode(node.name),
|
||
+ table: this.transformNode(node.table),
|
||
+ ifNotExists: node.ifNotExists,
|
||
+ time: node.time,
|
||
+ events: this.transformNodeList(node.events),
|
||
+ forEach: node.forEach,
|
||
+ orReplace: node.orReplace,
|
||
+ temporary: node.temporary,
|
||
+ queries: this.transformNodeList(node.queries),
|
||
+ function: this.transformNode(node.function),
|
||
+ when: this.transformNode(node.when),
|
||
+ order: this.transformNode(node.order),
|
||
+ });
|
||
+ }
|
||
+ transformTriggerEvent(node) {
|
||
+ return requireAllProps({
|
||
+ kind: 'TriggerEventNode',
|
||
+ event: node.event,
|
||
+ columns: this.transformNodeList(node.columns),
|
||
+ });
|
||
+ }
|
||
+ transformTriggerOrder(node) {
|
||
+ return requireAllProps({
|
||
+ kind: 'TriggerOrderNode',
|
||
+ order: node.order,
|
||
+ otherTriggerName: this.transformNode(node.otherTriggerName),
|
||
});
|
||
}
|
||
transformColumnDefinition(node) {
|
||
@@ -313,6 +350,7 @@ export class OperationNodeTransformer {
|
||
generated: this.transformNode(node.generated),
|
||
frontModifiers: this.transformNodeList(node.frontModifiers),
|
||
endModifiers: this.transformNodeList(node.endModifiers),
|
||
+ nullsNotDistinct: node.nullsNotDistinct,
|
||
});
|
||
}
|
||
transformAddColumn(node) {
|
||
@@ -329,6 +367,14 @@ export class OperationNodeTransformer {
|
||
cascade: node.cascade,
|
||
});
|
||
}
|
||
+ transformDropTrigger(node) {
|
||
+ return requireAllProps({
|
||
+ kind: 'DropTriggerNode',
|
||
+ name: this.transformNode(node.name),
|
||
+ ifExists: node.ifExists,
|
||
+ cascade: node.cascade,
|
||
+ });
|
||
+ }
|
||
transformOrderBy(node) {
|
||
return requireAllProps({
|
||
kind: 'OrderByNode',
|
||
@@ -414,6 +460,7 @@ export class OperationNodeTransformer {
|
||
using: this.transformNode(node.using),
|
||
ifNotExists: node.ifNotExists,
|
||
where: this.transformNode(node.where),
|
||
+ nullsNotDistinct: node.nullsNotDistinct,
|
||
});
|
||
}
|
||
transformList(node) {
|
||
@@ -443,6 +490,7 @@ export class OperationNodeTransformer {
|
||
kind: 'UniqueConstraintNode',
|
||
columns: this.transformNodeList(node.columns),
|
||
name: this.transformNode(node.name),
|
||
+ nullsNotDistinct: node.nullsNotDistinct,
|
||
});
|
||
}
|
||
transformForeignKeyConstraint(node) {
|
||
@@ -531,6 +579,8 @@ export class OperationNodeTransformer {
|
||
columnAlterations: this.transformNodeList(node.columnAlterations),
|
||
addConstraint: this.transformNode(node.addConstraint),
|
||
dropConstraint: this.transformNode(node.dropConstraint),
|
||
+ addIndex: this.transformNode(node.addIndex),
|
||
+ dropIndex: this.transformNode(node.dropIndex),
|
||
});
|
||
}
|
||
transformDropColumn(node) {
|
||
@@ -763,6 +813,16 @@ export class OperationNodeTransformer {
|
||
values: this.transformNodeList(node.values),
|
||
});
|
||
}
|
||
+ transformAddIndex(node) {
|
||
+ return requireAllProps({
|
||
+ kind: 'AddIndexNode',
|
||
+ name: this.transformNode(node.name),
|
||
+ columns: this.transformNodeList(node.columns),
|
||
+ unique: node.unique,
|
||
+ using: this.transformNode(node.using),
|
||
+ ifNotExists: node.ifNotExists,
|
||
+ });
|
||
+ }
|
||
transformDataType(node) {
|
||
// An Object.freezed leaf node. No need to clone.
|
||
return node;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.d.ts b/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.d.ts
|
||
index 7c267cd..6a66bc7 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.d.ts
|
||
@@ -85,6 +85,11 @@ import { JSONPathNode } from './json-path-node.js';
|
||
import { JSONPathLegNode } from './json-path-leg-node.js';
|
||
import { JSONOperatorChainNode } from './json-operator-chain-node.js';
|
||
import { TupleNode } from './tuple-node.js';
|
||
+import { AddIndexNode } from './add-index-node.js';
|
||
+import { CreateTriggerNode } from './create-trigger-node.js';
|
||
+import { DropTriggerNode } from './drop-trigger-node.js';
|
||
+import { TriggerEventNode } from './trigger-event-node.js';
|
||
+import { TriggerOrderNode } from './trigger-order-node.js';
|
||
export declare abstract class OperationNodeVisitor {
|
||
#private;
|
||
protected readonly nodeStack: OperationNode[];
|
||
@@ -108,9 +113,13 @@ export declare abstract class OperationNodeVisitor {
|
||
protected abstract visitDeleteQuery(node: DeleteQueryNode): void;
|
||
protected abstract visitReturning(node: ReturningNode): void;
|
||
protected abstract visitCreateTable(node: CreateTableNode): void;
|
||
+ protected abstract visitCreateTrigger(node: CreateTriggerNode): void;
|
||
+ protected abstract visitTriggerEvent(node: TriggerEventNode): void;
|
||
+ protected abstract visitTriggerOrder(node: TriggerOrderNode): void;
|
||
protected abstract visitAddColumn(node: AddColumnNode): void;
|
||
protected abstract visitColumnDefinition(node: ColumnDefinitionNode): void;
|
||
protected abstract visitDropTable(node: DropTableNode): void;
|
||
+ protected abstract visitDropTrigger(node: DropTriggerNode): void;
|
||
protected abstract visitOrderBy(node: OrderByNode): void;
|
||
protected abstract visitOrderByItem(node: OrderByItemNode): void;
|
||
protected abstract visitGroupBy(node: GroupByNode): void;
|
||
@@ -176,4 +185,5 @@ export declare abstract class OperationNodeVisitor {
|
||
protected abstract visitJSONPathLeg(node: JSONPathLegNode): void;
|
||
protected abstract visitJSONOperatorChain(node: JSONOperatorChainNode): void;
|
||
protected abstract visitTuple(node: TupleNode): void;
|
||
+ protected abstract visitAddIndex(node: AddIndexNode): void;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.js b/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.js
|
||
index 7ded762..cc6431e 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.js
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.js
|
||
@@ -92,6 +92,11 @@ export class OperationNodeVisitor {
|
||
JSONPathLegNode: this.visitJSONPathLeg.bind(this),
|
||
JSONOperatorChainNode: this.visitJSONOperatorChain.bind(this),
|
||
TupleNode: this.visitTuple.bind(this),
|
||
+ AddIndexNode: this.visitAddIndex.bind(this),
|
||
+ CreateTriggerNode: this.visitCreateTrigger.bind(this),
|
||
+ TriggerEventNode: this.visitTriggerEvent.bind(this),
|
||
+ TriggerOrderNode: this.visitTriggerOrder.bind(this),
|
||
+ DropTriggerNode: this.visitDropTrigger.bind(this),
|
||
});
|
||
visitNode = (node) => {
|
||
this.nodeStack.push(node);
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/operation-node.d.ts b/node_modules/kysely/dist/esm/operation-node/operation-node.d.ts
|
||
index 24cad68..a01b9ed 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/operation-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/operation-node.d.ts
|
||
@@ -1,4 +1,4 @@
|
||
-export type OperationNodeKind = 'IdentifierNode' | 'SchemableIdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode' | 'SelectModifierNode' | 'CreateTypeNode' | 'DropTypeNode' | 'ExplainNode' | 'DefaultInsertValueNode' | 'AggregateFunctionNode' | 'OverNode' | 'PartitionByNode' | 'PartitionByItemNode' | 'SetOperationNode' | 'BinaryOperationNode' | 'UnaryOperationNode' | 'UsingNode' | 'FunctionNode' | 'CaseNode' | 'WhenNode' | 'JSONReferenceNode' | 'JSONPathNode' | 'JSONPathLegNode' | 'JSONOperatorChainNode' | 'TupleNode';
|
||
+export type OperationNodeKind = 'IdentifierNode' | 'SchemableIdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode' | 'SelectModifierNode' | 'CreateTypeNode' | 'DropTypeNode' | 'ExplainNode' | 'DefaultInsertValueNode' | 'AggregateFunctionNode' | 'OverNode' | 'PartitionByNode' | 'PartitionByItemNode' | 'SetOperationNode' | 'BinaryOperationNode' | 'UnaryOperationNode' | 'UsingNode' | 'FunctionNode' | 'CaseNode' | 'WhenNode' | 'JSONReferenceNode' | 'JSONPathNode' | 'JSONPathLegNode' | 'JSONOperatorChainNode' | 'TupleNode' | 'AddIndexNode' | 'CreateTriggerNode' | 'TriggerEventNode' | 'TriggerOrderNode' | 'DropTriggerNode';
|
||
export interface OperationNode {
|
||
readonly kind: OperationNodeKind;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/operator-node.d.ts b/node_modules/kysely/dist/esm/operation-node/operator-node.d.ts
|
||
index 1076866..18b6e05 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/operator-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/operator-node.d.ts
|
||
@@ -1,11 +1,11 @@
|
||
import { OperationNode } from './operation-node.js';
|
||
-export declare const COMPARISON_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp"];
|
||
+export declare const COMPARISON_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "is distinct from", "is not distinct from"];
|
||
export declare const ARITHMETIC_OPERATORS: readonly ["+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>"];
|
||
export declare const JSON_OPERATORS: readonly ["->", "->>"];
|
||
-export declare const BINARY_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||"];
|
||
+export declare const BINARY_OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "is distinct from", "is not distinct from", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||"];
|
||
export declare const UNARY_FILTER_OPERATORS: readonly ["exists", "not exists"];
|
||
export declare const UNARY_OPERATORS: readonly ["not", "-", "exists", "not exists"];
|
||
-export declare const OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||", "->", "->>", "not", "-", "exists", "not exists", "between", "between symmetric"];
|
||
+export declare const OPERATORS: readonly ["=", "==", "!=", "<>", ">", ">=", "<", "<=", "in", "not in", "is", "is not", "like", "not like", "match", "ilike", "not ilike", "@>", "<@", "&&", "?", "?&", "!<", "!>", "<=>", "!~", "~", "~*", "!~*", "@@", "@@@", "!!", "<->", "regexp", "is distinct from", "is not distinct from", "+", "-", "*", "/", "%", "^", "&", "|", "#", "<<", ">>", "&&", "||", "->", "->>", "not", "-", "exists", "not exists", "between", "between symmetric"];
|
||
export type ComparisonOperator = (typeof COMPARISON_OPERATORS)[number];
|
||
export type ArithmeticOperator = (typeof ARITHMETIC_OPERATORS)[number];
|
||
export type JSONOperator = (typeof JSON_OPERATORS)[number];
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/operator-node.js b/node_modules/kysely/dist/esm/operation-node/operator-node.js
|
||
index ba655e6..2df5b92 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/operator-node.js
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/operator-node.js
|
||
@@ -35,6 +35,8 @@ export const COMPARISON_OPERATORS = [
|
||
'!!',
|
||
'<->',
|
||
'regexp',
|
||
+ 'is distinct from',
|
||
+ 'is not distinct from',
|
||
];
|
||
export const ARITHMETIC_OPERATORS = [
|
||
'+',
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/trigger-event-node.d.ts b/node_modules/kysely/dist/esm/operation-node/trigger-event-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..8a3677d
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/trigger-event-node.d.ts
|
||
@@ -0,0 +1,15 @@
|
||
+import { OperationNode } from './operation-node.js';
|
||
+export type TriggerEvent = 'delete' | 'update' | 'insert' | 'truncate';
|
||
+export type TriggerEventNodeParams = Omit<TriggerEventNode, 'kind'>;
|
||
+export interface TriggerEventNode extends OperationNode {
|
||
+ readonly kind: 'TriggerEventNode';
|
||
+ readonly event: TriggerEvent;
|
||
+ readonly columns?: ReadonlyArray<OperationNode>;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const TriggerEventNode: Readonly<{
|
||
+ is(node: OperationNode): node is TriggerEventNode;
|
||
+ create(event: TriggerEvent, columns?: ReadonlyArray<OperationNode>): TriggerEventNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/trigger-event-node.js b/node_modules/kysely/dist/esm/operation-node/trigger-event-node.js
|
||
new file mode 100644
|
||
index 0000000..6f97ee3
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/trigger-event-node.js
|
||
@@ -0,0 +1,17 @@
|
||
+/// <reference types="./trigger-event-node.d.ts" />
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export const TriggerEventNode = freeze({
|
||
+ is(node) {
|
||
+ return node.kind === 'TriggerEventNode';
|
||
+ },
|
||
+ create(event, columns) {
|
||
+ return freeze({
|
||
+ kind: 'TriggerEventNode',
|
||
+ event,
|
||
+ columns,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/trigger-order-node.d.ts b/node_modules/kysely/dist/esm/operation-node/trigger-order-node.d.ts
|
||
new file mode 100644
|
||
index 0000000..12bad8d
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/trigger-order-node.d.ts
|
||
@@ -0,0 +1,16 @@
|
||
+import { IdentifierNode } from './identifier-node.js';
|
||
+import { OperationNode } from './operation-node.js';
|
||
+export type TriggerOrder = 'follows' | 'precedes';
|
||
+export type TriggerOrderNodeParams = Omit<TriggerOrderNode, 'kind'>;
|
||
+export interface TriggerOrderNode extends OperationNode {
|
||
+ readonly kind: 'TriggerOrderNode';
|
||
+ readonly order: TriggerOrder;
|
||
+ readonly otherTriggerName: IdentifierNode;
|
||
+}
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export declare const TriggerOrderNode: Readonly<{
|
||
+ is(node: OperationNode): node is TriggerOrderNode;
|
||
+ create(order: TriggerOrder, otherTriggerName: IdentifierNode): TriggerOrderNode;
|
||
+}>;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/trigger-order-node.js b/node_modules/kysely/dist/esm/operation-node/trigger-order-node.js
|
||
new file mode 100644
|
||
index 0000000..eea5441
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/trigger-order-node.js
|
||
@@ -0,0 +1,17 @@
|
||
+/// <reference types="./trigger-order-node.d.ts" />
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+/**
|
||
+ * @internal
|
||
+ */
|
||
+export const TriggerOrderNode = freeze({
|
||
+ is(node) {
|
||
+ return node.kind === 'TriggerOrderNode';
|
||
+ },
|
||
+ create(order, otherTriggerName) {
|
||
+ return freeze({
|
||
+ kind: 'TriggerOrderNode',
|
||
+ order,
|
||
+ otherTriggerName,
|
||
+ });
|
||
+ },
|
||
+});
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.d.ts b/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.d.ts
|
||
index c179f1f..4a544de 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.d.ts
|
||
@@ -5,11 +5,14 @@ export interface UniqueConstraintNode extends OperationNode {
|
||
readonly kind: 'UniqueConstraintNode';
|
||
readonly columns: ReadonlyArray<ColumnNode>;
|
||
readonly name?: IdentifierNode;
|
||
+ readonly nullsNotDistinct?: boolean;
|
||
}
|
||
+export type UniqueConstraintNodeProps = Omit<Partial<UniqueConstraintNode>, 'kind'>;
|
||
/**
|
||
* @internal
|
||
*/
|
||
export declare const UniqueConstraintNode: Readonly<{
|
||
is(node: OperationNode): node is UniqueConstraintNode;
|
||
- create(columns: string[], constraintName?: string): UniqueConstraintNode;
|
||
+ create(columns: string[], constraintName?: string, nullsNotDistinct?: boolean): UniqueConstraintNode;
|
||
+ cloneWith(node: UniqueConstraintNode, props: UniqueConstraintNodeProps): UniqueConstraintNode;
|
||
}>;
|
||
diff --git a/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.js b/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.js
|
||
index 0c903a6..d05e623 100644
|
||
--- a/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.js
|
||
+++ b/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.js
|
||
@@ -9,11 +9,18 @@ export const UniqueConstraintNode = freeze({
|
||
is(node) {
|
||
return node.kind === 'UniqueConstraintNode';
|
||
},
|
||
- create(columns, constraintName) {
|
||
+ create(columns, constraintName, nullsNotDistinct) {
|
||
return freeze({
|
||
kind: 'UniqueConstraintNode',
|
||
columns: freeze(columns.map(ColumnNode.create)),
|
||
name: constraintName ? IdentifierNode.create(constraintName) : undefined,
|
||
+ nullsNotDistinct,
|
||
+ });
|
||
+ },
|
||
+ cloneWith(node, props) {
|
||
+ return freeze({
|
||
+ ...node,
|
||
+ ...props,
|
||
});
|
||
},
|
||
});
|
||
diff --git a/node_modules/kysely/dist/esm/parser/binary-operation-parser.js b/node_modules/kysely/dist/esm/parser/binary-operation-parser.js
|
||
index 7c6e042..b136830 100644
|
||
--- a/node_modules/kysely/dist/esm/parser/binary-operation-parser.js
|
||
+++ b/node_modules/kysely/dist/esm/parser/binary-operation-parser.js
|
||
@@ -35,7 +35,7 @@ export function parseFilterObject(obj, combinator) {
|
||
export function parseFilterList(list, combinator) {
|
||
const combine = combinator === 'and' ? AndNode.create : OrNode.create;
|
||
if (list.length === 0) {
|
||
- return ValueNode.createImmediate(combinator === 'and');
|
||
+ return BinaryOperationNode.create(ValueNode.createImmediate(1), OperatorNode.create('='), ValueNode.createImmediate(combinator === 'and' ? 1 : 0));
|
||
}
|
||
let node = toOperationNode(list[0]);
|
||
for (let i = 1; i < list.length; ++i) {
|
||
diff --git a/node_modules/kysely/dist/esm/parser/reference-parser.d.ts b/node_modules/kysely/dist/esm/parser/reference-parser.d.ts
|
||
index cd4d656..08204c7 100644
|
||
--- a/node_modules/kysely/dist/esm/parser/reference-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/parser/reference-parser.d.ts
|
||
@@ -16,7 +16,8 @@ export type StringReference<DB, TB extends keyof DB> = AnyColumn<DB, TB> | AnyCo
|
||
export type SimpleReferenceExpression<DB, TB extends keyof DB> = StringReference<DB, TB> | DynamicReferenceBuilder<any>;
|
||
export type ReferenceExpression<DB, TB extends keyof DB> = SimpleReferenceExpression<DB, TB> | ExpressionOrFactory<DB, TB, any>;
|
||
export type ReferenceExpressionOrList<DB, TB extends keyof DB> = ReferenceExpression<DB, TB> | ReadonlyArray<ReferenceExpression<DB, TB>>;
|
||
-export type ExtractTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = RE extends string ? SelectType<ExtractTypeFromStringReference<DB, TB, RE>> : RE extends SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends (qb: any) => SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends Expression<infer O> ? O : RE extends (qb: any) => Expression<infer O> ? O : DV;
|
||
+export type ExtractTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = SelectType<ExtractRawTypeFromReferenceExpression<DB, TB, RE, DV>>;
|
||
+export type ExtractRawTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = RE extends string ? ExtractTypeFromStringReference<DB, TB, RE> : RE extends SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends (qb: any) => SelectQueryBuilderExpression<infer O> ? O[keyof O] | null : RE extends Expression<infer O> ? O : RE extends (qb: any) => Expression<infer O> ? O : DV;
|
||
export type ExtractTypeFromStringReference<DB, TB extends keyof DB, RE extends string, DV = unknown> = RE extends `${infer SC}.${infer T}.${infer C}` ? `${SC}.${T}` extends TB ? C extends keyof DB[`${SC}.${T}`] ? DB[`${SC}.${T}`][C] : never : never : RE extends `${infer T}.${infer C}` ? T extends TB ? C extends keyof DB[T] ? DB[T][C] : never : never : RE extends AnyColumn<DB, TB> ? ExtractColumnType<DB, TB, RE> : DV;
|
||
export type OrderedColumnName<C extends string> = C extends `${string} ${infer O}` ? O extends OrderByDirection ? C : never : C;
|
||
export type ExtractColumnNameFromOrderedColumnName<C extends string> = C extends `${infer CL} ${infer O}` ? O extends OrderByDirection ? CL : never : C;
|
||
diff --git a/node_modules/kysely/dist/esm/parser/update-set-parser.d.ts b/node_modules/kysely/dist/esm/parser/update-set-parser.d.ts
|
||
index d4b2dd0..2763b7c 100644
|
||
--- a/node_modules/kysely/dist/esm/parser/update-set-parser.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/parser/update-set-parser.d.ts
|
||
@@ -2,9 +2,12 @@ import { ColumnUpdateNode } from '../operation-node/column-update-node.js';
|
||
import { ExpressionBuilder } from '../expression/expression-builder.js';
|
||
import { UpdateKeys, UpdateType } from '../util/column-type.js';
|
||
import { ValueExpression } from './value-parser.js';
|
||
+import { ExtractRawTypeFromReferenceExpression, ReferenceExpression } from './reference-parser.js';
|
||
export type UpdateObject<DB, TB extends keyof DB, UT extends keyof DB = TB> = {
|
||
[C in UpdateKeys<DB[UT]>]?: ValueExpression<DB, TB, UpdateType<DB[UT][C]>> | undefined;
|
||
};
|
||
export type UpdateObjectFactory<DB, TB extends keyof DB, UT extends keyof DB> = (eb: ExpressionBuilder<DB, TB>) => UpdateObject<DB, TB, UT>;
|
||
-export type UpdateExpression<DB, TB extends keyof DB, UT extends keyof DB = TB> = UpdateObject<DB, TB, UT> | UpdateObjectFactory<DB, TB, UT>;
|
||
-export declare function parseUpdateExpression(update: UpdateExpression<any, any, any>): ReadonlyArray<ColumnUpdateNode>;
|
||
+export type UpdateObjectExpression<DB, TB extends keyof DB, UT extends keyof DB = TB> = UpdateObject<DB, TB, UT> | UpdateObjectFactory<DB, TB, UT>;
|
||
+export type ExtractUpdateTypeFromReferenceExpression<DB, TB extends keyof DB, RE, DV = unknown> = UpdateType<ExtractRawTypeFromReferenceExpression<DB, TB, RE, DV>>;
|
||
+export declare function parseUpdate(...args: [UpdateObjectExpression<any, any, any>] | [ReferenceExpression<any, any>, ValueExpression<any, any, any>]): ReadonlyArray<ColumnUpdateNode>;
|
||
+export declare function parseUpdateObjectExpression(update: UpdateObjectExpression<any, any, any>): ReadonlyArray<ColumnUpdateNode>;
|
||
diff --git a/node_modules/kysely/dist/esm/parser/update-set-parser.js b/node_modules/kysely/dist/esm/parser/update-set-parser.js
|
||
index 495e092..e644c94 100644
|
||
--- a/node_modules/kysely/dist/esm/parser/update-set-parser.js
|
||
+++ b/node_modules/kysely/dist/esm/parser/update-set-parser.js
|
||
@@ -4,7 +4,16 @@ import { ColumnUpdateNode } from '../operation-node/column-update-node.js';
|
||
import { expressionBuilder, } from '../expression/expression-builder.js';
|
||
import { isFunction } from '../util/object-utils.js';
|
||
import { parseValueExpression } from './value-parser.js';
|
||
-export function parseUpdateExpression(update) {
|
||
+import { parseReferenceExpression, } from './reference-parser.js';
|
||
+export function parseUpdate(...args) {
|
||
+ if (args.length === 2) {
|
||
+ return [
|
||
+ ColumnUpdateNode.create(parseReferenceExpression(args[0]), parseValueExpression(args[1])),
|
||
+ ];
|
||
+ }
|
||
+ return parseUpdateObjectExpression(args[0]);
|
||
+}
|
||
+export function parseUpdateObjectExpression(update) {
|
||
const updateObj = isFunction(update) ? update(expressionBuilder()) : update;
|
||
return Object.entries(updateObj)
|
||
.filter(([_, value]) => value !== undefined)
|
||
diff --git a/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-transformer.js b/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-transformer.js
|
||
index 0ccc8a1..6e212e6 100644
|
||
--- a/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-transformer.js
|
||
+++ b/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-transformer.js
|
||
@@ -17,12 +17,14 @@ const ROOT_OPERATION_NODES = freeze({
|
||
CreateTableNode: true,
|
||
CreateTypeNode: true,
|
||
CreateViewNode: true,
|
||
+ CreateTriggerNode: true,
|
||
DeleteQueryNode: true,
|
||
DropIndexNode: true,
|
||
DropSchemaNode: true,
|
||
DropTableNode: true,
|
||
DropTypeNode: true,
|
||
DropViewNode: true,
|
||
+ DropTriggerNode: true,
|
||
InsertQueryNode: true,
|
||
RawNode: true,
|
||
SelectQueryNode: true,
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/function-module.d.ts b/node_modules/kysely/dist/esm/query-builder/function-module.d.ts
|
||
index 592c5e9..8f326c1 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/function-module.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/function-module.d.ts
|
||
@@ -7,6 +7,7 @@ import { KyselyTypeError } from '../util/type-error.js';
|
||
import { Equals, IsAny } from '../util/type-utils.js';
|
||
import { AggregateFunctionBuilder } from './aggregate-function-builder.js';
|
||
import { SelectQueryBuilderExpression } from '../query-builder/select-query-builder-expression.js';
|
||
+import { Selectable } from '../util/column-type.js';
|
||
/**
|
||
* Helpers for type safe SQL function calls.
|
||
*
|
||
@@ -17,21 +18,47 @@ import { SelectQueryBuilderExpression } from '../query-builder/select-query-buil
|
||
*
|
||
* <!-- siteExample("select", "Function calls", 60) -->
|
||
*
|
||
- * This example uses the `fn` module to select some aggregates:
|
||
+ * This example shows how to create function calls. These examples also work in any
|
||
+ * other place (`where` calls, updates, inserts etc.). The only difference is that you
|
||
+ * leave out the alias (the `as` call) if you use these in any other place than `select`.
|
||
*
|
||
* ```ts
|
||
+ * import { sql } from 'kysely'
|
||
+ *
|
||
* const result = await db.selectFrom('person')
|
||
* .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
- * .select(({ fn }) => [
|
||
+ * .select(({ fn, val, ref }) => [
|
||
* 'person.id',
|
||
*
|
||
* // The `fn` module contains the most common
|
||
* // functions.
|
||
* fn.count<number>('pet.id').as('pet_count'),
|
||
*
|
||
- * // You can call any function using the
|
||
- * // `agg` method
|
||
- * fn.agg<string[]>('array_agg', ['pet.name']).as('pet_names')
|
||
+ * // You can call any function by calling `fn`
|
||
+ * // directly. The arguments are treated as column
|
||
+ * // references by default. If you want to pass in
|
||
+ * // values, use the `val` function.
|
||
+ * fn<string>('concat', [
|
||
+ * val('Ms. '),
|
||
+ * 'first_name',
|
||
+ * val(' '),
|
||
+ * 'last_name'
|
||
+ * ]).as('full_name_with_title'),
|
||
+ *
|
||
+ * // You can call any aggregate function using the
|
||
+ * // `fn.agg` function.
|
||
+ * fn.agg<string[]>('array_agg', ['pet.name']).as('pet_names'),
|
||
+ *
|
||
+ * // And once again, you can use the `sql`
|
||
+ * // template tag. The template tag substitutions
|
||
+ * // are treated as values by default. If you want
|
||
+ * // to reference columns, you can use the `ref`
|
||
+ * // function.
|
||
+ * sql<string>`concat(
|
||
+ * ${ref('first_name')},
|
||
+ * ' ',
|
||
+ * ${ref('last_name')}
|
||
+ * )`.as('full_name')
|
||
* ])
|
||
* .groupBy('person.id')
|
||
* .having((eb) => eb.fn.count('pet.id'), '>', 10)
|
||
@@ -44,11 +71,13 @@ import { SelectQueryBuilderExpression } from '../query-builder/select-query-buil
|
||
* select
|
||
* "person"."id",
|
||
* count("pet"."id") as "pet_count",
|
||
- * array_agg("pet"."name") as "pet_names"
|
||
+ * concat($1, "first_name", $2, "last_name") as "full_name_with_title",
|
||
+ * array_agg("pet"."name") as "pet_names",
|
||
+ * concat("first_name", ' ', "last_name") as "full_name"
|
||
* from "person"
|
||
* inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
* group by "person"."id"
|
||
- * having count("pet"."id") > $1
|
||
+ * having count("pet"."id") > $3
|
||
* ```
|
||
*/
|
||
export interface FunctionModule<DB, TB extends keyof DB> {
|
||
@@ -540,6 +569,50 @@ export interface FunctionModule<DB, TB extends keyof DB> {
|
||
any<RE extends StringReference<DB, TB>>(expr: RE): Exclude<ExtractTypeFromStringReference<DB, TB, RE>, null> extends ReadonlyArray<infer I> ? ExpressionWrapper<DB, TB, I> : KyselyTypeError<'any(expr) call failed: expr must be an array'>;
|
||
any<T>(subquery: SelectQueryBuilderExpression<Record<string, T>>): ExpressionWrapper<DB, TB, T>;
|
||
any<T>(expr: Expression<ReadonlyArray<T>>): ExpressionWrapper<DB, TB, T>;
|
||
+ /**
|
||
+ * Creates a json_agg function call.
|
||
+ *
|
||
+ * This function is only available on PostgreSQL.
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.selectFrom('person')
|
||
+ * .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
+ * .select((eb) => ['first_name', eb.fn.jsonAgg('pet').as('pets')])
|
||
+ * .groupBy('person.first_name')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * select "first_name", json_agg("pet") as "pets"
|
||
+ * from "person"
|
||
+ * inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
+ * group by "person"."first_name"
|
||
+ * ```
|
||
+ */
|
||
+ jsonAgg<T extends (TB & string) | Expression<unknown>>(table: T): AggregateFunctionBuilder<DB, TB, T extends TB ? Selectable<DB[T]>[] : T extends Expression<infer O> ? O[] : never>;
|
||
+ /**
|
||
+ * Creates a to_json function call.
|
||
+ *
|
||
+ * This function is only available on PostgreSQL.
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.selectFrom('person')
|
||
+ * .innerJoin('pet', 'pet.owner_id', 'person.id')
|
||
+ * .select((eb) => ['first_name', eb.fn.toJson('pet').as('pet')])
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * select "first_name", to_json("pet") as "pet"
|
||
+ * from "person"
|
||
+ * inner join "pet" on "pet"."owner_id" = "person"."id"
|
||
+ * ```
|
||
+ */
|
||
+ toJson<T extends (TB & string) | Expression<unknown>>(table: T): ExpressionWrapper<DB, TB, T extends TB ? Selectable<DB[T]> : T extends Expression<infer O> ? O : never>;
|
||
}
|
||
export declare function createFunctionModule<DB, TB extends keyof DB>(): FunctionModule<DB, TB>;
|
||
type OutputBoundStringReference<DB, TB extends keyof DB, C extends StringReference<DB, TB>, O> = IsAny<O> extends true ? C : Equals<ExtractTypeFromReferenceExpression<DB, TB, C> | null, O | null> extends true ? C : never;
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/function-module.js b/node_modules/kysely/dist/esm/query-builder/function-module.js
|
||
index 7e1d28d..3744008 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/function-module.js
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/function-module.js
|
||
@@ -5,6 +5,8 @@ import { FunctionNode } from '../operation-node/function-node.js';
|
||
import { parseReferenceExpressionOrList, } from '../parser/reference-parser.js';
|
||
import { parseSelectAll } from '../parser/select-parser.js';
|
||
import { AggregateFunctionBuilder } from './aggregate-function-builder.js';
|
||
+import { isString } from '../util/object-utils.js';
|
||
+import { parseTable } from '../parser/table-parser.js';
|
||
export function createFunctionModule() {
|
||
const fn = (name, args) => {
|
||
return new ExpressionWrapper(FunctionNode.create(name, parseReferenceExpressionOrList(args)));
|
||
@@ -42,5 +44,17 @@ export function createFunctionModule() {
|
||
any(column) {
|
||
return fn('any', [column]);
|
||
},
|
||
+ jsonAgg(table) {
|
||
+ return new AggregateFunctionBuilder({
|
||
+ aggregateFunctionNode: AggregateFunctionNode.create('json_agg', [
|
||
+ isString(table) ? parseTable(table) : table.toOperationNode(),
|
||
+ ]),
|
||
+ });
|
||
+ },
|
||
+ toJson(table) {
|
||
+ return new ExpressionWrapper(FunctionNode.create('to_json', [
|
||
+ isString(table) ? parseTable(table) : table.toOperationNode(),
|
||
+ ]));
|
||
+ },
|
||
});
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/insert-query-builder.d.ts b/node_modules/kysely/dist/esm/query-builder/insert-query-builder.d.ts
|
||
index 6be4113..ffc6c3f 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/insert-query-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/insert-query-builder.d.ts
|
||
@@ -5,7 +5,7 @@ import { InsertObjectOrList, InsertObjectOrListFactory } from '../parser/insert-
|
||
import { InsertQueryNode } from '../operation-node/insert-query-node.js';
|
||
import { QueryNode } from '../operation-node/query-node.js';
|
||
import { NarrowPartial, SimplifyResult, SimplifySingleResult } from '../util/type-utils.js';
|
||
-import { UpdateExpression } from '../parser/update-set-parser.js';
|
||
+import { UpdateObjectExpression } from '../parser/update-set-parser.js';
|
||
import { Compilable } from '../util/compilable.js';
|
||
import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
import { QueryId } from '../util/query-id.js';
|
||
@@ -60,13 +60,18 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* })
|
||
* .executeTakeFirst()
|
||
*
|
||
+ * // `insertId` is only available on dialects that
|
||
+ * // automatically return the id of the inserted row
|
||
+ * // such as MySQL and SQLite. On PostgreSQL, for example,
|
||
+ * // you need to add a `returning` clause to the query to
|
||
+ * // get anything out. See the "returning data" example.
|
||
* console.log(result.insertId)
|
||
* ```
|
||
*
|
||
- * The generated SQL (PostgreSQL):
|
||
+ * The generated SQL (MySQL):
|
||
*
|
||
* ```sql
|
||
- * insert into "person" ("first_name", "last_name", "age") values ($1, $2, $3)
|
||
+ * insert into `person` (`first_name`, `last_name`, `age`) values (?, ?, ?)
|
||
* ```
|
||
*
|
||
* <!-- siteExample("insert", "Multiple rows", 20) -->
|
||
@@ -131,11 +136,14 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* ```ts
|
||
* import { sql } from 'kysely'
|
||
*
|
||
+ * const ani = "Ani"
|
||
+ * const ston = "ston"
|
||
+ *
|
||
* const result = await db
|
||
* .insertInto('person')
|
||
* .values(({ ref, selectFrom, fn }) => ({
|
||
* first_name: 'Jennifer',
|
||
- * last_name: sql`${'Ani'} || ${'ston'}`,
|
||
+ * last_name: sql`concat(${ani}, ${ston})`,
|
||
* middle_name: ref('first_name'),
|
||
* age: selectFrom('person')
|
||
* .select(fn.avg<number>('age')
|
||
@@ -147,8 +155,18 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* The generated SQL (PostgreSQL):
|
||
*
|
||
* ```sql
|
||
- * insert into "person" ("first_name", "last_name", "age")
|
||
- * values ($1, $2 || $3, (select avg("age") as "avg_age" from "person"))
|
||
+ * insert into "person" (
|
||
+ * "first_name",
|
||
+ * "last_name",
|
||
+ * "middle_name",
|
||
+ * "age"
|
||
+ * )
|
||
+ * values (
|
||
+ * $1,
|
||
+ * concat($2, $3),
|
||
+ * "first_name",
|
||
+ * (select avg("age") as "avg_age" from "person")
|
||
+ * )
|
||
* ```
|
||
*
|
||
* You can also use the callback version of subqueries or raw expressions:
|
||
@@ -208,7 +226,7 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* .select((eb) => [
|
||
* 'pet.name',
|
||
* eb.val('Petson').as('last_name'),
|
||
- * eb.val(7).as('age'),
|
||
+ * eb.lit(7).as('age'),
|
||
* ])
|
||
* )
|
||
* .execute()
|
||
@@ -218,7 +236,7 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
*
|
||
* ```sql
|
||
* insert into "person" ("first_name", "last_name", "age")
|
||
- * select "pet"."name", $1 as "first_name", $2 as "last_name" from "pet"
|
||
+ * select "pet"."name", $1 as "last_name", 7 as "age from "pet"
|
||
* ```
|
||
*/
|
||
expression(expression: ExpressionOrFactory<DB, TB, any>): InsertQueryBuilder<DB, TB, O>;
|
||
@@ -414,7 +432,7 @@ export declare class InsertQueryBuilder<DB, TB extends keyof DB, O> implements R
|
||
* .onDuplicateKeyUpdate({ species: 'hamster' })
|
||
* ```
|
||
*/
|
||
- onDuplicateKeyUpdate(update: UpdateExpression<DB, TB, TB>): InsertQueryBuilder<DB, TB, O>;
|
||
+ onDuplicateKeyUpdate(update: UpdateObjectExpression<DB, TB, TB>): InsertQueryBuilder<DB, TB, O>;
|
||
/**
|
||
* Allows you to return data from modified rows.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/insert-query-builder.js b/node_modules/kysely/dist/esm/query-builder/insert-query-builder.js
|
||
index 3cd23c3..d9f1cc8 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/insert-query-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/insert-query-builder.js
|
||
@@ -3,7 +3,7 @@ import { parseSelectArg, parseSelectAll, } from '../parser/select-parser.js';
|
||
import { parseInsertExpression, } from '../parser/insert-values-parser.js';
|
||
import { InsertQueryNode } from '../operation-node/insert-query-node.js';
|
||
import { QueryNode } from '../operation-node/query-node.js';
|
||
-import { parseUpdateExpression, } from '../parser/update-set-parser.js';
|
||
+import { parseUpdateObjectExpression, } from '../parser/update-set-parser.js';
|
||
import { preventAwait } from '../util/prevent-await.js';
|
||
import { freeze } from '../util/object-utils.js';
|
||
import { OnDuplicateKeyNode } from '../operation-node/on-duplicate-key-node.js';
|
||
@@ -75,7 +75,7 @@ export class InsertQueryBuilder {
|
||
* .select((eb) => [
|
||
* 'pet.name',
|
||
* eb.val('Petson').as('last_name'),
|
||
- * eb.val(7).as('age'),
|
||
+ * eb.lit(7).as('age'),
|
||
* ])
|
||
* )
|
||
* .execute()
|
||
@@ -85,7 +85,7 @@ export class InsertQueryBuilder {
|
||
*
|
||
* ```sql
|
||
* insert into "person" ("first_name", "last_name", "age")
|
||
- * select "pet"."name", $1 as "first_name", $2 as "last_name" from "pet"
|
||
+ * select "pet"."name", $1 as "last_name", 7 as "age from "pet"
|
||
* ```
|
||
*/
|
||
expression(expression) {
|
||
@@ -308,7 +308,7 @@ export class InsertQueryBuilder {
|
||
return new InsertQueryBuilder({
|
||
...this.#props,
|
||
queryNode: InsertQueryNode.cloneWith(this.#props.queryNode, {
|
||
- onDuplicateKey: OnDuplicateKeyNode.create(parseUpdateExpression(update)),
|
||
+ onDuplicateKey: OnDuplicateKeyNode.create(parseUpdateObjectExpression(update)),
|
||
}),
|
||
});
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/insert-result.d.ts b/node_modules/kysely/dist/esm/query-builder/insert-result.d.ts
|
||
index c16fb08..d22a9e5 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/insert-result.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/insert-result.d.ts
|
||
@@ -23,7 +23,14 @@
|
||
*/
|
||
export declare class InsertResult {
|
||
/**
|
||
- * The auto incrementing primary key
|
||
+ * The auto incrementing primary key of the inserted row.
|
||
+ *
|
||
+ * This property can be undefined when the query contains an `on conflict`
|
||
+ * clause that makes the query succeed even when nothing gets inserted.
|
||
+ *
|
||
+ * This property is always undefined on dialects like PostgreSQL that
|
||
+ * don't return the inserted id by default. On those dialects you need
|
||
+ * to use the {@link ReturningInterface.returning | returning} method.
|
||
*/
|
||
readonly insertId: bigint | undefined;
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/insert-result.js b/node_modules/kysely/dist/esm/query-builder/insert-result.js
|
||
index ba00de9..ff11e8c 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/insert-result.js
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/insert-result.js
|
||
@@ -24,7 +24,14 @@
|
||
*/
|
||
export class InsertResult {
|
||
/**
|
||
- * The auto incrementing primary key
|
||
+ * The auto incrementing primary key of the inserted row.
|
||
+ *
|
||
+ * This property can be undefined when the query contains an `on conflict`
|
||
+ * clause that makes the query succeed even when nothing gets inserted.
|
||
+ *
|
||
+ * This property is always undefined on dialects like PostgreSQL that
|
||
+ * don't return the inserted id by default. On those dialects you need
|
||
+ * to use the {@link ReturningInterface.returning | returning} method.
|
||
*/
|
||
insertId;
|
||
/**
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.d.ts b/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.d.ts
|
||
index 803563e..cfb9d96 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.d.ts
|
||
@@ -4,7 +4,7 @@ import { OperationNodeSource } from '../operation-node/operation-node-source.js'
|
||
import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
-import { UpdateExpression } from '../parser/update-set-parser.js';
|
||
+import { UpdateObjectExpression } from '../parser/update-set-parser.js';
|
||
import { AnyColumn, SqlBool } from '../util/type-utils.js';
|
||
import { WhereInterface } from './where-interface.js';
|
||
export declare class OnConflictBuilder<DB, TB extends keyof DB> implements WhereInterface<DB, TB> {
|
||
@@ -435,7 +435,7 @@ export declare class OnConflictBuilder<DB, TB extends keyof DB> implements Where
|
||
* )
|
||
* ```
|
||
*/
|
||
- doUpdateSet(update: UpdateExpression<OnConflictDatabase<DB, TB>, OnConflictTables<TB>, OnConflictTables<TB>>): OnConflictUpdateBuilder<OnConflictDatabase<DB, TB>, OnConflictTables<TB>>;
|
||
+ doUpdateSet(update: UpdateObjectExpression<OnConflictDatabase<DB, TB>, OnConflictTables<TB>, OnConflictTables<TB>>): OnConflictUpdateBuilder<OnConflictDatabase<DB, TB>, OnConflictTables<TB>>;
|
||
/**
|
||
* Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
* what the provided function returns.
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.js b/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.js
|
||
index bd95015..02c9135 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.js
|
||
@@ -3,7 +3,7 @@ import { ColumnNode } from '../operation-node/column-node.js';
|
||
import { IdentifierNode } from '../operation-node/identifier-node.js';
|
||
import { OnConflictNode } from '../operation-node/on-conflict-node.js';
|
||
import { parseValueBinaryOperationOrExpression, parseReferentialBinaryOperation, } from '../parser/binary-operation-parser.js';
|
||
-import { parseUpdateExpression, } from '../parser/update-set-parser.js';
|
||
+import { parseUpdateObjectExpression, } from '../parser/update-set-parser.js';
|
||
import { freeze } from '../util/object-utils.js';
|
||
import { preventAwait } from '../util/prevent-await.js';
|
||
export class OnConflictBuilder {
|
||
@@ -173,7 +173,7 @@ export class OnConflictBuilder {
|
||
return new OnConflictUpdateBuilder({
|
||
...this.#props,
|
||
onConflictNode: OnConflictNode.cloneWith(this.#props.onConflictNode, {
|
||
- updates: parseUpdateExpression(update),
|
||
+ updates: parseUpdateObjectExpression(update),
|
||
}),
|
||
});
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/update-query-builder.d.ts b/node_modules/kysely/dist/esm/query-builder/update-query-builder.d.ts
|
||
index 3d30eed..a71462a 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/update-query-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/update-query-builder.d.ts
|
||
@@ -8,7 +8,7 @@ import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
import { QueryNode } from '../operation-node/query-node.js';
|
||
import { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, SimplifyResult, SimplifySingleResult, SqlBool } from '../util/type-utils.js';
|
||
import { UpdateQueryNode } from '../operation-node/update-query-node.js';
|
||
-import { UpdateObject, UpdateObjectFactory } from '../parser/update-set-parser.js';
|
||
+import { UpdateObject, UpdateObjectFactory, ExtractUpdateTypeFromReferenceExpression } from '../parser/update-set-parser.js';
|
||
import { Compilable } from '../util/compilable.js';
|
||
import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
import { QueryId } from '../util/query-id.js';
|
||
@@ -24,6 +24,7 @@ import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../p
|
||
import { KyselyTypeError } from '../util/type-error.js';
|
||
import { Streamable } from '../util/streamable.js';
|
||
import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
+import { ValueExpression } from '../parser/value-parser.js';
|
||
export declare class UpdateQueryBuilder<DB, UT extends keyof DB, TB extends keyof DB, O> implements WhereInterface<DB, TB>, ReturningInterface<DB, TB, O>, OperationNodeSource, Compilable<O>, Explainable, Streamable<O> {
|
||
#private;
|
||
constructor(props: UpdateQueryBuilderProps);
|
||
@@ -625,6 +626,20 @@ export declare class UpdateQueryBuilder<DB, UT extends keyof DB, TB extends keyo
|
||
* "id" = $4
|
||
* ```
|
||
*
|
||
+ * If you provide two arguments the first one is interpreted as the column
|
||
+ * (or other target) and the second as the value:
|
||
+ *
|
||
+ * ```ts
|
||
+ * const result = await db
|
||
+ * .updateTable('person')
|
||
+ * .set('first_name', 'Foo')
|
||
+ * // As always, both arguments can be arbitrary expressions or
|
||
+ * // callbacks that give you access to an expression builder:
|
||
+ * .set(sql`address['postalCode']`, (eb) => eb.val('61710))
|
||
+ * .where('id', '=', '1')
|
||
+ * .executeTakeFirst()
|
||
+ * ```
|
||
+ *
|
||
* On PostgreSQL you can chain `returning` to the query to get
|
||
* the updated rows' columns (or any other expression) as the
|
||
* return value:
|
||
@@ -682,6 +697,7 @@ export declare class UpdateQueryBuilder<DB, UT extends keyof DB, TB extends keyo
|
||
*/
|
||
set(update: UpdateObject<DB, TB, UT>): UpdateQueryBuilder<DB, UT, TB, O>;
|
||
set(update: UpdateObjectFactory<DB, TB, UT>): UpdateQueryBuilder<DB, UT, TB, O>;
|
||
+ set<RE extends ReferenceExpression<DB, UT>>(key: RE, value: ValueExpression<DB, TB, ExtractUpdateTypeFromReferenceExpression<DB, UT, RE>>): UpdateQueryBuilder<DB, UT, TB, O>;
|
||
/**
|
||
* Allows you to return data from modified rows.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/query-builder/update-query-builder.js b/node_modules/kysely/dist/esm/query-builder/update-query-builder.js
|
||
index b20c740..6487ecf 100644
|
||
--- a/node_modules/kysely/dist/esm/query-builder/update-query-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/query-builder/update-query-builder.js
|
||
@@ -4,7 +4,7 @@ import { parseTableExpressionOrList, } from '../parser/table-parser.js';
|
||
import { parseSelectArg, parseSelectAll, } from '../parser/select-parser.js';
|
||
import { QueryNode } from '../operation-node/query-node.js';
|
||
import { UpdateQueryNode } from '../operation-node/update-query-node.js';
|
||
-import { parseUpdateExpression, } from '../parser/update-set-parser.js';
|
||
+import { parseUpdate, } from '../parser/update-set-parser.js';
|
||
import { preventAwait } from '../util/prevent-await.js';
|
||
import { freeze } from '../util/object-utils.js';
|
||
import { UpdateResult } from './update-result.js';
|
||
@@ -63,10 +63,10 @@ export class UpdateQueryBuilder {
|
||
queryNode: QueryNode.cloneWithJoin(this.#props.queryNode, parseJoin('FullJoin', args)),
|
||
});
|
||
}
|
||
- set(update) {
|
||
+ set(...args) {
|
||
return new UpdateQueryBuilder({
|
||
...this.#props,
|
||
- queryNode: UpdateQueryNode.cloneWithUpdates(this.#props.queryNode, parseUpdateExpression(update)),
|
||
+ queryNode: UpdateQueryNode.cloneWithUpdates(this.#props.queryNode, parseUpdate(...args)),
|
||
});
|
||
}
|
||
returning(selection) {
|
||
diff --git a/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.d.ts b/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.d.ts
|
||
index dbd954a..2f73125 100644
|
||
--- a/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.d.ts
|
||
@@ -48,7 +48,7 @@ import { RootOperationNode, QueryCompiler } from './query-compiler.js';
|
||
import { HavingNode } from '../operation-node/having-node.js';
|
||
import { CreateSchemaNode } from '../operation-node/create-schema-node.js';
|
||
import { DropSchemaNode } from '../operation-node/drop-schema-node.js';
|
||
-import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
+import { AlterTableColumnAlterationNode, AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
import { DropColumnNode } from '../operation-node/drop-column-node.js';
|
||
import { RenameColumnNode } from '../operation-node/rename-column-node.js';
|
||
import { AlterColumnNode } from '../operation-node/alter-column-node.js';
|
||
@@ -88,6 +88,11 @@ import { JSONPathNode } from '../operation-node/json-path-node.js';
|
||
import { JSONPathLegNode } from '../operation-node/json-path-leg-node.js';
|
||
import { JSONOperatorChainNode } from '../operation-node/json-operator-chain-node.js';
|
||
import { TupleNode } from '../operation-node/tuple-node.js';
|
||
+import { AddIndexNode } from '../operation-node/add-index-node.js';
|
||
+import { CreateTriggerNode } from '../operation-node/create-trigger-node.js';
|
||
+import { DropTriggerNode } from '../operation-node/drop-trigger-node.js';
|
||
+import { TriggerEventNode } from '../operation-node/trigger-event-node.js';
|
||
+import { TriggerOrderNode } from '../operation-node/trigger-order-node.js';
|
||
export declare class DefaultQueryCompiler extends OperationNodeVisitor implements QueryCompiler {
|
||
#private;
|
||
protected get numParameters(): number;
|
||
@@ -124,6 +129,10 @@ export declare class DefaultQueryCompiler extends OperationNodeVisitor implement
|
||
protected visitTable(node: TableNode): void;
|
||
protected visitSchemableIdentifier(node: SchemableIdentifierNode): void;
|
||
protected visitCreateTable(node: CreateTableNode): void;
|
||
+ protected visitCreateTrigger(node: CreateTriggerNode): void;
|
||
+ protected visitTriggerEvent(node: TriggerEventNode): void;
|
||
+ protected visitTriggerOrder(node: TriggerOrderNode): void;
|
||
+ protected visitDropTrigger(node: DropTriggerNode): void;
|
||
protected visitColumnDefinition(node: ColumnDefinitionNode): void;
|
||
protected getAutoIncrement(): string;
|
||
protected visitReferences(node: ReferencesNode): void;
|
||
@@ -184,6 +193,7 @@ export declare class DefaultQueryCompiler extends OperationNodeVisitor implement
|
||
protected visitJSONPath(node: JSONPathNode): void;
|
||
protected visitJSONPathLeg(node: JSONPathLegNode): void;
|
||
protected visitJSONOperatorChain(node: JSONOperatorChainNode): void;
|
||
+ protected visitAddIndex(node: AddIndexNode): void;
|
||
protected append(str: string): void;
|
||
protected appendValue(parameter: unknown): void;
|
||
protected getLeftIdentifierWrapper(): string;
|
||
@@ -197,4 +207,10 @@ export declare class DefaultQueryCompiler extends OperationNodeVisitor implement
|
||
protected addParameter(parameter: unknown): void;
|
||
protected appendImmediateValue(value: unknown): void;
|
||
protected sortSelectModifiers(arr: SelectModifierNode[]): ReadonlyArray<SelectModifierNode>;
|
||
+ protected compileColumnAlterations(columnAlterations: readonly AlterTableColumnAlterationNode[]): void;
|
||
+ /**
|
||
+ * controls whether the dialect adds a "type" keyword before a column's new data
|
||
+ * type in an ALTER TABLE statement.
|
||
+ */
|
||
+ protected announcesNewColumnDataType(): boolean;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.js b/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.js
|
||
index c75a92d..0762ebd 100644
|
||
--- a/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.js
|
||
+++ b/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.js
|
||
@@ -1,4 +1,5 @@
|
||
/// <reference types="./default-query-compiler.d.ts" />
|
||
+import { CreateTableNode } from '../operation-node/create-table-node.js';
|
||
import { InsertQueryNode } from '../operation-node/insert-query-node.js';
|
||
import { OperationNodeVisitor } from '../operation-node/operation-node-visitor.js';
|
||
import { OperatorNode } from '../operation-node/operator-node.js';
|
||
@@ -30,6 +31,7 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
const wrapInParens = this.parentNode !== undefined &&
|
||
!ParensNode.is(this.parentNode) &&
|
||
!InsertQueryNode.is(this.parentNode) &&
|
||
+ !CreateTableNode.is(this.parentNode) &&
|
||
!CreateViewNode.is(this.parentNode) &&
|
||
!SetOperationNode.is(this.parentNode);
|
||
if (this.parentNode === undefined && node.explain) {
|
||
@@ -346,17 +348,83 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
this.append('if not exists ');
|
||
}
|
||
this.visitNode(node.table);
|
||
- this.append(' (');
|
||
- this.compileList([...node.columns, ...(node.constraints ?? [])]);
|
||
- this.append(')');
|
||
- if (node.onCommit) {
|
||
- this.append(' on commit ');
|
||
- this.append(node.onCommit);
|
||
+ if (node.selectQuery) {
|
||
+ this.append(' as ');
|
||
+ this.visitNode(node.selectQuery);
|
||
}
|
||
- if (node.endModifiers && node.endModifiers.length > 0) {
|
||
- this.append(' ');
|
||
- this.compileList(node.endModifiers, ' ');
|
||
+ else {
|
||
+ this.append(' (');
|
||
+ this.compileList([...node.columns, ...(node.constraints ?? [])]);
|
||
+ this.append(')');
|
||
+ if (node.onCommit) {
|
||
+ this.append(' on commit ');
|
||
+ this.append(node.onCommit);
|
||
+ }
|
||
+ if (node.endModifiers && node.endModifiers.length > 0) {
|
||
+ this.append(' ');
|
||
+ this.compileList(node.endModifiers, ' ');
|
||
+ }
|
||
+ }
|
||
+ }
|
||
+ visitCreateTrigger(node) {
|
||
+ if (!node.time)
|
||
+ throw new Error('Trigger time is required.');
|
||
+ if (!node.events)
|
||
+ throw new Error('Trigger event is required.');
|
||
+ if (!node.table)
|
||
+ throw new Error('Trigger table is required.');
|
||
+ this.append('create ');
|
||
+ if (node.temporary) {
|
||
+ this.append('temporary ');
|
||
}
|
||
+ if (node.orReplace) {
|
||
+ this.append('or replace ');
|
||
+ }
|
||
+ this.append('trigger ');
|
||
+ if (node.ifNotExists) {
|
||
+ this.append('if not exists ');
|
||
+ }
|
||
+ this.visitNode(node.name);
|
||
+ this.append(` ${node.time} `);
|
||
+ this.compileList(node.events, ' or ');
|
||
+ this.append(' on ');
|
||
+ this.visitNode(node.table);
|
||
+ if (node.forEach)
|
||
+ this.append(` for each ${node.forEach} `);
|
||
+ if (node.when) {
|
||
+ this.append(' when ');
|
||
+ this.visitNode(node.when);
|
||
+ }
|
||
+ if (node.order)
|
||
+ this.visitNode(node.order);
|
||
+ if (node.queries) {
|
||
+ this.append(' begin ');
|
||
+ this.compileList(node.queries, '; ');
|
||
+ this.append('; ');
|
||
+ this.append('end');
|
||
+ }
|
||
+ else if (node.function) {
|
||
+ this.append(' execute function ');
|
||
+ this.visitNode(node.function);
|
||
+ }
|
||
+ }
|
||
+ visitTriggerEvent(node) {
|
||
+ this.append(`${node.event} `);
|
||
+ if (node.event === 'update' && node.columns) {
|
||
+ this.append('of ');
|
||
+ this.compileList(node.columns, ', ');
|
||
+ }
|
||
+ }
|
||
+ visitTriggerOrder(node) {
|
||
+ this.append(`${node.order} `);
|
||
+ this.visitNode(node.otherTriggerName);
|
||
+ }
|
||
+ visitDropTrigger(node) {
|
||
+ this.append('drop trigger ');
|
||
+ if (node.ifExists) {
|
||
+ this.append('if exists ');
|
||
+ }
|
||
+ this.visitNode(node.name);
|
||
}
|
||
visitColumnDefinition(node) {
|
||
this.visitNode(node.column);
|
||
@@ -383,6 +451,9 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
if (node.unique) {
|
||
this.append(' unique');
|
||
}
|
||
+ if (node.nullsNotDistinct) {
|
||
+ this.append(' nulls not distinct');
|
||
+ }
|
||
if (node.primaryKey) {
|
||
this.append(' primary key');
|
||
}
|
||
@@ -563,6 +634,9 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
this.compileList(node.columns);
|
||
this.append(')');
|
||
}
|
||
+ if (node.nullsNotDistinct) {
|
||
+ this.append(' nulls not distinct');
|
||
+ }
|
||
if (node.where) {
|
||
this.append(' ');
|
||
this.visitNode(node.where);
|
||
@@ -615,7 +689,11 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
this.visitNode(node.name);
|
||
this.append(' ');
|
||
}
|
||
- this.append('unique (');
|
||
+ this.append('unique');
|
||
+ if (node.nullsNotDistinct) {
|
||
+ this.append(' nulls not distinct');
|
||
+ }
|
||
+ this.append(' (');
|
||
this.compileList(node.columns);
|
||
this.append(')');
|
||
}
|
||
@@ -696,7 +774,13 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
this.visitNode(node.dropConstraint);
|
||
}
|
||
if (node.columnAlterations) {
|
||
- this.compileList(node.columnAlterations);
|
||
+ this.compileColumnAlterations(node.columnAlterations);
|
||
+ }
|
||
+ if (node.addIndex) {
|
||
+ this.visitNode(node.addIndex);
|
||
+ }
|
||
+ if (node.dropIndex) {
|
||
+ this.visitNode(node.dropIndex);
|
||
}
|
||
}
|
||
visitAddColumn(node) {
|
||
@@ -718,7 +802,9 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
this.visitNode(node.column);
|
||
this.append(' ');
|
||
if (node.dataType) {
|
||
- this.append('type ');
|
||
+ if (this.announcesNewColumnDataType()) {
|
||
+ this.append('type ');
|
||
+ }
|
||
this.visitNode(node.dataType);
|
||
if (node.dataTypeExpression) {
|
||
this.append('using ');
|
||
@@ -1004,6 +1090,23 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
this.visitNode(node.values[i]);
|
||
}
|
||
}
|
||
+ visitAddIndex(node) {
|
||
+ this.append('add ');
|
||
+ if (node.unique) {
|
||
+ this.append('unique ');
|
||
+ }
|
||
+ this.append('index ');
|
||
+ this.visitNode(node.name);
|
||
+ if (node.columns) {
|
||
+ this.append(' (');
|
||
+ this.compileList(node.columns);
|
||
+ this.append(')');
|
||
+ }
|
||
+ if (node.using) {
|
||
+ this.append(' using ');
|
||
+ this.visitNode(node.using);
|
||
+ }
|
||
+ }
|
||
append(str) {
|
||
this.#sql += str;
|
||
}
|
||
@@ -1077,6 +1180,16 @@ export class DefaultQueryCompiler extends OperationNodeVisitor {
|
||
: 1);
|
||
return freeze(arr);
|
||
}
|
||
+ compileColumnAlterations(columnAlterations) {
|
||
+ this.compileList(columnAlterations);
|
||
+ }
|
||
+ /**
|
||
+ * controls whether the dialect adds a "type" keyword before a column's new data
|
||
+ * type in an ALTER TABLE statement.
|
||
+ */
|
||
+ announcesNewColumnDataType() {
|
||
+ return true;
|
||
+ }
|
||
}
|
||
const SELECT_MODIFIER_SQL = freeze({
|
||
ForKeyShare: 'for key share',
|
||
diff --git a/node_modules/kysely/dist/esm/query-compiler/query-compiler.d.ts b/node_modules/kysely/dist/esm/query-compiler/query-compiler.d.ts
|
||
index e3a8555..e96bd90 100644
|
||
--- a/node_modules/kysely/dist/esm/query-compiler/query-compiler.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/query-compiler/query-compiler.d.ts
|
||
@@ -2,17 +2,19 @@ import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
import { CreateIndexNode } from '../operation-node/create-index-node.js';
|
||
import { CreateSchemaNode } from '../operation-node/create-schema-node.js';
|
||
import { CreateTableNode } from '../operation-node/create-table-node.js';
|
||
+import { CreateTriggerNode } from '../operation-node/create-trigger-node.js';
|
||
import { CreateTypeNode } from '../operation-node/create-type-node.js';
|
||
import { CreateViewNode } from '../operation-node/create-view-node.js';
|
||
import { DropIndexNode } from '../operation-node/drop-index-node.js';
|
||
import { DropSchemaNode } from '../operation-node/drop-schema-node.js';
|
||
import { DropTableNode } from '../operation-node/drop-table-node.js';
|
||
+import { DropTriggerNode } from '../operation-node/drop-trigger-node.js';
|
||
import { DropTypeNode } from '../operation-node/drop-type-node.js';
|
||
import { DropViewNode } from '../operation-node/drop-view-node.js';
|
||
import { QueryNode } from '../operation-node/query-node.js';
|
||
import { RawNode } from '../operation-node/raw-node.js';
|
||
import { CompiledQuery } from './compiled-query.js';
|
||
-export type RootOperationNode = QueryNode | CreateTableNode | CreateIndexNode | CreateSchemaNode | CreateViewNode | DropTableNode | DropIndexNode | DropSchemaNode | DropViewNode | AlterTableNode | RawNode | CreateTypeNode | DropTypeNode;
|
||
+export type RootOperationNode = QueryNode | CreateTableNode | CreateIndexNode | CreateSchemaNode | CreateViewNode | DropTableNode | DropIndexNode | DropSchemaNode | DropViewNode | AlterTableNode | RawNode | CreateTypeNode | DropTypeNode | CreateTriggerNode | DropTriggerNode;
|
||
/**
|
||
* a `QueryCompiler` compiles a query expressed as a tree of `OperationNodes` into SQL.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.d.ts b/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..b297698
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.d.ts
|
||
@@ -0,0 +1,104 @@
|
||
+import { Expression } from '../expression/expression.js';
|
||
+import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
+import { IndexType } from '../operation-node/create-index-node.js';
|
||
+import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
+import { OrderedColumnName } from '../parser/reference-parser.js';
|
||
+import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
+import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
+import { Compilable } from '../util/compilable.js';
|
||
+import { QueryId } from '../util/query-id.js';
|
||
+export declare class AlterTableAddIndexBuilder implements OperationNodeSource, Compilable {
|
||
+ #private;
|
||
+ constructor(props: AlterTableAddIndexBuilderProps);
|
||
+ /**
|
||
+ * Makes the index unique.
|
||
+ */
|
||
+ unique(): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Adds a column to the index.
|
||
+ *
|
||
+ * Also see {@link columns} for adding multiple columns at once or {@link expression}
|
||
+ * for specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .createIndex('person_first_name_and_age_index')
|
||
+ * .column('first_name')
|
||
+ * .column('age desc')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ column<CL extends string>(column: OrderedColumnName<CL>): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Specifies a list of columns for the index.
|
||
+ *
|
||
+ * Also see {@link column} for adding a single column or {@link expression} for
|
||
+ * specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_and_age_index')
|
||
+ * .columns(['first_name', 'age desc'])
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ columns<CL extends string>(columns: OrderedColumnName<CL>[]): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Specifies an arbitrary expression for the index.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * import { sql } from 'kysely'
|
||
+ *
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_index')
|
||
+ * .expression(sql`(first_name < 'Sami')`)
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_index` ((first_name < 'Sami'))
|
||
+ * ```
|
||
+ */
|
||
+ expression(expression: Expression<any>): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Specifies the index type.
|
||
+ */
|
||
+ using(indexType: IndexType): AlterTableAddIndexBuilder;
|
||
+ using(indexType: string): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call<T>(func: (qb: this) => T): T;
|
||
+ toOperationNode(): AlterTableNode;
|
||
+ compile(): CompiledQuery;
|
||
+ execute(): Promise<void>;
|
||
+}
|
||
+export interface AlterTableAddIndexBuilderProps {
|
||
+ readonly queryId: QueryId;
|
||
+ readonly executor: QueryExecutor;
|
||
+ readonly node: AlterTableNode;
|
||
+}
|
||
diff --git a/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.js b/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.js
|
||
new file mode 100644
|
||
index 0000000..00a8ef4
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.js
|
||
@@ -0,0 +1,143 @@
|
||
+/// <reference types="./alter-table-add-index-builder.d.ts" />
|
||
+import { AddIndexNode } from '../operation-node/add-index-node.js';
|
||
+import { AlterTableNode } from '../operation-node/alter-table-node.js';
|
||
+import { RawNode } from '../operation-node/raw-node.js';
|
||
+import { parseOrderedColumnName } from '../parser/reference-parser.js';
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+import { preventAwait } from '../util/prevent-await.js';
|
||
+export class AlterTableAddIndexBuilder {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = freeze(props);
|
||
+ }
|
||
+ /**
|
||
+ * Makes the index unique.
|
||
+ */
|
||
+ unique() {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: AddIndexNode.cloneWith(this.#props.node.addIndex, {
|
||
+ unique: true,
|
||
+ }),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds a column to the index.
|
||
+ *
|
||
+ * Also see {@link columns} for adding multiple columns at once or {@link expression}
|
||
+ * for specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .createIndex('person_first_name_and_age_index')
|
||
+ * .column('first_name')
|
||
+ * .column('age desc')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ column(column) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: AddIndexNode.cloneWithColumns(this.#props.node.addIndex, [parseOrderedColumnName(column)]),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Specifies a list of columns for the index.
|
||
+ *
|
||
+ * Also see {@link column} for adding a single column or {@link expression} for
|
||
+ * specifying an arbitrary expression.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_and_age_index')
|
||
+ * .columns(['first_name', 'age desc'])
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_and_age_index` (`first_name`, `age` desc)
|
||
+ * ```
|
||
+ */
|
||
+ columns(columns) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: AddIndexNode.cloneWithColumns(this.#props.node.addIndex, columns.map(parseOrderedColumnName)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Specifies an arbitrary expression for the index.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * import { sql } from 'kysely'
|
||
+ *
|
||
+ * await db.schema
|
||
+ * .alterTable('person')
|
||
+ * .addIndex('person_first_name_index')
|
||
+ * .expression(sql`(first_name < 'Sami')`)
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add index `person_first_name_index` ((first_name < 'Sami'))
|
||
+ * ```
|
||
+ */
|
||
+ expression(expression) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: AddIndexNode.cloneWithColumns(this.#props.node.addIndex, [expression.toOperationNode()]),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ using(indexType) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: AddIndexNode.cloneWith(this.#props.node.addIndex, {
|
||
+ using: RawNode.createWithSql(indexType),
|
||
+ }),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call(func) {
|
||
+ return func(this);
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#props.executor.transformQuery(this.#props.node, this.#props.queryId);
|
||
+ }
|
||
+ compile() {
|
||
+ return this.#props.executor.compileQuery(this.toOperationNode(), this.#props.queryId);
|
||
+ }
|
||
+ async execute() {
|
||
+ await this.#props.executor.executeQuery(this.compile(), this.#props.queryId);
|
||
+ }
|
||
+}
|
||
+preventAwait(AlterTableAddIndexBuilder, "don't await AlterTableAddIndexBuilder instances directly. To execute the query you need to call `execute`");
|
||
diff --git a/node_modules/kysely/dist/esm/schema/alter-table-builder.d.ts b/node_modules/kysely/dist/esm/schema/alter-table-builder.d.ts
|
||
index b0726ca..4453c5b 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/alter-table-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/schema/alter-table-builder.d.ts
|
||
@@ -11,6 +11,8 @@ import { AlterColumnBuilderCallback } from './alter-column-builder.js';
|
||
import { AlterTableExecutor } from './alter-table-executor.js';
|
||
import { AlterTableAddForeignKeyConstraintBuilder } from './alter-table-add-foreign-key-constraint-builder.js';
|
||
import { AlterTableDropConstraintBuilder } from './alter-table-drop-constraint-builder.js';
|
||
+import { AlterTableAddIndexBuilder } from './alter-table-add-index-builder.js';
|
||
+import { UniqueConstraintNodeBuilderCallback } from './unique-constraint-builder.js';
|
||
/**
|
||
* This builder can be used to create a `alter table` query.
|
||
*/
|
||
@@ -35,7 +37,7 @@ export declare class AlterTableBuilder implements ColumnAlteringInterface {
|
||
/**
|
||
* See {@link CreateTableBuilder.addUniqueConstraint}
|
||
*/
|
||
- addUniqueConstraint(constraintName: string, columns: string[]): AlterTableExecutor;
|
||
+ addUniqueConstraint(constraintName: string, columns: string[], build?: UniqueConstraintNodeBuilderCallback): AlterTableExecutor;
|
||
/**
|
||
* See {@link CreateTableBuilder.addCheckConstraint}
|
||
*/
|
||
@@ -53,6 +55,44 @@ export declare class AlterTableBuilder implements ColumnAlteringInterface {
|
||
*/
|
||
addPrimaryKeyConstraint(constraintName: string, columns: string[]): AlterTableExecutor;
|
||
dropConstraint(constraintName: string): AlterTableDropConstraintBuilder;
|
||
+ /**
|
||
+ * This can be used to add index to table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .addIndex('person_email_index')
|
||
+ * .column('email')
|
||
+ * .unique()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add unique index `person_email_index` (`email`)
|
||
+ * ```
|
||
+ */
|
||
+ addIndex(indexName: string): AlterTableAddIndexBuilder;
|
||
+ /**
|
||
+ * This can be used to drop index from table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .dropIndex('person_email_index')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` drop index `test_first_name_index`
|
||
+ * ```
|
||
+ */
|
||
+ dropIndex(indexName: string): AlterTableExecutor;
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/schema/alter-table-builder.js b/node_modules/kysely/dist/esm/schema/alter-table-builder.js
|
||
index f003eb8..2d8dac8 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/alter-table-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/schema/alter-table-builder.js
|
||
@@ -23,6 +23,10 @@ import { AlterTableExecutor } from './alter-table-executor.js';
|
||
import { AlterTableAddForeignKeyConstraintBuilder } from './alter-table-add-foreign-key-constraint-builder.js';
|
||
import { AlterTableDropConstraintBuilder } from './alter-table-drop-constraint-builder.js';
|
||
import { PrimaryConstraintNode } from '../operation-node/primary-constraint-node.js';
|
||
+import { DropIndexNode } from '../operation-node/drop-index-node.js';
|
||
+import { AddIndexNode } from '../operation-node/add-index-node.js';
|
||
+import { AlterTableAddIndexBuilder } from './alter-table-add-index-builder.js';
|
||
+import { UniqueConstraintNodeBuilder, } from './unique-constraint-builder.js';
|
||
/**
|
||
* This builder can be used to create a `alter table` query.
|
||
*/
|
||
@@ -83,11 +87,12 @@ export class AlterTableBuilder {
|
||
/**
|
||
* See {@link CreateTableBuilder.addUniqueConstraint}
|
||
*/
|
||
- addUniqueConstraint(constraintName, columns) {
|
||
+ addUniqueConstraint(constraintName, columns, build = noop) {
|
||
+ const uniqueConstraintBuilder = build(new UniqueConstraintNodeBuilder(UniqueConstraintNode.create(columns, constraintName)));
|
||
return new AlterTableExecutor({
|
||
...this.#props,
|
||
node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
- addConstraint: AddConstraintNode.create(UniqueConstraintNode.create(columns, constraintName)),
|
||
+ addConstraint: AddConstraintNode.create(uniqueConstraintBuilder.toOperationNode()),
|
||
}),
|
||
});
|
||
}
|
||
@@ -134,6 +139,58 @@ export class AlterTableBuilder {
|
||
}),
|
||
});
|
||
}
|
||
+ /**
|
||
+ * This can be used to add index to table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .addIndex('person_email_index')
|
||
+ * .column('email')
|
||
+ * .unique()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` add unique index `person_email_index` (`email`)
|
||
+ * ```
|
||
+ */
|
||
+ addIndex(indexName) {
|
||
+ return new AlterTableAddIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ addIndex: AddIndexNode.create(indexName),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * This can be used to drop index from table.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.alterTable('person')
|
||
+ * .dropIndex('person_email_index')
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (MySQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * alter table `person` drop index `test_first_name_index`
|
||
+ * ```
|
||
+ */
|
||
+ dropIndex(indexName) {
|
||
+ return new AlterTableExecutor({
|
||
+ ...this.#props,
|
||
+ node: AlterTableNode.cloneWithTableProps(this.#props.node, {
|
||
+ dropIndex: DropIndexNode.create(indexName),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/schema/column-definition-builder.d.ts b/node_modules/kysely/dist/esm/schema/column-definition-builder.d.ts
|
||
index 2a99c4c..a76104c 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/column-definition-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/schema/column-definition-builder.d.ts
|
||
@@ -183,6 +183,31 @@ export declare class ColumnDefinitionBuilder implements OperationNodeSource {
|
||
* ```
|
||
*/
|
||
modifyFront(modifier: Expression<any>): ColumnDefinitionBuilder;
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier.
|
||
+ * Should be used with `unique` constraint.
|
||
+ *
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('person')
|
||
+ * .addColumn('id', 'integer', col => col.primaryKey())
|
||
+ * .addColumn('first_name', 'varchar(30)', col => col.unique().nullsNotDistinct())
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create table "person" (
|
||
+ * "id" integer primary key,
|
||
+ * "first_name" varchar(30) unique nulls not distinct
|
||
+ * )
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct(): ColumnDefinitionBuilder;
|
||
/**
|
||
* This can be used to add any additional SQL to the end of the column definition.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/schema/column-definition-builder.js b/node_modules/kysely/dist/esm/schema/column-definition-builder.js
|
||
index 8ff9bf2..7111109 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/column-definition-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/schema/column-definition-builder.js
|
||
@@ -256,6 +256,33 @@ export class ColumnDefinitionBuilder {
|
||
modifyFront(modifier) {
|
||
return new ColumnDefinitionBuilder(ColumnDefinitionNode.cloneWithFrontModifier(this.#node, modifier.toOperationNode()));
|
||
}
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier.
|
||
+ * Should be used with `unique` constraint.
|
||
+ *
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('person')
|
||
+ * .addColumn('id', 'integer', col => col.primaryKey())
|
||
+ * .addColumn('first_name', 'varchar(30)', col => col.unique().nullsNotDistinct())
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create table "person" (
|
||
+ * "id" integer primary key,
|
||
+ * "first_name" varchar(30) unique nulls not distinct
|
||
+ * )
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct() {
|
||
+ return new ColumnDefinitionBuilder(ColumnDefinitionNode.cloneWith(this.#node, { nullsNotDistinct: true }));
|
||
+ }
|
||
/**
|
||
* This can be used to add any additional SQL to the end of the column definition.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/schema/create-index-builder.d.ts b/node_modules/kysely/dist/esm/schema/create-index-builder.d.ts
|
||
index 27502c4..b44e116 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/create-index-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/schema/create-index-builder.d.ts
|
||
@@ -22,6 +22,29 @@ export declare class CreateIndexBuilder<C = never> implements OperationNodeSourc
|
||
* Makes the index unique.
|
||
*/
|
||
unique(): CreateIndexBuilder<C>;
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier to index.
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createIndex('person_first_name_index')
|
||
+ * .on('person')
|
||
+ * .column('first_name')
|
||
+ * .nullsNotDistinct()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create index "person_first_name_index"
|
||
+ * on "test" ("first_name")
|
||
+ * nulls not distinct;
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct(): CreateIndexBuilder<C>;
|
||
/**
|
||
* Specifies the table for the index.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/esm/schema/create-index-builder.js b/node_modules/kysely/dist/esm/schema/create-index-builder.js
|
||
index 7886ba1..5d40347 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/create-index-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/schema/create-index-builder.js
|
||
@@ -37,6 +37,36 @@ export class CreateIndexBuilder {
|
||
}),
|
||
});
|
||
}
|
||
+ /**
|
||
+ * Adds `nulls not distinct` specifier to index.
|
||
+ * This only works on some dialects like PostgreSQL.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createIndex('person_first_name_index')
|
||
+ * .on('person')
|
||
+ * .column('first_name')
|
||
+ * .nullsNotDistinct()
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create index "person_first_name_index"
|
||
+ * on "test" ("first_name")
|
||
+ * nulls not distinct;
|
||
+ * ```
|
||
+ */
|
||
+ nullsNotDistinct() {
|
||
+ return new CreateIndexBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateIndexNode.cloneWith(this.#props.node, {
|
||
+ nullsNotDistinct: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Specifies the table for the index.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/esm/schema/create-table-builder.d.ts b/node_modules/kysely/dist/esm/schema/create-table-builder.d.ts
|
||
index e160575..3b7e7ce 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/create-table-builder.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/schema/create-table-builder.d.ts
|
||
@@ -8,6 +8,7 @@ import { QueryId } from '../util/query-id.js';
|
||
import { ForeignKeyConstraintBuilder } from './foreign-key-constraint-builder.js';
|
||
import { DataTypeExpression } from '../parser/data-type-parser.js';
|
||
import { Expression } from '../expression/expression.js';
|
||
+import { UniqueConstraintNodeBuilderCallback } from './unique-constraint-builder.js';
|
||
/**
|
||
* This builder can be used to create a `create table` query.
|
||
*/
|
||
@@ -56,7 +57,7 @@ export declare class CreateTableBuilder<TB extends string, C extends string = ne
|
||
* ```
|
||
*
|
||
* With this method, it's once again good to remember that Kysely just builds the
|
||
- * query and doesn't provide the same API for all databses. For example, some
|
||
+ * query and doesn't provide the same API for all databases. For example, some
|
||
* databases like older MySQL don't support the `references` statement in the
|
||
* column definition. Instead foreign key constraints need to be defined in the
|
||
* `create table` query. See the next example:
|
||
@@ -104,8 +105,13 @@ export declare class CreateTableBuilder<TB extends string, C extends string = ne
|
||
* ```ts
|
||
* addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'])
|
||
* ```
|
||
+ *
|
||
+ * In dialects such as PostgreSQL you can specify `nulls not distinct` as follows:
|
||
+ * ```ts
|
||
+ * addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'], (builder) => builder.nullsNotDistinct())
|
||
+ * ```
|
||
*/
|
||
- addUniqueConstraint(constraintName: string, columns: C[]): CreateTableBuilder<TB, C>;
|
||
+ addUniqueConstraint(constraintName: string, columns: C[], build?: UniqueConstraintNodeBuilderCallback): CreateTableBuilder<TB, C>;
|
||
/**
|
||
* Adds a check constraint.
|
||
*
|
||
@@ -205,6 +211,26 @@ export declare class CreateTableBuilder<TB extends string, C extends string = ne
|
||
* ```
|
||
*/
|
||
modifyEnd(modifier: Expression<any>): CreateTableBuilder<TB, C>;
|
||
+ /**
|
||
+ * Allows to create table from `select` query.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('copy')
|
||
+ * .temporary()
|
||
+ * .as(db.selectFrom('person').select(['first_name', 'last_name']))
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create temporary table "copy" as
|
||
+ * select "first_name", "last_name" from "person"
|
||
+ * ```
|
||
+ */
|
||
+ as(expression: Expression<unknown>): CreateTableBuilder<string, never>;
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/schema/create-table-builder.js b/node_modules/kysely/dist/esm/schema/create-table-builder.js
|
||
index 20fb8c5..f3423e2 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/create-table-builder.js
|
||
+++ b/node_modules/kysely/dist/esm/schema/create-table-builder.js
|
||
@@ -13,6 +13,8 @@ import { UniqueConstraintNode } from '../operation-node/unique-constraint-node.j
|
||
import { CheckConstraintNode } from '../operation-node/check-constraint-node.js';
|
||
import { parseTable } from '../parser/table-parser.js';
|
||
import { parseOnCommitAction } from '../parser/on-commit-action-parse.js';
|
||
+import { UniqueConstraintNodeBuilder, } from './unique-constraint-builder.js';
|
||
+import { parseExpression } from '../parser/expression-parser.js';
|
||
/**
|
||
* This builder can be used to create a `create table` query.
|
||
*/
|
||
@@ -84,7 +86,7 @@ export class CreateTableBuilder {
|
||
* ```
|
||
*
|
||
* With this method, it's once again good to remember that Kysely just builds the
|
||
- * query and doesn't provide the same API for all databses. For example, some
|
||
+ * query and doesn't provide the same API for all databases. For example, some
|
||
* databases like older MySQL don't support the `references` statement in the
|
||
* column definition. Instead foreign key constraints need to be defined in the
|
||
* `create table` query. See the next example:
|
||
@@ -143,11 +145,17 @@ export class CreateTableBuilder {
|
||
* ```ts
|
||
* addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'])
|
||
* ```
|
||
+ *
|
||
+ * In dialects such as PostgreSQL you can specify `nulls not distinct` as follows:
|
||
+ * ```ts
|
||
+ * addUniqueConstraint('first_name_last_name_unique', ['first_name', 'last_name'], (builder) => builder.nullsNotDistinct())
|
||
+ * ```
|
||
*/
|
||
- addUniqueConstraint(constraintName, columns) {
|
||
+ addUniqueConstraint(constraintName, columns, build = noop) {
|
||
+ const uniqueConstraintBuilder = build(new UniqueConstraintNodeBuilder(UniqueConstraintNode.create(columns, constraintName)));
|
||
return new CreateTableBuilder({
|
||
...this.#props,
|
||
- node: CreateTableNode.cloneWithConstraint(this.#props.node, UniqueConstraintNode.create(columns, constraintName)),
|
||
+ node: CreateTableNode.cloneWithConstraint(this.#props.node, uniqueConstraintBuilder.toOperationNode()),
|
||
});
|
||
}
|
||
/**
|
||
@@ -270,6 +278,33 @@ export class CreateTableBuilder {
|
||
node: CreateTableNode.cloneWithEndModifier(this.#props.node, modifier.toOperationNode()),
|
||
});
|
||
}
|
||
+ /**
|
||
+ * Allows to create table from `select` query.
|
||
+ *
|
||
+ * ### Examples
|
||
+ *
|
||
+ * ```ts
|
||
+ * db.schema.createTable('copy')
|
||
+ * .temporary()
|
||
+ * .as(db.selectFrom('person').select(['first_name', 'last_name']))
|
||
+ * .execute()
|
||
+ * ```
|
||
+ *
|
||
+ * The generated SQL (PostgreSQL):
|
||
+ *
|
||
+ * ```sql
|
||
+ * create temporary table "copy" as
|
||
+ * select "first_name", "last_name" from "person"
|
||
+ * ```
|
||
+ */
|
||
+ as(expression) {
|
||
+ return new CreateTableBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTableNode.cloneWith(this.#props.node, {
|
||
+ selectQuery: parseExpression(expression),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Calls the given function passing `this` as the only argument.
|
||
*
|
||
diff --git a/node_modules/kysely/dist/esm/schema/create-trigger-builder.d.ts b/node_modules/kysely/dist/esm/schema/create-trigger-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..c65746a
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/create-trigger-builder.d.ts
|
||
@@ -0,0 +1,68 @@
|
||
+import { CreateTriggerNode } from '../operation-node/create-trigger-node.js';
|
||
+import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
+import { ComparisonOperatorExpression, OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
||
+import { ReferenceExpression } from '../parser/reference-parser.js';
|
||
+import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
+import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
+import { Compilable } from '../util/compilable.js';
|
||
+import { QueryId } from '../util/query-id.js';
|
||
+import { AnyColumn, AnyColumnWithTable, SqlBool } from '../util/type-utils.js';
|
||
+import { TriggerEvent } from '../operation-node/trigger-event-node.js';
|
||
+import { ExpressionOrFactory } from '../parser/expression-parser.js';
|
||
+import { TriggerQueryCreator } from '../trigger-query-creator.js';
|
||
+export type DatabaseWithOldNewTables<DB, TB extends keyof DB> = DB & {
|
||
+ old: DB[TB];
|
||
+ new: DB[TB];
|
||
+};
|
||
+/**
|
||
+ * This builder can be used to create a `create table` query.
|
||
+ */
|
||
+export declare class CreateTriggerBuilder<DB, TB extends keyof DB> implements OperationNodeSource, Compilable {
|
||
+ #private;
|
||
+ constructor(props: CreateTriggerBuilderProps);
|
||
+ before(): CreateTriggerBuilder<DB, TB>;
|
||
+ after(): CreateTriggerBuilder<DB, TB>;
|
||
+ insteadOf(): CreateTriggerBuilder<DB, TB>;
|
||
+ addEvent<E extends TriggerEvent>(event: E, columns?: E extends 'update' ? AnyColumn<DB, TB>[] : never[]): CreateTriggerBuilder<DB, TB>;
|
||
+ forEachRow(): CreateTriggerBuilder<DB, TB>;
|
||
+ forEachStatement(): CreateTriggerBuilder<DB, TB>;
|
||
+ follows(otherTriggerName: string): CreateTriggerBuilder<DB, TB>;
|
||
+ precedes(otherTriggerName: string): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Specifies the table for the trigger.
|
||
+ */
|
||
+ onTable<TE extends keyof DB & string>(table: TE, schema?: string): CreateTriggerBuilder<DB, TE>;
|
||
+ /**
|
||
+ * Adds the "temporary" modifier.
|
||
+ *
|
||
+ * Use this to create a temporary trigger.
|
||
+ */
|
||
+ temporary(): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Adds the "if not exists" modifier.
|
||
+ *
|
||
+ * If the trigger already exists, no error is thrown if this method has been called.
|
||
+ */
|
||
+ ifNotExists(): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Only supported on PostgreSQL
|
||
+ */
|
||
+ orReplace(): CreateTriggerBuilder<DB, TB>;
|
||
+ /**
|
||
+ * Adds a query to the trigger.
|
||
+ */
|
||
+ addQuery(build: QueryCreatorCallback<DB, TB>): CreateTriggerBuilder<DB, TB>;
|
||
+ function(name: string, args: ReadonlyArray<ReferenceExpression<any, any>>): CreateTriggerBuilder<DB, TB>;
|
||
+ when<RE extends AnyColumnWithTable<DatabaseWithOldNewTables<DB, TB>, 'old' | 'new'>>(lhs: RE, op: ComparisonOperatorExpression, rhs: OperandValueExpressionOrList<DB, TB, RE>): CreateTriggerBuilder<DB, TB>;
|
||
+ when(factory: ExpressionOrFactory<DatabaseWithOldNewTables<DB, TB>, 'old' | 'new', SqlBool>): CreateTriggerBuilder<DB, TB>;
|
||
+ $call<T>(func: (qb: this) => T): T;
|
||
+ toOperationNode(): CreateTriggerNode;
|
||
+ compile(): CompiledQuery;
|
||
+ execute(): Promise<void>;
|
||
+}
|
||
+export interface CreateTriggerBuilderProps {
|
||
+ readonly queryId: QueryId;
|
||
+ readonly executor: QueryExecutor;
|
||
+ readonly node: CreateTriggerNode;
|
||
+}
|
||
+export type QueryCreatorCallback<DB, TB extends keyof DB> = (creator: TriggerQueryCreator<DB, TB>) => OperationNodeSource;
|
||
diff --git a/node_modules/kysely/dist/esm/schema/create-trigger-builder.js b/node_modules/kysely/dist/esm/schema/create-trigger-builder.js
|
||
new file mode 100644
|
||
index 0000000..d3eb721
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/create-trigger-builder.js
|
||
@@ -0,0 +1,177 @@
|
||
+/// <reference types="./create-trigger-builder.d.ts" />
|
||
+import { CreateTriggerNode } from '../operation-node/create-trigger-node.js';
|
||
+import { QueryNode } from '../operation-node/query-node.js';
|
||
+import { parseValueBinaryOperationOrExpression, } from '../parser/binary-operation-parser.js';
|
||
+import { parseOrderedColumnName, parseReferenceExpressionOrList, } from '../parser/reference-parser.js';
|
||
+import { ImmediateValueTransformer } from '../plugin/immediate-value/immediate-value-transformer.js';
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+import { preventAwait } from '../util/prevent-await.js';
|
||
+import { IdentifierNode } from '../operation-node/identifier-node.js';
|
||
+import { TriggerOrderNode } from '../operation-node/trigger-order-node.js';
|
||
+import { TriggerEventNode, } from '../operation-node/trigger-event-node.js';
|
||
+import { FunctionNode } from '../operation-node/function-node.js';
|
||
+import { TriggerQueryCreator } from '../trigger-query-creator.js';
|
||
+import { TableNode } from '../operation-node/table-node.js';
|
||
+/**
|
||
+ * This builder can be used to create a `create table` query.
|
||
+ */
|
||
+export class CreateTriggerBuilder {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = freeze(props);
|
||
+ }
|
||
+ before() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ time: 'before',
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ after() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ time: 'after',
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ insteadOf() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ time: 'instead of',
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ addEvent(event, columns) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWithEvent(this.#props.node, TriggerEventNode.create(event, columns?.map(parseOrderedColumnName))),
|
||
+ });
|
||
+ }
|
||
+ forEachRow() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ forEach: `row`,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ forEachStatement() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ forEach: `statement`,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ follows(otherTriggerName) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ order: TriggerOrderNode.create('follows', IdentifierNode.create(otherTriggerName)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ precedes(otherTriggerName) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ order: TriggerOrderNode.create('precedes', IdentifierNode.create(otherTriggerName)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Specifies the table for the trigger.
|
||
+ */
|
||
+ onTable(table, schema) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ table: schema
|
||
+ ? TableNode.createWithSchema(schema, table)
|
||
+ : TableNode.create(table),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds the "temporary" modifier.
|
||
+ *
|
||
+ * Use this to create a temporary trigger.
|
||
+ */
|
||
+ temporary() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ temporary: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds the "if not exists" modifier.
|
||
+ *
|
||
+ * If the trigger already exists, no error is thrown if this method has been called.
|
||
+ */
|
||
+ ifNotExists() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ ifNotExists: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Only supported on PostgreSQL
|
||
+ */
|
||
+ orReplace() {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ orReplace: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Adds a query to the trigger.
|
||
+ */
|
||
+ addQuery(build) {
|
||
+ const node = build(new TriggerQueryCreator({ executor: this.#props.executor })).toOperationNode();
|
||
+ if (!QueryNode.is(node))
|
||
+ throw new Error('Must be a query node.');
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWithQuery(this.#props.node, node),
|
||
+ });
|
||
+ }
|
||
+ function(name, args) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ function: FunctionNode.create(name, parseReferenceExpressionOrList(args)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ when(...args) {
|
||
+ const transformer = new ImmediateValueTransformer();
|
||
+ return new CreateTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: CreateTriggerNode.cloneWith(this.#props.node, {
|
||
+ when: transformer.transformNode(parseValueBinaryOperationOrExpression(args)),
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ $call(func) {
|
||
+ return func(this);
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#props.executor.transformQuery(this.#props.node, this.#props.queryId);
|
||
+ }
|
||
+ compile() {
|
||
+ return this.#props.executor.compileQuery(this.toOperationNode(), this.#props.queryId);
|
||
+ }
|
||
+ async execute() {
|
||
+ await this.#props.executor.executeQuery(this.compile(), this.#props.queryId);
|
||
+ }
|
||
+}
|
||
+preventAwait(CreateTriggerBuilder, "don't await CreateTriggerBuilder instances directly. To execute the query you need to call `execute`");
|
||
diff --git a/node_modules/kysely/dist/esm/schema/drop-trigger-builder.d.ts b/node_modules/kysely/dist/esm/schema/drop-trigger-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..b0e3fce
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/drop-trigger-builder.d.ts
|
||
@@ -0,0 +1,25 @@
|
||
+import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
+import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
||
+import { Compilable } from '../util/compilable.js';
|
||
+import { QueryExecutor } from '../query-executor/query-executor.js';
|
||
+import { QueryId } from '../util/query-id.js';
|
||
+import { DropTriggerNode } from '../operation-node/drop-trigger-node.js';
|
||
+export declare class DropTriggerBuilder implements OperationNodeSource, Compilable {
|
||
+ #private;
|
||
+ constructor(props: DropTriggerBuilderProps);
|
||
+ ifExists(): DropTriggerBuilder;
|
||
+ cascade(): DropTriggerBuilder;
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call<T>(func: (qb: this) => T): T;
|
||
+ toOperationNode(): DropTriggerNode;
|
||
+ compile(): CompiledQuery;
|
||
+ execute(): Promise<void>;
|
||
+}
|
||
+export interface DropTriggerBuilderProps {
|
||
+ readonly queryId: QueryId;
|
||
+ readonly executor: QueryExecutor;
|
||
+ readonly node: DropTriggerNode;
|
||
+}
|
||
diff --git a/node_modules/kysely/dist/esm/schema/drop-trigger-builder.js b/node_modules/kysely/dist/esm/schema/drop-trigger-builder.js
|
||
new file mode 100644
|
||
index 0000000..0a0f2e1
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/drop-trigger-builder.js
|
||
@@ -0,0 +1,43 @@
|
||
+/// <reference types="./drop-trigger-builder.d.ts" />
|
||
+import { preventAwait } from '../util/prevent-await.js';
|
||
+import { freeze } from '../util/object-utils.js';
|
||
+import { DropTriggerNode } from '../operation-node/drop-trigger-node.js';
|
||
+export class DropTriggerBuilder {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = freeze(props);
|
||
+ }
|
||
+ ifExists() {
|
||
+ return new DropTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: DropTriggerNode.cloneWith(this.#props.node, {
|
||
+ ifExists: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ cascade() {
|
||
+ return new DropTriggerBuilder({
|
||
+ ...this.#props,
|
||
+ node: DropTriggerNode.cloneWith(this.#props.node, {
|
||
+ cascade: true,
|
||
+ }),
|
||
+ });
|
||
+ }
|
||
+ /**
|
||
+ * Simply calls the provided function passing `this` as the only argument. `$call` returns
|
||
+ * what the provided function returns.
|
||
+ */
|
||
+ $call(func) {
|
||
+ return func(this);
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#props.executor.transformQuery(this.#props.node, this.#props.queryId);
|
||
+ }
|
||
+ compile() {
|
||
+ return this.#props.executor.compileQuery(this.toOperationNode(), this.#props.queryId);
|
||
+ }
|
||
+ async execute() {
|
||
+ await this.#props.executor.executeQuery(this.compile(), this.#props.queryId);
|
||
+ }
|
||
+}
|
||
+preventAwait(DropTriggerBuilder, "don't await DropTriggerBuilder instances directly. To execute the query you need to call `execute`");
|
||
diff --git a/node_modules/kysely/dist/esm/schema/schema.d.ts b/node_modules/kysely/dist/esm/schema/schema.d.ts
|
||
index 8634b84..19cf68c 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/schema.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/schema/schema.d.ts
|
||
@@ -11,10 +11,12 @@ import { DropViewBuilder } from './drop-view-builder.js';
|
||
import { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
||
import { CreateTypeBuilder } from './create-type-builder.js';
|
||
import { DropTypeBuilder } from './drop-type-builder.js';
|
||
+import { CreateTriggerBuilder } from './create-trigger-builder.js';
|
||
+import { DropTriggerBuilder } from './drop-trigger-builder.js';
|
||
/**
|
||
* Provides methods for building database schema.
|
||
*/
|
||
-export declare class SchemaModule {
|
||
+export declare class SchemaModule<DB> {
|
||
#private;
|
||
constructor(executor: QueryExecutor);
|
||
/**
|
||
@@ -201,16 +203,18 @@ export declare class SchemaModule {
|
||
* ```
|
||
*/
|
||
dropType(typeName: string): DropTypeBuilder;
|
||
+ createTrigger(name: string): CreateTriggerBuilder<DB, keyof DB>;
|
||
+ dropTrigger(triggerName: string): DropTriggerBuilder;
|
||
/**
|
||
* Returns a copy of this schema module with the given plugin installed.
|
||
*/
|
||
- withPlugin(plugin: KyselyPlugin): SchemaModule;
|
||
+ withPlugin(plugin: KyselyPlugin): SchemaModule<DB>;
|
||
/**
|
||
* Returns a copy of this schema module without any plugins.
|
||
*/
|
||
- withoutPlugins(): SchemaModule;
|
||
+ withoutPlugins(): SchemaModule<DB>;
|
||
/**
|
||
* See {@link QueryCreator.withSchema}
|
||
*/
|
||
- withSchema(schema: string): SchemaModule;
|
||
+ withSchema(schema: string): SchemaModule<DB>;
|
||
}
|
||
diff --git a/node_modules/kysely/dist/esm/schema/schema.js b/node_modules/kysely/dist/esm/schema/schema.js
|
||
index 8244039..4ba6917 100644
|
||
--- a/node_modules/kysely/dist/esm/schema/schema.js
|
||
+++ b/node_modules/kysely/dist/esm/schema/schema.js
|
||
@@ -25,6 +25,11 @@ import { DropTypeBuilder } from './drop-type-builder.js';
|
||
import { CreateTypeNode } from '../operation-node/create-type-node.js';
|
||
import { DropTypeNode } from '../operation-node/drop-type-node.js';
|
||
import { parseSchemableIdentifier } from '../parser/identifier-parser.js';
|
||
+import { CreateTriggerBuilder } from './create-trigger-builder.js';
|
||
+import { CreateTriggerNode } from '../operation-node/create-trigger-node.js';
|
||
+import { IdentifierNode } from '../operation-node/identifier-node.js';
|
||
+import { DropTriggerNode } from '../operation-node/drop-trigger-node.js';
|
||
+import { DropTriggerBuilder } from './drop-trigger-builder.js';
|
||
/**
|
||
* Provides methods for building database schema.
|
||
*/
|
||
@@ -283,6 +288,20 @@ export class SchemaModule {
|
||
node: DropTypeNode.create(parseSchemableIdentifier(typeName)),
|
||
});
|
||
}
|
||
+ createTrigger(name) {
|
||
+ return new CreateTriggerBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#executor,
|
||
+ node: CreateTriggerNode.create(IdentifierNode.create(name)),
|
||
+ });
|
||
+ }
|
||
+ dropTrigger(triggerName) {
|
||
+ return new DropTriggerBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#executor,
|
||
+ node: DropTriggerNode.create(parseSchemableIdentifier(triggerName)),
|
||
+ });
|
||
+ }
|
||
/**
|
||
* Returns a copy of this schema module with the given plugin installed.
|
||
*/
|
||
diff --git a/node_modules/kysely/dist/esm/schema/unique-constraint-builder.d.ts b/node_modules/kysely/dist/esm/schema/unique-constraint-builder.d.ts
|
||
new file mode 100644
|
||
index 0000000..4362213
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/unique-constraint-builder.d.ts
|
||
@@ -0,0 +1,14 @@
|
||
+import { OperationNodeSource } from '../operation-node/operation-node-source.js';
|
||
+import { UniqueConstraintNode } from '../operation-node/unique-constraint-node.js';
|
||
+export declare class UniqueConstraintNodeBuilder implements OperationNodeSource {
|
||
+ #private;
|
||
+ constructor(node: UniqueConstraintNode);
|
||
+ toOperationNode(): UniqueConstraintNode;
|
||
+ /**
|
||
+ * Adds `nulls not distinct` to the unique constraint definition
|
||
+ *
|
||
+ * Supported by PostgreSQL dialect only
|
||
+ */
|
||
+ nullsNotDistinct(): UniqueConstraintNodeBuilder;
|
||
+}
|
||
+export type UniqueConstraintNodeBuilderCallback = (builder: UniqueConstraintNodeBuilder) => UniqueConstraintNodeBuilder;
|
||
diff --git a/node_modules/kysely/dist/esm/schema/unique-constraint-builder.js b/node_modules/kysely/dist/esm/schema/unique-constraint-builder.js
|
||
new file mode 100644
|
||
index 0000000..dba8cef
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/schema/unique-constraint-builder.js
|
||
@@ -0,0 +1,21 @@
|
||
+/// <reference types="./unique-constraint-builder.d.ts" />
|
||
+import { UniqueConstraintNode } from '../operation-node/unique-constraint-node.js';
|
||
+import { preventAwait } from '../util/prevent-await.js';
|
||
+export class UniqueConstraintNodeBuilder {
|
||
+ #node;
|
||
+ constructor(node) {
|
||
+ this.#node = node;
|
||
+ }
|
||
+ toOperationNode() {
|
||
+ return this.#node;
|
||
+ }
|
||
+ /**
|
||
+ * Adds `nulls not distinct` to the unique constraint definition
|
||
+ *
|
||
+ * Supported by PostgreSQL dialect only
|
||
+ */
|
||
+ nullsNotDistinct() {
|
||
+ return new UniqueConstraintNodeBuilder(UniqueConstraintNode.cloneWith(this.#node, { nullsNotDistinct: true }));
|
||
+ }
|
||
+}
|
||
+preventAwait(UniqueConstraintNodeBuilder, "don't await UniqueConstraintNodeBuilder instances directly.");
|
||
diff --git a/node_modules/kysely/dist/esm/trigger-query-creator.d.ts b/node_modules/kysely/dist/esm/trigger-query-creator.d.ts
|
||
new file mode 100644
|
||
index 0000000..51d0b2f
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/trigger-query-creator.d.ts
|
||
@@ -0,0 +1,35 @@
|
||
+import { SelectQueryBuilder } from './query-builder/select-query-builder.js';
|
||
+import { InsertQueryBuilder } from './query-builder/insert-query-builder.js';
|
||
+import { DeleteQueryBuilder } from './query-builder/delete-query-builder.js';
|
||
+import { UpdateQueryBuilder } from './query-builder/update-query-builder.js';
|
||
+import { TableExpression, From, FromTables, TableReference, ExtractTableAlias, AnyAliasedTable, PickTableWithAlias } from './parser/table-parser.js';
|
||
+import { InsertResult } from './query-builder/insert-result.js';
|
||
+import { DeleteResult } from './query-builder/delete-result.js';
|
||
+import { UpdateResult } from './query-builder/update-result.js';
|
||
+import { KyselyPlugin } from './plugin/kysely-plugin.js';
|
||
+import { CallbackSelection, SelectCallback, SelectExpression, Selection } from './parser/select-parser.js';
|
||
+import { QueryCreatorProps } from './query-creator.js';
|
||
+import { DatabaseWithOldNewTables } from './schema/create-trigger-builder.js';
|
||
+export declare class TriggerQueryCreator<DB, TB extends keyof DB> {
|
||
+ #private;
|
||
+ constructor(props: QueryCreatorProps);
|
||
+ selectFrom<TE extends keyof DB & string>(from: TE[]): SelectQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends TableExpression<DB, keyof DB>>(from: TE[]): SelectQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TE>, FromTables<DB, never, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends keyof DB & string>(from: TE): SelectQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends AnyAliasedTable<DB>>(from: TE): SelectQueryBuilder<DatabaseWithOldNewTables<DB, TB> & PickTableWithAlias<DatabaseWithOldNewTables<DB, TB>, TE>, ExtractTableAlias<DB, TE> | 'new' | 'old', {}>;
|
||
+ selectFrom<TE extends TableExpression<DB, keyof DB>>(from: TE): SelectQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TE>, FromTables<DB, never, TE> | 'new' | 'old', {}>;
|
||
+ selectNoFrom<SE extends SelectExpression<DB, never>>(selections: ReadonlyArray<SE>): SelectQueryBuilder<DB, never, Selection<DB, never, SE>>;
|
||
+ selectNoFrom<CB extends SelectCallback<DB, never>>(callback: CB): SelectQueryBuilder<DB, never, CallbackSelection<DB, never, CB>>;
|
||
+ selectNoFrom<SE extends SelectExpression<DB, never>>(selection: SE): SelectQueryBuilder<DB, never, Selection<DB, never, SE>>;
|
||
+ insertInto<T extends keyof DB & string>(table: T): InsertQueryBuilder<DB, T, InsertResult>;
|
||
+ replaceInto<T extends keyof DB & string>(table: T): InsertQueryBuilder<DB, T, InsertResult>;
|
||
+ deleteFrom<TR extends keyof DB & string>(from: TR[]): DeleteQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TR> | 'new' | 'old', DeleteResult>;
|
||
+ deleteFrom<TR extends TableReference<DB>>(tables: TR[]): DeleteQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TR>, FromTables<DB, never, TR> | 'new' | 'old', DeleteResult>;
|
||
+ deleteFrom<TR extends keyof DB & string>(from: TR): DeleteQueryBuilder<DatabaseWithOldNewTables<DB, TB>, ExtractTableAlias<DB, TR> | 'new' | 'old', DeleteResult>;
|
||
+ deleteFrom<TR extends TableReference<DB>>(table: TR): DeleteQueryBuilder<From<DatabaseWithOldNewTables<DB, TB>, TR>, FromTables<DB, never, TR> | 'new' | 'old', DeleteResult>;
|
||
+ updateTable<TR extends keyof DB & string>(table: TR): UpdateQueryBuilder<DB, ExtractTableAlias<DB, TR>, ExtractTableAlias<DB, TR>, UpdateResult>;
|
||
+ updateTable<TR extends AnyAliasedTable<DB>>(table: TR): UpdateQueryBuilder<DB & PickTableWithAlias<DB, TR>, ExtractTableAlias<DB, TR>, ExtractTableAlias<DB, TR>, UpdateResult>;
|
||
+ updateTable<TR extends TableReference<DB>>(table: TR): UpdateQueryBuilder<From<DB, TR>, FromTables<DB, never, TR>, FromTables<DB, never, TR>, UpdateResult>;
|
||
+ withPlugin(plugin: KyselyPlugin): TriggerQueryCreator<DB, TB>;
|
||
+ withoutPlugins(): TriggerQueryCreator<DB, TB>;
|
||
+}
|
||
diff --git a/node_modules/kysely/dist/esm/trigger-query-creator.js b/node_modules/kysely/dist/esm/trigger-query-creator.js
|
||
new file mode 100644
|
||
index 0000000..c8960dc
|
||
--- /dev/null
|
||
+++ b/node_modules/kysely/dist/esm/trigger-query-creator.js
|
||
@@ -0,0 +1,73 @@
|
||
+/// <reference types="./trigger-query-creator.d.ts" />
|
||
+import { createSelectQueryBuilder, } from './query-builder/select-query-builder.js';
|
||
+import { InsertQueryBuilder } from './query-builder/insert-query-builder.js';
|
||
+import { DeleteQueryBuilder } from './query-builder/delete-query-builder.js';
|
||
+import { UpdateQueryBuilder } from './query-builder/update-query-builder.js';
|
||
+import { DeleteQueryNode } from './operation-node/delete-query-node.js';
|
||
+import { InsertQueryNode } from './operation-node/insert-query-node.js';
|
||
+import { SelectQueryNode } from './operation-node/select-query-node.js';
|
||
+import { UpdateQueryNode } from './operation-node/update-query-node.js';
|
||
+import { parseTable, parseTableExpression, parseTableExpressionOrList, } from './parser/table-parser.js';
|
||
+import { createQueryId } from './util/query-id.js';
|
||
+import { freeze } from './util/object-utils.js';
|
||
+import { parseSelectArg, } from './parser/select-parser.js';
|
||
+export class TriggerQueryCreator {
|
||
+ #props;
|
||
+ constructor(props) {
|
||
+ this.#props = freeze(props);
|
||
+ }
|
||
+ selectFrom(from) {
|
||
+ return createSelectQueryBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: SelectQueryNode.createFrom(parseTableExpressionOrList(from), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ selectNoFrom(selection) {
|
||
+ return createSelectQueryBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: SelectQueryNode.cloneWithSelections(SelectQueryNode.create(this.#props.withNode), parseSelectArg(selection)),
|
||
+ });
|
||
+ }
|
||
+ insertInto(table) {
|
||
+ return new InsertQueryBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: InsertQueryNode.create(parseTable(table), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ replaceInto(table) {
|
||
+ return new InsertQueryBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: InsertQueryNode.create(parseTable(table), this.#props.withNode, true),
|
||
+ });
|
||
+ }
|
||
+ deleteFrom(tables) {
|
||
+ return new DeleteQueryBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: DeleteQueryNode.create(parseTableExpressionOrList(tables), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ updateTable(table) {
|
||
+ return new UpdateQueryBuilder({
|
||
+ queryId: createQueryId(),
|
||
+ executor: this.#props.executor,
|
||
+ queryNode: UpdateQueryNode.create(parseTableExpression(table), this.#props.withNode),
|
||
+ });
|
||
+ }
|
||
+ withPlugin(plugin) {
|
||
+ return new TriggerQueryCreator({
|
||
+ ...this.#props,
|
||
+ executor: this.#props.executor.withPlugin(plugin),
|
||
+ });
|
||
+ }
|
||
+ withoutPlugins() {
|
||
+ return new TriggerQueryCreator({
|
||
+ ...this.#props,
|
||
+ executor: this.#props.executor.withoutPlugins(),
|
||
+ });
|
||
+ }
|
||
+}
|
||
diff --git a/node_modules/kysely/dist/esm/util/object-utils.d.ts b/node_modules/kysely/dist/esm/util/object-utils.d.ts
|
||
index 1b9f563..c9fa82b 100644
|
||
--- a/node_modules/kysely/dist/esm/util/object-utils.d.ts
|
||
+++ b/node_modules/kysely/dist/esm/util/object-utils.d.ts
|
||
@@ -6,7 +6,7 @@ export declare function isNumber(obj: unknown): obj is number;
|
||
export declare function isBoolean(obj: unknown): obj is boolean;
|
||
export declare function isNull(obj: unknown): obj is null;
|
||
export declare function isDate(obj: unknown): obj is Date;
|
||
-export declare function isBigInt(obj: unknown): obj is BigInt;
|
||
+export declare function isBigInt(obj: unknown): obj is bigint;
|
||
export declare function isBuffer(obj: unknown): obj is {
|
||
length: number;
|
||
};
|
||
diff --git a/node_modules/kysely/helpers/sqlite.js b/node_modules/kysely/helpers/sqlite.js
|
||
index cc6b411..a579b48 100644
|
||
--- a/node_modules/kysely/helpers/sqlite.js
|
||
+++ b/node_modules/kysely/helpers/sqlite.js
|
||
@@ -1 +1 @@
|
||
-module.exports = require('../dist/cjs/helpers/sqlite.js')
|
||
\ No newline at end of file
|
||
+module.exports = require('kysely/dist/cjs/helpers/sqlite.js')
|
||
\ No newline at end of file
|