@belopash/typeorm-store 1.4.0 → 1.4.1

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.
Files changed (45) hide show
  1. package/lib/index.js +2 -1
  2. package/lib/index.js.map +1 -1
  3. package/lib/store.d.ts +34 -29
  4. package/lib/store.d.ts.map +1 -1
  5. package/lib/store.js +44 -36
  6. package/lib/store.js.map +1 -1
  7. package/lib/{cacheMap.d.ts → utils/cacheMap.d.ts} +4 -5
  8. package/lib/utils/cacheMap.d.ts.map +1 -0
  9. package/lib/{cacheMap.js → utils/cacheMap.js} +4 -4
  10. package/lib/utils/cacheMap.js.map +1 -0
  11. package/lib/utils/deferList.d.ts +14 -0
  12. package/lib/utils/deferList.d.ts.map +1 -0
  13. package/lib/{deferList.js → utils/deferList.js} +5 -5
  14. package/lib/utils/deferList.js.map +1 -0
  15. package/lib/utils/misc.d.ts +5 -0
  16. package/lib/utils/misc.d.ts.map +1 -0
  17. package/lib/{utils.js → utils/misc.js} +1 -1
  18. package/lib/utils/misc.js.map +1 -0
  19. package/lib/utils/relationGraph.d.ts.map +1 -0
  20. package/lib/utils/relationGraph.js.map +1 -0
  21. package/lib/{updatesMap.d.ts → utils/updateMap.d.ts} +2 -2
  22. package/lib/utils/updateMap.d.ts.map +1 -0
  23. package/lib/{updatesMap.js → utils/updateMap.js} +4 -4
  24. package/lib/utils/updateMap.js.map +1 -0
  25. package/package.json +8 -8
  26. package/src/store.ts +99 -72
  27. package/src/{cacheMap.ts → utils/cacheMap.ts} +8 -9
  28. package/src/{deferList.ts → utils/deferList.ts} +7 -8
  29. package/src/{utils.ts → utils/misc.ts} +2 -3
  30. package/src/{updatesMap.ts → utils/updateMap.ts} +1 -1
  31. package/lib/cacheMap.d.ts.map +0 -1
  32. package/lib/cacheMap.js.map +0 -1
  33. package/lib/deferList.d.ts +0 -18
  34. package/lib/deferList.d.ts.map +0 -1
  35. package/lib/deferList.js.map +0 -1
  36. package/lib/relationGraph.d.ts.map +0 -1
  37. package/lib/relationGraph.js.map +0 -1
  38. package/lib/updatesMap.d.ts.map +0 -1
  39. package/lib/updatesMap.js.map +0 -1
  40. package/lib/utils.d.ts +0 -6
  41. package/lib/utils.d.ts.map +0 -1
  42. package/lib/utils.js.map +0 -1
  43. /package/lib/{relationGraph.d.ts → utils/relationGraph.d.ts} +0 -0
  44. /package/lib/{relationGraph.js → utils/relationGraph.js} +0 -0
  45. /package/src/{relationGraph.ts → utils/relationGraph.ts} +0 -0
package/lib/index.js CHANGED
@@ -14,8 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.StoreWithCache = void 0;
17
+ exports.StoreWithCache = exports.Entity = void 0;
18
18
  __exportStar(require("./database"), exports);
19
19
  var store_1 = require("./store");
20
+ Object.defineProperty(exports, "Entity", { enumerable: true, get: function () { return store_1.Entity; } });
20
21
  Object.defineProperty(exports, "StoreWithCache", { enumerable: true, get: function () { return store_1.StoreWithCache; } });
21
22
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,iCAA4F;AAA9B,uGAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,iCAA4F;AAAvE,+FAAA,MAAM,OAAA;AAAmC,uGAAA,cAAc,OAAA"}
package/lib/store.d.ts CHANGED
@@ -1,8 +1,11 @@
1
- import { Entity as _Entity, Entity, EntityClass, FindManyOptions, FindOneOptions, Store } from '@subsquid/typeorm-store';
1
+ import { Entity, EntityClass, FindManyOptions, FindOneOptions, Store } from '@subsquid/typeorm-store';
2
2
  import { ChangeTracker } from '@subsquid/typeorm-store/lib/hot';
