@belopash/typeorm-store 1.6.0-rc.1 → 1.6.0-rc.2

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/lib/store.d.ts CHANGED
@@ -5,6 +5,7 @@ import { StateManager } from './utils/stateManager';
5
5
  import { Logger } from '@subsquid/logger';
6
6
  import { Future } from '@subsquid/util-internal';
7
7
  import { EntityLiteral } from './utils/misc';
8
+ import { DeferList } from './utils/deferList';
8
9
  export { EntityTarget, EntityLiteral };
9
10
  export interface GetOptions<E = any> {
10
11
  id: string;
@@ -63,6 +64,7 @@ export interface StoreOptions {
63
64
  export declare class Store {
64
65
  protected em: EntityManager;
65
66
  protected state: StateManager;
67
+ protected defers: DeferList;
66
68
  protected changes?: ChangeTracker;
67
69
  protected logger?: Logger;
68
70
  protected batchWriteOperations: boolean;
@@ -71,8 +73,8 @@ export declare class Store {
71
73
  protected pendingCommit?: Future<void>;
72
74
  protected isClosed: boolean;
73
75
  constructor({ em, changes, logger, state, ...opts }: StoreOptions);
74
- get _em(): EntityManager;
75
- get _state(): StateManager;
76
+ defer<E extends EntityLiteral>(target: EntityTarget<E>, id: string): DeferredEntity<E>;
77
+ defer<E extends EntityLiteral>(target: EntityTarget<E>, options: GetOptions<E>): DeferredEntity<E>;
76
78
  /**
77
79
  * Alias for {@link Store.upsert}
78
80
  */
@@ -115,6 +117,12 @@ export declare class Store {
115
117
  get<E extends EntityLiteral>(target: EntityTarget<E>, options: GetOptions<E>): Promise<E | undefined>;
116
118
  getOrFail<E extends EntityLiteral>(target: EntityTarget<E>, id: string): Promise<E>;
117
119
  getOrFail<E extends EntityLiteral>(target: EntityTarget<E>, options: GetOptions<E>): Promise<E>;
120
+ getOrInsert<E extends EntityLiteral>(target: EntityTarget<E>, id: string, create: (id: string) => E | Promise<E>): Promise<E>;
121
+ getOrInsert<E extends EntityLiteral>(target: EntityTarget<E>, options: GetOptions<E>, create: (id: string) => E | Promise<E>): Promise<E>;
122
+ /**
123
+ * @deprecated use {@link getOrInsert} instead
124
+ */
125
+ getOrCreate<E extends EntityLiteral>(target: EntityTarget<E>, idOrOptions: string | GetOptions<E>, create: (id: string) => E | Promise<E>): Promise<E>;
118
126
  reset(): void;
119
127
  sync(): Promise<void>;
120
128
  flush(): Promise<void>;
@@ -124,4 +132,19 @@ export declare class Store {
124
132
  private cacheEntity;
125
133
  private getEntityMetadata;
126
134
  }
135
+ export declare class DeferredEntity<E extends EntityLiteral> {
136
+ private opts;
137
+ constructor(opts: {
138
+ get: () => Promise<E | undefined>;
139
+ getOrFail: () => Promise<E>;
140
+ getOrInsert: (create: (id: string) => E | Promise<E>) => Promise<E>;
141
+ });
142
+ get(): Promise<E | undefined>;
143
+ getOrFail(): Promise<E>;
144
+ getOrInsert(create: (id: string) => E | Promise<E>): Promise<E>;
145
+ /**
146
+ * @deprecated use {@link getOrInsert} instead
147
+ */
148
+ getOrCreate(create: (id: string) => E | Promise<E>): Promise<E>;
149
+ }
127
150
  //# sourceMappingURL=store.d.ts.map
@@ -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
@@ -3,11 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Store = void 0;
6
+ exports.DeferredEntity = exports.Store = void 0;
7
7
  const typeorm_1 = require("typeorm");
8
8
  const util_internal_1 = require("@subsquid/util-internal");
9
9
  const misc_1 = require("./utils/misc");
10
10
  const assert_1 = __importDefault(require("assert"));
11
+ const deferList_1 = require("./utils/deferList");
11
12
  /**
12
13
  * Restricted version of TypeORM entity manager for squid data handlers.
13
14
  */
@@ -21,12 +22,17 @@ class Store {
21
22
  this.batchWriteOperations = opts.batchWriteOperations;
22
23
  this.cacheEntities = opts.cacheEntities;
23
24
  this.syncEntities = opts.syncEntities;
25
+ this.defers = new deferList_1.DeferList(this.logger);
24
26
  }
25
- get _em() {
26
- return this.em;
27
- }
28
- get _state() {
29
- return this.state;
27
+ defer(target, idOrOptions) {
28
+ const md = this.getEntityMetadata(target);
29
+ const options = parseGetOptions(idOrOptions);
30
+ this.defers.add(md, options.id, options.relations);
31
+ return new DeferredEntity({
32
+ get: async () => this.get(target, options),
33
+ getOrFail: async () => this.getOrFail(target, options),
34
+ getOrInsert: async (create) => this.getOrInsert(target, options, create),
35
+ });
30
36
  }
31
37
  /**
32
38
  * Alias for {@link Store.upsert}
@@ -201,6 +207,21 @@ class Store {
201
207
  throw new typeorm_1.EntityNotFoundError(target, options.id);
202
208
  return e;
203
209
  }
210
+ async getOrInsert(target, idOrOptions, create) {
211
+ const options = parseGetOptions(idOrOptions);
212
+ let e = await this.get(target, options);
213
+ if (e == null) {
214
+ e = await create(options.id);
215
+ await this.insert(e);
216
+ }
217
+ return e;
218
+ }
219
+ /**
220
+ * @deprecated use {@link getOrInsert} instead
221
+ */
222
+ async getOrCreate(target, idOrOptions, create) {
223
+ return this.getOrInsert(target, idOrOptions, create);
224
+ }
204
225
  reset() {
205
226
  this.state.reset();
206
227
  }
@@ -277,4 +298,25 @@ function parseGetOptions(idOrOptions) {
277
298
  function getIdFromWhere(where) {
278
299
  return typeof where?.id === 'string' ? where.id : undefined;
279
300
  }
301
+ class DeferredEntity {
302
+ constructor(opts) {
303
+ this.opts = opts;
304
+ }
305
+ async get() {
306
+ return this.opts.get();
307
+ }
308
+ async getOrFail() {
309
+ return this.opts.getOrFail();
310
+ }
311
+ async getOrInsert(create) {
312
+ return this.opts.getOrInsert(create);
313
+ }
314
+ /**
315
+ * @deprecated use {@link getOrInsert} instead
316
+ */
317
+ async getOrCreate(create) {
318
+ return this.getOrInsert(create);
319
+ }
320
+ }
321
+ exports.DeferredEntity = DeferredEntity;
280
322
  //# sourceMappingURL=store.js.map
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":";;;;;;AAAA,qCAOgB;AAKhB,2DAA4D;AAC5D,uCAAoF;AAEpF,oDAA2B;AAE3B,iDAA2C;AA6D3C;;GAEG;AACH,MAAa,KAAK;IAcd,YAAY,EAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAe;QAFrD,aAAQ,GAAG,KAAK,CAAA;QAGtB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QACpC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAA;QACrD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAA;QACvC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;QACrC,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC5C,CAAC;IAID,KAAK,CAA0B,MAAuB,EAAE,WAAmC;QACvF,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAEzC,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;QAC5C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QAElD,OAAO,IAAI,cAAc,CAAC;YACtB,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;YAC1C,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;YACtD,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;SAC3E,CAAC,CAAA;IACN,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAA0B,CAAU;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACzB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAA0B,CAAU;QAC5C,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE;YACtC,IAAI,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACzC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC;gBAAE,OAAM;YAEhC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAC7B,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,cAAc,CAAC,EAAoB,EAAE,MAAW;QACpD,IAAI,GAAG,GAAG,EAAE,CAAA;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAC9D,GAAG,IAAI,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;QAC3B,CAAC;QACD,OAAO,GAAG,CAAA;IACd,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,QAAwB,EAAE,QAAyB;QACrE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,WAAW,CAAC,CAAA;QACzE,MAAM,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,MAA0B,EAAE,QAAQ,CAAC,CAAA;QAE9E,IAAI,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAA;QAC3D,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACrE,IAAI,UAAU,GAAG,QAAQ;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC;aAC5D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACzE,IAAI,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAC1C,IAAI,KAAK,GAAoB,EAAE,CAAA;QAC/B,KAAK,IAAI,CAAC,IAAI,UAAU,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,KAAK,KAAK,gBAAgB,EAAE,CAAC;gBAC/B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YACxB,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;gBAC7C,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAA;gBAC1B,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YACtB,CAAC;QACL,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACjD,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,MAAyB,EAAE,QAAyB;QACzE,KAAK,IAAI,CAAC,IAAI,IAAA,uBAAgB,EAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;QAClD,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAA0B,CAAU;QAC5C,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC3C,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC;gBAAE,OAAM;YAEhC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAC7B,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,QAAwB,EAAE,QAAyB;QACrE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,WAAW,CAAC,CAAA;QACzE,MAAM,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,MAA0B,EAAE,QAAQ,CAAC,CAAA;QAC9E,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACpD,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,MAAyB,EAAE,QAAyB;QACzE,KAAK,IAAI,CAAC,IAAI,IAAA,uBAAgB,EAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QACnC,CAAC;IACL,CAAC;IASD,KAAK,CAAC,MAAM,CAA0B,CAA4B,EAAE,EAAsB;QACtF,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE;YACtC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAM,CAAC,CAAA;gBAChD,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC;oBAAE,OAAM;gBAEhC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;oBAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;gBACpD,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;gBACzC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC;oBAAE,OAAM;gBAE3B,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;oBACnB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAA;gBAC/C,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,QAAwB,EAAE,GAAa;QACzD,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,QAAQ,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,WAAW,CAAC,CAAA;QACpE,MAAM,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,MAA0B,EAAE,GAAG,CAAC,CAAA;QACzE,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA,CAAC,uCAAuC;IACtF,CAAC;IAED,KAAK,CAAC,KAAK,CAA0B,MAAuB,EAAE,OAA4B;QACtF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;YACrC,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC/C,CAAC,EAAE,OAAO,CAAC,CAAA;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CACT,MAAuB,EACvB,KAAkD;QAElD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAC,KAAK,EAAC,CAAC,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,IAAI,CAA0B,MAAuB,EAAE,OAA2B;QACpF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,EAAC,aAAa,EAAE,GAAG,IAAI,EAAC,GAAG,OAAO,CAAA;YAExC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAC5C,IAAI,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACtC,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;oBAClB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBAC/B,CAAC;YACL,CAAC;YAED,OAAO,GAAG,CAAA;QACd,CAAC,EAAE,OAAO,CAAC,CAAA;IACf,CAAC;IAED,KAAK,CAAC,MAAM,CACR,MAAuB,EACvB,KAAkD;QAElD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAC,KAAK,EAAC,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,OAAO,CACT,MAAuB,EACvB,OAA0B;QAE1B,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,EAAC,aAAa,EAAE,GAAG,IAAI,EAAC,GAAG,OAAO,CAAA;YAExC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,aAAM,CAAC,CAAA;YAC5D,IAAI,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACtC,MAAM,UAAU,GAAG,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACvD,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;YACxC,CAAC;YAED,OAAO,GAAG,CAAA;QACd,CAAC,EAAE,OAAO,CAAC,CAAA;IACf,CAAC;IAED,KAAK,CAAC,SAAS,CACX,MAAuB,EACvB,KAAkD;QAElD,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAC,KAAK,EAAC,CAAC,CAAA;IAC9C,CAAC;IAED,KAAK,CAAC,aAAa,CAA0B,MAAuB,EAAE,OAA0B;QAC5F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC/C,IAAI,GAAG,IAAI,IAAI;YAAE,MAAM,IAAI,6BAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;QAErE,OAAO,GAAG,CAAA;IACd,CAAC;IAED,KAAK,CAAC,eAAe,CACjB,MAAuB,EACvB,KAAkD;QAElD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC/C,IAAI,GAAG,IAAI,IAAI;YAAE,MAAM,IAAI,6BAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAE7D,OAAO,GAAG,CAAA;IACd,CAAC;IAID,KAAK,CAAC,GAAG,CACL,MAAuB,EACvB,WAAmC;QAEnC,MAAM,EAAC,EAAE,EAAE,SAAS,EAAE,aAAa,EAAC,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;QAEnE,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAI,MAAM,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QACrD,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,IAAA,aAAM,EAAC,MAAM,CAAC,CAAA;QAE/C,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,EAAC,EAAE,EAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAC,CAAC,CAAA;IAC1G,CAAC;IAID,KAAK,CAAC,SAAS,CAA0B,MAAuB,EAAE,WAAmC;QACjG,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;QAE5C,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACvC,IAAI,CAAC,IAAI,IAAI;YAAE,MAAM,IAAI,6BAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QAEhE,OAAO,CAAC,CAAA;IACZ,CAAC;IAYD,KAAK,CAAC,WAAW,CACb,MAAuB,EACvB,WAAmC,EACnC,MAAsC;QAEtC,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;QAC5C,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAEvC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YACZ,CAAC,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACxB,CAAC;QAED,OAAO,CAAC,CAAA;IACZ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CACb,MAAuB,EACvB,WAAmC,EACnC,MAAsC;QAEtC,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,WAAkB,EAAE,MAAM,CAAC,CAAA;IAC/D,CAAC;IAED,KAAK;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,CAAA;QAEnC,IAAI,CAAC,aAAa,GAAG,IAAA,4BAAY,GAAE,CAAA;QACnC,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAC,EAAE,EAAE;gBAC/E,KAAK,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAC,IAAI,OAAO,EAAE,CAAC;oBACzC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC1C,CAAC;gBAED,KAAK,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAC,IAAI,OAAO,EAAE,CAAC;oBACzC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC1C,CAAC;gBAED,KAAK,MAAM,EAAC,QAAQ,EAAE,GAAG,EAAC,IAAI,OAAO,EAAE,CAAC;oBACpC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;gBACrC,CAAC;gBAED,KAAK,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAC,IAAI,YAAY,EAAE,CAAC;oBAC9C,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC1C,CAAC;YACL,CAAC,CAAC,CAAA;QACN,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAA;YAC5B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAA;QAClC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACjB,IAAI,CAAC,KAAK,EAAE,CAAA;IAChB,CAAC;IAEO,KAAK,CAAC,WAAW,CAAI,EAAoB,EAAE,IAA+B;QAC9E,IAAI,CAAC,eAAe,EAAE,CAAA;QACtB,IAAI,IAAI,EAAE,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1C,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACrB,CAAC;QACD,OAAO,MAAM,EAAE,EAAE,CAAA;IACrB,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,EAAuB;QAC9C,IAAI,CAAC,eAAe,EAAE,CAAA;QACtB,MAAM,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,CAAA;QACnC,MAAM,EAAE,EAAE,CAAA;QACV,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACrB,CAAC;IACL,CAAC;IAEO,eAAe;QACnB,IAAA,gBAAM,EAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,mFAAmF,CAAC,CAAA;IAC/G,CAAC;IAEO,WAAW,CAA0B,MAAuB,EAAE,UAAuB;QACzF,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACrB,OAAM;QACV,CAAC;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;QACzC,CAAC;aAAM,CAAC;YACJ,IAAA,qBAAc,EAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;QAC3G,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,MAAyB;QAC/C,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;CACJ;AAtXD,sBAsXC;AAED,SAAS,eAAe,CAAI,WAAmC;IAC3D,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,EAAC,EAAE,EAAE,WAAW,EAAC,CAAA;IAC5B,CAAC;SAAM,CAAC;QACJ,OAAO,WAAW,CAAA;IACtB,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,KAAuC;IAC3D,OAAO,OAAO,KAAK,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AAC/D,CAAC;AAED,MAAa,cAAc;IACvB,YACY,IAIP;QAJO,SAAI,GAAJ,IAAI,CAIX;IACF,CAAC;IAEJ,KAAK,CAAC,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAsC;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IACxC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,MAAsC;QACpD,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IACnC,CAAC;CACJ;AA3BD,wCA2BC"}
@@ -5,12 +5,9 @@ export type DeferData = {
5
5
  relations: FindOptionsRelations<any>;
6
6
  };
7
7
  export declare class DeferList {
8
- private opts;
8
+ private logger?;
9
9
  private map;
10
- private logger;
11
- constructor(opts: {
12
- logger: Logger;
13
- });
10
+ constructor(logger?: Logger | undefined);
14
11
  add<E extends ObjectLiteral>(metadata: EntityMetadata, id: string, relations?: FindOptionsRelations<E>): void;
15
12
  values(): Map<EntityMetadata, DeferData>;
16
13
  clear(): void;
@@ -1 +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;AAE3E,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAEvC,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;IAIN,OAAO,CAAC,IAAI;IAHxB,OAAO,CAAC,GAAG,CAA4C;IACvD,OAAO,CAAC,MAAM,CAAQ;gBAEF,IAAI,EAAE;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC;IAI1C,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAWtG,MAAM,IAAI,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC;IAIxC,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,OAAO;CASlB"}
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;AAE3E,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAEvC,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;IAGN,OAAO,CAAC,MAAM,CAAC;IAF3B,OAAO,CAAC,GAAG,CAA4C;gBAEnC,MAAM,CAAC,EAAE,MAAM,YAAA;IAGnC,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAWtG,MAAM,IAAI,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC;IAIxC,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,OAAO;CASlB"}
@@ -3,15 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DeferList = void 0;
4
4
  const misc_1 = require("./misc");
5
5
  class DeferList {
6
- constructor(opts) {
7
- this.opts = opts;
6
+ constructor(logger) {
7
+ this.logger = logger;
8
8
  this.map = new Map();
9
- this.logger = this.opts.logger.child('defer');
10
9
  }
11
10
  add(metadata, id, relations) {
12
11
  const data = this.getData(metadata);
13
12
  data.ids.add(id);
14
- this.logger.debug(`entity ${metadata.name} ${id} deferred`);
13
+ this.logger?.debug(`entity ${metadata.name} ${id} deferred`);
15
14
  if (relations != null) {
16
15
  data.relations = (0, misc_1.mergeRelations)(data.relations, relations);
17
16
  }
@@ -20,7 +19,7 @@ class DeferList {
20
19
  return new Map(this.map);
21
20
  }
22
21
  clear() {
23
- this.logger.debug(`cleared`);
22
+ this.logger?.debug(`cleared`);
24
23
  this.map.clear();
25
24
  }
26
25
  getData(metadata) {
@@ -1 +1 @@
1
- {"version":3,"file":"deferList.js","sourceRoot":"","sources":["../../src/utils/deferList.ts"],"names":[],"mappings":";;;AACA,iCAAqC;AAQrC,MAAa,SAAS;IAIlB,YAAoB,IAAsB;QAAtB,SAAI,GAAJ,IAAI,CAAkB;QAHlC,QAAG,GAAmC,IAAI,GAAG,EAAE,CAAA;QAInD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACjD,CAAC;IAED,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,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,QAAQ,CAAC,IAAI,IAAI,EAAE,WAAW,CAAC,CAAA;QAE3D,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC9D,CAAC;IACL,CAAC;IAED,MAAM;QACF,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC5B,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAEO,OAAO,CAAC,QAAwB;QACpC,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACjC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACf,IAAI,GAAG,EAAC,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,EAAE,EAAC,CAAA;YACtC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAChC,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AArCD,8BAqCC"}
1
+ {"version":3,"file":"deferList.js","sourceRoot":"","sources":["../../src/utils/deferList.ts"],"names":[],"mappings":";;;AACA,iCAAqC;AAQrC,MAAa,SAAS;IAGlB,YAAoB,MAAe;QAAf,WAAM,GAAN,MAAM,CAAS;QAF3B,QAAG,GAAmC,IAAI,GAAG,EAAE,CAAA;IAGvD,CAAC;IAED,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,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,QAAQ,CAAC,IAAI,IAAI,EAAE,WAAW,CAAC,CAAA;QAE5D,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC9D,CAAC;IACL,CAAC;IAED,MAAM;QACF,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK;QACD,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAC7B,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;IAEO,OAAO,CAAC,QAAwB;QACpC,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACjC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACf,IAAI,GAAG,EAAC,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,EAAE,EAAC,CAAA;YACtC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAChC,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AAnCD,8BAmCC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@belopash/typeorm-store",
3
- "version": "1.6.0-rc.1",
3
+ "version": "1.6.0-rc.2",
4
4
  "description": "Optimized TypeORM based storage for squid mappings",
5
5
  "repository": {
6
6
  "url": "https://github.com/belopash/squid-typeorm-store"
package/src/store.ts CHANGED
@@ -15,6 +15,7 @@ import {EntityLiteral, noNull, splitIntoBatches, traverseEntity} from './utils/m
15
15
  import {ColumnMetadata} from 'typeorm/metadata/ColumnMetadata'
16
16
  import assert from 'assert'
17
17
  import {EntityClass} from '@subsquid/typeorm-store'
18
+ import {DeferList} from './utils/deferList'
18
19
 
19
20
  export {EntityTarget, EntityLiteral}
20
21
 
@@ -81,6 +82,7 @@ export interface StoreOptions {
81
82
  export class Store {
82
83
  protected em: EntityManager
83
84
  protected state: StateManager
85
+ protected defers: DeferList
84
86
  protected changes?: ChangeTracker
85
87
  protected logger?: Logger
86
88
 
@@ -99,14 +101,22 @@ export class Store {
99
101
  this.batchWriteOperations = opts.batchWriteOperations
100
102
  this.cacheEntities = opts.cacheEntities
101
103
  this.syncEntities = opts.syncEntities
104
+ this.defers = new DeferList(this.logger)
102
105
  }
103
106
 
104
- get _em() {
105
- return this.em
106
- }
107
+ defer<E extends EntityLiteral>(target: EntityTarget<E>, id: string): DeferredEntity<E>
108
+ defer<E extends EntityLiteral>(target: EntityTarget<E>, options: GetOptions<E>): DeferredEntity<E>
109
+ defer<E extends EntityLiteral>(target: EntityTarget<E>, idOrOptions: string | GetOptions<E>): DeferredEntity<E> {
110
+ const md = this.getEntityMetadata(target)
111
+
112
+ const options = parseGetOptions(idOrOptions)
113
+ this.defers.add(md, options.id, options.relations)
107
114
 
108
- get _state() {
109
- return this.state
115
+ return new DeferredEntity({
116
+ get: async () => this.get(target, options),
117
+ getOrFail: async () => this.getOrFail(target, options),
118
+ getOrInsert: async (create) => this.getOrInsert(target, options, create),
119
+ })
110
120
  }
111
121
 
112
122
  /**
@@ -335,6 +345,43 @@ export class Store {
335
345
  return e
336
346
  }
337
347
 
348
+ async getOrInsert<E extends EntityLiteral>(
349
+ target: EntityTarget<E>,
350
+ id: string,
351
+ create: (id: string) => E | Promise<E>
352
+ ): Promise<E>
353
+ async getOrInsert<E extends EntityLiteral>(
354
+ target: EntityTarget<E>,
355
+ options: GetOptions<E>,
356
+ create: (id: string) => E | Promise<E>
357
+ ): Promise<E>
358
+ async getOrInsert<E extends EntityLiteral>(
359
+ target: EntityTarget<E>,
360
+ idOrOptions: string | GetOptions<E>,
361
+ create: (id: string) => E | Promise<E>
362
+ ): Promise<E> {
363
+ const options = parseGetOptions(idOrOptions)
364
+ let e = await this.get(target, options)
365
+
366
+ if (e == null) {
367
+ e = await create(options.id)
368
+ await this.insert(e)
369
+ }
370
+
371
+ return e
372
+ }
373
+
374
+ /**
375
+ * @deprecated use {@link getOrInsert} instead
376
+ */
377
+ async getOrCreate<E extends EntityLiteral>(
378
+ target: EntityTarget<E>,
379
+ idOrOptions: string | GetOptions<E>,
380
+ create: (id: string) => E | Promise<E>
381
+ ) {
382
+ return this.getOrInsert(target, idOrOptions as any, create)
383
+ }
384
+
338
385
  reset(): void {
339
386
  this.state.reset()
340
387
  }
@@ -419,3 +466,32 @@ function parseGetOptions<E>(idOrOptions: string | GetOptions<E>): GetOptions<E>
419
466
  function getIdFromWhere(where?: FindOptionsWhere<EntityLiteral>) {
420
467
  return typeof where?.id === 'string' ? where.id : undefined
421
468
  }
469
+
470
+ export class DeferredEntity<E extends EntityLiteral> {
471
+ constructor(
472
+ private opts: {
473
+ get: () => Promise<E | undefined>
474
+ getOrFail: () => Promise<E>
475
+ getOrInsert: (create: (id: string) => E | Promise<E>) => Promise<E>
476
+ }
477
+ ) {}
478
+
479
+ async get(): Promise<E | undefined> {
480
+ return this.opts.get()
481
+ }
482
+
483
+ async getOrFail(): Promise<E> {
484
+ return this.opts.getOrFail()
485
+ }
486
+
487
+ async getOrInsert(create: (id: string) => E | Promise<E>): Promise<E> {
488
+ return this.opts.getOrInsert(create)
489
+ }
490
+
491
+ /**
492
+ * @deprecated use {@link getOrInsert} instead
493
+ */
494
+ async getOrCreate(create: (id: string) => E | Promise<E>): Promise<E> {
495
+ return this.getOrInsert(create)
496
+ }
497
+ }
@@ -9,17 +9,15 @@ export type DeferData = {
9
9
 
10
10
  export class DeferList {
11
11
  private map: Map<EntityMetadata, DeferData> = new Map()
12
- private logger: Logger
13
12
 
14
- constructor(private opts: {logger: Logger}) {
15
- this.logger = this.opts.logger.child('defer')
13
+ constructor(private logger?: Logger) {
16
14
  }
17
15
 
18
16
  add<E extends ObjectLiteral>(metadata: EntityMetadata, id: string, relations?: FindOptionsRelations<E>) {
19
17
  const data = this.getData(metadata)
20
18
  data.ids.add(id)
21
19
 
22
- this.logger.debug(`entity ${metadata.name} ${id} deferred`)
20
+ this.logger?.debug(`entity ${metadata.name} ${id} deferred`)
23
21
 
24
22
  if (relations != null) {
25
23
  data.relations = mergeRelations(data.relations, relations)
@@ -31,7 +29,7 @@ export class DeferList {
31
29
  }
32
30
 
33
31
  clear(): void {
34
- this.logger.debug(`cleared`)
32
+ this.logger?.debug(`cleared`)
35
33
  this.map.clear()
36
34
  }
37
35