@decaf-ts/core 0.7.38 → 0.7.39

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 (65) hide show
  1. package/README.md +1 -1
  2. package/dist/core.cjs +1 -1
  3. package/dist/core.cjs.map +1 -1
  4. package/dist/core.js +1 -1
  5. package/dist/core.js.map +1 -1
  6. package/lib/esm/identity/decorators.d.ts +1 -1
  7. package/lib/esm/identity/decorators.js.map +1 -1
  8. package/lib/esm/index.d.ts +1 -1
  9. package/lib/esm/index.js +1 -1
  10. package/lib/esm/model/construction.d.ts +1 -3
  11. package/lib/esm/model/construction.js +32 -8
  12. package/lib/esm/model/construction.js.map +1 -1
  13. package/lib/esm/overrides/Model.d.ts +2 -0
  14. package/lib/esm/overrides/overrides.js +11 -2
  15. package/lib/esm/overrides/overrides.js.map +1 -1
  16. package/lib/esm/persistence/Adapter.js +10 -11
  17. package/lib/esm/persistence/Adapter.js.map +1 -1
  18. package/lib/esm/persistence/Sequence.d.ts +2 -1
  19. package/lib/esm/persistence/Sequence.js +63 -50
  20. package/lib/esm/persistence/Sequence.js.map +1 -1
  21. package/lib/esm/persistence/constants.js +1 -0
  22. package/lib/esm/persistence/constants.js.map +1 -1
  23. package/lib/esm/persistence/types.d.ts +1 -0
  24. package/lib/esm/ram/RamAdapter.js +2 -1
  25. package/lib/esm/ram/RamAdapter.js.map +1 -1
  26. package/lib/esm/ram/RamStatement.d.ts +5 -0
  27. package/lib/esm/ram/RamStatement.js +46 -18
  28. package/lib/esm/ram/RamStatement.js.map +1 -1
  29. package/lib/esm/repository/Repository.d.ts +2 -10
  30. package/lib/esm/repository/Repository.js +45 -33
  31. package/lib/esm/repository/Repository.js.map +1 -1
  32. package/lib/esm/utils/utils.d.ts +1 -0
  33. package/lib/esm/utils/utils.js +3 -0
  34. package/lib/esm/utils/utils.js.map +1 -1
  35. package/lib/identity/decorators.d.ts +1 -1
  36. package/lib/identity/decorators.js.map +1 -1
  37. package/lib/index.cjs +1 -1
  38. package/lib/index.d.ts +1 -1
  39. package/lib/model/construction.cjs +32 -8
  40. package/lib/model/construction.d.ts +1 -3
  41. package/lib/model/construction.js.map +1 -1
  42. package/lib/overrides/Model.d.ts +2 -0
  43. package/lib/overrides/overrides.cjs +11 -2
  44. package/lib/overrides/overrides.js.map +1 -1
  45. package/lib/persistence/Adapter.cjs +10 -11
  46. package/lib/persistence/Adapter.js.map +1 -1
  47. package/lib/persistence/Sequence.cjs +63 -50
  48. package/lib/persistence/Sequence.d.ts +2 -1
  49. package/lib/persistence/Sequence.js.map +1 -1
  50. package/lib/persistence/constants.cjs +1 -0
  51. package/lib/persistence/constants.js.map +1 -1
  52. package/lib/persistence/types.d.ts +1 -0
  53. package/lib/ram/RamAdapter.cjs +2 -1
  54. package/lib/ram/RamAdapter.js.map +1 -1
  55. package/lib/ram/RamStatement.cjs +46 -18
  56. package/lib/ram/RamStatement.d.ts +5 -0
  57. package/lib/ram/RamStatement.js.map +1 -1
  58. package/lib/repository/Repository.cjs +44 -32
  59. package/lib/repository/Repository.d.ts +2 -10
  60. package/lib/repository/Repository.js.map +1 -1
  61. package/lib/utils/utils.cjs +4 -0
  62. package/lib/utils/utils.d.ts +1 -0
  63. package/lib/utils/utils.js.map +1 -1
  64. package/package.json +4 -2
  65. package/workdocs/assets/slogans.json +186 -0
