@bett3r-dev/pv3-types 1.0.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/CHANGELOG.md +305 -0
  2. package/build/adminPlugin.d.ts +24 -0
  3. package/build/adminPlugin.d.ts.map +1 -0
  4. package/build/{eventsourcing/utils.js → adminPlugin.js} +1 -1
  5. package/build/adminPlugin.js.map +1 -0
  6. package/build/aggregateSchema.d.ts +94 -0
  7. package/build/aggregateSchema.d.ts.map +1 -0
  8. package/build/aggregateSchema.js +287 -0
  9. package/build/aggregateSchema.js.map +1 -0
  10. package/build/authentication.d.ts +179 -78
  11. package/build/authentication.d.ts.map +1 -1
  12. package/build/authentication.js +62 -19
  13. package/build/authentication.js.map +1 -1
  14. package/build/cache.d.ts +50 -4
  15. package/build/cache.d.ts.map +1 -1
  16. package/build/clusterAdministration.d.ts +712 -225
  17. package/build/clusterAdministration.d.ts.map +1 -1
  18. package/build/clusterAdministration.js +175 -52
  19. package/build/clusterAdministration.js.map +1 -1
  20. package/build/configuration.d.ts +26 -5
  21. package/build/configuration.d.ts.map +1 -1
  22. package/build/database.d.ts +240 -56
  23. package/build/database.d.ts.map +1 -1
  24. package/build/database.js +102 -20
  25. package/build/database.js.map +1 -1
  26. package/build/endpoints.d.ts +141 -41
  27. package/build/endpoints.d.ts.map +1 -1
  28. package/build/endpoints.js +50 -26
  29. package/build/endpoints.js.map +1 -1
  30. package/build/errors.d.ts +166 -0
  31. package/build/errors.d.ts.map +1 -0
  32. package/build/errors.js +276 -0
  33. package/build/errors.js.map +1 -0
  34. package/build/evenstore.d.ts +47 -7
  35. package/build/evenstore.d.ts.map +1 -1
  36. package/build/eventsourcing/aggregateBuilder.d.ts +17 -8
  37. package/build/eventsourcing/aggregateBuilder.d.ts.map +1 -1
  38. package/build/eventsourcing/commandBuilder.d.ts +20 -13
  39. package/build/eventsourcing/commandBuilder.d.ts.map +1 -1
  40. package/build/eventsourcing/commandHandlers.d.ts +155 -33
  41. package/build/eventsourcing/commandHandlers.d.ts.map +1 -1
  42. package/build/eventsourcing/commandHandlers.js +62 -14
  43. package/build/eventsourcing/commandHandlers.js.map +1 -1
  44. package/build/eventsourcing/eventHandlers.d.ts +173 -44
  45. package/build/eventsourcing/eventHandlers.d.ts.map +1 -1
  46. package/build/eventsourcing/eventHandlers.js +29 -21
  47. package/build/eventsourcing/eventHandlers.js.map +1 -1
  48. package/build/eventsourcing/eventHandlersBuilder.d.ts +18 -12
  49. package/build/eventsourcing/eventHandlersBuilder.d.ts.map +1 -1
  50. package/build/eventsourcing/eventHandlersBuilder.js.map +1 -1
  51. package/build/eventsourcing/eventsourcing.types.d.ts +322 -0
  52. package/build/eventsourcing/eventsourcing.types.d.ts.map +1 -0
  53. package/build/eventsourcing/eventsourcing.types.js +26 -0
  54. package/build/eventsourcing/eventsourcing.types.js.map +1 -0
  55. package/build/eventsourcing/externalSystemBuilder.d.ts +8 -7
  56. package/build/eventsourcing/externalSystemBuilder.d.ts.map +1 -1
  57. package/build/eventsourcing/index.d.ts +2 -378
  58. package/build/eventsourcing/index.d.ts.map +1 -1
  59. package/build/eventsourcing/index.js +2 -23
  60. package/build/eventsourcing/index.js.map +1 -1
  61. package/build/eventsourcing/invariants.d.ts +34 -10
  62. package/build/eventsourcing/invariants.d.ts.map +1 -1
  63. package/build/eventsourcing/shapeChangeForSubscriber.d.ts +33 -0
  64. package/build/eventsourcing/shapeChangeForSubscriber.d.ts.map +1 -0
  65. package/build/eventsourcing/shapeChangeForSubscriber.js +47 -0
  66. package/build/eventsourcing/shapeChangeForSubscriber.js.map +1 -0
  67. package/build/index.d.ts +6 -1
  68. package/build/index.d.ts.map +1 -1
  69. package/build/index.js +6 -1
  70. package/build/index.js.map +1 -1
  71. package/build/infrastructure.d.ts +9 -1
  72. package/build/infrastructure.d.ts.map +1 -1
  73. package/build/infrastructure.js +33 -1
  74. package/build/infrastructure.js.map +1 -1
  75. package/build/livenessWatchdog.d.ts +28 -0
  76. package/build/livenessWatchdog.d.ts.map +1 -0
  77. package/build/livenessWatchdog.js +43 -0
  78. package/build/livenessWatchdog.js.map +1 -0
  79. package/build/logger.d.ts +8 -9
  80. package/build/logger.d.ts.map +1 -1
  81. package/build/logger.js +18 -6
  82. package/build/logger.js.map +1 -1
  83. package/build/outboxManager.d.ts +858 -14
  84. package/build/outboxManager.d.ts.map +1 -1
  85. package/build/outboxManager.js +173 -15
  86. package/build/outboxManager.js.map +1 -1
  87. package/build/permissions.d.ts +47 -0
  88. package/build/permissions.d.ts.map +1 -0
  89. package/build/permissions.js +3 -0
  90. package/build/permissions.js.map +1 -0
  91. package/build/ports.d.ts +10 -10
  92. package/build/ports.d.ts.map +1 -1
  93. package/build/routesAuth.d.ts +17 -25
  94. package/build/routesAuth.d.ts.map +1 -1
  95. package/build/routesAuth.js +4 -14
  96. package/build/routesAuth.js.map +1 -1
  97. package/build/typedEventEmitter.d.ts +7 -13
  98. package/build/typedEventEmitter.d.ts.map +1 -1
  99. package/build/typedEventEmitter.js +2 -2
  100. package/build/typedEventEmitter.js.map +1 -1
  101. package/build/userSession.d.ts +8 -0
  102. package/build/userSession.d.ts.map +1 -0
  103. package/build/userSession.js +3 -0
  104. package/build/userSession.js.map +1 -0
  105. package/package.json +22 -7
  106. package/build/eventsourcing/utils.d.ts +0 -4
  107. package/build/eventsourcing/utils.d.ts.map +0 -1
  108. package/build/eventsourcing/utils.js.map +0 -1
  109. package/build/validation.d.ts +0 -64
  110. package/build/validation.d.ts.map +0 -1
  111. package/build/validation.js +0 -57
  112. package/build/validation.js.map +0 -1
  113. package/src/authentication.ts +0 -273
  114. package/src/cache.ts +0 -109
  115. package/src/clusterAdministration.ts +0 -216
  116. package/src/configuration.ts +0 -71
  117. package/src/database.ts +0 -157
  118. package/src/endpoints.ts +0 -198
  119. package/src/evenstore.ts +0 -27
  120. package/src/eventsourcing/aggregateBuilder.ts +0 -11
  121. package/src/eventsourcing/commandBuilder.ts +0 -64
  122. package/src/eventsourcing/commandHandlers.ts +0 -137
  123. package/src/eventsourcing/eventHandlers.ts +0 -118
  124. package/src/eventsourcing/eventHandlersBuilder.ts +0 -42
  125. package/src/eventsourcing/externalSystemBuilder.ts +0 -20
  126. package/src/eventsourcing/index.ts +0 -111
  127. package/src/eventsourcing/invariants.ts +0 -27
  128. package/src/eventsourcing/utils.ts +0 -4
  129. package/src/index.ts +0 -15
  130. package/src/infrastructure.ts +0 -41
  131. package/src/logger.ts +0 -45
  132. package/src/outboxManager.ts +0 -36
  133. package/src/ports.ts +0 -42
  134. package/src/routesAuth.ts +0 -58
  135. package/src/typedEventEmitter.ts +0 -73
  136. package/src/validation.ts +0 -89
  137. package/tsconfig.json +0 -15
