@mikro-orm/knex 6.0.0-dev.266 → 6.0.0-dev.268
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.d.ts +1 -1
- package/AbstractSqlConnection.js +3 -3
- package/AbstractSqlDriver.d.ts +2 -2
- package/AbstractSqlDriver.js +2 -2
- package/SqlEntityManager.d.ts +3 -3
- package/SqlEntityManager.js +4 -4
- package/package.json +2 -2
- package/query/QueryBuilder.d.ts +2 -2
- package/query/QueryBuilder.js +4 -4
|
@@ -40,7 +40,7 @@ export declare abstract class AbstractSqlConnection extends Connection {
|
|
|
40
40
|
}): Promise<Knex.Transaction>;
|
|
41
41
|
commit(ctx: Knex.Transaction, eventBroadcaster?: TransactionEventBroadcaster): Promise<void>;
|
|
42
42
|
rollback(ctx: Knex.Transaction, eventBroadcaster?: TransactionEventBroadcaster): Promise<void>;
|
|
43
|
-
execute<T extends QueryResult | EntityData<AnyEntity> | EntityData<AnyEntity>[] = EntityData<AnyEntity>[]>(queryOrKnex: string | Knex.QueryBuilder | Knex.Raw, params?: unknown[], method?: 'all' | 'get' | 'run', ctx?: Transaction,
|
|
43
|
+
execute<T extends QueryResult | EntityData<AnyEntity> | EntityData<AnyEntity>[] = EntityData<AnyEntity>[]>(queryOrKnex: string | Knex.QueryBuilder | Knex.Raw, params?: unknown[], method?: 'all' | 'get' | 'run', ctx?: Transaction, loggerContext?: LoggingOptions): Promise<T>;
|
|
44
44
|
/**
|
|
45
45
|
* Execute raw SQL queries from file
|
|
46
46
|
*/
|
package/AbstractSqlConnection.js
CHANGED
|
@@ -106,7 +106,7 @@ class AbstractSqlConnection extends core_1.Connection {
|
|
|
106
106
|
await eventBroadcaster?.dispatchEvent(core_1.EventType.afterTransactionRollback, ctx);
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
|
-
async execute(queryOrKnex, params = [], method = 'all', ctx,
|
|
109
|
+
async execute(queryOrKnex, params = [], method = 'all', ctx, loggerContext) {
|
|
110
110
|
await this.ensureConnection();
|
|
111
111
|
if (core_1.Utils.isObject(queryOrKnex)) {
|
|
112
112
|
ctx ??= (queryOrKnex.client.transacting ? queryOrKnex : null);
|
|
@@ -115,7 +115,7 @@ class AbstractSqlConnection extends core_1.Connection {
|
|
|
115
115
|
params = q.bindings;
|
|
116
116
|
}
|
|
117
117
|
const formatted = this.platform.formatQuery(queryOrKnex, params);
|
|
118
|
-
const sql = this.getSql(queryOrKnex, formatted,
|
|
118
|
+
const sql = this.getSql(queryOrKnex, formatted, loggerContext);
|
|
119
119
|
return this.executeQuery(sql, async () => {
|
|
120
120
|
const query = this.getKnex().raw(formatted);
|
|
121
121
|
if (ctx) {
|
|
@@ -123,7 +123,7 @@ class AbstractSqlConnection extends core_1.Connection {
|
|
|
123
123
|
}
|
|
124
124
|
const res = await query;
|
|
125
125
|
return this.transformRawResult(res, method);
|
|
126
|
-
}, { query: queryOrKnex, params, ...
|
|
126
|
+
}, { query: queryOrKnex, params, ...loggerContext });
|
|
127
127
|
}
|
|
128
128
|
/**
|
|
129
129
|
* Execute raw SQL queries from file
|
package/AbstractSqlDriver.d.ts
CHANGED
|
@@ -35,7 +35,7 @@ export declare abstract class AbstractSqlDriver<Connection extends AbstractSqlCo
|
|
|
35
35
|
/**
|
|
36
36
|
* 1:1 owner side needs to be marked for population so QB auto-joins the owner id
|
|
37
37
|
*/
|
|
38
|
-
protected autoJoinOneToOneOwner<T extends object, P extends string = never>(meta: EntityMetadata<T>, populate: PopulateOptions<T>[], fields?: readonly EntityField<T,
|
|
38
|
+
protected autoJoinOneToOneOwner<T extends object, P extends string = never>(meta: EntityMetadata<T>, populate: PopulateOptions<T>[], fields?: readonly EntityField<T, any>[]): PopulateOptions<T>[];
|
|
39
39
|
/**
|
|
40
40
|
* @internal
|
|
41
41
|
*/
|
|
@@ -55,7 +55,7 @@ export declare abstract class AbstractSqlDriver<Connection extends AbstractSqlCo
|
|
|
55
55
|
*/
|
|
56
56
|
mapPropToFieldNames<T extends object>(qb: QueryBuilder<T>, prop: EntityProperty<T>, tableAlias?: string): Field<T>[];
|
|
57
57
|
/** @internal */
|
|
58
|
-
createQueryBuilder<T extends object>(entityName: EntityName<T> | QueryBuilder<T>, ctx?: Transaction<Knex.Transaction>, preferredConnectionType?: ConnectionType, convertCustomTypes?: boolean,
|
|
58
|
+
createQueryBuilder<T extends object>(entityName: EntityName<T> | QueryBuilder<T>, ctx?: Transaction<Knex.Transaction>, preferredConnectionType?: ConnectionType, convertCustomTypes?: boolean, loggerContext?: LoggingOptions): QueryBuilder<T>;
|
|
59
59
|
protected resolveConnectionType(args: {
|
|
60
60
|
ctx?: Transaction<Knex.Transaction>;
|
|
61
61
|
connectionType?: ConnectionType;
|
package/AbstractSqlDriver.js
CHANGED
|
@@ -889,9 +889,9 @@ class AbstractSqlDriver extends core_1.DatabaseDriver {
|
|
|
889
889
|
return prop.fieldNames;
|
|
890
890
|
}
|
|
891
891
|
/** @internal */
|
|
892
|
-
createQueryBuilder(entityName, ctx, preferredConnectionType, convertCustomTypes,
|
|
892
|
+
createQueryBuilder(entityName, ctx, preferredConnectionType, convertCustomTypes, loggerContext) {
|
|
893
893
|
const connectionType = this.resolveConnectionType({ ctx, connectionType: preferredConnectionType });
|
|
894
|
-
const qb = new query_1.QueryBuilder(entityName, this.metadata, this, ctx, undefined, connectionType, undefined,
|
|
894
|
+
const qb = new query_1.QueryBuilder(entityName, this.metadata, this, ctx, undefined, connectionType, undefined, loggerContext);
|
|
895
895
|
if (!convertCustomTypes) {
|
|
896
896
|
qb.unsetFlag(core_1.QueryFlag.CONVERT_CUSTOM_TYPES);
|
|
897
897
|
}
|
package/SqlEntityManager.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Knex } from 'knex';
|
|
2
|
-
import { EntityManager, type AnyEntity, type ConnectionType, type EntityData, type EntityName, type EntityRepository, type GetRepository, type QueryResult, type FilterQuery } from '@mikro-orm/core';
|
|
2
|
+
import { EntityManager, type AnyEntity, type ConnectionType, type EntityData, type EntityName, type EntityRepository, type GetRepository, type QueryResult, type FilterQuery, type LoggingOptions } from '@mikro-orm/core';
|
|
3
3
|
import type { AbstractSqlDriver } from './AbstractSqlDriver';
|
|
4
4
|
import { QueryBuilder } from './query';
|
|
5
5
|
import type { SqlEntityRepository } from './SqlEntityRepository';
|
|
@@ -10,11 +10,11 @@ export declare class SqlEntityManager<D extends AbstractSqlDriver = AbstractSqlD
|
|
|
10
10
|
/**
|
|
11
11
|
* Creates a QueryBuilder instance
|
|
12
12
|
*/
|
|
13
|
-
createQueryBuilder<T extends object>(entityName: EntityName<T> | QueryBuilder<T>, alias?: string, type?: ConnectionType): QueryBuilder<T>;
|
|
13
|
+
createQueryBuilder<T extends object>(entityName: EntityName<T> | QueryBuilder<T>, alias?: string, type?: ConnectionType, loggerContext?: LoggingOptions): QueryBuilder<T>;
|
|
14
14
|
/**
|
|
15
15
|
* Shortcut for `createQueryBuilder()`
|
|
16
16
|
*/
|
|
17
|
-
qb<T extends object>(entityName: EntityName<T>, alias?: string, type?: ConnectionType): QueryBuilder<T>;
|
|
17
|
+
qb<T extends object>(entityName: EntityName<T>, alias?: string, type?: ConnectionType, loggerContext?: LoggingOptions): QueryBuilder<T>;
|
|
18
18
|
/**
|
|
19
19
|
* Returns configured knex instance.
|
|
20
20
|
*/
|
package/SqlEntityManager.js
CHANGED
|
@@ -10,15 +10,15 @@ class SqlEntityManager extends core_1.EntityManager {
|
|
|
10
10
|
/**
|
|
11
11
|
* Creates a QueryBuilder instance
|
|
12
12
|
*/
|
|
13
|
-
createQueryBuilder(entityName, alias, type) {
|
|
13
|
+
createQueryBuilder(entityName, alias, type, loggerContext) {
|
|
14
14
|
const context = this.getContext();
|
|
15
|
-
return new query_1.QueryBuilder(entityName, this.getMetadata(), this.getDriver(), context.getTransactionContext(), alias, type, context);
|
|
15
|
+
return new query_1.QueryBuilder(entityName, this.getMetadata(), this.getDriver(), context.getTransactionContext(), alias, type, context, loggerContext ?? context.loggerContext);
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* Shortcut for `createQueryBuilder()`
|
|
19
19
|
*/
|
|
20
|
-
qb(entityName, alias, type) {
|
|
21
|
-
return this.createQueryBuilder(entityName, alias, type);
|
|
20
|
+
qb(entityName, alias, type, loggerContext) {
|
|
21
|
+
return this.createQueryBuilder(entityName, alias, type, loggerContext);
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
24
|
* Returns configured knex instance.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mikro-orm/knex",
|
|
3
|
-
"version": "6.0.0-dev.
|
|
3
|
+
"version": "6.0.0-dev.268",
|
|
4
4
|
"description": "TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, PostgreSQL and SQLite databases as well as usage with vanilla JavaScript.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "index.mjs",
|
|
@@ -66,6 +66,6 @@
|
|
|
66
66
|
"@mikro-orm/core": "^5.9.2"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
|
-
"@mikro-orm/core": "6.0.0-dev.
|
|
69
|
+
"@mikro-orm/core": "6.0.0-dev.268"
|
|
70
70
|
}
|
|
71
71
|
}
|
package/query/QueryBuilder.d.ts
CHANGED
|
@@ -38,7 +38,7 @@ export declare class QueryBuilder<T extends object = AnyEntity> {
|
|
|
38
38
|
private readonly context?;
|
|
39
39
|
private connectionType?;
|
|
40
40
|
private readonly em?;
|
|
41
|
-
private readonly
|
|
41
|
+
private readonly loggerContext?;
|
|
42
42
|
get mainAlias(): Alias<T>;
|
|
43
43
|
get alias(): string;
|
|
44
44
|
get helper(): QueryBuilderHelper;
|
|
@@ -87,7 +87,7 @@ export declare class QueryBuilder<T extends object = AnyEntity> {
|
|
|
87
87
|
/**
|
|
88
88
|
* @internal
|
|
89
89
|
*/
|
|
90
|
-
constructor(entityName: EntityName<T> | QueryBuilder<T>, metadata: MetadataStorage, driver: AbstractSqlDriver, context?: Knex.Transaction<any, any[]> | undefined, alias?: string, connectionType?: ConnectionType | undefined, em?: SqlEntityManager<AbstractSqlDriver<import("..").AbstractSqlConnection, AbstractSqlPlatform>> | undefined,
|
|
90
|
+
constructor(entityName: EntityName<T> | QueryBuilder<T>, metadata: MetadataStorage, driver: AbstractSqlDriver, context?: Knex.Transaction<any, any[]> | undefined, alias?: string, connectionType?: ConnectionType | undefined, em?: SqlEntityManager<AbstractSqlDriver<import("..").AbstractSqlConnection, AbstractSqlPlatform>> | undefined, loggerContext?: LoggingOptions | undefined);
|
|
91
91
|
select(fields: Field<T> | Field<T>[], distinct?: boolean): SelectQueryBuilder<T>;
|
|
92
92
|
addSelect(fields: Field<T> | Field<T>[]): SelectQueryBuilder<T>;
|
|
93
93
|
distinct(): SelectQueryBuilder<T>;
|
package/query/QueryBuilder.js
CHANGED
|
@@ -31,7 +31,7 @@ class QueryBuilder {
|
|
|
31
31
|
context;
|
|
32
32
|
connectionType;
|
|
33
33
|
em;
|
|
34
|
-
|
|
34
|
+
loggerContext;
|
|
35
35
|
get mainAlias() {
|
|
36
36
|
this.ensureFromClause();
|
|
37
37
|
return this._mainAlias;
|
|
@@ -88,13 +88,13 @@ class QueryBuilder {
|
|
|
88
88
|
/**
|
|
89
89
|
* @internal
|
|
90
90
|
*/
|
|
91
|
-
constructor(entityName, metadata, driver, context, alias, connectionType, em,
|
|
91
|
+
constructor(entityName, metadata, driver, context, alias, connectionType, em, loggerContext) {
|
|
92
92
|
this.metadata = metadata;
|
|
93
93
|
this.driver = driver;
|
|
94
94
|
this.context = context;
|
|
95
95
|
this.connectionType = connectionType;
|
|
96
96
|
this.em = em;
|
|
97
|
-
this.
|
|
97
|
+
this.loggerContext = loggerContext;
|
|
98
98
|
this.platform = this.driver.getPlatform();
|
|
99
99
|
this.knex = this.driver.getConnection(this.connectionType).getKnex();
|
|
100
100
|
if (alias) {
|
|
@@ -587,7 +587,7 @@ class QueryBuilder {
|
|
|
587
587
|
}
|
|
588
588
|
const write = method === 'run' || !this.platform.getConfig().get('preferReadReplicas');
|
|
589
589
|
const type = this.connectionType || (write ? 'write' : 'read');
|
|
590
|
-
const res = await this.driver.getConnection(type).execute(query.sql, query.bindings, method, this.context, this.
|
|
590
|
+
const res = await this.driver.getConnection(type).execute(query.sql, query.bindings, method, this.context, this.loggerContext);
|
|
591
591
|
const meta = this.mainAlias.metadata;
|
|
592
592
|
if (!options.mapResults || !meta) {
|
|
593
593
|
await this.em?.storeCache(this._cache, cached, res);
|