@cqrs-ddd/core 0.4.2 → 0.5.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 (75) hide show
  1. package/COMMERCIAL_LICENSE.txt +14 -10
  2. package/README.md +3 -3
  3. package/dist/application/base.command.d.ts +3 -0
  4. package/dist/application/base.command.d.ts.map +1 -1
  5. package/dist/application/base.command.js +5 -0
  6. package/dist/application/base.command.js.map +1 -1
  7. package/dist/application/base.query.d.ts +3 -0
  8. package/dist/application/base.query.d.ts.map +1 -1
  9. package/dist/application/base.query.js +5 -0
  10. package/dist/application/base.query.js.map +1 -1
  11. package/dist/application/command-base.handler.d.ts +6 -10
  12. package/dist/application/command-base.handler.d.ts.map +1 -1
  13. package/dist/application/command-base.handler.js +16 -18
  14. package/dist/application/command-base.handler.js.map +1 -1
  15. package/dist/application/ports/command-repository.port.d.ts +1 -4
  16. package/dist/application/ports/command-repository.port.d.ts.map +1 -1
  17. package/dist/application/ports/query-repository.port.d.ts +0 -1
  18. package/dist/application/ports/query-repository.port.d.ts.map +1 -1
  19. package/dist/domain/decorators/apply-mutation.decorator.d.ts.map +1 -1
  20. package/dist/domain/decorators/apply-mutation.decorator.js +2 -1
  21. package/dist/domain/decorators/apply-mutation.decorator.js.map +1 -1
  22. package/dist/domain/events/domain.event.d.ts +3 -0
  23. package/dist/domain/events/domain.event.d.ts.map +1 -1
  24. package/dist/domain/events/domain.event.js +5 -0
  25. package/dist/domain/events/domain.event.js.map +1 -1
  26. package/dist/domain/events/root-domain.event.d.ts.map +1 -1
  27. package/dist/domain/events/root-domain.event.js +35 -23
  28. package/dist/domain/events/root-domain.event.js.map +1 -1
  29. package/dist/domain/models/aggregate-root.d.ts +3 -3
  30. package/dist/domain/models/aggregate-root.d.ts.map +1 -1
  31. package/dist/domain/models/aggregate-root.js +3 -3
  32. package/dist/domain/models/aggregate-root.js.map +1 -1
  33. package/dist/domain/models/root.entity.d.ts.map +1 -1
  34. package/dist/domain/models/root.entity.js.map +1 -1
  35. package/dist/domain/request-kind.d.ts +7 -0
  36. package/dist/domain/request-kind.d.ts.map +1 -0
  37. package/dist/domain/request-kind.js +8 -0
  38. package/dist/domain/request-kind.js.map +1 -0
  39. package/dist/persistence/cache/cache-logger.d.ts +2 -2
  40. package/dist/persistence/cache/memory.cache.d.ts +0 -1
  41. package/dist/persistence/cache/memory.cache.d.ts.map +1 -1
  42. package/dist/persistence/cache/memory.cache.js +3 -4
  43. package/dist/persistence/cache/memory.cache.js.map +1 -1
  44. package/dist/persistence/command-repository.abstract.d.ts +2 -3
  45. package/dist/persistence/command-repository.abstract.d.ts.map +1 -1
  46. package/dist/persistence/command-repository.abstract.js +2 -3
  47. package/dist/persistence/command-repository.abstract.js.map +1 -1
  48. package/dist/persistence/decorators/acknowledge-persisted.decorator.d.ts +0 -2
  49. package/dist/persistence/decorators/acknowledge-persisted.decorator.d.ts.map +1 -1
  50. package/dist/persistence/decorators/acknowledge-persisted.decorator.js +0 -2
  51. package/dist/persistence/decorators/acknowledge-persisted.decorator.js.map +1 -1
  52. package/dist/persistence/decorators/cache.decorator.d.ts.map +1 -1
  53. package/dist/persistence/decorators/cache.decorator.js +149 -107
  54. package/dist/persistence/decorators/cache.decorator.js.map +1 -1
  55. package/dist/persistence/decorators/from-cache.decorator.d.ts.map +1 -1
  56. package/dist/persistence/decorators/from-cache.decorator.js +131 -86
  57. package/dist/persistence/decorators/from-cache.decorator.js.map +1 -1
  58. package/dist/persistence/decorators/map-persistence-errors.decorator.d.ts +0 -1
  59. package/dist/persistence/decorators/map-persistence-errors.decorator.d.ts.map +1 -1
  60. package/dist/persistence/decorators/map-persistence-errors.decorator.js +2 -2
  61. package/dist/persistence/decorators/map-persistence-errors.decorator.js.map +1 -1
  62. package/dist/persistence/helpers/cache-barrier.helper.d.ts.map +1 -1
  63. package/dist/persistence/helpers/cache-barrier.helper.js +7 -5
  64. package/dist/persistence/helpers/cache-barrier.helper.js.map +1 -1
  65. package/dist/persistence/helpers/cache-key.helper.d.ts.map +1 -1
  66. package/dist/persistence/helpers/cache-key.helper.js +2 -1
  67. package/dist/persistence/helpers/cache-key.helper.js.map +1 -1
  68. package/dist/persistence/helpers/cache-version.helper.d.ts.map +1 -1
  69. package/dist/persistence/helpers/cache-version.helper.js +3 -5
  70. package/dist/persistence/helpers/cache-version.helper.js.map +1 -1
  71. package/dist/persistence/query-repository.abstract.d.ts +4 -6
  72. package/dist/persistence/query-repository.abstract.d.ts.map +1 -1
  73. package/dist/persistence/query-repository.abstract.js +4 -6
  74. package/dist/persistence/query-repository.abstract.js.map +1 -1
  75. package/package.json +9 -9