@@ -351,7 +351,7 @@ async function oneToManyOnCreate(context, data, key, model) {
351
351
  model[key] = [...uniqueValues];
352
352
  return;
353
353
  }
354
- const pkName = decorator_validation_1.Model.pk(propertyValues[0]);
354
+ const pkName = decorator_validation_1.Model.pk(propertyValues[0].constructor);
355
355
  const result = new Set();
356
356
  for (const m of propertyValues) {
357
357
  const record = await createOrUpdate(m, context, this.adapter.alias);
@@ -461,20 +461,39 @@ async function oneToManyOnDelete(context, data, key, model) {
461
461
  const areAllSameType = values.every((item) => typeof item === arrayType);
462
462
  if (!areAllSameType)
463
463
  throw new db_decorators_1.InternalError(`Invalid operation. All elements of property ${key} must match the same type.`);
464
+ const clazz = typeof data.class === "function" && !data.class.name
465
+ ? data.class()
466
+ : data.class;
464
467
  const isInstantiated = arrayType === "object";
465
468
  const repo = isInstantiated
466
- ? Repository_1.Repository.forModel(values[0], this.adapter.alias)
469
+ ? Repository_1.Repository.forModel(clazz, this.adapter.alias)
467
470
  : repositoryFromTypeMetadata(model, key, this.adapter.alias);
468
471
  const uniqueValues = new Set([
469
472
  ...(isInstantiated
470
473
  ? values.map((v) => v[repo["pk"]])
471
474
  : values),
472
475
  ]);
473
- for (const id of uniqueValues.values()) {
474
- const deleted = await repo.delete(id, context);
475
- await cacheModelForPopulate(context, model, key, id, deleted);
476
+ const ids = [...uniqueValues.values()];
477
+ let deleted;
478
+ try {
479
+ deleted = await repo.deleteAll(ids, context);
480
+ }
481
+ catch (e) {
482
+ context.logger.error(`Failed to delete all records`, e);
483
+ throw e;
484
+ }
485
+ let del;
486
+ for (let i = 0; i < deleted.length; i++) {
487
+ del = deleted[i];
488
+ try {
489
+ await cacheModelForPopulate(context, model, key, ids[i], del);
490
+ }
491
+ catch (e) {
492
+ context.logger.error(`Failed to cache record ${ids[i]} with key ${key} and model ${JSON.stringify(model, undefined, 2)} `, e);
493
+ throw e;
494
+ }
476
495
  }
477
- model[key] = [...uniqueValues];
496
+ model[key] = ids;
478
497
  }
479
498
  /**
480
499
  * @description Generates a key for caching populated model relationships
@@ -505,7 +524,9 @@ function getPopulateKey(tableName, fieldName, id) {
505
524
  */
506
525
  async function cacheModelForPopulate(context, parentModel, propertyKey, pkValue, cacheValue) {
507
526
  const cacheKey = getPopulateKey(parentModel.constructor.name, propertyKey, pkValue);
508
- return context.accumulate({ [cacheKey]: cacheValue });
527
+ const cache = context.get("cacheForPopulate") || {};
528
+ cache[cacheKey] = cacheValue;
529
+ return context.accumulate({ cacheForPopulate: cache });
509
530
  }
510
531
  /**
511
532
  * @description Populates a model's relationship
@@ -572,10 +593,13 @@ async function populate(context, data, key, model) {
572
593
  let cacheKey;
573
594
  let val;
574
595
  const results = [];
596
+ const cache = c.get("cacheForPopulate") || {};
575
597
  for (const proKeyValue of propKeyValues) {
576
598
  cacheKey = getPopulateKey(model.constructor.name, propName, proKeyValue);
577
599
  try {
578
- val = await c.get(cacheKey);
600
+ val = cache[cacheKey];
601
+ if (!val)
602
+ throw new Error("Not found in cache");
579
603
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
580
604
  }
581
605
  catch (e) {
@@ -348,9 +348,7 @@ export declare function getPopulateKey(tableName: string, fieldName: string, id:
348
348
  * @function cacheModelForPopulate
349
349
  * @memberOf module:core
350
350
  */
351
- export declare function cacheModelForPopulate<M extends Model, F extends AdapterFlags>(context: Context<F>, parentModel: M, propertyKey: keyof M | string, pkValue: string | number, cacheValue: any): Promise<import("@decaf-ts/db-decorators").Context<F & {
352
- [x: string]: any;
353
- }>>;
351
+ export declare function cacheModelForPopulate<M extends Model, F extends AdapterFlags>(context: Context<F>, parentModel: M, propertyKey: keyof M | string, pkValue: string | number, cacheValue: any): Promise<import("@decaf-ts/db-decorators").Context<any>>;
354
352
  /**
355
353
  * @description Populates a model's relationship
356
354
  * @summary Retrieves and attaches related models to a model's relationship property
@@ -1 +1 @@
1
- {"version":3,"file":"construction.js","sourceRoot":"","sources":["../../src/model/construction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"construction.js","sourceRoot":"","sources":["../../src/model/construction.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,8 @@ declare module "@decaf-ts/decorator-validation" {
87
87
  function columnName<M extends Model<boolean>>(model: Constructor<M> | M, prop: keyof M): string;
88
88
  function nonValidatableFor<M extends Model<boolean>>(m: Constructor<M> | M, op: OperationKeys.CREATE | OperationKeys.UPDATE | string): string[];
89
89
  function validateOn<M extends Model<boolean>>(m: Constructor<M> | M, op: OperationKeys.CREATE | OperationKeys): M extends Model<true> ? Promise<ModelErrorDefinition | undefined> : ModelErrorDefinition | undefined;
90
+ function generated<M extends Model>(model: M | Constructor<M>, prop: keyof M): boolean;
91
+ function generatedBySequence<M extends Model>(model: M | Constructor<M>, prop?: keyof M): boolean;
90
92
  }
91
93
  interface Model {
92
94
  hasErrorsOn<M extends Model<boolean>>(op: OperationKeys.CREATE | OperationKeys.UPDATE | string): M extends Model<true> ? Promise<ModelErrorDefinition | undefined> : ModelErrorDefinition | undefined;
@@ -47,15 +47,24 @@ decorator_validation_1.Model.nestedRelations = function (model, existingRelation
47
47
  if (relationMeta?.class && decorator_validation_1.Model.relations(relationMeta.class)) {
48
48
  const innerModelRels = decorator_validation_1.Model.relations(relationMeta.class);
49
49
  const innerModelDotRels = innerModelRels.map((r) => `${prop}.${r}`);
50
- existingRelations = [...existingRelations, ...innerModelRels, ...innerModelDotRels];
50
+ existingRelations = [
51
+ ...existingRelations,
52
+ ...innerModelRels,
53
+ ...innerModelDotRels,
54
+ ];
51
55
  inner = decorator_validation_1.Model.nestedRelations(relationMeta.class, existingRelations);
52
56
  }
53
57
  }
54
58
  return [...new Set([...existingRelations, ...inner])];
55
59
  };
56
- decoration_1.Metadata.generated = function generated(model, prop) {
60
+ decorator_validation_1.Model.generated = function generated(model, prop) {
57
61
  return !!decoration_1.Metadata.get(typeof model !== "function" ? model.constructor : model, decoration_1.Metadata.key(constants_1.PersistenceKeys.GENERATED, prop));
58
62
  }.bind(decoration_1.Metadata);
63
+ decorator_validation_1.Model.generatedBySequence = function generatedBySequence(model, prop) {
64
+ const constr = typeof model !== "function" ? model.constructor : model;
65
+ const seq = decorator_validation_1.Model.sequenceFor(constr);
66
+ return !!seq.generated;
67
+ }.bind(decoration_1.Metadata);
59
68
  decoration_1.Metadata.createdBy = function createdBy(model) {
60
69
  const meta = decoration_1.Metadata.get(typeof model !== "function" ? model.constructor : model, constants_1.PersistenceKeys.CREATED_BY);
61
70
  if (!meta)
@@ -1 +1 @@
1
- {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/overrides/overrides.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/overrides/overrides.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ const Context_1 = require("./Context.cjs");
19
19
  const decoration_1 = require("@decaf-ts/decoration");
20
20
  const errors_1 = require("./errors.cjs");
21
21
  const ContextualLoggedClass_1 = require("./../utils/ContextualLoggedClass.cjs");
22
+ const utils_1 = require("./../utils/utils.cjs");
22
23
  const flavourResolver = decoration_1.Decoration["flavourResolver"].bind(decoration_1.Decoration);
23
24
  decoration_1.Decoration["flavourResolver"] = (obj) => {
24
25
  try {
@@ -293,9 +294,9 @@ class Adapter extends ContextualLoggedClass_1.ContextualLoggedClass {
293
294
  writeOperation: operation !== db_decorators_1.OperationKeys.READ,
294
295
  timestamp: new Date(),
295
296
  operation: operation,
296
- ignoredValidationProperties: Array.isArray(model)
297
- ? []
298
- : decoration_1.Metadata.validationExceptions(model, operation),
297
+ ignoredValidationProperties: decoration_1.Metadata.validationExceptions(Array.isArray(model) && model[0]
298
+ ? model[0]
299
+ : model, operation),
299
300
  logger: log,
300
301
  });
301
302
  }
@@ -312,7 +313,7 @@ class Adapter extends ContextualLoggedClass_1.ContextualLoggedClass {
312
313
  */
313
314
  async context(operation, overrides, model, ...args) {
314
315
  const log = this.log.for(this.context);
315
- log.debug(`Creating new context for ${operation} operation on ${Array.isArray(model) ? model.map((m) => m.name) : model.name} model with flag overrides: ${JSON.stringify(overrides)}`);
316
+ log.debug(`Creating new context for ${operation} operation on ${model ? (Array.isArray(model) ? model.map((m) => m.name) : model.name) : "no"} model with flag overrides: ${JSON.stringify(overrides)}`);
316
317
  const flags = await this.flags(operation, model, overrides, ...args);
317
318
  return new this.Context().accumulate(flags);
318
319
  }
@@ -376,8 +377,6 @@ class Adapter extends ContextualLoggedClass_1.ContextualLoggedClass {
376
377
  log.silly(`Rebuilding model ${m.constructor.name} id ${id}`);
377
378
  const metadata = obj[constants_1.PersistenceKeys.METADATA]; // TODO move to couchdb
378
379
  const result = Object.keys(m).reduce((accum, key) => {
379
- if (key === pk)
380
- return accum;
381
380
  accum[key] =
382
381
  obj[decorator_validation_1.Model.columnName(clazz, key)];
383
382
  return accum;
@@ -417,7 +416,7 @@ class Adapter extends ContextualLoggedClass_1.ContextualLoggedClass {
417
416
  const { log, ctxArgs } = this.logCtx(args, this.createAll);
418
417
  const tableLabel = decorator_validation_1.Model.tableName(clazz);
419
418
  log.debug(`Creating ${id.length} entries ${tableLabel} table`);
420
- return Promise.all(id.map((i, count) => this.create(clazz, i, model[count], ...ctxArgs)));
419
+ return (0, utils_1.promiseSequence)(id.map((i, count) => () => this.create(clazz, i, model[count], ...ctxArgs)));
421
420
  }
422
421
  /**
423
422
  * @description Retrieves multiple records from the database
@@ -431,7 +430,7 @@ class Adapter extends ContextualLoggedClass_1.ContextualLoggedClass {
431
430
  const { log, ctxArgs } = this.logCtx(args, this.readAll);
432
431
  const tableName = decorator_validation_1.Model.tableName(clazz);
433
432
  log.debug(`Reading ${id.length} entries ${tableName} table`);
434
- return Promise.all(id.map((i) => this.read(clazz, i, ...ctxArgs)));
433
+ return (0, utils_1.promiseSequence)(id.map((i) => () => this.read(clazz, i, ...ctxArgs)));
435
434
  }
436
435
  /**
437
436
  * @description Updates multiple records in the database
@@ -448,7 +447,7 @@ class Adapter extends ContextualLoggedClass_1.ContextualLoggedClass {
448
447
  const { log, ctxArgs } = this.logCtx(args, this.updateAll);
449
448
  const tableLabel = decorator_validation_1.Model.tableName(clazz);
450
449
  log.debug(`Updating ${id.length} entries ${tableLabel} table`);
451
- return Promise.all(id.map((i, count) => this.update(clazz, i, model[count], ...ctxArgs)));
450
+ return (0, utils_1.promiseSequence)(id.map((i, count) => () => this.update(clazz, i, model[count], ...ctxArgs)));
452
451
  }
453
452
  /**
454
453
  * @description Deletes multiple records from the database
@@ -460,8 +459,8 @@ class Adapter extends ContextualLoggedClass_1.ContextualLoggedClass {
460
459
  */
461
460
  async deleteAll(tableName, id, ...args) {
462
461
  const { log, ctxArgs } = Adapter.logCtx(args, this.deleteAll);
463
- log.verbose(`Deleting ${id.length} entries from ${tableName} table`);
464
- return Promise.all(id.map((i) => this.delete(tableName, i, ...ctxArgs)));
462
+ log.debug(`Deleting ${id.length} entries from ${tableName} table`);
463
+ return (0, utils_1.promiseSequence)(id.map((i) => () => this.delete(tableName, i, ...ctxArgs)));
465
464
  }
466
465
  /**
467
466
  * @description Registers an observer for database events
@@ -1 +1 @@
1
- {"version":3,"file":"Adapter.js","sourceRoot":"","sources":["../../src/persistence/Adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Adapter.js","sourceRoot":"","sources":["../../src/persistence/Adapter.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ const Repository_1 = require("./../repository/Repository.cjs");
10
10
  const SequenceModel_1 = require("./../model/SequenceModel.cjs");
11
11
  const generators_1 = require("./generators.cjs");
12
12
  const Context_1 = require("./Context.cjs");
13
+ const transactional_decorators_1 = require("@decaf-ts/transactional-decorators");
13
14
  /**
14
15
  * @description Abstract base class for sequence generation
15
16
  * @summary Provides a framework for generating sequential values (like primary keys) in the persistence layer.
@@ -57,6 +58,7 @@ const Context_1 = require("./Context.cjs");
57
58
  * ```
58
59
  */
59
60
  class Sequence extends ContextualLoggedClass_1.ContextualLoggedClass {
61
+ static { this.lock = new transactional_decorators_1.MultiLock(); }
60
62
  /**
61
63
  * @description Creates a new sequence instance
62
64
  * @summary Protected constructor that initializes the sequence with the provided options
@@ -82,7 +84,9 @@ class Sequence extends ContextualLoggedClass_1.ContextualLoggedClass {
82
84
  return this.parse(sequence.current);
83
85
  }
84
86
  catch (e) {
87
+ const log = ctx.logger.for(this.current);
85
88
  if (e instanceof db_decorators_1.NotFoundError) {
89
+ log.debug(`Sequence.current missing ${name}, returning startWith=${startWith}`);
86
90
  if (typeof startWith === "undefined")
87
91
  throw new db_decorators_1.InternalError("Starting value is not defined for a non existing sequence");
88
92
  try {
@@ -103,55 +107,65 @@ class Sequence extends ContextualLoggedClass_1.ContextualLoggedClass {
103
107
  * @param {number} [count] - Optional amount to increment by, defaults to the sequence's incrementBy value
104
108
  * @return A promise that resolves to the new sequence value after incrementing
105
109
  */
106
- async increment(current, count, ctx) {
110
+ async increment(count, ctx) {
111
+ const log = ctx.logger.for(this.increment);
107
112
  const { type, incrementBy, name } = this.options;
108
- let next;
109
- const toIncrementBy = count || incrementBy;
110
- if (toIncrementBy % incrementBy !== 0)
111
- throw new db_decorators_1.InternalError(`Value to increment does not consider the incrementBy setting: ${incrementBy}`);
112
- const typeName = typeof type === "function" && type?.name
113
- ? type.name
114
- : type;
115
- switch (typeName) {
116
- case Number.name:
117
- next = this.parse(current) + toIncrementBy;
118
- break;
119
- case BigInt.name:
120
- next = this.parse(current) + BigInt(toIncrementBy);
121
- break;
122
- case String.name:
123
- next = this.parse(current);
124
- break;
125
- case "serial":
126
- next = generators_1.Serial.instance.generate(current);
127
- break;
128
- case "uuid":
129
- next = generators_1.UUID.instance.generate(current);
130
- break;
131
- default:
132
- throw new db_decorators_1.InternalError("Should never happen");
133
- }
134
- let seq;
135
- // const repo = this.repo.override({
136
- // ignoredValidationProperties: ["updatedAt"],
137
- // });
138
- try {
139
- seq = await this.repo.update(new SequenceModel_1.SequenceModel({ id: name, current: next }), ctx);
140
- }
141
- catch (e) {
142
- if (!(e instanceof db_decorators_1.NotFoundError)) {
143
- throw e;
144
- }
145
- try {
146
- seq = await this.repo.create(new SequenceModel_1.SequenceModel({ id: name, current: next }), ctx);
147
- }
148
- catch (e) {
149
- if (!(e instanceof db_decorators_1.ConflictError) || type !== "uuid")
113
+ if (!name)
114
+ throw new db_decorators_1.InternalError("Sequence name is required");
115
+ return Sequence.lock.execute(async () => {
116
+ const toIncrementBy = count || incrementBy;
117
+ if (toIncrementBy % incrementBy !== 0)
118
+ throw new db_decorators_1.InternalError(`Value to increment does not consider the incrementBy setting: ${incrementBy}`);
119
+ const typeName = typeof type === "function" && type?.name
120
+ ? type.name
121
+ : type;
122
+ const currentValue = await this.current(ctx);
123
+ const performUpsert = async (next) => {
124
+ try {
125
+ return await this.repo.update(new SequenceModel_1.SequenceModel({ id: name, current: next }), ctx);
126
+ }
127
+ catch (e) {
128
+ if (e instanceof db_decorators_1.NotFoundError) {
129
+ log.debug(`Sequence create ${name} current=${currentValue} next=${next}`);
130
+ return this.repo.create(new SequenceModel_1.SequenceModel({ id: name, current: next }), ctx);
131
+ }
150
132
  throw e;
151
- return this.increment(current, count, ctx); // retries uuids in case of conflict
133
+ }
134
+ };
135
+ const incrementSerial = (base) => {
136
+ switch (typeName) {
137
+ case Number.name:
138
+ return this.parse(base) + toIncrementBy;
139
+ case BigInt.name:
140
+ return this.parse(base) + BigInt(toIncrementBy);
141
+ case String.name:
142
+ return this.parse(base);
143
+ case "serial":
144
+ return generators_1.Serial.instance.generate(base);
145
+ default:
146
+ throw new db_decorators_1.InternalError("Should never happen");
147
+ }
148
+ };
149
+ if (typeName === "uuid") {
150
+ while (true) {
151
+ const next = generators_1.UUID.instance.generate(currentValue);
152
+ try {
153
+ const result = await performUpsert(next);
154
+ log.debug(`Sequence uuid increment ${name} current=${currentValue} next=${next}`);
155
+ return result.current;
156
+ }
157
+ catch (e) {
158
+ if (e instanceof db_decorators_1.ConflictError)
159
+ continue;
160
+ throw e;
161
+ }
162
+ }
152
163
  }
153
- }
154
- return seq.current;
164
+ const next = incrementSerial(currentValue);
165
+ const seq = await performUpsert(next);
166
+ log.debug(`Sequence.increment ${name} current=${currentValue} next=${next}`);
167
+ return seq.current;
168
+ }, name);
155
169
  }
156
170
  /**
157
171
  * @description Gets the next value in the sequence
@@ -161,9 +175,8 @@ class Sequence extends ContextualLoggedClass_1.ContextualLoggedClass {
161
175
  */
162
176
  async next(...argz) {
163
177
  const contextArgs = await Context_1.Context.args(db_decorators_1.OperationKeys.UPDATE, SequenceModel_1.SequenceModel, argz, this.adapter);
164
- const { context, args } = contextArgs;
165
- const current = await this.current(...args);
166
- return this.increment(current, undefined, context);
178
+ const { context } = contextArgs;
179
+ return this.increment(undefined, context);
167
180
  }
168
181
  /**
169
182
  * @description Generates a range of sequential values
@@ -178,7 +191,7 @@ class Sequence extends ContextualLoggedClass_1.ContextualLoggedClass {
178
191
  const { context, args } = contextArgs;
179
192
  const current = (await this.current(...args));
180
193
  const incrementBy = this.parse(this.options.incrementBy);
181
- const next = await this.increment(current, this.parse(count) * incrementBy, context);
194
+ const next = await this.increment(this.parse(count) * incrementBy, context);
182
195
  const range = [];
183
196
  for (let i = 1; i <= count; i++) {
184
197
  range.push(current + incrementBy * this.parse(i));
@@ -56,6 +56,7 @@ export declare class Sequence extends ContextualLoggedClass<any> {
56
56
  protected readonly options: SequenceOptions;
57
57
  protected readonly adapter: Adapter<any, any, any>;
58
58
  protected repo: Repo<SequenceModel>;
59
+ private static readonly lock;
59
60
  /**
60
61
  * @description Creates a new sequence instance
61
62
  * @summary Protected constructor that initializes the sequence with the provided options
@@ -76,7 +77,7 @@ export declare class Sequence extends ContextualLoggedClass<any> {
76
77
  * @param {number} [count] - Optional amount to increment by, defaults to the sequence's incrementBy value
77
78
  * @return A promise that resolves to the new sequence value after incrementing
78
79
  */
79
- protected increment(current: string | number | bigint, count: number | undefined, ctx: Context<any>): Promise<string | number | bigint>;
80
+ protected increment(count: number | undefined, ctx: Context<any>): Promise<string | number | bigint>;
80
81
  /**
81
82
  * @description Gets the next value in the sequence
82
83
  * @summary Retrieves the current value of the sequence and increments it by the
@@ -1 +1 @@
1
- {"version":3,"file":"Sequence.js","sourceRoot":"","sources":["../../src/persistence/Sequence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sequence.js","sourceRoot":"","sources":["../../src/persistence/Sequence.ts"],"names":[],"mappings":"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"}
@@ -62,5 +62,6 @@ exports.DefaultAdapterFlags = Object.assign({}, db_decorators_1.DefaultRepositor
62
62
  allowRawStatements: true,
63
63
  forcePrepareSimpleQueries: false,
64
64
  forcePrepareComplexQueries: false,
65
+ cacheForPopulate: {},
65
66
  });
66
67
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/persistence/constants.ts"],"names":[],"mappings":";;;AAAA,2DAAiE;AAGjE;;;;;;GAMG;AACH,IAAY,eAgEX;AAhED,WAAY,eAAe;IACzB,0CAA0C;IAC1C,kCAAe,CAAA;IAEf,sDAAsD;IACtD,oCAAiB,CAAA;IAEjB,4CAA4C;IAC5C,sCAAmB,CAAA;IAEnB,yDAAyD;IACzD,2DAAwC,CAAA;IAExC,sCAAmB,CAAA;IACnB,+CAA+C;IAC/C,kCAAe,CAAA;IAEf,gDAAgD;IAChD,oCAAiB,CAAA;IAEjB,oDAAoD;IACpD,0CAAuB,CAAA;IAEvB,YAAY;IACZ,yDAAyD;IACzD,0CAAuB,CAAA;IAEvB,yDAAyD;IACzD,sDAAsC,CAAA;IAEtC,yDAAyD;IACzD,sDAAsC,CAAA;IAEtC,YAAY;IAEZ,sDAAsD;IACtD,4CAAyB,CAAA;IAEzB,sDAAsD;IACtD,wCAAqB,CAAA;IAErB,wDAAwD;IACxD,qDAAqC,CAAA;IAErC,yDAAyD;IACzD,uDAAuC,CAAA;IAEvC,yDAAyD;IACzD,uDAAuC,CAAA;IACvC,yDAAyD;IACzD,yDAAyC,CAAA;IAEzC,6CAA6C;IAC7C,wCAAqB,CAAA;IACrB,6CAA6C;IAC7C,8CAA2B,CAAA;IAC3B,6CAA6C;IAC7C,0CAAuB,CAAA;IAEvB,0CAAuB,CAAA;IAEvB,kCAAe,CAAA;IAEf,0CAAuB,CAAA;AACzB,CAAC,EAhEW,eAAe,+BAAf,eAAe,QAgE1B;AAEY,QAAA,mBAAmB,GAAiB,MAAM,CAAC,MAAM,CAC5D,EAAE,EACF,sCAAsB,EACtB;IACE,uBAAuB,EAAE,KAAK;IAC9B,uBAAuB,EAAE,IAAI;IAC7B,kBAAkB,EAAE,IAAI;IACxB,yBAAyB,EAAE,KAAK;IAChC,0BAA0B,EAAE,KAAK;CAClC,CACc,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/persistence/constants.ts"],"names":[],"mappings":";;;AAAA,2DAAiE;AAGjE;;;;;;GAMG;AACH,IAAY,eAgEX;AAhED,WAAY,eAAe;IACzB,0CAA0C;IAC1C,kCAAe,CAAA;IAEf,sDAAsD;IACtD,oCAAiB,CAAA;IAEjB,4CAA4C;IAC5C,sCAAmB,CAAA;IAEnB,yDAAyD;IACzD,2DAAwC,CAAA;IAExC,sCAAmB,CAAA;IACnB,+CAA+C;IAC/C,kCAAe,CAAA;IAEf,gDAAgD;IAChD,oCAAiB,CAAA;IAEjB,oDAAoD;IACpD,0CAAuB,CAAA;IAEvB,YAAY;IACZ,yDAAyD;IACzD,0CAAuB,CAAA;IAEvB,yDAAyD;IACzD,sDAAsC,CAAA;IAEtC,yDAAyD;IACzD,sDAAsC,CAAA;IAEtC,YAAY;IAEZ,sDAAsD;IACtD,4CAAyB,CAAA;IAEzB,sDAAsD;IACtD,wCAAqB,CAAA;IAErB,wDAAwD;IACxD,qDAAqC,CAAA;IAErC,yDAAyD;IACzD,uDAAuC,CAAA;IAEvC,yDAAyD;IACzD,uDAAuC,CAAA;IACvC,yDAAyD;IACzD,yDAAyC,CAAA;IAEzC,6CAA6C;IAC7C,wCAAqB,CAAA;IACrB,6CAA6C;IAC7C,8CAA2B,CAAA;IAC3B,6CAA6C;IAC7C,0CAAuB,CAAA;IAEvB,0CAAuB,CAAA;IAEvB,kCAAe,CAAA;IAEf,0CAAuB,CAAA;AACzB,CAAC,EAhEW,eAAe,+BAAf,eAAe,QAgE1B;AAEY,QAAA,mBAAmB,GAAiB,MAAM,CAAC,MAAM,CAC5D,EAAE,EACF,sCAAsB,EACtB;IACE,uBAAuB,EAAE,KAAK;IAC9B,uBAAuB,EAAE,IAAI;IAC7B,kBAAkB,EAAE,IAAI;IACxB,yBAAyB,EAAE,KAAK;IAChC,0BAA0B,EAAE,KAAK;IACjC,gBAAgB,EAAE,EAAE;CACrB,CACc,CAAC"}
@@ -63,6 +63,7 @@ export type AdapterFlags<LOG extends Logger = Logger> = RepositoryFlags<LOG> & {
63
63
  allowRawStatements: boolean;
64
64
  forcePrepareSimpleQueries: boolean;
65
65
  forcePrepareComplexQueries: boolean;
66
+ cacheForPopulate: Record<string, any>;
66
67
  };
67
68
  export type RawResult<R, D extends boolean> = D extends true ? R : {
68
69
  data: R;