@mikro-orm/sql 7.0.0-rc.1 → 7.0.0-rc.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AbstractSqlConnection.js +2 -1
- package/AbstractSqlDriver.d.ts +18 -12
- package/AbstractSqlDriver.js +187 -38
- package/AbstractSqlPlatform.d.ts +1 -0
- package/AbstractSqlPlatform.js +5 -3
- package/PivotCollectionPersister.js +2 -2
- package/SqlEntityManager.d.ts +5 -4
- package/SqlEntityManager.js +5 -5
- package/dialects/mssql/MsSqlNativeQueryBuilder.d.ts +2 -0
- package/dialects/mssql/MsSqlNativeQueryBuilder.js +8 -4
- package/dialects/mysql/BaseMySqlPlatform.js +1 -2
- package/dialects/mysql/MySqlSchemaHelper.js +21 -10
- package/dialects/postgresql/BasePostgreSqlPlatform.js +38 -30
- package/dialects/postgresql/PostgreSqlSchemaHelper.js +63 -47
- package/dialects/sqlite/BaseSqliteConnection.d.ts +4 -1
- package/dialects/sqlite/BaseSqliteConnection.js +4 -0
- package/dialects/sqlite/NodeSqliteDialect.d.ts +21 -0
- package/dialects/sqlite/NodeSqliteDialect.js +43 -0
- package/dialects/sqlite/SqliteDriver.d.ts +12 -0
- package/dialects/sqlite/SqliteDriver.js +14 -0
- package/dialects/sqlite/{BaseSqlitePlatform.d.ts → SqlitePlatform.d.ts} +5 -2
- package/dialects/sqlite/{BaseSqlitePlatform.js → SqlitePlatform.js} +30 -4
- package/dialects/sqlite/SqliteSchemaHelper.d.ts +5 -0
- package/dialects/sqlite/SqliteSchemaHelper.js +31 -10
- package/dialects/sqlite/index.d.ts +3 -1
- package/dialects/sqlite/index.js +3 -1
- package/package.json +30 -30
- package/plugin/transformer.js +17 -16
- package/query/CriteriaNode.js +28 -10
- package/query/CriteriaNodeFactory.js +5 -1
- package/query/NativeQueryBuilder.d.ts +25 -0
- package/query/NativeQueryBuilder.js +61 -1
- package/query/ObjectCriteriaNode.js +71 -27
- package/query/QueryBuilder.d.ts +177 -48
- package/query/QueryBuilder.js +233 -54
- package/query/QueryBuilderHelper.d.ts +4 -3
- package/query/QueryBuilderHelper.js +47 -17
- package/query/ScalarCriteriaNode.js +14 -7
- package/query/raw.js +1 -1
- package/schema/DatabaseSchema.js +21 -15
- package/schema/DatabaseTable.js +114 -54
- package/schema/SchemaComparator.js +56 -32
- package/schema/SchemaHelper.js +28 -8
- package/schema/SqlSchemaGenerator.d.ts +2 -1
- package/schema/SqlSchemaGenerator.js +15 -8
- package/tsconfig.build.tsbuildinfo +1 -1
- package/typings.d.ts +15 -4
package/typings.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { Generated, Kysely } from 'kysely';
|
|
2
|
-
import type { CheckCallback, DeferMode, Dictionary, EntityName, EntityProperty, EntitySchemaWithMeta, FilterQuery, GroupOperator, IndexColumnOptions, Opt, Primary, PrimaryProperty, QueryFlag, QueryOrderMap, RawQueryFragment, Type } from '@mikro-orm/core';
|
|
2
|
+
import type { CheckCallback, DeferMode, Dictionary, EntityName, EntityProperty, EntitySchemaWithMeta, FilterQuery, GroupOperator, IndexColumnOptions, InferEntityName, Opt, Primary, PrimaryProperty, QueryFlag, QueryOrderMap, RawQueryFragment, Scalar, Type } from '@mikro-orm/core';
|
|
3
3
|
import type { JoinType, QueryType } from './query/enums.js';
|
|
4
4
|
import type { DatabaseSchema } from './schema/DatabaseSchema.js';
|
|
5
5
|
import type { DatabaseTable } from './schema/DatabaseTable.js';
|
|
6
|
-
import type {
|
|
7
|
-
import type { NativeQueryBuilder } from './query/NativeQueryBuilder.js';
|
|
6
|
+
import type { AnyQueryBuilder } from './query/QueryBuilder.js';
|
|
7
|
+
import type { CteOptions, NativeQueryBuilder } from './query/NativeQueryBuilder.js';
|
|
8
8
|
import type { MikroKyselyPluginOptions } from './plugin/index.js';
|
|
9
9
|
export interface Table {
|
|
10
10
|
table_name: string;
|
|
@@ -12,7 +12,7 @@ export interface Table {
|
|
|
12
12
|
table_comment?: string;
|
|
13
13
|
}
|
|
14
14
|
/** @internal */
|
|
15
|
-
export type InternalField<T> = string | RawQueryFragment |
|
|
15
|
+
export type InternalField<T> = string | RawQueryFragment | AnyQueryBuilder | NativeQueryBuilder;
|
|
16
16
|
export interface JoinOptions {
|
|
17
17
|
table: string;
|
|
18
18
|
schema?: string;
|
|
@@ -202,6 +202,8 @@ export interface IQueryBuilder<T> {
|
|
|
202
202
|
setFlag(flag: QueryFlag): this;
|
|
203
203
|
unsetFlag(flag: QueryFlag): this;
|
|
204
204
|
hasFlag(flag: QueryFlag): boolean;
|
|
205
|
+
with(name: string, query: AnyQueryBuilder | NativeQueryBuilder | RawQueryFragment, options?: CteOptions): this;
|
|
206
|
+
withRecursive(name: string, query: AnyQueryBuilder | NativeQueryBuilder | RawQueryFragment, options?: CteOptions): this;
|
|
205
207
|
scheduleFilterCheck(path: string): void;
|
|
206
208
|
withSchema(schema: string): this;
|
|
207
209
|
}
|
|
@@ -309,4 +311,13 @@ type MaybeNever<TValue, TOptions> = TOptions extends {
|
|
|
309
311
|
type ExcludeNever<TMap extends Record<string, any>> = {
|
|
310
312
|
[K in keyof TMap as TMap[K] extends never ? never : K]: TMap[K];
|
|
311
313
|
};
|
|
314
|
+
export type InferClassEntityDB<TEntities, TOptions extends MikroKyselyPluginOptions = {}> = ClassEntityDBMap<TEntities, TOptions> extends infer R ? ([keyof R] extends [never] ? unknown : R) : never;
|
|
315
|
+
type ClassEntityDBMap<TEntities, TOptions extends MikroKyselyPluginOptions = {}> = {
|
|
316
|
+
[T in TEntities as ClassEntityTableName<T, TOptions>]: ClassEntityColumns<T>;
|
|
317
|
+
};
|
|
318
|
+
type ClassEntityTableName<T, TOptions extends MikroKyselyPluginOptions = {}> = T extends abstract new (...args: any[]) => infer Instance ? TransformName<InferEntityName<Instance>, TOptions['tableNamingStrategy'] extends 'entity' ? 'entity' : 'underscore'> : never;
|
|
319
|
+
type ClassEntityColumns<T> = T extends abstract new (...args: any[]) => infer Instance ? {
|
|
320
|
+
[K in keyof Instance as IsClassEntityColumn<K, Instance[K]>]: Instance[K];
|
|
321
|
+
} : never;
|
|
322
|
+
type IsClassEntityColumn<K, V> = K extends symbol ? never : NonNullable<V> extends Scalar ? K : never;
|
|
312
323
|
export {};
|