3
3
  import { EntityManager, EntityMetadata, EntityTarget, FindOptionsRelations, FindOptionsWhere } from 'typeorm';
4
4
  export { Entity, EntityClass, FindManyOptions, FindOneOptions };
5
- export type ChangeSet<E extends Entity> = {
5
+ export type EntityType = {
6
+ id: string;
7
+ };
8
+ export type ChangeSet<E extends EntityType> = {
6
9
  metadata: EntityMetadata;
7
10
  inserts: E[];
8
11
  upserts: E[];
@@ -20,39 +23,41 @@ export declare class StoreWithCache extends Store {
20
23
  private cache;
21
24
  private logger;
22
25
  private currentCommit;
26
+ private currentLoad;
23
27
  constructor(em: () => EntityManager, changes?: ChangeTracker);
24
- insert<E extends _Entity>(entity: E): Promise<void>;
25
- insert<E extends _Entity>(entities: E[]): Promise<void>;
26
- upsert<E extends _Entity>(entity: E): Promise<void>;
27
- upsert<E extends _Entity>(entities: E[]): Promise<void>;
28
- save<E extends _Entity>(entity: E): Promise<void>;
29
- save<E extends _Entity>(entities: E[]): Promise<void>;
30
- remove<E extends Entity>(entity: E): Promise<void>;
31
- remove<E extends Entity>(entities: E[]): Promise<void>;
32
- remove<E extends Entity>(entityClass: EntityTarget<E>, id: string | string[]): Promise<void>;
33
- count<E extends Entity>(entityClass: EntityTarget<E>, options?: FindManyOptions<E>): Promise<number>;
34
- countBy<E extends Entity>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<number>;
35
- find<E extends Entity>(entityClass: EntityTarget<E>, options: FindManyOptions<E>): Promise<E[]>;
36
- findBy<E extends Entity>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<E[]>;
37
- findOne<E extends Entity>(entityClass: EntityTarget<E>, options: FindOneOptions<E>): Promise<E | undefined>;
38
- findOneOrFail<E extends Entity>(entityClass: EntityTarget<E>, options: FindOneOptions<E>): Promise<E>;
39
- findOneBy<E extends Entity>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<E | undefined>;
40
- findOneByOrFail<E extends Entity>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<E>;
41
- get<E extends Entity>(entityClass: EntityTarget<E>, id: string): Promise<E | undefined>;
42
- get<E extends Entity>(entityClass: EntityTarget<E>, options: GetOptions<E>): Promise<E | undefined>;
43
- getOrFail<E extends Entity>(entityClass: EntityTarget<E>, id: string): Promise<E>;
44
- getOrFail<E extends Entity>(entityClass: EntityTarget<E>, options: GetOptions<E>): Promise<E>;
45
- getOrInsert<E extends Entity>(entityClass: EntityTarget<E>, id: string, create: (id: string) => E | Promise<E>): Promise<E>;
46
- getOrInsert<E extends Entity>(entityClass: EntityTarget<E>, options: GetOptions<E>, create: (id: string) => E | Promise<E>): Promise<E>;
28
+ insert<E extends EntityType>(entity: E): Promise<void>;
29
+ insert<E extends EntityType>(entities: E[]): Promise<void>;
30
+ upsert<E extends EntityType>(entity: E): Promise<void>;
31
+ upsert<E extends EntityType>(entities: E[]): Promise<void>;
32
+ save<E extends EntityType>(entity: E): Promise<void>;
33
+ save<E extends EntityType>(entities: E[]): Promise<void>;
34
+ remove<E extends EntityType>(entity: E): Promise<void>;
35
+ remove<E extends EntityType>(entities: E[]): Promise<void>;
36
+ remove<E extends EntityType>(entityClass: EntityTarget<E>, id: string | string[]): Promise<void>;
37
+ count<E extends EntityType>(entityClass: EntityTarget<E>, options?: FindManyOptions<E>): Promise<number>;
38
+ countBy<E extends EntityType>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<number>;
39
+ find<E extends EntityType>(entityClass: EntityTarget<E>, options: FindManyOptions<E>): Promise<E[]>;
40
+ findBy<E extends EntityType>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<E[]>;
41
+ findOne<E extends EntityType>(entityClass: EntityTarget<E>, options: FindOneOptions<E>): Promise<E | undefined>;
42
+ findOneOrFail<E extends EntityType>(entityClass: EntityTarget<E>, options: FindOneOptions<E>): Promise<E>;
43
+ findOneBy<E extends EntityType>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<E | undefined>;
44
+ findOneByOrFail<E extends EntityType>(entityClass: EntityTarget<E>, where: FindOptionsWhere<E> | FindOptionsWhere<E>[]): Promise<E>;
45
+ get<E extends EntityType>(entityClass: EntityTarget<E>, id: string): Promise<E | undefined>;
46
+ get<E extends EntityType>(entityClass: EntityTarget<E>, options: GetOptions<E>): Promise<E | undefined>;
47
+ getOrFail<E extends EntityType>(entityClass: EntityTarget<E>, id: string): Promise<E>;
48
+ getOrFail<E extends EntityType>(entityClass: EntityTarget<E>, options: GetOptions<E>): Promise<E>;
49
+ getOrInsert<E extends EntityType>(entityClass: EntityTarget<E>, id: string, create: (id: string) => E | Promise<E>): Promise<E>;
50
+ getOrInsert<E extends EntityType>(entityClass: EntityTarget<E>, options: GetOptions<E>, create: (id: string) => E | Promise<E>): Promise<E>;
47
51
  /**
48
52
  * @deprecated use {@link getOrInsert} instead
49
53
  */
50
- getOrCreate<E extends Entity>(entityClass: EntityTarget<E>, idOrOptions: string | GetOptions<E>, create: (id: string) => E | Promise<E>): Promise<E>;
51
- defer<E extends Entity>(entityClass: EntityTarget<E>, id: string): DeferredEntity<E>;
52
- defer<E extends Entity>(entityClass: EntityTarget<E>, options: GetOptions<E>): DeferredEntity<E>;
54
+ getOrCreate<E extends EntityType>(entityClass: EntityTarget<E>, idOrOptions: string | GetOptions<E>, create: (id: string) => E | Promise<E>): Promise<E>;
55
+ defer<E extends EntityType>(entityClass: EntityTarget<E>, id: string): DeferredEntity<E>;
56
+ defer<E extends EntityType>(entityClass: EntityTarget<E>, options: GetOptions<E>): DeferredEntity<E>;
53
57
  commit(): Promise<void>;
54
58
  clear(): void;
55
59
  flush(): Promise<void>;
60
+ private computeChangeSets;
56
61
  private getChangeSet;
57
62
  private load;
58
63
  private getCached;
@@ -68,7 +73,7 @@ export declare class StoreWithCache extends Store {
68
73
  private getFkSignature;
69
74
  private upsertMany;
70
75
  }
71
- export declare class DeferredEntity<E extends Entity> {
76
+ export declare class DeferredEntity<E extends EntityType> {
72
77
  private opts;
73
78
  constructor(opts: {
74
79
  get: () => Promise<E | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
package/lib/store.js CHANGED
@@ -12,27 +12,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.DeferredEntity = exports.StoreWithCache = void 0;
15
+ exports.DeferredEntity = exports.StoreWithCache = exports.Entity = void 0;
16
16
  const logger_1 = require("@subsquid/logger");
17
17
  const typeorm_store_1 = require("@subsquid/typeorm-store");
18
+ Object.defineProperty(exports, "Entity", { enumerable: true, get: function () { return typeorm_store_1.Entity; } });
18
19
  const util_internal_1 = require("@subsquid/util-internal");
19
20
  const assert_1 = __importDefault(require("assert"));
20
21
  const async_mutex_1 = require("async-mutex");
21
22
  const typeorm_1 = require("typeorm");
22
- const cacheMap_1 = require("./cacheMap");
23
- const deferList_1 = require("./deferList");
24
- const relationGraph_1 = require("./relationGraph");
25
- const updatesMap_1 = require("./updatesMap");
26
- const utils_1 = require("./utils");
23
+ const cacheMap_1 = require("./utils/cacheMap");
24
+ const deferList_1 = require("./utils/deferList");
25
+ const relationGraph_1 = require("./utils/relationGraph");
26
+ const updateMap_1 = require("./utils/updateMap");
27
+ const misc_1 = require("./utils/misc");
27
28
  // @ts-ignore
28
29
  class StoreWithCache extends typeorm_store_1.Store {
29
30
  constructor(em, changes) {
30
31
  super(em, changes);
31
32
  this.em = em;
32
33
  this.currentCommit = new async_mutex_1.Mutex();
34
+ this.currentLoad = new async_mutex_1.Mutex();
33
35
  this.logger = (0, logger_1.createLogger)('sqd:store');
34
36
  this.cache = new cacheMap_1.CacheMap({ logger: this.logger });
35
- this.updates = new updatesMap_1.UpdatesMap();
37
+ this.updates = new updateMap_1.UpdateMap();
36
38
  this.defers = new deferList_1.DeferList();
37
39
  }
38
40
  async insert(e) {
@@ -53,7 +55,7 @@ class StoreWithCache extends typeorm_store_1.Store {
53
55
  return;
54
56
  for (const entity of entities) {
55
57
  const md = this.getEntityMetadata(entity.constructor);
56
- const isNew = this.updates.get(md, entity.id) === updatesMap_1.UpdateType.Remove;
58
+ const isNew = this.updates.get(md, entity.id) === updateMap_1.UpdateType.Remove;
57
59
  this.updates.upsert(md, entity.id);
58
60
  this.cache.add(md, entity, isNew);
59
61
  }
@@ -202,18 +204,13 @@ class StoreWithCache extends typeorm_store_1.Store {
202
204
  async commit() {
203
205
  await this.currentCommit.runExclusive(async () => {
204
206
  const log = this.logger.child('commit');
205
- const entityOrder = this.getCommitOrder();
206
- const changeSets = [];
207
- for (const metadata of entityOrder) {
208
- const changeSet = this.getChangeSet(metadata.target);
209
- changeSets.push(changeSet);
210
- }
207
+ const changeSets = this.computeChangeSets();
211
208
  for (const { metadata, inserts, upserts } of changeSets) {
212
209
  if (upserts.length > 0) {
213
210
  log.debug(`commit upserts for ${metadata.name} (${upserts.length})`);
214
211
  await super.upsert(upserts);
215
212
  }
216
- if (inserts.length) {
213
+ if (inserts.length > 0) {
217
214
  log.debug(`commit inserts for ${metadata.name} (${inserts.length})`);
218
215
  await super.insert(inserts);
219
216
  }
@@ -226,21 +223,31 @@ class StoreWithCache extends typeorm_store_1.Store {
226
223
  }
227
224
  }
228
225
  for (const { metadata, extraUpserts } of changeSets) {
229
- if (extraUpserts.length) {
226
+ if (extraUpserts.length > 0) {
230
227
  log.debug(`commit extra upserts for ${metadata.name} (${extraUpserts.length})`);
231
228
  await super.upsert(extraUpserts);
232
229
  }
233
230
  }
234
- this.updates.clear();
235
231
  });
236
232
  }
237
233
  clear() {
238
234
  this.cache.clear();
235
+ this.updates.clear();
239
236
  }
240
237
  async flush() {
241
238
  await this.commit();
242
239
  this.clear();
243
240
  }
241
+ computeChangeSets() {
242
+ const entityOrder = this.getCommitOrder();
243
+ const changeSets = [];
244
+ for (const metadata of entityOrder) {
245
+ const changeSet = this.getChangeSet(metadata.target);
246
+ changeSets.push(changeSet);
247
+ }
248
+ this.updates.clear();
249
+ return changeSets;
250
+ }
244
251
  getChangeSet(target) {
245
252
  const metadata = this.getEntityMetadata(target);
246
253
  const inserts = [];
@@ -251,8 +258,8 @@ class StoreWithCache extends typeorm_store_1.Store {
251
258
  for (const [id, type] of updates) {
252
259
  const cached = this.cache.get(metadata, id);
253
260
  switch (type) {
254
- case updatesMap_1.UpdateType.Insert: {
255
- (0, assert_1.default)(cached?.value != null);
261
+ case updateMap_1.UpdateType.Insert: {
262
+ (0, assert_1.default)(cached?.value != null, `unable to insert entity ${metadata.name} ${id}`);
256
263
  inserts.push(cached.value);
257
264
  const extraUpsert = this.extractExtraUpsert(cached.value);
258
265
  if (extraUpsert != null) {
@@ -260,8 +267,8 @@ class StoreWithCache extends typeorm_store_1.Store {
260
267
  }
261
268
  break;
262
269
  }
263
- case updatesMap_1.UpdateType.Upsert: {
264
- (0, assert_1.default)(cached?.value != null);
270
+ case updateMap_1.UpdateType.Upsert: {
271
+ (0, assert_1.default)(cached?.value != null, `unable to upsert entity ${metadata.name} ${id}`);
265
272
  upserts.push(cached.value);
266
273
  const extraUpsert = this.extractExtraUpsert(cached.value);
267
274
  if (extraUpsert != null) {
@@ -269,7 +276,7 @@ class StoreWithCache extends typeorm_store_1.Store {
269
276
  }
270
277
  break;
271
278
  }
272
- case updatesMap_1.UpdateType.Remove: {
279
+ case updateMap_1.UpdateType.Remove: {
273
280
  removes.push(id);
274
281
  break;
275
282
  }
@@ -278,19 +285,20 @@ class StoreWithCache extends typeorm_store_1.Store {
278
285
  return { metadata, inserts, upserts, extraUpserts, removes };
279
286
  }
280
287
  async load() {
281
- for (const { target, data } of this.defers.values()) {
282
- const metadata = this.getEntityMetadata(target);
283
- const ids = Array.from(data.ids);
284
- for (const id of ids) {
285
- this.cache.ensure(metadata, id);
286
- }
287
- for (let batch of (0, utils_1.splitIntoBatches)(ids, 30000)) {
288
- if (batch.length == 0)
289
- continue;
290
- await this.find(metadata.target, { where: { id: (0, typeorm_1.In)(batch) }, relations: data.relations });
288
+ await this.currentLoad.runExclusive(async () => {
289
+ for (const [metadata, data] of this.defers.values()) {
290
+ const ids = Array.from(data.ids);
291
+ for (let batch of (0, misc_1.splitIntoBatches)(ids, 30000)) {
292
+ if (batch.length == 0)
293
+ continue;
294
+ await this.find(metadata.target, { where: { id: (0, typeorm_1.In)(batch) }, relations: data.relations });
295
+ }
296
+ for (const id of ids) {
297
+ this.cache.ensure(metadata, id);
298
+ }
291
299
  }
292
- }
293
- this.defers.clear();
300
+ this.defers.clear();
301
+ });
294
302
  }
295
303
  getCached(entityClass, id, mask) {
296
304
  const md = this.getEntityMetadata(entityClass);
@@ -323,7 +331,7 @@ class StoreWithCache extends typeorm_store_1.Store {
323
331
  continue;
324
332
  (0, assert_1.default)(relation.isNullable);
325
333
  const invUpdateType = this.updates.get(inverseMetadata, inverseEntity.id);
326
- if (invUpdateType === updatesMap_1.UpdateType.Insert) {
334
+ if (invUpdateType === updateMap_1.UpdateType.Insert) {
327
335
  if (extraUpsert == null) {
328
336
  extraUpsert = metadata.create();
329
337
  extraUpsert.id = entity.id;
@@ -353,7 +361,7 @@ class StoreWithCache extends typeorm_store_1.Store {
353
361
  for (const column of metadata.nonVirtualColumns) {
354
362
  const objectColumnValue = column.getEntityValue(entity);
355
363
  if (objectColumnValue !== undefined) {
356
- column.setEntityValue(clonedEntity, (0, utils_1.copy)(objectColumnValue));
364
+ column.setEntityValue(clonedEntity, (0, misc_1.copy)(objectColumnValue));
357
365
  }
358
366
  }
359
367
  if (mask != null) {
package/lib/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import { Entity } from '@subsquid/typeorm-store';
2
- import { EntityMetadata } from 'typeorm';
1
+ import { EntityMetadata, ObjectLiteral } from 'typeorm';
3
2
  import { Logger } from '@subsquid/logger';
4
- export declare class CachedEntity<E extends Entity> {
3
+ export declare class CachedEntity<E extends ObjectLiteral> {
5
4
  value: E | null;
6
5
  constructor();
7
6
  }
@@ -13,11 +12,11 @@ export declare class CacheMap {
13
12
  logger: Logger;
14
13
  });
15
14
  exist(metadata: EntityMetadata, id: string): boolean;
16
- get<E extends Entity>(metadata: EntityMetadata, id: string): CachedEntity<E> | undefined;
15
+ get<E extends ObjectLiteral>(metadata: EntityMetadata, id: string): CachedEntity<E> | undefined;
17
16
  ensure(metadata: EntityMetadata, id: string): void;
18
17
  delete(metadata: EntityMetadata, id: string): void;
19
18
  clear(): void;
20
- add<E extends Entity>(metadata: EntityMetadata, entity: E, isNew?: boolean): void;
19
+ add<E extends ObjectLiteral>(metadata: EntityMetadata, entity: E, isNew?: boolean): void;
21
20
  private cacheEntity;
22
21
  private getEntityCache;
23
22
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheMap.d.ts","sourceRoot":"","sources":["../../src/utils/cacheMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,aAAa,EAAC,MAAM,SAAS,CAAA;AAErD,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAEvC,qBAAa,YAAY,CAAC,CAAC,SAAS,aAAa;IAC7C,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;;CAKlB;AAED,qBAAa,QAAQ;IAIL,OAAO,CAAC,IAAI;IAHxB,OAAO,CAAC,GAAG,CAAiE;IAC5E,OAAO,CAAC,MAAM,CAAQ;gBAEF,IAAI,EAAE;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC;IAI1C,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAM1C,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAKjE,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAS3C,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAM3C,KAAK;IAUL,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO;IAIjF,OAAO,CAAC,WAAW;IA8CnB,OAAO,CAAC,cAAc;CASzB"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CacheMap = exports.CachedEntity = void 0;
4
- const utils_1 = require("./utils");
4
+ const misc_1 = require("./misc");
5
5
  class CachedEntity {
6
6
  constructor() {
7
7
  this.value = null;
@@ -36,10 +36,10 @@ class CacheMap {
36
36
  this.logger.debug(`deleted entity ${metadata.name} ${id}`);
37
37
  }
38
38
  clear() {
39
- for (const [name, item] of this.map) {
39
+ for (const [metadata, item] of this.map) {
40
40
  if (item.size > 0) {
41
41
  item.clear();
42
- this.logger.debug(`cleared cache for ${name} (${item.size})`);
42
+ this.logger.debug(`cleared cache for ${metadata.name} (${item.size})`);
43
43
  }
44
44
  }
45
45
  this.map.clear();
@@ -63,7 +63,7 @@ class CacheMap {
63
63
  for (const column of metadata.nonVirtualColumns) {
64
64
  const objectColumnValue = column.getEntityValue(entity);
65
65
  if (objectColumnValue !== undefined) {
66
- column.setEntityValue(cachedEntity, (0, utils_1.copy)(objectColumnValue));
66
+ column.setEntityValue(cachedEntity, (0, misc_1.copy)(objectColumnValue));
67
67
  }
68
68
  }
69
69
  for (const relation of metadata.relations) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheMap.js","sourceRoot":"","sources":["../../src/utils/cacheMap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { EntityMetadata, FindOptionsRelations, ObjectLiteral } from 'typeorm';
2
+ export type DeferData = {
3
+ ids: Set<string>;
4
+ relations: FindOptionsRelations<any>;
5
+ };
6
+ export declare class DeferList {
7
+ private deferMap;
8
+ constructor();
9
+ add<E extends ObjectLiteral>(metadata: EntityMetadata, id: string, relations?: FindOptionsRelations<E>): void;
10
+ getData(metadata: EntityMetadata): DeferData;
11
+ values(): [EntityMetadata, DeferData][];
12
+ clear(): void;
13
+ }
14
+ //# sourceMappingURL=deferList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deferList.d.ts","sourceRoot":"","sources":["../../src/utils/deferList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAE,aAAa,EAAC,MAAM,SAAS,CAAA;AAG3E,MAAM,MAAM,SAAS,GAAG;IACpB,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAChB,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAA;CACvC,CAAA;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,QAAQ,CAA4C;;IAI5D,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAStG,OAAO,CAAC,QAAQ,EAAE,cAAc;IAUhC,MAAM;IAIN,KAAK;CAGR"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DeferList = void 0;
4
- const utils_1 = require("./utils");
4
+ const misc_1 = require("./misc");
5
5
  class DeferList {
6
6
  constructor() {
7
7
  this.deferMap = new Map();
@@ -10,19 +10,19 @@ class DeferList {
10
10
  const data = this.getData(metadata);
11
11
  data.ids.add(id);
12
12
  if (relations != null) {
13
- data.relations = (0, utils_1.mergeRelataions)(data.relations, relations);
13
+ data.relations = (0, misc_1.mergeRelataions)(data.relations, relations);
14
14
  }
15
15
  }
16
16
  getData(metadata) {
17
- let list = this.deferMap.get(metadata.target);
17
+ let list = this.deferMap.get(metadata);
18
18
  if (list == null) {
19
19
  list = { ids: new Set(), relations: {} };
20
- this.deferMap.set(metadata.target, list);
20
+ this.deferMap.set(metadata, list);
21
21
  }
22
22
  return list;
23
23
  }
24
24
  values() {
25
- return [...this.deferMap.entries()].map(([target, data]) => ({ target, data }));
25
+ return [...this.deferMap.entries()];
26
26
  }
27
27
  clear() {
28
28
  this.deferMap.clear();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deferList.js","sourceRoot":"","sources":["../../src/utils/deferList.ts"],"names":[],"mappings":";;;AACA,iCAAsC;AAOtC,MAAa,SAAS;IAGlB;QAFQ,aAAQ,GAAmC,IAAI,GAAG,EAAE,CAAA;IAE7C,CAAC;IAEhB,GAAG,CAA0B,QAAwB,EAAE,EAAU,EAAE,SAAmC;QAClG,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACnC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEhB,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAA,sBAAe,EAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC/D,CAAC;IACL,CAAC;IAED,OAAO,CAAC,QAAwB;QAC5B,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACf,IAAI,GAAG,EAAC,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,EAAE,EAAC,CAAA;YACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QACrC,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAED,MAAM;QACF,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;IACvC,CAAC;IAED,KAAK;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;IACzB,CAAC;CACJ;AA/BD,8BA+BC"}
@@ -0,0 +1,5 @@
1
+ import { FindOptionsRelations, ObjectLiteral } from 'typeorm';
2
+ export declare function splitIntoBatches<T>(list: T[], maxBatchSize: number): Generator<T[]>;
3
+ export declare function copy<T>(obj: T): T;
4
+ export declare function mergeRelataions<E extends ObjectLiteral>(a: FindOptionsRelations<E>, b: FindOptionsRelations<E>): FindOptionsRelations<E>;
5
+ //# sourceMappingURL=misc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../src/utils/misc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAE,aAAa,EAAC,MAAM,SAAS,CAAA;AAE3D,wBAAiB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,CAWpF;AAID,wBAAgB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAmCjC;AAUD,wBAAgB,eAAe,CAAC,CAAC,SAAS,aAAa,EACnD,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAC1B,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC3B,oBAAoB,CAAC,CAAC,CAAC,CAoBzB"}
@@ -82,4 +82,4 @@ function mergeRelataions(a, b) {
82
82
  return mergedObject;
83
83
  }
84
84
  exports.mergeRelataions = mergeRelataions;
85
- //# sourceMappingURL=utils.js.map
85
+ //# sourceMappingURL=misc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../src/utils/misc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationGraph.d.ts","sourceRoot":"","sources":["../../src/utils/relationGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAStC,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAuD3E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationGraph.js","sourceRoot":"","sources":["../../src/utils/relationGraph.ts"],"names":[],"mappings":";;;AAGA,IAAK,KAIJ;AAJD,WAAK,KAAK;IACN,2CAAS,CAAA;IACT,yCAAQ,CAAA;IACR,uCAAO,CAAA;AACX,CAAC,EAJI,KAAK,KAAL,KAAK,QAIT;AAED,SAAgB,cAAc,CAAC,QAA0B;IACrD,MAAM,SAAS,GAA0B,EAAE,CAAA;IAC3C,MAAM,SAAS,GAAqB,EAAE,CAAA;IAEtC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC1B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAA;IAC1C,CAAC;IAED,SAAS,KAAK,CAAC,IAAoB;QAC/B,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,SAAS;YAAE,OAAM;QAEpD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAA;QAErC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAQ;YAE3C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAA;YAEzC,QAAQ,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,KAAK,SAAS,CAAC;gBACf,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;oBACnB,KAAK,CAAC,MAAM,CAAC,CAAA;oBACb,MAAK;gBACT,CAAC;gBACD,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAClB,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,KAAK,IAAI,CAAC,CAAA;oBACnF,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;wBACvB,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;wBAClC,MAAM,kBAAkB,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;wBAElD,IAAI,UAAU,GAAG,kBAAkB,EAAE,CAAC;4BAClC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gCAC/B,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAA;4BAClC,CAAC;4BAED,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAA;4BACtC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;wBAC1B,CAAC;oBACL,CAAC;oBACD,MAAK;gBACT,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;YACzC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAA;YACpC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACxB,CAAC;IACL,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,CAAA;IACf,CAAC;IAED,OAAO,SAAS,CAAA;AACpB,CAAC;AAvDD,wCAuDC;AAED,SAAS,SAAS,CAAC,QAA0B;IACzC,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACtC,CAAC"}
@@ -8,7 +8,7 @@ export interface Update {
8
8
  id: string;
9
9
  type: UpdateType;
10
10
  }
11
- export declare class UpdatesMap {
11
+ export declare class UpdateMap {
12
12
  private map;
13
13
  constructor();
14
14
  get(metadata: EntityMetadata, id: string): UpdateType | undefined;
@@ -19,4 +19,4 @@ export declare class UpdatesMap {
19
19
  getUpdates(metadata: EntityMetadata): Map<string, UpdateType>;
20
20
  clear(): void;
21
21
  }
22
- //# sourceMappingURL=updatesMap.d.ts.map
22
+ //# sourceMappingURL=updateMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateMap.d.ts","sourceRoot":"","sources":["../../src/utils/updateMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAEtC,oBAAY,UAAU;IAClB,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;CACT;AAED,MAAM,WAAW,MAAM;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,UAAU,CAAA;CACnB;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,GAAG,CAA0D;;IAIrE,GAAG,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAIxC,GAAG,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU;IAK1D,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAe3C,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAW3C,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM;IAW3C,UAAU,CAAC,QAAQ,EAAE,cAAc;IAUnC,KAAK;CAGR"}