@@ -8,6 +8,12 @@ import { isCacheNewer } from '../helpers/cache-version.helper.js';
8
8
  export { isCacheNewer };
9
9
  const defaultLogger = consoleCacheLogger('FromCacheDecorator');
10
10
  const warnedUnversionedAdapters = new WeakSet();
11
+ const reportedUncacheable = new WeakSet();
12
+ /**
13
+ * Fills retried after a concurrent mutation rejects one, before the loaded
14
+ * result is returned uncached.
15
+ */
16
+ const MAX_FILL_RETRIES = 2;
11
17
  /**
12
18
  * Reports an unversioned adapter once per instance: a silent loss of caching is
13
19
  * harder to diagnose than the race the bypass avoids.
@@ -30,10 +36,8 @@ function isPlainData(value, ancestors = new WeakSet()) {
30
36
  return typeof value !== 'function' && typeof value !== 'bigint';
31
37
  }
32
38
  const prototype = Object.getPrototypeOf(value);
33
- if (ancestors.has(value) ||
34
- (!Array.isArray(value) &&
35
- prototype !== Object.prototype &&
36
- prototype !== null)) {
39
+ const isPlainObject = prototype === Object.prototype || prototype === null;
40
+ if (ancestors.has(value) || (!Array.isArray(value) && !isPlainObject)) {
37
41
  return false;
38
42
  }
39
43
  ancestors.add(value);
@@ -72,90 +76,131 @@ export function FromCache(keyFnOrOptions, hydrateFnOrOptions, extraOptions) {
72
76
  if (resolvedOptions?.alwaysHydrate && !resolvedHydrateFn) {
73
77
  throw new TypeError('FromCache: alwaysHydrate requires a hydrateFn');
74
78
  }
75
- const logger = resolvedOptions?.logger ?? defaultLogger;
76
- const MAX_FILL_RETRIES = 2;
77
- let reportedUncacheable = false;
79
+ const settings = {
80
+ options: resolvedOptions,
81
+ keyFn: resolvedKeyFn,
82
+ hydrateFn: resolvedHydrateFn,
83
+ declaresHydrateFn,
84
+ declaresSerializeFn,
85
+ logger: resolvedOptions?.logger ?? defaultLogger,
86
+ };
78
87
  return (_target, _propertyKey, descriptor) => {
79
- const original = descriptor.value;
80
- descriptor.value = async function (query) {
81
- if (!this.cache) {
82
- reportMissingCacheProperty(this, '@FromCache', resolvedOptions?.logger);
83
- return original.call(this, query);
84
- }
85
- if (query.refresh)
86
- return original.call(this, query);
87
- if (!resolvedKeyFn)
88
- throw new TypeError('FromCache requires a keyFn');
89
- const key = resolvedKeyFn(query);
90
- if (key === null) {
91
- return original.call(this, query);
92
- }
93
- // Method-level options win; otherwise the repository policy applies,
94
- // and a repository hydrator rehydrates every hit.
95
- const repositoryHydration = this.hydration;
96
- const hydrateFn = declaresHydrateFn
97
- ? resolvedHydrateFn
98
- : repositoryHydration?.hydrateFn;
99
- const serializeFn = declaresSerializeFn
100
- ? resolvedOptions?.serializeFn
101
- : repositoryHydration?.serializeFn;
102
- const hydrateCached = (cachedValue) => hydrateFn ? hydrateFn(cachedValue) : cachedValue;
103
- // A revision-fenced key can still hold a barrier written by an
104
- // unversioned writer against the same store; it is a sentinel, never a
105
- // snapshot, so it counts as a miss rather than something to hydrate. The
106
- // same holds for `null`: this decorator never fills one, so a stored null
107
- // is a leftover from another writer, not a cached absence.
108
- const isUsableSnapshot = (state) => state.status === 'hit' &&
109
- state.value !== undefined &&
110
- state.value !== null &&
111
- !isCacheMutationBarrier(state.value);
112
- // 1. Versioned coordination path (capable adapters)
113
- if (isVersionedCache(this.cache)) {
114
- let observedState = await this.cache.readState(key);
115
- if (isUsableSnapshot(observedState)) {
116
- return hydrateCached(observedState.value);
117
- }
118
- for (let attempt = 0;; attempt++) {
119
- const result = await original.call(this, query);
120
- if (result === null || result === undefined) {
121
- const postState = await this.cache.readState(key);
122
- if (isUsableSnapshot(postState)) {
123
- return hydrateCached(postState.value);
124
- }
125
- return result;
126
- }
127
- // A hit without a hydrator returns the cached data as is, so only a
128
- // result that already is that data may be cached.
129
- if (!hydrateFn && (serializeFn || !isPlainData(result))) {
130
- if (!reportedUncacheable) {
131
- reportedUncacheable = true;
132
- safeWarn(logger, `${this.constructor.name} caches a result that a hit could not reproduce without a hydrateFn; ` +
133
- 'the result is returned uncached. Configure a hydrateFn or return plain data.');
134
- }
135
- return result;
136
- }
137
- const snapshot = toCacheSnapshot(result, serializeFn);
138
- const committed = await this.cache.tryFill(key, observedState.revision, snapshot, { ttl: resolvedOptions?.ttl });
139
- if (committed) {
140
- return result;
141
- }
142
- const currentState = await this.cache.readState(key);
143
- if (isUsableSnapshot(currentState)) {
144
- const newerCheck = resolvedOptions?.isNewer ?? isCacheNewer;
145
- if (newerCheck(currentState.value, snapshot)) {
146
- return hydrateCached(currentState.value);
147
- }
148
- }
149
- if (attempt === MAX_FILL_RETRIES)
150
- return result;
151
- observedState = currentState;
152
- }
153
- }
154
- // 2. Unversioned adapter: with no revision to fence a fill against a
155
- // concurrent invalidation, the cache is bypassed for both reads and fills.
156
- warnUnversionedAdapterOnce(this.cache, logger);
88
+ descriptor.value = wrapFind(descriptor.value, settings);
89
+ };
90
+ }
91
+ function wrapFind(original, settings) {
92
+ return async function (query) {
93
+ if (!this.cache) {
94
+ reportMissingCacheProperty(this, '@FromCache', settings.options?.logger);
95
+ return original.call(this, query);
96
+ }
97
+ if (query.refresh)
98
+ return original.call(this, query);
99
+ const { keyFn } = settings;
100
+ if (!keyFn)
101
+ throw new TypeError('FromCache requires a keyFn');
102
+ const key = keyFn(query);
103
+ if (key === null) {
157
104
  return original.call(this, query);
158
- };
105
+ }
106
+ const hydration = methodHydration(settings, this.hydration);
107
+ const load = () => original.call(this, query);
108
+ // 1. Versioned coordination path (capable adapters)
109
+ if (isVersionedCache(this.cache)) {
110
+ return readThrough({ cache: this.cache, key, repository: this, load, ...hydration }, settings);
111
+ }
112
+ // 2. Unversioned adapter: with no revision to fence a fill against a
113
+ // concurrent invalidation, the cache is bypassed for both reads and fills.
114
+ warnUnversionedAdapterOnce(this.cache, settings.logger);
115
+ return original.call(this, query);
159
116
  };
160
117
  }
118
+ /**
119
+ * Method-level options win; otherwise the repository policy applies, and a
120
+ * repository hydrator rehydrates every hit.
121
+ */
122
+ function methodHydration(settings, repository) {
123
+ return {
124
+ hydrateFn: settings.declaresHydrateFn
125
+ ? settings.hydrateFn
126
+ : repository?.hydrateFn,
127
+ serializeFn: settings.declaresSerializeFn
128
+ ? settings.options?.serializeFn
129
+ : repository?.serializeFn,
130
+ };
131
+ }
132
+ /**
133
+ * Serves a usable hit, or loads and fills the key through `tryFill` against the
134
+ * revision observed before the load. A rejected fill re-reads the key: a newer
135
+ * usable snapshot wins, and otherwise the load is retried up to
136
+ * {@link MAX_FILL_RETRIES} times before its result is returned uncached.
137
+ */
138
+ async function readThrough(read, settings) {
139
+ const { cache, key, load, hydrateFn, serializeFn } = read;
140
+ let observedState = await cache.readState(key);
141
+ if (isUsableSnapshot(observedState)) {
142
+ return hydrate(read, observedState.value);
143
+ }
144
+ for (let attempt = 0;; attempt++) {
145
+ const result = await load();
146
+ if (result === null || result === undefined) {
147
+ const postState = await cache.readState(key);
148
+ return isUsableSnapshot(postState)
149
+ ? hydrate(read, postState.value)
150
+ : result;
151
+ }
152
+ // A hit without a hydrator returns the cached data as is, so only a
153
+ // result that already is that data may be cached.
154
+ if (!hydrateFn && (serializeFn || !isPlainData(result))) {
155
+ reportUncacheableOnce(settings, read.repository);
156
+ return result;
157
+ }
158
+ const snapshot = toCacheSnapshot(result, serializeFn);
159
+ const committed = await cache.tryFill(key, observedState.revision, snapshot, { ttl: settings.options?.ttl });
160
+ if (committed)
161
+ return result;
162
+ const currentState = await cache.readState(key);
163
+ if (isNewerSnapshot(currentState, snapshot, settings.options)) {
164
+ return hydrate(read, currentState.value);
165
+ }
166
+ if (attempt === MAX_FILL_RETRIES)
167
+ return result;
168
+ observedState = currentState;
169
+ }
170
+ }
171
+ function hydrate(hydration, cached) {
172
+ const { hydrateFn } = hydration;
173
+ return hydrateFn ? hydrateFn(cached) : cached;
174
+ }
175
+ /**
176
+ * A revision-fenced key can still hold a barrier written by an unversioned
177
+ * writer against the same store; it is a sentinel, never a snapshot, so it
178
+ * counts as a miss rather than something to hydrate. The same holds for
179
+ * `null`: this decorator never fills one, so a stored null is a leftover from
180
+ * another writer, not a cached absence.
181
+ */
182
+ function isUsableSnapshot(state) {
183
+ return (state.status === 'hit' &&
184
+ state.value !== undefined &&
185
+ state.value !== null &&
186
+ !isCacheMutationBarrier(state.value));
187
+ }
188
+ /** Whether the state a rejected fill re-read holds a newer usable snapshot. */
189
+ function isNewerSnapshot(state, snapshot, options) {
190
+ if (!isUsableSnapshot(state))
191
+ return false;
192
+ const newerCheck = options?.isNewer ?? isCacheNewer;
193
+ return newerCheck(state.value, snapshot);
194
+ }
195
+ /**
196
+ * Reports, once per decorator, a result a hit could not reproduce without a
197
+ * hydrator, so it is returned uncached.
198
+ */
199
+ function reportUncacheableOnce(settings, repository) {
200
+ if (reportedUncacheable.has(settings))
201
+ return;
202
+ reportedUncacheable.add(settings);
203
+ safeWarn(settings.logger, `${repository.constructor.name} caches a result that a hit could not reproduce without a hydrateFn; ` +
204
+ 'the result is returned uncached. Configure a hydrateFn or return plain data.');
205
+ }
161
206
  //# sourceMappingURL=from-cache.decorator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"from-cache.decorator.js","sourceRoot":"","sources":["../../../persistence/decorators/from-cache.decorator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"from-cache.decorator.js","sourceRoot":"","sources":["../../../persistence/decorators/from-cache.decorator.ts"],"names":[],"mappings":"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"}
