@nest-boot/mikro-orm 7.0.1 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  import { MikroOrmModuleOptions as BaseMikroOrmModuleOptions } from "@mikro-orm/nestjs";
2
- export type MikroOrmModuleOptions = Omit<BaseMikroOrmModuleOptions, "registerRequestContext">;
2
+ export type MikroOrmModuleOptions = Omit<BaseMikroOrmModuleOptions, "registerRequestContext" | "context">;
@@ -33,10 +33,8 @@ let MikroOrmModule = class MikroOrmModule extends mikro_orm_module_definition_1.
33
33
  }
34
34
  onModuleInit() {
35
35
  request_context_1.RequestContext.registerMiddleware("mikro-orm", (ctx, next) => {
36
- return core_1.RequestContext.create(this.orm.em, () => {
37
- ctx.set(core_1.EntityManager, this.orm.em);
38
- return next();
39
- });
36
+ ctx.set(core_1.EntityManager, this.orm.em.fork({ useContext: true }));
37
+ return next();
40
38
  });
41
39
  }
42
40
  };
@@ -50,6 +48,11 @@ exports.MikroOrmModule = MikroOrmModule = __decorate([
50
48
  inject: [mikro_orm_module_definition_1.MODULE_OPTIONS_TOKEN],
51
49
  useFactory: async (options) => ({
52
50
  registerRequestContext: false,
51
+ context: () => {
52
+ if (request_context_1.RequestContext.isActive()) {
53
+ return request_context_1.RequestContext.get(core_1.EntityManager);
54
+ }
55
+ },
53
56
  ...(await (0, load_config_from_env_util_1.loadConfigFromEnv)()),
54
57
  ...options,
55
58
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"mikro-orm.module.js","sourceRoot":"","sources":["../src/mikro-orm.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAIyB;AACzB,8CAAyE;AACzE,gEAGoC;AACpC,2CAA8D;AAG9D,+EAIuC;AACvC,iFAAsE;AAwB/D,IAAM,cAAc,GAApB,MAAM,cACX,SAAQ,qDAAuB;IAG/B,YAA6B,GAAa;QACxC,KAAK,EAAE,CAAC;QADmB,QAAG,GAAH,GAAG,CAAU;IAE1C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,IAAsD;QACzE,OAAO,uBAAkB,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,aAAa,CAClB,GAAG,IAAyD;QAE5D,OAAO,uBAAkB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,YAAY,CACjB,GAAG,IAAwD;QAE3D,2EAA2E;QAC3E,OAAO,uBAAkB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,YAAY;QACV,gCAAc,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3D,OAAO,qBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE;gBAClD,GAAG,CAAC,GAAG,CAAC,oBAAa,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACpC,OAAO,IAAI,EAAE,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAjCY,wCAAc;yBAAd,cAAc;IAtB1B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,sCAAoB;YACpB,uBAAkB,CAAC,YAAY,CAAC;gBAC9B,MAAM,EAAE,CAAC,kDAAoB,CAAC;gBAC9B,UAAU,EAAE,KAAK,EAAE,OAA8B,EAAE,EAAE,CAAC,CAAC;oBACrD,sBAAsB,EAAE,KAAK;oBAC7B,GAAG,CAAC,MAAM,IAAA,6CAAiB,GAAE,CAAC;oBAC9B,GAAG,OAAO;iBACX,CAAC;aACH,CAAC;SACH;QACD,SAAS,EAAE;YACT;gBACE,OAAO,EAAE,kDAAoB;gBAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,uDAAyB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAC9D,UAAU,EAAE,CAAC,UAAiC,EAAE,EAAE,EAAE,CAAC,OAAO;aAC7D;SACF;QACD,OAAO,EAAE,CAAC,kDAAoB,CAAC;KAChC,CAAC;qCAKkC,eAAQ;GAJ/B,cAAc,CAiC1B"}
1
+ {"version":3,"file":"mikro-orm.module.js","sourceRoot":"","sources":["../src/mikro-orm.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAA0D;AAC1D,8CAAyE;AACzE,gEAGoC;AACpC,2CAA8D;AAG9D,+EAIuC;AACvC,iFAAsE;AA6B/D,IAAM,cAAc,GAApB,MAAM,cACX,SAAQ,qDAAuB;IAG/B,YAA6B,GAAa;QACxC,KAAK,EAAE,CAAC;QADmB,QAAG,GAAH,GAAG,CAAU;IAE1C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,IAAsD;QACzE,OAAO,uBAAkB,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,aAAa,CAClB,GAAG,IAAyD;QAE5D,OAAO,uBAAkB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,YAAY,CACjB,GAAG,IAAwD;QAE3D,2EAA2E;QAC3E,OAAO,uBAAkB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,YAAY;QACV,gCAAc,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3D,GAAG,CAAC,GAAG,CAAC,oBAAa,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/D,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA/BY,wCAAc;yBAAd,cAAc;IA3B1B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,sCAAoB;YACpB,uBAAkB,CAAC,YAAY,CAAC;gBAC9B,MAAM,EAAE,CAAC,kDAAoB,CAAC;gBAC9B,UAAU,EAAE,KAAK,EAAE,OAA8B,EAAE,EAAE,CAAC,CAAC;oBACrD,sBAAsB,EAAE,KAAK;oBAC7B,OAAO,EAAE,GAAG,EAAE;wBACZ,IAAI,gCAAc,CAAC,QAAQ,EAAE,EAAE,CAAC;4BAC9B,OAAO,gCAAc,CAAC,GAAG,CAAC,oBAAa,CAAC,CAAC;wBAC3C,CAAC;oBACH,CAAC;oBACD,GAAG,CAAC,MAAM,IAAA,6CAAiB,GAAE,CAAC;oBAC9B,GAAG,OAAO;iBACX,CAAC;aACH,CAAC;SACH;QACD,SAAS,EAAE;YACT;gBACE,OAAO,EAAE,kDAAoB;gBAC7B,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,uDAAyB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAC9D,UAAU,EAAE,CAAC,UAAiC,EAAE,EAAE,EAAE,CAAC,OAAO;aAC7D;SACF;QACD,OAAO,EAAE,CAAC,kDAAoB,CAAC;KAChC,CAAC;qCAKkC,eAAQ;GAJ/B,cAAc,CA+B1B"}
@@ -1,20 +1,24 @@
1
- import { type AssignOptions, type EntityData, type EntityDTO, EntityManager, type ExpandQuery, FilterQuery, FindOptions, type FromEntityType, type IsSubset, type Loaded, type PopulatePath } from "@mikro-orm/core";
1
+ import { type AssignOptions, CountOptions, type EntityData, type EntityDTO, EntityManager, type ExpandQuery, FilterQuery, FindOptions, type FromEntityType, type IsSubset, type Loaded, type PopulatePath } from "@mikro-orm/core";
2
2
  import type { RequiredEntityData } from "@mikro-orm/core/typings";
3
3
  import { Type } from "@nestjs/common";
4
4
  import type { IdEntity } from "../interfaces/id-entity.interface";
5
5
  import type { ChunkByIdOptions } from "../types/chunk-by-id-options.type";
6
6
  import type { IdOrEntity } from "../types/id-or-entity.type";
7
+ export interface EntityServiceOptions<Entity extends IdEntity> {
8
+ softDeleteKey?: keyof Entity;
9
+ }
7
10
  export declare class EntityService<Entity extends IdEntity> {
8
11
  #private;
9
12
  protected readonly entityClass: Type<Entity>;
10
13
  protected readonly em: EntityManager;
11
- constructor(entityClass: Type<Entity>, em: EntityManager);
14
+ protected readonly options?: EntityServiceOptions<Entity> | undefined;
15
+ constructor(entityClass: Type<Entity>, em: EntityManager, options?: EntityServiceOptions<Entity> | undefined);
12
16
  create(data: RequiredEntityData<Entity>): Promise<Entity>;
13
- findOne(idOrEntityOrWhere: IdOrEntity<Entity> | FilterQuery<Entity>): Promise<Entity | null>;
14
- findOneOrFail(idOrEntityOrWhere: IdOrEntity<Entity> | FilterQuery<Entity>): Promise<Entity>;
15
- findAll(where: FilterQuery<Entity>, options?: FindOptions<Entity>): Promise<Entity[]>;
16
- count(where: FilterQuery<Entity>, options?: FindOptions<Entity>): Promise<number>;
17
+ findOne(idOrEntityOrWhere: IdOrEntity<Entity> | FilterQuery<NoInfer<Entity>>): Promise<Loaded<Entity> | null>;
18
+ findOneOrFail(idOrEntityOrWhere: IdOrEntity<Entity> | FilterQuery<Entity>): Promise<Loaded<Entity>>;
19
+ findAll<Hint extends string = never, Fields extends string = PopulatePath.ALL, Excludes extends string = never>(where: FilterQuery<NoInfer<Entity>>, options?: FindOptions<Entity, Hint, Fields, Excludes>): Promise<Loaded<Entity, Hint, Fields, Excludes>[]>;
20
+ count<Hint extends string = never>(where: FilterQuery<NoInfer<Entity>>, options?: CountOptions<Entity, Hint>): Promise<number>;
17
21
  update<Naked extends FromEntityType<Entity> = FromEntityType<Entity>, Convert extends boolean = false, Data extends EntityData<Naked, Convert> | Partial<EntityDTO<Naked>> = EntityData<Naked, Convert> | Partial<EntityDTO<Naked>>>(idOrEntity: IdOrEntity<Entity>, data: Data & IsSubset<EntityData<Naked, Convert>, Data>, options?: AssignOptions<Convert>): Promise<Entity>;
18
- remove(idOrEntity: IdOrEntity<Entity>): Promise<Entity>;
22
+ remove(idOrEntity: IdOrEntity<Entity>, softDelete?: boolean): Promise<Entity>;
19
23
  chunkById<Hint extends string = never, Fields extends string = PopulatePath.ALL, Excludes extends string = never>(where: ExpandQuery<Entity>, options: ChunkByIdOptions<Entity, Hint, Fields, Excludes>, callback: (entities: Loaded<Entity, Hint, Fields, Excludes>[]) => Promise<void>): Promise<this>;
20
24
  }
@@ -15,10 +15,11 @@ const common_1 = require("@nestjs/common");
15
15
  const dataloader_1 = __importDefault(require("dataloader"));
16
16
  const lodash_1 = __importDefault(require("lodash"));
17
17
  class EntityService {
18
- constructor(entityClass, em) {
18
+ constructor(entityClass, em, options) {
19
19
  _EntityService_instances.add(this);
20
20
  this.entityClass = entityClass;
21
21
  this.em = em;
22
+ this.options = options;
22
23
  }
23
24
  create(data) {
24
25
  return __classPrivateFieldGet(this, _EntityService_instances, "a", _EntityService_createDataLoader_get).load(data);
@@ -28,7 +29,9 @@ class EntityService {
28
29
  return await this.em.findOne(this.entityClass, idOrEntityOrWhere);
29
30
  }
30
31
  else {
31
- return await __classPrivateFieldGet(this, _EntityService_instances, "a", _EntityService_getDataLoader_get).load(idOrEntityOrWhere);
32
+ return (await __classPrivateFieldGet(this, _EntityService_instances, "a", _EntityService_getDataLoader_get).load({
33
+ idOrEntity: idOrEntityOrWhere,
34
+ }));
32
35
  }
33
36
  }
34
37
  async findOneOrFail(idOrEntityOrWhere) {
@@ -55,8 +58,11 @@ class EntityService {
55
58
  }
56
59
  return entity;
57
60
  }
58
- async remove(idOrEntity) {
59
- const entity = await __classPrivateFieldGet(this, _EntityService_instances, "a", _EntityService_removeDataLoader_get).load(idOrEntity);
61
+ async remove(idOrEntity, softDelete = true) {
62
+ const entity = await __classPrivateFieldGet(this, _EntityService_instances, "a", _EntityService_removeDataLoader_get).load({
63
+ idOrEntity,
64
+ softDelete,
65
+ });
60
66
  if (entity instanceof Error) {
61
67
  throw entity;
62
68
  }
@@ -89,16 +95,35 @@ class EntityService {
89
95
  }
90
96
  exports.EntityService = EntityService;
91
97
  _EntityService_instances = new WeakSet(), _EntityService_getDataLoader_get = function _EntityService_getDataLoader_get() {
92
- return new dataloader_1.default(async (idsOrEntities) => {
93
- const ids = idsOrEntities.filter((idOrEntity) => typeof idOrEntity !== "object");
94
- const entities = await this.em.find(this.entityClass, {
95
- id: { $in: ids },
96
- }, { limit: ids.length });
97
- return idsOrEntities.map((idOrEntity) => {
98
- if (typeof idOrEntity === "object") {
99
- return idOrEntity;
98
+ return new dataloader_1.default(async (items) => {
99
+ const uow = this.em.getUnitOfWork();
100
+ // 获取所有 ID
101
+ const ids = items.map(({ idOrEntity }) => typeof idOrEntity === "object" ? idOrEntity.id : idOrEntity);
102
+ // 先尝试从 UnitOfWork 中获取已加载的实体
103
+ const entitiesFromUow = [];
104
+ const idsToFetch = [];
105
+ for (const id of ids) {
106
+ // 尝试从 UnitOfWork 的身份映射中获取实体
107
+ const entity = uow.getById(core_1.Utils.className(this.entityClass), id);
108
+ if (entity) {
109
+ entitiesFromUow.push(entity);
110
+ }
111
+ else {
112
+ idsToFetch.push(id);
100
113
  }
101
- return entities.find((entity) => entity.id === idOrEntity) ?? null;
114
+ }
115
+ // 如果有需要从数据库查询的 ID,则执行查询
116
+ let entitiesFromDb = [];
117
+ if (idsToFetch.length > 0) {
118
+ entitiesFromDb = await this.em.find(this.entityClass, {
119
+ id: { $in: idsToFetch },
120
+ }, { limit: idsToFetch.length });
121
+ }
122
+ // 合并 UnitOfWork 和数据库查询的结果
123
+ const allEntities = [...entitiesFromUow, ...entitiesFromDb];
124
+ // 按照原始顺序返回结果
125
+ return items.map(({ idOrEntity }) => {
126
+ return allEntities.find((entity) => entity.id === idOrEntity) ?? null;
102
127
  });
103
128
  }, { cache: false });
104
129
  }, _EntityService_createDataLoader_get = function _EntityService_createDataLoader_get() {
@@ -132,14 +157,26 @@ _EntityService_instances = new WeakSet(), _EntityService_getDataLoader_get = fun
132
157
  return entitiesOrErrors;
133
158
  }, { cache: false });
134
159
  }, _EntityService_removeDataLoader_get = function _EntityService_removeDataLoader_get() {
135
- return new dataloader_1.default(async (idsOrEntities) => {
136
- const entitiesOrErrors = (await Promise.all(idsOrEntities.map((idOrEntity) => this.findOne(idOrEntity)))).map((entity) => {
160
+ return new dataloader_1.default(async (items) => {
161
+ const entitiesOrErrors = (await Promise.all(items.map(({ idOrEntity }) => this.findOne(idOrEntity)))).map((entity) => {
137
162
  if (entity === null) {
138
163
  return new common_1.NotFoundException(`${this.entityClass.name.toLowerCase()}.not_found`);
139
164
  }
140
- this.em.remove(entity);
141
165
  return entity;
142
166
  });
167
+ entitiesOrErrors.forEach((entityOrError, index) => {
168
+ if (entityOrError instanceof Error) {
169
+ return entityOrError;
170
+ }
171
+ const { softDelete } = items[index];
172
+ const softDeleteKey = this.options?.softDeleteKey ?? "deletedAt";
173
+ if (softDelete && softDeleteKey in entityOrError) {
174
+ entityOrError[softDeleteKey] = new Date();
175
+ }
176
+ else {
177
+ this.em.remove(entityOrError);
178
+ }
179
+ });
143
180
  await this.em.flush();
144
181
  return entitiesOrErrors;
145
182
  }, { cache: false });
@@ -1 +1 @@
1
- {"version":3,"file":"entity.service.js","sourceRoot":"","sources":["../../src/services/entity.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity.service.js","sourceRoot":"","sources":["../../src/services/entity.service.ts"],"names":[],"mappings":"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"}