@mikro-orm/core 6.4.8-dev.5 → 6.4.8-dev.7
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/EntityManager.js +2 -1
- package/drivers/IDatabaseDriver.d.ts +2 -0
- package/entity/Collection.js +6 -2
- package/package.json +2 -2
package/EntityManager.js
CHANGED
|
@@ -142,7 +142,7 @@ class EntityManager {
|
|
|
142
142
|
options._populateWhere = options.populateWhere ?? this.config.get('populateWhere');
|
|
143
143
|
options.populateWhere = this.createPopulateWhere({ ...where }, options);
|
|
144
144
|
options.populateFilter = await this.getJoinedFilters(meta, { ...where }, options);
|
|
145
|
-
const results = await em.driver.find(entityName, where, { ctx: em.transactionContext, ...options });
|
|
145
|
+
const results = await em.driver.find(entityName, where, { ctx: em.transactionContext, em, ...options });
|
|
146
146
|
if (results.length === 0) {
|
|
147
147
|
await em.storeCache(options.cache, cached, []);
|
|
148
148
|
return [];
|
|
@@ -540,6 +540,7 @@ class EntityManager {
|
|
|
540
540
|
options.populateFilter = await this.getJoinedFilters(meta, { ...where }, options);
|
|
541
541
|
const data = await em.driver.findOne(entityName, where, {
|
|
542
542
|
ctx: em.transactionContext,
|
|
543
|
+
em,
|
|
543
544
|
...options,
|
|
544
545
|
});
|
|
545
546
|
if (!data) {
|
|
@@ -146,6 +146,8 @@ export interface FindOptions<Entity, Hint extends string = never, Fields extends
|
|
|
146
146
|
hintComments?: string | string[];
|
|
147
147
|
loggerContext?: LogContext;
|
|
148
148
|
logging?: LoggingOptions;
|
|
149
|
+
/** @internal used to apply filters to the auto-joined relations */
|
|
150
|
+
em?: EntityManager;
|
|
149
151
|
}
|
|
150
152
|
export interface FindByCursorOptions<T extends object, P extends string = never, F extends string = '*', E extends string = never> extends Omit<FindOptions<T, P, F, E>, 'limit' | 'offset'> {
|
|
151
153
|
}
|
package/entity/Collection.js
CHANGED
|
@@ -222,9 +222,13 @@ class Collection extends ArrayCollection_1.ArrayCollection {
|
|
|
222
222
|
const em = this.getEntityManager();
|
|
223
223
|
if (options.dataloader ?? [enums_1.DataloaderType.ALL, enums_1.DataloaderType.COLLECTION].includes(utils_1.DataloaderUtils.getDataloaderType(em.config.get('dataloader')))) {
|
|
224
224
|
const order = [...this.items]; // copy order of references
|
|
225
|
-
const
|
|
225
|
+
const orderBy = this.createOrderBy(options.orderBy);
|
|
226
|
+
const customOrder = orderBy.length > 0;
|
|
226
227
|
// eslint-disable-next-line dot-notation
|
|
227
|
-
const items = await em['colLoader'].load([
|
|
228
|
+
const items = await em['colLoader'].load([
|
|
229
|
+
this,
|
|
230
|
+
{ ...options, orderBy },
|
|
231
|
+
]);
|
|
228
232
|
if (!customOrder) {
|
|
229
233
|
this.reorderItems(items, order);
|
|
230
234
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mikro-orm/core",
|
|
3
|
-
"version": "6.4.8-dev.
|
|
3
|
+
"version": "6.4.8-dev.7",
|
|
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",
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"esprima": "4.0.1",
|
|
65
65
|
"fs-extra": "11.3.0",
|
|
66
66
|
"globby": "11.1.0",
|
|
67
|
-
"mikro-orm": "6.4.8-dev.
|
|
67
|
+
"mikro-orm": "6.4.8-dev.7",
|
|
68
68
|
"reflect-metadata": "0.2.2"
|
|
69
69
|
}
|
|
70
70
|
}
|