@@ -42,7 +42,6 @@ export type UniqueErrors<TEntity, TConstraint extends string = never> = {
42
42
  *
43
43
  * @example Mapping unique constraints in a create repository
44
44
  * ```typescript
45
- * @Injectable()
46
45
  * export class CreateUserCommandRepository extends CommandRepository<User, UserSnapshot> {
47
46
  * @Cache<User, UserSnapshot>((u) => `users:${u.id}`, null, (u) => [`users:email:${u.email}`])
48
47
  * @AcknowledgePersisted<[User]>({ entity: ([user]) => user })
@@ -1 +1 @@
1
- {"version":3,"file":"map-persistence-errors.decorator.d.ts","sourceRoot":"","sources":["../../../persistence/decorators/map-persistence-errors.decorator.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,2BAA2B,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,MAAM,YAAY,CAAC,OAAO,EAAE,WAAW,SAAS,MAAM,GAAG,KAAK,IAAI;IACtE,QAAQ,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,OAAO,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAC7D,MAAM,EAAE,OAAO,KACZ,KAAK;CACX,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,SAAS,OAAO,EAAE,EACvB,OAAO,EACP,WAAW,SAAS,MAAM,GAAG,KAAK,EAClC,KAAK,GAAG,OAAO,EACf,OAAO,EAAE;IACT,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC;IACjC,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;CACvE,IACS,OAAO,WACJ,MAAM,QACT,MAAM,GAAG,MAAM,cACT,uBAAuB,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,KACxE,IAAI,CA+BR"}
1
+ {"version":3,"file":"map-persistence-errors.decorator.d.ts","sourceRoot":"","sources":["../../../persistence/decorators/map-persistence-errors.decorator.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,2BAA2B,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,MAAM,YAAY,CAAC,OAAO,EAAE,WAAW,SAAS,MAAM,GAAG,KAAK,IAAI;IACtE,QAAQ,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,OAAO,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAC7D,MAAM,EAAE,OAAO,KACZ,KAAK;CACX,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,SAAS,OAAO,EAAE,EACvB,OAAO,EACP,WAAW,SAAS,MAAM,GAAG,KAAK,EAClC,KAAK,GAAG,OAAO,EACf,OAAO,EAAE;IACT,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC;IACjC,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;CACvE,IACmB,OAAO,WACd,MAAM,QACT,MAAM,GAAG,MAAM,cACT,uBAAuB,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,KACxE,IAAI,CAiCR"}
@@ -34,7 +34,6 @@ import { persistenceDialect, } from '../persistence-dialect.js';
34
34
  *
35
35
  * @example Mapping unique constraints in a create repository
36
36
  * ```typescript
37
- * @Injectable()
38
37
  * export class CreateUserCommandRepository extends CommandRepository<User, UserSnapshot> {
39
38
  * @Cache<User, UserSnapshot>((u) => `users:${u.id}`, null, (u) => [`users:email:${u.email}`])
40
39
  * @AcknowledgePersisted<[User]>({ entity: ([user]) => user })
@@ -52,7 +51,7 @@ import { persistenceDialect, } from '../persistence-dialect.js';
52
51
  * ```
53
52
  */
54
53
  export function MapPersistenceErrors(options) {
55
- return (_target, _key, descriptor) => {
54
+ const decorate = (_target, _key, descriptor) => {
56
55
  const original = descriptor.value;
57
56
  if (typeof original !== 'function')
58
57
  throw new TypeError('Persistence decorators require a method.');
@@ -82,5 +81,6 @@ export function MapPersistenceErrors(options) {
82
81
  }
83
82
  };
84
83
  };
84
+ return decorate;
85
85
  }
86
86
  //# sourceMappingURL=map-persistence-errors.decorator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"map-persistence-errors.decorator.js","sourceRoot":"","sources":["../../../persistence/decorators/map-persistence-errors.decorator.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,OAAO,EAEL,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAcnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,UAAU,oBAAoB,CAKlC,OAyBD;IACC,OAAO,CACL,OAAe,EACf,IAAqB,EACrB,UAAyE,EACnE,EAAE;QACR,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC;QAClC,IAAI,OAAO,QAAQ,KAAK,UAAU;YAChC,MAAM,IAAI,SAAS,CAAC,0CAA0C,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,GAAG,IAAW;YAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACxD,IAAI,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC1B,MAAM,IAAI,SAAS,CACjB,0GAA0G,CAC3G,CAAC;YACJ,CAAC;YACD,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpC,MAAM,GAAG,GAAG,SAAS;oBACnB,CAAC,CAAC,OAAO,EAAE,eAAe,CAAC,KAAK,EAAE,MAAgB,CAAC;oBACnD,CAAC,CAAC,SAAS,CAAC;gBACd,MAAM,OAAO,GACX,GAAG,KAAK,SAAS;oBACf,CAAC,CAAC,SAAS;oBACX,CAAC,CAAE,MAAqD,CAAC,GAAG,CAAC,CAAC;gBAClE,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;gBACnC,IAAI,OAAO,CAAC,SAAS;oBACnB,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC7D,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"map-persistence-errors.decorator.js","sourceRoot":"","sources":["../../../persistence/decorators/map-persistence-errors.decorator.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,OAAO,EAEL,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAcnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,UAAU,oBAAoB,CAKlC,OAyBD;IACC,MAAM,QAAQ,GAAG,CACf,OAAe,EACf,IAAqB,EACrB,UAAyE,EACnE,EAAE;QACR,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC;QAClC,IAAI,OAAO,QAAQ,KAAK,UAAU;YAChC,MAAM,IAAI,SAAS,CAAC,0CAA0C,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,GAAG,IAAW;YAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACxD,IAAI,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC1B,MAAM,IAAI,SAAS,CACjB,0GAA0G,CAC3G,CAAC;YACJ,CAAC;YACD,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpC,MAAM,GAAG,GAAG,SAAS;oBACnB,CAAC,CAAC,OAAO,EAAE,eAAe,CAAC,KAAK,EAAE,MAAgB,CAAC;oBACnD,CAAC,CAAC,SAAS,CAAC;gBACd,MAAM,OAAO,GACX,GAAG,KAAK,SAAS;oBACf,CAAC,CAAC,SAAS;oBACX,CAAC,CAAE,MAAqD,CAAC,GAAG,CAAC,CAAC;gBAElE,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;gBACnC,IAAI,OAAO,CAAC,SAAS;oBACnB,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC7D,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cache-barrier.helper.d.ts","sourceRoot":"","sources":["../../../persistence/helpers/cache-barrier.helper.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE3D;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAEpC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,SAAS,IAAI,SAAS,GAAG,oBAAoB,CAAC;AAE3E;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,CAAC,EAAE,OAAO,GACf,oBAAoB,CAsBtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,oBAAoB,CAM/B"}
1
+ {"version":3,"file":"cache-barrier.helper.d.ts","sourceRoot":"","sources":["../../../persistence/helpers/cache-barrier.helper.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE3D;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAEpC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,SAAS,IAAI,SAAS,GAAG,oBAAoB,CAAC;AAE3E;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,CAAC,EAAE,OAAO,GACf,oBAAoB,CAiBtB;AAUD;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,oBAAoB,CAM/B"}
@@ -18,11 +18,7 @@ export function createCacheMutationBarrier(reason, entity) {
18
18
  ? entity
19
19
  : undefined;
20
20
  const aggregateId = typeof e?.id === 'string' ? e.id : undefined;
21
- const version = typeof e?.version === 'number'
22
- ? e.version
23
- : typeof e?._version === 'number'
24
- ? e._version
25
- : undefined;
21
+ const version = versionOf(e);
26
22
  return {
27
23
  __cacheBarrier: true,
28
24
  token: uuidv7(),
@@ -32,6 +28,12 @@ export function createCacheMutationBarrier(reason, entity) {
32
28
  ...(version !== undefined ? { version } : {}),
33
29
  };
34
30
  }
31
+ /** The entity's numeric `version`, else its numeric `_version` backing field. */
32
+ function versionOf(entity) {
33
+ if (typeof entity?.version === 'number')
34
+ return entity.version;
35
+ return typeof entity?._version === 'number' ? entity._version : undefined;
36
+ }
35
37
  /**
36
38
  * Type guard verifying whether an arbitrary value is a {@link CacheMutationBarrier}.
37
39
  *
@@ -1 +1 @@
1
- {"version":3,"file":"cache-barrier.helper.js","sourceRoot":"","sources":["../../../persistence/helpers/cache-barrier.helper.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAmD1C;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,0BAA0B,CACxC,MAA0B,EAC1B,MAAgB;IAEhB,MAAM,CAAC,GACL,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAC3C,CAAC,CAAE,MAAkC;QACrC,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,MAAM,OAAO,GACX,OAAO,CAAC,EAAE,OAAO,KAAK,QAAQ;QAC5B,CAAC,CAAC,CAAC,CAAC,OAAO;QACX,CAAC,CAAC,OAAQ,CAA4B,EAAE,QAAQ,KAAK,QAAQ;YAC3D,CAAC,CAAG,CAA0B,CAAC,QAAmB;YAClD,CAAC,CAAC,SAAS,CAAC;IAElB,OAAO;QACL,cAAc,EAAE,IAAI;QACpB,KAAK,EAAE,MAAM,EAAE;QACf,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAiC,CAAC,cAAc,KAAK,IAAI,CAC3D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"cache-barrier.helper.js","sourceRoot":"","sources":["../../../persistence/helpers/cache-barrier.helper.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAmD1C;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,0BAA0B,CACxC,MAA0B,EAC1B,MAAgB;IAEhB,MAAM,CAAC,GACL,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAC3C,CAAC,CAAE,MAAkC;QACrC,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAE7B,OAAO;QACL,cAAc,EAAE,IAAI;QACpB,KAAK,EAAE,MAAM,EAAE;QACf,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,SAAS,SAAS,CAChB,MAA2C;IAE3C,IAAI,OAAO,MAAM,EAAE,OAAO,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IAC/D,OAAO,OAAO,MAAM,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAiC,CAAC,cAAc,KAAK,IAAI,CAC3D,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cache-key.helper.d.ts","sourceRoot":"","sources":["../../../persistence/helpers/cache-key.helper.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,sCAAsC,CAAC;AAE9C;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAmCD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,QAAQ,CACtB,gBAAgB,EAAE,sBAAsB,EACxC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,eAAe,CAAC,EAAE,oBAAoB,GACrC,MAAM,CA0BR;AAiBD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1D,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,oBAAoB,GACrC,CAAC,MAAM,EAAE,CAAC,GAAG,sBAAsB,KAAK,MAAM,CA8BhD"}
1
+ {"version":3,"file":"cache-key.helper.d.ts","sourceRoot":"","sources":["../../../persistence/helpers/cache-key.helper.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,sCAAsC,CAAC;AAE9C;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAmCD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,QAAQ,CACtB,gBAAgB,EAAE,sBAAsB,EACxC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,eAAe,CAAC,EAAE,oBAAoB,GACrC,MAAM,CA0BR;AAiBD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1D,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,oBAAoB,GACrC,CAAC,MAAM,EAAE,CAAC,GAAG,sBAAsB,KAAK,MAAM,CAgChD"}
@@ -106,7 +106,7 @@ function canonicalizeValue(val) {
106
106
  * ```
107
107
  */
108
108
  export function cacheKeyTemplate(template, tenantOrContext) {
109
- return (source) => {
109
+ const keyFor = (source) => {
110
110
  const ctx = source && typeof source === 'object' && 'request' in source
111
111
  ? source
112
112
  : undefined;
@@ -124,5 +124,6 @@ export function cacheKeyTemplate(template, tenantOrContext) {
124
124
  });
125
125
  return `${schema}:${resolved}`;
126
126
  };
127
+ return keyFor;
127
128
  }
128
129
  //# sourceMappingURL=cache-key.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache-key.helper.js","sourceRoot":"","sources":["../../../persistence/helpers/cache-key.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache-key.helper.js","sourceRoot":"","sources":["../../../persistence/helpers/cache-key.helper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cache-version.helper.d.ts","sourceRoot":"","sources":["../../../persistence/helpers/cache-version.helper.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CA4CxE"}
1
+ {"version":3,"file":"cache-version.helper.d.ts","sourceRoot":"","sources":["../../../persistence/helpers/cache-version.helper.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAsCxE"}
@@ -28,12 +28,10 @@ import { isCacheMutationBarrier } from './cache-barrier.helper.js';
28
28
  * @returns `true` if `cached` is strictly newer than `incoming`, `false` otherwise.
29
29
  */
30
30
  export function isCacheNewer(cached, incoming) {
31
- if (!cached ||
32
- typeof cached !== 'object' ||
33
- !incoming ||
34
- typeof incoming !== 'object') {
31
+ if (!cached || typeof cached !== 'object')
32
+ return false;
33
+ if (!incoming || typeof incoming !== 'object')
35
34
  return false;
36
- }
37
35
  // A barrier records a mutation that has already been durably applied, so it
38
36
  // outranks any snapshot: a write-through that started before a concurrent
39
37
  // delete must not overwrite it, or the deleted aggregate would reappear in the
@@ -1 +1 @@
1
- {"version":3,"file":"cache-version.helper.js","sourceRoot":"","sources":["../../../persistence/helpers/cache-version.helper.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,YAAY,CAAC,MAAe,EAAE,QAAiB;IAC7D,IACE,CAAC,MAAM;QACP,OAAO,MAAM,KAAK,QAAQ;QAC1B,CAAC,QAAQ;QACT,OAAO,QAAQ,KAAK,QAAQ,EAC5B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,+EAA+E;IAC/E,4BAA4B;IAC5B,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QACnD,yEAAyE;QACzE,0BAA0B;QAC1B,OAAO,QAAQ,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;IAChD,CAAC;IAED,6DAA6D;IAC7D,IAAI,sBAAsB,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IAEnD,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,GAAG,GAAG,QAAmC,CAAC;IAEhD,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACrE,OAAO,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IACjC,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACjE,OAAO,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAmC,CAAC,CAAC,OAAO,EAAE,CAAC;QACxE,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,SAAmC,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,OAAO,KAAK,GAAG,OAAO,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"cache-version.helper.js","sourceRoot":"","sources":["../../../persistence/helpers/cache-version.helper.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,YAAY,CAAC,MAAe,EAAE,QAAiB;IAC7D,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE5D,4EAA4E;IAC5E,0EAA0E;IAC1E,+EAA+E;IAC/E,4BAA4B;IAC5B,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QACnD,yEAAyE;QACzE,0BAA0B;QAC1B,OAAO,QAAQ,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;IAChD,CAAC;IAED,6DAA6D;IAC7D,IAAI,sBAAsB,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IAEnD,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,GAAG,GAAG,QAAmC,CAAC;IAEhD,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACrE,OAAO,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IACjC,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACjE,OAAO,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAmC,CAAC,CAAC,OAAO,EAAE,CAAC;QACxE,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,SAAmC,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,OAAO,KAAK,GAAG,OAAO,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -26,11 +26,10 @@ export interface QueryRepositoryHydration<TResult> {
26
26
  *
27
27
  * @example Creating a query repository with the FromCache decorator
28
28
  * ```typescript
29
- * @Injectable()
30
29
  * export class GetUserQueryRepository extends QueryRepository<GetUserQuery, User | null> {
31
30
  * constructor(
32
- * @Inject(CACHE_TOKEN) protected readonly cache: ICache<UserSnapshot>,
33
- * @Inject(MIKRO_ORM_CLIENT) private readonly store: MikroOrmStore,
31
+ * protected readonly cache: ICache<UserSnapshot>,
32
+ * private readonly store: MikroOrmStore,
34
33
  * ) {
35
34
  * super(cache);
36
35
  * }
@@ -48,11 +47,10 @@ export interface QueryRepositoryHydration<TResult> {
48
47
  *
49
48
  * @example Declaring rehydration once for the whole repository
50
49
  * ```typescript
51
- * @Injectable()
52
50
  * export class GetRoleQueryRepository extends QueryRepository<GetRoleQuery, Role | null> {
53
51
  * constructor(
54
- * @Inject(CACHE_TOKEN) cache: ICache<RoleSnapshot>,
55
- * @Inject(MIKRO_ORM_CLIENT) private readonly store: MikroOrmStore,
52
+ * cache: ICache<RoleSnapshot>,
53
+ * private readonly store: MikroOrmStore,
56
54
  * ) {
57
55
  * super(cache, { hydrateFn: (cached) => Role.fromJSON(cached as RoleSnapshot) });
58
56
  * }
@@ -1 +1 @@
1
- {"version":3,"file":"query-repository.abstract.d.ts","sourceRoot":"","sources":["../../persistence/query-repository.abstract.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,wBAAwB,CAAC,OAAO;IAC/C;;;OAGG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;IAExC,4DAA4D;IAC5D,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;CAC5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,8BAAsB,eAAe,CAAC,MAAM,GAAG,aAAa,EAAE,OAAO,GAAG,OAAO,CAC7E,YAAW,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC;IAG1C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;IACzC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,wBAAwB,CAAC,OAAO,CAAC;IAFlE,YACqB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EACtB,SAAS,CAAC,EAAE,wBAAwB,CAAC,OAAO,CAAC,YAAA,EAC9D;IAEJ,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChD"}
1
+ {"version":3,"file":"query-repository.abstract.d.ts","sourceRoot":"","sources":["../../persistence/query-repository.abstract.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,wBAAwB,CAAC,OAAO;IAC/C;;;OAGG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;IAExC,4DAA4D;IAC5D,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;CAC5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,8BAAsB,eAAe,CAAC,MAAM,GAAG,aAAa,EAAE,OAAO,GAAG,OAAO,CAC7E,YAAW,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC;IAG1C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;IACzC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,wBAAwB,CAAC,OAAO,CAAC;IAFlE,YACqB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EACtB,SAAS,CAAC,EAAE,wBAAwB,CAAC,OAAO,CAAC,YAAA,EAC9D;IAEJ,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChD"}
@@ -11,11 +11,10 @@
11
11
  *
12
12
  * @example Creating a query repository with the FromCache decorator
13
13
  * ```typescript
14
- * @Injectable()
15
14
  * export class GetUserQueryRepository extends QueryRepository<GetUserQuery, User | null> {
16
15
  * constructor(
17
- * @Inject(CACHE_TOKEN) protected readonly cache: ICache<UserSnapshot>,
18
- * @Inject(MIKRO_ORM_CLIENT) private readonly store: MikroOrmStore,
16
+ * protected readonly cache: ICache<UserSnapshot>,
17
+ * private readonly store: MikroOrmStore,
19
18
  * ) {
20
19
  * super(cache);
21
20
  * }
@@ -33,11 +32,10 @@
33
32
  *
34
33
  * @example Declaring rehydration once for the whole repository
35
34
  * ```typescript
36
- * @Injectable()
37
35
  * export class GetRoleQueryRepository extends QueryRepository<GetRoleQuery, Role | null> {
38
36
  * constructor(
39
- * @Inject(CACHE_TOKEN) cache: ICache<RoleSnapshot>,
40
- * @Inject(MIKRO_ORM_CLIENT) private readonly store: MikroOrmStore,
37
+ * cache: ICache<RoleSnapshot>,
38
+ * private readonly store: MikroOrmStore,
41
39
  * ) {
42
40
  * super(cache, { hydrateFn: (cached) => Role.fromJSON(cached as RoleSnapshot) });
43
41
  * }
@@ -1 +1 @@
1
- {"version":3,"file":"query-repository.abstract.js","sourceRoot":"","sources":["../../persistence/query-repository.abstract.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAqBtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,OAAgB,eAAe;IAId,KAAK;IACL,SAAS;IAF9B,YACqB,KAAsB,EACtB,SAA6C;qBAD7C,KAAK;yBACL,SAAS;IAC3B,CAAC;CAGL"}
1
+ {"version":3,"file":"query-repository.abstract.js","sourceRoot":"","sources":["../../persistence/query-repository.abstract.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAqBtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,OAAgB,eAAe;IAId,KAAK;IACL,SAAS;IAF9B,YACqB,KAAsB,EACtB,SAA6C;qBAD7C,KAAK;yBACL,SAAS;IAC3B,CAAC;CAGL"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cqrs-ddd/core",
3
- "version": "0.4.2",
3
+ "version": "0.5.1",
4
4
  "description": "Framework- and ORM-neutral DDD building blocks for TypeScript: aggregates and domain events, CQRS base classes and repository ports, and a revision-fenced repository cache, as separate entry points.",
5
5
  "author": "Aristotelis",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -10,12 +10,12 @@
10
10
  },
11
11
  "repository": {
12
12
  "type": "git",
13
- "url": "git+https://github.com/aristoteliss/nestjs-pipeline.git",
14
- "directory": "packages/ddd-core"
13
+ "url": "git+https://github.com/aristoteliss/ddd-cqrs.git",
14
+ "directory": "packages/core"
15
15
  },
16
- "homepage": "https://aristoteliss.github.io/nestjs-pipeline/packages/cqrs-ddd/core/",
16
+ "homepage": "https://aristoteliss.github.io/ddd-cqrs/packages/core/",
17
17
  "bugs": {
18
- "url": "https://github.com/aristoteliss/nestjs-pipeline/issues"
18
+ "url": "https://github.com/aristoteliss/ddd-cqrs/issues"
19
19
  },
20
20
  "keywords": [
21
21
  "ddd",
@@ -61,13 +61,13 @@
61
61
  "access": "public"
62
62
  },
63
63
  "dependencies": {
64
- "@cqrs-ddd/safe-stringify": "^0.4.2",
65
- "@cqrs-ddd/uuidv7": "^0.4.2"
64
+ "@cqrs-ddd/safe-stringify": "^0.5.1",
65
+ "@cqrs-ddd/uuidv7": "^0.5.1"
66
66
  },
67
67
  "devDependencies": {
68
- "@vitest/coverage-v8": "^5.0.2",
68
+ "@vitest/coverage-v8": "^5.0.5",
69
69
  "typescript": "^7.0.2",
70
- "vitest": "^5.0.2"
70
+ "vitest": "^5.0.5"
71
71
  },
72
72
  "scripts": {
73
73
  "build": "tsc -p tsconfig.build.json",