@@ -1,44 +1,68 @@
1
1
  import { ObjectSchema } from '@bett3r-dev/jsonschema-definer';
2
- import { AppErrorInstance } from '../validation';
2
+ import { Artifact } from '.';
3
3
  import { Collection, CollectionQueryParams, DatabaseChange, DatabasePort, Document } from '../database';
4
4
  import { EndpointActionParams, RequestObject, ResponseObject } from '../endpoints';
5
5
  import { CommittedEvent, EventFactory, GetMessageType } from '../eventsourcing';
6
6
  import { LoggerType } from '../logger';
7
- import { System } from './commandHandlers';
7
+ import { PermissionString } from '../permissions';
8
8
  import { TypedEventEmitter } from '../typedEventEmitter';
9
- export declare const ReadModelDefaultParamsSchema: ObjectSchema<{
9
+ import { AppError } from '../errors';
10
+ import { System } from './commandHandlers';
11
+ export declare const ReadmodelDefaultParamsSchema: ObjectSchema<{
10
12
  id?: string | undefined;
11
13
  }, true>;
12
- export declare const ReadModelDefaultQuerySchema: ObjectSchema<{
13
- limit?: string | undefined;
14
- after?: string | undefined;
15
- sort?: string | string[] | undefined;
16
- filter?: string | string[] | undefined;
14
+ export declare const ReadmodelDefaultQuerySchema: ObjectSchema<{
15
+ limit?: number | undefined;
16
+ after?: string | number | undefined;
17
+ byDistinctField?: string | undefined;
18
+ offset?: number | undefined;
19
+ sort?: {
20
+ field: string;
21
+ direction: "asc" | "desc";
22
+ }[] | undefined;
17
23
  select?: string[] | undefined;
18
- access_token?: string | undefined;
19
- apikey?: string | undefined;
24
+ filter?: Partial<import("../database").CollectionFilterOR<any> & import("../database").CollectionFilterAND<any> & import("../database").CollectionFilterInstance<any>>[] | undefined;
25
+ aggregate?: {
26
+ groupBy: string[];
27
+ aggregates: {
28
+ fn: "avg" | "count" | "max" | "min" | "sum";
29
+ field?: string | undefined;
30
+ as: string;
31
+ }[];
32
+ filter?: Partial<import("../database").CollectionFilterOR<any> & import("../database").CollectionFilterAND<any> & import("../database").CollectionFilterInstance<any>>[] | undefined;
33
+ maxGroups?: number | undefined;
34
+ maxGroupSize?: number | undefined;
35
+ } | undefined;
20
36
  }, true>;
21
- export type ReadModelDefaultQuery = typeof ReadModelDefaultQuerySchema.type;
22
- export type ReadModelDefaultParams = typeof ReadModelDefaultParamsSchema.type;
23
- export declare const defaultParamsSchemas: {
24
- params: ObjectSchema<{
25
- id?: string | undefined;
26
- }, true>;
27
- };
37
+ export type ReadmodelDefaultQuery = typeof ReadmodelDefaultQuerySchema.type;
38
+ export type ReadmodelDefaultParams = typeof ReadmodelDefaultParamsSchema.type;
28
39
  export declare const defaultQuerySchemas: {
29
40
  query: ObjectSchema<{
30
- limit?: string | undefined;
31
- after?: string | undefined;
32
- sort?: string | string[] | undefined;
33
- filter?: string | string[] | undefined;
41
+ limit?: number | undefined;
42
+ after?: string | number | undefined;
43
+ byDistinctField?: string | undefined;
44
+ offset?: number | undefined;
45
+ sort?: {
46
+ field: string;
47
+ direction: "asc" | "desc";
48
+ }[] | undefined;
34
49
  select?: string[] | undefined;
35
- access_token?: string | undefined;
36
- apikey?: string | undefined;
50
+ filter?: Partial<import("../database").CollectionFilterOR<any> & import("../database").CollectionFilterAND<any> & import("../database").CollectionFilterInstance<any>>[] | undefined;
51
+ aggregate?: {
52
+ groupBy: string[];
53
+ aggregates: {
54
+ fn: "avg" | "count" | "max" | "min" | "sum";
55
+ field?: string | undefined;
56
+ as: string;
57
+ }[];
58
+ filter?: Partial<import("../database").CollectionFilterOR<any> & import("../database").CollectionFilterAND<any> & import("../database").CollectionFilterInstance<any>>[] | undefined;
59
+ maxGroups?: number | undefined;
60
+ maxGroupSize?: number | undefined;
61
+ } | undefined;
37
62
  }, true>;
38
63
  };
39
- export type EventHandler<EVENTS extends Record<string, EventFactory> = any> = {
40
- name: string;
41
- events: EVENTS;
64
+ export type EventHandler<EVENTS extends Record<string, EventFactory> = any> = Artifact & {
65
+ events?: EVENTS;
42
66
  concurrency?: number;
43
67
  errorHandlers?: {
44
68
  [Name in keyof EVENTS]?: HandlerExecutionErrorType<CommittedEvent<GetMessageType<EVENTS[Name]>>>;
@@ -49,54 +73,159 @@ export type PolicyResponse = {
49
73
  id?: string;
50
74
  data?: any;
51
75
  };
52
- export type HandlerExecutionErrorType<EVENT extends CommittedEvent = CommittedEvent> = (error: AppErrorInstance, event: EVENT) => Promise<unknown>;
76
+ export type HandlerExecutionErrorType<EVENT extends CommittedEvent = CommittedEvent> = (error: AppError, event: EVENT) => Promise<unknown>;
53
77
  export type Policy<CommandHandler extends System = any, Events extends Record<string, EventFactory> = any> = EventHandler<Events> & {
54
78
  commandHandler?: CommandHandler;
79
+ linkedTo?: string[];
80
+ isStandalone?: boolean;
55
81
  eventHandlers: {
56
82
  [Name in keyof Events]: (event: CommittedEvent<GetMessageType<Events[Name]>>) => Promise<PolicyResponse | void>;
57
83
  };
58
84
  };
59
85
  export type QueryParamsTranslator<Model extends Document, Params, Query> = (schema: ObjectSchema<Model>, params: Pick<EndpointActionParams<any, Query, Params>, 'params' | 'query'>) => CollectionQueryParams<Model>;
60
- export type QueryHandler<MODEL extends Document = any, PARAMS = any, QUERY = any> = (repository: Collection<MODEL>, params: CollectionQueryParams<MODEL> & {
61
- params: EndpointActionParams<any, QUERY, PARAMS>;
62
- }) => Promise<MODEL | MODEL[]>;
86
+ export type QueryHandler<USER = any, MODEL extends Document = any, PARAMS = any, QUERY = any, RETURN_TYPE extends Document = any> = (repository: Collection<MODEL>, params: CollectionQueryParams<MODEL> & {
87
+ params: EndpointActionParams<any, QUERY, PARAMS, USER>;
88
+ }, query: Query, readmodel: Readmodel, readmodelName: string) => Promise<RETURN_TYPE | null | undefined>;
63
89
  export type QueryTransformer<MODEL extends Document = any, PARAMS = any, QUERY = any> = (projectionParams: CollectionQueryParams<MODEL>, params: EndpointActionParams<any, QUERY, PARAMS>) => Promise<CollectionQueryParams<MODEL>> | CollectionQueryParams<MODEL>;
64
- export type ReadModelSubscriptionCloseEmitterEvents = {
65
- close: string;
90
+ /**
91
+ * Reshapes a readmodel query's response for the caller being served.
92
+ *
93
+ * CONTRACT — a formatter MUST be a PURE, SYNCHRONOUS function of ( data, caller ).
94
+ *
95
+ * It is applied on two paths with one signature: once per request on the query path,
96
+ * and once per matching SUBSCRIBER on the realtime delta path. Because it runs per
97
+ * subscriber rather than per change, side effects or non-determinism change
98
+ * behaviour with subscriber count.
99
+ *
100
+ * Async is not supported: the query path does not await it and the realtime fan-out
101
+ * sends synchronously. Do heavy or asynchronous work in a `transformer`, which runs
102
+ * once per request and receives the full request params.
103
+ *
104
+ * `caller` on the query path is the live request. On the delta path it is the
105
+ * request that OPENED the subscription, captured once and never refreshed.
106
+ *
107
+ * ⚠ `caller` CAN BE `undefined` ON THE DELTA PATH. A subscription's `caller` is an
108
+ * optional field on the subscription record (`startSubscription`/`createSubscription`
109
+ * can be called without one). The delta fan-out ALWAYS routes through this formatter
110
+ * regardless — it never skips shaping just because a caller is unknown — so a
111
+ * formatter that makes authorization-sensitive decisions (e.g. redacting a field)
112
+ * MUST treat an undefined `caller` (or an undefined `caller.context.user`) as the
113
+ * least-privileged case and shape accordingly. Do not assume `caller` is always
114
+ * present; do not let its absence mean "return the data unshaped".
115
+ *
116
+ * ⚠ `data` DIFFERS IN SHAPE BETWEEN THE TWO PATHS. On the query path it is whatever
117
+ * the query handler returned — an ARRAY for a default list query, a single document
118
+ * for a by-id or synthetic single-document query. On the delta path it is ALWAYS a
119
+ * SINGLE document (one `insert`/`update`/`delete` row; `shapeChangeForSubscriber`
120
+ * applies the formatter to `data` and `previous` separately). One signature serves
121
+ * both, so a formatter that assumes one shape is silently wrong on the other:
122
+ * `.map()` on a delta throws, and reading a field off an array yields `undefined`.
123
+ * Branch on `Array.isArray( data )` unless the query provably returns one shape.
124
+ */
125
+ export type QueryResponseFormatter<MODEL extends Document = any> = (data: MODEL | MODEL[], caller: EndpointActionParams | undefined) => MODEL | MODEL[];
126
+ export type ReadmodelSubscriptionCloseEmitterEvents = {
127
+ close: [id: string];
128
+ };
129
+ export type ReadmodelSubscriptionMessage<T = any> = {
130
+ type?: string;
131
+ ref?: string;
132
+ data: T;
66
133
  };
67
- export type ReadmodelSubscriptionManagerType<Model extends Document = any> = {
134
+ export type ReadmodelSubscriptionManagerType<Model extends Document = any, OUTPUT_TYPE extends Document = any> = {
68
135
  type: string;
69
- startSubscription: (projectionParams: CollectionQueryParams<Model>, req: RequestObject, res: ResponseObject) => string | void;
70
- notifySubscriptions: (logger: LoggerType, collection: string) => <T extends Document>(change: DatabaseChange<T>, subscriptionId?: string) => void;
71
- readModelSubscriptionCloseEmitter: TypedEventEmitter<ReadModelSubscriptionCloseEmitterEvents>;
72
- send: (logger: LoggerType, id: string, change: DatabaseChange, collection: string, res: ResponseObject, data: string) => void;
136
+ accountIdField?: string;
137
+ startSubscription: (projectionParams: CollectionQueryParams<Model>, req: RequestObject, res: ResponseObject, user?: any, readmodelName?: string, caller?: EndpointActionParams) => string | void;
138
+ notifySubscriptions: (logger: LoggerType, collection: string, readmodelName: string, responseFormatter?: QueryResponseFormatter) => (change: DatabaseChange<OUTPUT_TYPE>) => void;
139
+ readModelSubscriptionCloseEmitter: TypedEventEmitter<ReadmodelSubscriptionCloseEmitterEvents>;
140
+ send: (id: string, message: ReadmodelSubscriptionMessage<OUTPUT_TYPE>) => void;
141
+ closeSubscription: (id: string) => void;
73
142
  };
74
- export type Query<MODEL extends Document = any, PARAMS extends Record<string, any> = any, QUERY extends Record<string, any> = any> = {
143
+ export type Query<USER = any, MODEL extends Document = any, PARAMS extends Record<string, any> = any, QUERY extends Record<string, any> = any, RETURN_TYPE extends Document = any, SUBSCRIPTION_OUTPUT_TYPE extends Document = any> = {
75
144
  route?: string;
76
145
  protocol?: 'http';
77
146
  description?: string;
147
+ /** Required permissions for this query. If omitted, defaults to superAdmin-only access (secure by default). */
148
+ permissions?: PermissionString[];
149
+ /**
150
+ * HTTP exposure of this query's route, surfaced as `x-visibility` on the
151
+ * generated OpenAPI operation. Defaults to `'private'`
152
+ * ({@link registerEndpoint}), i.e. the caller must be authenticated.
153
+ *
154
+ * This is the query-side counterpart of `CommandBuilder.withVisibility`, and
155
+ * it exists because there was NO way to say it here. A readmodel query whose
156
+ * authority lives in its own `transformers` — a signed link token, a capability
157
+ * the handler checks itself — could not tell the gateway so, and the only
158
+ * lever anyone had was to drop the artifact's `subdomain`. That does NOT mean
159
+ * "public": a subdomain-less route is ADMIN-ONLY at the gateway, so the route
160
+ * 403s `Admin role required` for the very callers it was written for, and the
161
+ * handler's own check never runs. Set `visibility: 'public'` when the handler
162
+ * (or a transformer) is the authority.
163
+ */
164
+ visibility?: 'public' | 'private' | 'internal';
78
165
  schemas?: {
79
166
  query?: ObjectSchema<QUERY>;
80
167
  params?: ObjectSchema<PARAMS>;
168
+ response?: ObjectSchema<RETURN_TYPE>;
169
+ responseQuerySchemaRef?: string;
81
170
  };
171
+ /**
172
+ * Translates the endpoint query params into database query params.
173
+ * @param schema - The schema of the model.
174
+ * @param params - The params.
175
+ * @returns The translated params.
176
+ */
82
177
  translator?: QueryParamsTranslator<MODEL, PARAMS, QUERY>;
83
- subscriptions?: ReadmodelSubscriptionManagerType[];
178
+ subscriptions?: (ReadmodelSubscriptionManagerType<MODEL, MODEL> | {
179
+ notificationSchema?: ObjectSchema<SUBSCRIPTION_OUTPUT_TYPE>;
180
+ /**
181
+ * Override which collection the subscription watches for changes. Defaults
182
+ * to the readmodel's primary collection. Useful when a readmodel owns
183
+ * multiple collections (one projection feeds several query shapes) and
184
+ * each query needs its subscription wired to a different collection.
185
+ */
186
+ collection?: string;
187
+ manager: ReadmodelSubscriptionManagerType<MODEL, SUBSCRIPTION_OUTPUT_TYPE>;
188
+ })[];
189
+ /**
190
+ * Transforms the query params before the query is executed. Here Row Level Security can be applied.
191
+ * @param projectionParams - The projection params.
192
+ * @param params - The params.
193
+ * @returns The transformed projection params.
194
+ */
84
195
  transformers?: QueryTransformer<MODEL, PARAMS, QUERY>[];
85
- queryHandler?: QueryHandler<MODEL, PARAMS, QUERY>;
196
+ responseFormatter?: QueryResponseFormatter<MODEL>;
197
+ queryHandler?: QueryHandler<USER, MODEL, PARAMS, QUERY, RETURN_TYPE>;
86
198
  };
87
199
  export type EventProjectors<EVENTS extends Record<string, EventFactory> = any> = {
88
200
  [Name in keyof EVENTS]: (event: CommittedEvent<GetMessageType<EVENTS[Name]>>) => Promise<any>;
89
201
  };
90
- export type ReadModel<Model extends Document = any, EVENTS extends Record<string, EventFactory> = any> = EventHandler<EVENTS> & {
91
- isReadModel: true;
202
+ export type Readmodel<Model extends Document = any, EVENTS extends Record<string, EventFactory> = any, USER = any> = EventHandler<EVENTS> & {
203
+ isReadmodel: true;
204
+ idProperty: string & keyof Model;
92
205
  schema: ObjectSchema<Model>;
93
- queries: Query<Model>[];
206
+ queries: Query<USER, Model>[];
94
207
  eventProjectors?: EventProjectors<EVENTS>;
95
208
  database?: DatabasePort;
209
+ sessionDatabase?: DatabasePort;
96
210
  collection?: string;
97
211
  };
98
212
  export type ReadmodelChange<Model extends Document> = {
99
- type: 'insert' | 'update' | 'delete';
213
+ type: 'insert';
100
214
  data: Model;
215
+ } | {
216
+ type: 'update';
217
+ data: Model;
218
+ previous: Model;
219
+ } | {
220
+ type: 'delete';
221
+ previous: Model;
222
+ } | {
223
+ type: 'snapshot';
224
+ data: {
225
+ items: Model[];
226
+ count: number;
227
+ };
228
+ } | {
229
+ type: 'signal';
101
230
  };
102
231
  //# sourceMappingURL=eventHandlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"eventHandlers.d.ts","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eventHandlers.d.ts","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlers.ts"],"names":[],"mappings":"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"}
@@ -3,31 +3,39 @@ 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.defaultQuerySchemas = exports.defaultParamsSchemas = exports.ReadModelDefaultQuerySchema = exports.ReadModelDefaultParamsSchema = void 0;
6
+ exports.defaultQuerySchemas = exports.ReadmodelDefaultQuerySchema = exports.ReadmodelDefaultParamsSchema = void 0;
7
7
  const jsonschema_definer_1 = __importDefault(require("@bett3r-dev/jsonschema-definer"));
8
- const SortStringSchema = jsonschema_definer_1.default.string().pattern(/^(\w+),?(asc|desc)?$/);
9
- const FilterStringSchema = jsonschema_definer_1.default
10
- .string()
11
- .pattern(/^([\w\d._]+),(eq|neq|lt|gt|lte|gte|in|nin|contains|notContains|some|every|exists|notExists),(.+?)$/);
12
- exports.ReadModelDefaultParamsSchema = jsonschema_definer_1.default.shape({
8
+ const aggregateSchema_1 = require("../aggregateSchema");
9
+ const database_1 = require("../database");
10
+ exports.ReadmodelDefaultParamsSchema = jsonschema_definer_1.default.shape({
13
11
  id: jsonschema_definer_1.default.string().optional()
14
12
  });
15
- exports.ReadModelDefaultQuerySchema = jsonschema_definer_1.default.shape({
16
- access_token: jsonschema_definer_1.default.string().optional(),
17
- apikey: jsonschema_definer_1.default.string().optional(),
18
- limit: jsonschema_definer_1.default.string().optional(),
19
- after: jsonschema_definer_1.default.string().optional(),
20
- sort: jsonschema_definer_1.default.oneOf(SortStringSchema, jsonschema_definer_1.default.array().items(SortStringSchema)).optional(),
21
- select: jsonschema_definer_1.default.array().items(jsonschema_definer_1.default.string()).optional(),
22
- //TODO: scape , for when the value has commas.
23
- filter: jsonschema_definer_1.default
24
- .oneOf(FilterStringSchema, jsonschema_definer_1.default.array().items(FilterStringSchema))
25
- .optional()
13
+ exports.ReadmodelDefaultQuerySchema = jsonschema_definer_1.default.shape({
14
+ limit: jsonschema_definer_1.default.number().optional(),
15
+ /**
16
+ * The keyset cursor, compiled by the adapters to `<idProperty> > $n`. Its domain is the
17
+ * KEY COLUMN's domain, which is `string | number` (`CollectionQueryParams['after']`) — a
18
+ * readmodel keyed on a uuid/text `id` produces a STRING cursor. Declaring it `S.number()`
19
+ * rejected every page-2 request on such a readmodel at the route, and did so silently:
20
+ * page 1 carries no cursor, so a result set below one page read as complete.
21
+ */
22
+ after: jsonschema_definer_1.default.anyOf(jsonschema_definer_1.default.string(), jsonschema_definer_1.default.number()).optional(),
23
+ byDistinctField: jsonschema_definer_1.default.string().optional(),
24
+ offset: jsonschema_definer_1.default.number().optional(),
25
+ sort: jsonschema_definer_1.default.array().items(database_1.CollectionSortSchema)
26
+ .optional(),
27
+ select: jsonschema_definer_1.default.array().items(jsonschema_definer_1.default.string())
28
+ .optional(),
29
+ filter: jsonschema_definer_1.default.array().items(database_1.CollectionFilterSchema)
30
+ .optional(),
31
+ /**
32
+ * TV1-2342 slice 7 — the aggregation spec, rison-encoded in the query string exactly as
33
+ * `filter`/`sort`/`select` are. Declared here as the DECODED shape (as `filter` is), because the
34
+ * decoding happens in `decodeObjectQueryParams`/`formatAggregate` upstream of this schema's use.
35
+ */
36
+ aggregate: aggregateSchema_1.AggregateSpecSchema.optional()
26
37
  });
27
- exports.defaultParamsSchemas = {
28
- params: exports.ReadModelDefaultParamsSchema
29
- };
30
38
  exports.defaultQuerySchemas = {
31
- query: exports.ReadModelDefaultQuerySchema
39
+ query: exports.ReadmodelDefaultQuerySchema
32
40
  };
33
41
  //# sourceMappingURL=eventHandlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"eventHandlers.js","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlers.ts"],"names":[],"mappings":";;;;;;AAAA,wFAAiE;AASjE,MAAM,gBAAgB,GAAG,4BAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAE,sBAAsB,CAAE,CAAC;AACtE,MAAM,kBAAkB,GAAG,4BAAC;KACzB,MAAM,EAAE;KACR,OAAO,CAAE,oGAAoG,CAAE,CAAC;AAEtG,QAAA,4BAA4B,GAAG,4BAAC,CAAC,KAAK,CAAC;IAClD,EAAE,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1B,CAAC,CAAC;AAEU,QAAA,2BAA2B,GAAG,4BAAC,CAAC,KAAK,CAAC;IACjD,YAAY,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,MAAM,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,KAAK,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,IAAI,EAAE,4BAAC,CAAC,KAAK,CAAE,gBAAgB,EAAE,4BAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAE,gBAAgB,CAAE,CAAC,CAAC,QAAQ,EAAE;IAChF,MAAM,EAAE,4BAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC/C,8CAA8C;IAC9C,MAAM,EAAE,4BAAC;SACN,KAAK,CAAE,kBAAkB,EAAE,4BAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAE,kBAAkB,CAAE,CAAC;SACjE,QAAQ,EAAE;CACd,CAAC,CAAC;AAOU,QAAA,oBAAoB,GAAG;IAClC,MAAM,EAAE,oCAA4B;CACrC,CAAC;AAEW,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,mCAA2B;CACnC,CAAC"}
1
+ {"version":3,"file":"eventHandlers.js","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlers.ts"],"names":[],"mappings":";;;;;;AAAA,wFAAiE;AAEjE,wDAAyD;AACzD,0CAAsJ;AASzI,QAAA,4BAA4B,GAAG,4BAAC,CAAC,KAAK,CAAC;IAClD,EAAE,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1B,CAAC,CAAC;AAEU,QAAA,2BAA2B,GAAG,4BAAC,CAAC,KAAK,CAAC;IACjD,KAAK,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B;;;;;;OAMG;IACH,KAAK,EAAE,4BAAC,CAAC,KAAK,CAAE,4BAAC,CAAC,MAAM,EAAE,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAClD,eAAe,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,MAAM,EAAE,4BAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,4BAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAE,+BAAoB,CAAE;SAC1C,QAAQ,EAAE;IACb,MAAM,EAAE,4BAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAE,4BAAC,CAAC,MAAM,EAAE,CAAC;SACjC,QAAQ,EAAE;IACb,MAAM,EAAE,4BAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAE,iCAAsB,CAAE;SAC9C,QAAQ,EAAE;IACb;;;;OAIG;IACH,SAAS,EAAE,qCAAmB,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC;AAMU,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,QAAA,2BAA2B;CACnC,CAAC"}
@@ -1,36 +1,42 @@
1
- /// <reference types="ramda/node_modules/ts-toolbelt" />
2
1
  import { ObjectSchema } from '@bett3r-dev/jsonschema-definer';
3
2
  import { A, O } from 'ts-toolbelt';
4
- import { Builder, CommittedEvent, EventFactory, EventHandler, EventMetadata, EventProjectors, GetBuilderType, GetMessageType, Message, Policy, PolicyResponse, Query, ReadModel, System } from '.';
5
- import { AppErrorInstance, DatabasePort, Document } from '..';
3
+ import { Builder, CommittedEvent, EventFactory, EventHandler, EventMetadataBaseType, EventProjectors, GetBuilderType, GetMessageType, Message, Policy, PolicyResponse, Query, Readmodel, System } from '.';
4
+ import { AppError, DatabasePort, Document } from '..';
6
5
  export type GetCommandType<SYSTEM extends System | EventHandler, Name extends A.Key> = SYSTEM extends System ? O.Path<SYSTEM, ['commands', Name]> extends (Builder<infer T extends Object>) ? O.Path<T, ['schema', 'type']> : O.Path<SYSTEM, ['commands', Name, 'schema', 'type']> : O.Path<SYSTEM, ['commandHandler', 'commands', Name]> extends (Builder<infer T extends Object>) ? O.Path<T, ['schema', 'type']> : O.Path<SYSTEM, ['commandHandler', 'commands', Name, 'schema', 'type']>;
7
6
  export type CommandInstance<Payload = any> = Message<Payload> & {
8
7
  name: string;
9
8
  id?: string;
10
- metadata?: EventMetadata;
9
+ metadata?: EventMetadataBaseType;
11
10
  };
12
- export declare const createCommand: <Handler extends System | EventHandler>(handler: Handler) => <COMMAND extends keyof (Handler extends System ? Handler["commands"] : import("Object/Path")._Path<GetBuilderType<Handler>, ["commandHandler", "commands"], 1>)>(command: COMMAND, id?: string, data?: GetCommandType<Handler, COMMAND> | undefined, metadata?: EventMetadata) => CommandInstance;
13
- export type EventHandlerBuilderType<EVENTS extends Record<string, EventFactory>, T extends Policy | ReadModel> = Builder<EventHandler<EVENTS>> & {
11
+ export declare const createCommand: <Handler extends System | EventHandler>(handler: Handler) => <COMMAND extends keyof (Handler extends System ? Handler['commands'] : O.Path<GetBuilderType<Handler>, ['commandHandler', 'commands']>)>(command: COMMAND, id?: string, data?: GetCommandType<Handler, COMMAND>, metadata?: EventMetadataBaseType) => CommandInstance;
12
+ export type EventHandlerBuilderType<EVENTS extends Record<string, EventFactory>, T extends Policy | Readmodel> = Builder<EventHandler<EVENTS>> & {
14
13
  eventHandler: EventHandler<EVENTS>;
15
14
  withErrorHandlers: (errorHandlers: {
16
- [Name in keyof EVENTS]?: (error: AppErrorInstance, event: CommittedEvent<GetMessageType<EVENTS[Name]>>) => Promise<unknown>;
15
+ [Name in keyof EVENTS]?: (error: AppError, event: CommittedEvent<GetMessageType<EVENTS[Name]>>) => Promise<unknown>;
17
16
  }) => {
18
- build: () => T extends Policy ? Policy<T['commandHandler'], EVENTS> : T extends ReadModel ? ReadModel<T['schema'] extends ObjectSchema<infer MODEL extends Document> ? MODEL : Document, EVENTS> : any;
17
+ build: () => T extends Policy ? Policy<T['commandHandler'], EVENTS> : T extends Readmodel ? Readmodel<T['schema'] extends ObjectSchema<infer MODEL extends Document> ? MODEL : Document, EVENTS> : any;
19
18
  };
20
19
  };
20
+ export type PolicyBuilderFunction = <EVENTS extends Record<string, EventFactory>, CommandHandler extends System>(events: EVENTS, commandHandler?: CommandHandler, policy?: Policy) => PolicyBuilderType<CommandHandler, EVENTS>;
21
21
  export type PolicyBuilderType<CommandHandler extends System, EVENTS extends Record<string, EventFactory>> = Builder<Policy<CommandHandler, EVENTS>> & EventHandlerBuilderType<EVENTS, Policy<CommandHandler, EVENTS>> & {
22
+ withSubdomain: (subdomain: string) => PolicyBuilderType<CommandHandler, EVENTS>;
23
+ linkedTo: (...aggregateNames: string[]) => PolicyBuilderType<CommandHandler, EVENTS>;
24
+ standalone: () => PolicyBuilderType<CommandHandler, EVENTS>;
22
25
  withEventHandlers: (handlers: (params: {
23
26
  createCommand: ReturnType<typeof createCommand<CommandHandler>>;
24
27
  }) => {
25
28
  [Name in keyof EVENTS]: (event: CommittedEvent<GetMessageType<EVENTS[Name]>>) => Promise<PolicyResponse | void>;
26
29
  }) => Pick<PolicyBuilderType<CommandHandler, EVENTS>, 'build' | 'withErrorHandlers'>;
27
30
  };
28
- export type ReadmodelBuilderType<Model extends Document, EVENTS extends Record<string, EventFactory>> = Builder<ReadModel<Model, EVENTS>> & EventHandlerBuilderType<EVENTS, ReadModel<Model, EVENTS>> & {
29
- withDatabase: (database: DatabasePort, collection?: string) => ReadmodelBuilderType<Model, EVENTS>;
31
+ export type ReadmodelBuilderFunction<USER = any> = <Model extends Document = any, EVENTS extends Record<string, EventFactory> = any>(schema: ObjectSchema<Model>, events?: EVENTS, readmodel?: Readmodel<Model, EVENTS, USER>) => ReadmodelBuilderType<USER, Model, EVENTS>;
32
+ export type ReadmodelBuilderType<USER = any, Model extends Document = any, EVENTS extends Record<string, EventFactory> = any> = Builder<Readmodel<Model, EVENTS, USER>> & EventHandlerBuilderType<EVENTS, Readmodel<Model, EVENTS, USER>> & {
33
+ withSubdomain: (subdomain: string) => ReadmodelBuilderType<USER, Model, EVENTS>;
34
+ withIdProperty: (idProperty: string & keyof Model) => ReadmodelBuilderType<USER, Model, EVENTS>;
35
+ withDatabase: (database: DatabasePort, collection?: string, sessionDatabase?: DatabasePort) => ReadmodelBuilderType<USER, Model, EVENTS>;
30
36
  withProjector: (eventProjectors?: (params: {
31
37
  database: DatabasePort;
32
38
  collection: string;
33
- }) => EventProjectors<EVENTS>) => ReadmodelBuilderType<Model, EVENTS>;
34
- withQuery: <PARAMS extends Record<string, any>, QUERY extends Record<string, any>>(query?: Query<Model, PARAMS, QUERY>) => ReadmodelBuilderType<Model, EVENTS>;
39
+ }) => EventProjectors<EVENTS>) => ReadmodelBuilderType<USER, Model, EVENTS>;
40
+ withQuery: <PARAMS extends Record<string, any>, QUERY extends Record<string, any>>(query?: Query<USER, Model, PARAMS, QUERY>) => ReadmodelBuilderType<USER, Model, EVENTS>;
35
41
  };
36
42
  //# sourceMappingURL=eventHandlersBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"eventHandlersBuilder.d.ts","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlersBuilder.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AACnM,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAE9D,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,MAAM,GAAG,YAAY,EAAE,IAAI,SAAS,CAAC,CAAC,GAAG,IAAI,MAAM,SAAS,MAAM,GACxG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,SAAS,CAAE,OAAO,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,GACrK,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC,SAAS,CAAE,OAAO,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;AAE3M,MAAM,MAAM,eAAe,CAAC,OAAO,GAAC,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,aAAa,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,aAAa,uPAAmO,MAAM,kEAAsD,aAAa,KAAI,eAOzU,CAAC;AAEF,MAAM,MAAM,uBAAuB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,SAAS,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG;IAC/I,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,iBAAiB,EAAE,CAAE,aAAa,EAAE;SACjC,IAAI,IAAI,MAAM,MAAM,CAAC,CAAC,EAAE,CAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAM,OAAO,CAAC,OAAO,CAAC;KAC9H,KAAK;QAAE,KAAK,EAAE,MAAM,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,YAAY,CAAC,MAAM,KAAK,SAAS,QAAQ,CAAC,GAAG,KAAK,GAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,GAAG,CAAA;KAAC,CAAC;CAChN,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,cAAc,SAAS,MAAM,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,GAAG;IACtN,iBAAiB,EAAE,CAAE,QAAQ,EAAE,CAAE,MAAM,EAAE;QAAC,aAAa,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,cAAc,CAAC,CAAC,CAAA;KAAC,KAAK;SAC5G,IAAI,IAAI,MAAM,MAAM,GAAG,CAAE,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAM,OAAO,CAAC,cAAc,GAAC,IAAI,CAAC;KAChH,KAAK,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC,CAAC;CACtF,CAAA;AAED,MAAM,MAAM,oBAAoB,CAAC,KAAK,SAAS,QAAQ,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG;IACtM,YAAY,EAAE,CAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,EAAC,MAAM,KAAM,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACnG,aAAa,EAAE,CAAE,eAAe,CAAC,EAAE,CAAE,MAAM,EAAE;QAAC,QAAQ,EAAE,YAAY,CAAC;QAAC,UAAU,EAAC,MAAM,CAAA;KAAC,KAAK,eAAe,CAAC,MAAM,CAAC,KAAM,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAC7J,SAAS,EAAE,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAG,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,KAAM,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;CACjK,CAAA"}
1
+ {"version":3,"file":"eventHandlersBuilder.d.ts","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlersBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"eventHandlersBuilder.js","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlersBuilder.ts"],"names":[],"mappings":";;;AAeO,MAAM,aAAa,GAAG,CAA0C,OAAgB,EAAE,EAAE,CAAC,CAA0I,OAAgB,EAAE,EAAW,EAAE,IAAuC,EAAE,QAAwB,EAAoB,EAAE;IAC1V,OAAO;QACL,IAAI,EAAE,OAAiB;QACvB,GAAG,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,GAAG,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1B,GAAG,CAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnC,CAAC;AACJ,CAAC,CAAC;AAPW,QAAA,aAAa,iBAOxB"}
1
+ {"version":3,"file":"eventHandlersBuilder.js","sourceRoot":"","sources":["../../src/eventsourcing/eventHandlersBuilder.ts"],"names":[],"mappings":";;;AAeO,MAAM,aAAa,GAAG,CAA0C,OAAgB,EAAE,EAAE,CAAC,CAA0I,OAAgB,EAAE,EAAW,EAAE,IAAuC,EAAE,QAAgC,EAAoB,EAAE;IAClW,OAAO;QACL,IAAI,EAAE,OAAiB;QACvB,GAAG,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,GAAG,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1B,GAAG,CAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnC,CAAC;AACJ,CAAC,CAAC;AAPW,QAAA,aAAa,GAAb,aAAa,CAOxB"}