@adviser/cement 0.5.12 → 0.5.13

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.
@@ -5,18 +5,52 @@ export interface EventoEnDecoder<REQ, RES> {
5
5
  encode(args: REQ): Promise<Result<unknown>>;
6
6
  decode(data: unknown): Promise<Result<RES>>;
7
7
  }
8
- export interface EventoSend<INREQ, REQ, RES> {
8
+ export interface EventoSendProvider<INREQ, REQ, RES> {
9
9
  start?(trigger: HandleTriggerCtx<INREQ, REQ, RES>): Promise<Result<void>>;
10
10
  send<IS, OS>(trigger: HandleTriggerCtx<INREQ, REQ, RES>, data: IS): Promise<Result<OS>>;
11
11
  done?(trigger: HandleTriggerCtx<INREQ, REQ, RES>): Promise<Result<void>>;
12
12
  }
13
- export interface TriggerCtxBase<INREQ, REQ, RES> {
14
- send: EventoSend<INREQ, REQ, RES>;
13
+ export interface ActionStat {
14
+ startTime: Date;
15
+ doneTime: Date;
16
+ }
17
+ export interface SendStatItem<T> extends ActionStat {
18
+ readonly item: Result<T>;
19
+ }
20
+ export interface SendStat extends ActionStat {
21
+ items: SendStatItem<unknown>[];
22
+ }
23
+ export type RequestStat = ActionStat;
24
+ export interface TriggerStats {
25
+ readonly request: RequestStat;
26
+ readonly encode: ActionStat;
27
+ readonly handlers: {
28
+ readonly handler: EventoHandler;
29
+ readonly total: ActionStat;
30
+ readonly validated: ActionStat;
31
+ readonly handled: ActionStat;
32
+ }[];
33
+ readonly send: SendStat;
34
+ }
35
+ export declare class EventoSend<INREQ, REQ, RES> {
36
+ readonly provider: EventoSendProvider<INREQ, REQ, RES>;
37
+ constructor(provider: EventoSendProvider<INREQ, REQ, RES>);
38
+ start(trigger: HandleTriggerCtx<INREQ, REQ, RES>): Promise<Result<void>>;
39
+ done(trigger: HandleTriggerCtx<INREQ, REQ, RES>): Promise<Result<void>>;
40
+ send<IS, OS>(trigger: HandleTriggerCtx<INREQ, REQ, RES>, data: IS): Promise<Result<SendStatItem<OS>>>;
41
+ }
42
+ export interface TriggerCtxBase<INREQ, RES> {
15
43
  ctx: AppContext;
16
44
  encoder: EventoEnDecoder<INREQ, RES>;
17
45
  }
18
- export type ReadonlyTriggerCtxBase<INREQ, REQ, RES> = Readonly<TriggerCtxBase<INREQ, REQ, RES>>;
19
- export type TriggerCtxBaseParams<INREQ, REQ, RES> = Pick<ReadonlyTriggerCtxBase<INREQ, REQ, RES>, "send"> & Partial<Pick<ReadonlyTriggerCtxBase<INREQ, REQ, RES>, "ctx" | "encoder">>;
46
+ export type ReadonlyTriggerCtxBase<INREQ, REQ, RES> = Readonly<TriggerCtxBase<INREQ, RES>> & {
47
+ readonly send: EventoSend<INREQ, REQ, RES>;
48
+ readonly stats: TriggerStats;
49
+ };
50
+ export type TriggerCtxBaseParams<INREQ, REQ, RES> = Partial<Omit<ReadonlyTriggerCtxBase<INREQ, REQ, RES>, "send">> & Partial<Pick<ReadonlyTriggerCtxBase<INREQ, REQ, RES>, "ctx" | "encoder">> & {
51
+ send: EventoSendProvider<INREQ, REQ, RES>;
52
+ stats?: TriggerStats;
53
+ };
20
54
  export type TriggerCtxParams<INREQ, REQ, RES> = TriggerCtxBaseParams<INREQ, REQ, RES> & {
21
55
  request?: INREQ;
22
56
  enRequest?: unknown;
@@ -29,6 +63,14 @@ export type TriggerCtx<INREQ, REQ, RES> = (ReadonlyTriggerCtxBase<INREQ, REQ, RE
29
63
  enRequest: unknown;
30
64
  request: INREQ;
31
65
  });
66
+ export type TriggerResult<INREQ, REQ, RES> = Omit<ReadonlyTriggerCtxBase<INREQ, REQ, RES>, "send"> & {
67
+ readonly send: EventoSend<INREQ, REQ, RES>;
68
+ readonly stats: TriggerStats;
69
+ } & Partial<MutableHandleTriggerCtx<INREQ, REQ>>;
70
+ export declare class TriggerResultError<INREQ, REQ, RES> extends Error {
71
+ readonly ctx: TriggerResult<INREQ, REQ, RES>;
72
+ constructor(message: string, ctx: TriggerResult<INREQ, REQ, RES>);
73
+ }
32
74
  export interface ValidateTriggerCtx<INREQ, REQ, RES> extends ReadonlyTriggerCtxBase<INREQ, REQ, RES> {
33
75
  readonly request?: INREQ;
34
76
  readonly enRequest: unknown;
@@ -38,7 +80,6 @@ export interface MutableHandleTriggerCtx<INREQ, REQ> {
38
80
  enRequest: unknown;
39
81
  validated: REQ;
40
82
  error?: Error;
41
- triggerResult?: string[];
42
83
  }
43
84
  export type HandleTriggerCtx<INREQ, REQ, RES> = Readonly<MutableHandleTriggerCtx<INREQ, REQ>> & ReadonlyTriggerCtxBase<INREQ, REQ, RES>;
44
85
  export declare const EventoResult: {
@@ -88,6 +129,6 @@ export declare class Evento {
88
129
  push(...hdls: (EventoHandler | EventoHandler[])[]): (() => void)[];
89
130
  unshift(...hdls: (EventoHandler | EventoHandler[])[]): (() => void)[];
90
131
  register(...hdls: EventoHandlerOp[]): (() => void)[];
91
- trigger<INREQ, REQ, RES>(ictx: TriggerCtxParams<INREQ, REQ, RES>): Promise<Result<string[]>>;
132
+ trigger<INREQ, REQ, RES>(ictx: TriggerCtxParams<INREQ, REQ, RES>): Promise<Result<TriggerResult<INREQ, REQ, RES>>>;
92
133
  }
93
134
  //# sourceMappingURL=evento.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"evento.d.ts","sourceRoot":"","sources":["../../../src/evento.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evento.d.ts","sourceRoot":"","sources":["../../../src/evento.ts"],"names":[],"mappings":"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"}
package/ts/esm/evento.js CHANGED
@@ -2,6 +2,45 @@ import { AppContext } from "./app-context.js";
2
2
  import { Option } from "./option.js";
3
3
  import { ResolveOnce } from "./resolve-once.js";
4
4
  import { exception2Result, Result } from "./result.js";
5
+ export class EventoSend {
6
+ provider;
7
+ constructor(provider) {
8
+ this.provider = provider;
9
+ }
10
+ start(trigger) {
11
+ trigger.stats.send.startTime = new Date();
12
+ if (this.provider.start) {
13
+ return this.provider.start(trigger);
14
+ }
15
+ return Promise.resolve(Result.Ok());
16
+ }
17
+ done(trigger) {
18
+ trigger.stats.send.doneTime = new Date();
19
+ if (this.provider.done) {
20
+ return this.provider.done(trigger);
21
+ }
22
+ return Promise.resolve(Result.Ok());
23
+ }
24
+ async send(trigger, data) {
25
+ const start = new Date();
26
+ const rSend = await this.provider.send(trigger, data);
27
+ const done = new Date();
28
+ const item = {
29
+ startTime: start,
30
+ doneTime: done,
31
+ item: rSend,
32
+ };
33
+ trigger.stats.send.items.push(item);
34
+ return Result.Ok(item);
35
+ }
36
+ }
37
+ export class TriggerResultError extends Error {
38
+ ctx;
39
+ constructor(message, ctx) {
40
+ super(message);
41
+ this.ctx = ctx;
42
+ }
43
+ }
5
44
  export const EventoResult = {
6
45
  Continue: "continue",
7
46
  Stop: "stop",
@@ -95,19 +134,39 @@ export class Evento {
95
134
  });
96
135
  }
97
136
  async trigger(ictx) {
98
- let stepCtx = {};
137
+ let stepCtx = null;
99
138
  const toPost = [];
100
139
  const startOnce = new ResolveOnce();
101
140
  const res = await exception2Result(async () => {
141
+ const nullDate = new Date(0);
102
142
  const ctx = {
103
143
  ...ictx,
104
144
  encoder: ictx.encoder ?? this.encoder,
145
+ stats: ictx.stats ?? {
146
+ request: {
147
+ startTime: new Date(),
148
+ doneTime: nullDate,
149
+ },
150
+ encode: {
151
+ startTime: nullDate,
152
+ doneTime: nullDate,
153
+ },
154
+ handlers: [],
155
+ send: {
156
+ startTime: nullDate,
157
+ doneTime: nullDate,
158
+ items: [],
159
+ },
160
+ },
161
+ send: new EventoSend(ictx.send),
105
162
  ctx: ictx.ctx ?? new AppContext(),
106
163
  };
107
164
  stepCtx = ctx;
108
165
  const results = [];
109
166
  if (!ctx.enRequest) {
167
+ ctx.stats.encode.startTime = new Date();
110
168
  const rUnk = await this.encoder.encode(ctx.request);
169
+ ctx.stats.encode.doneTime = new Date();
111
170
  if (rUnk.isErr()) {
112
171
  return Result.Err(rUnk);
113
172
  }
@@ -129,8 +188,27 @@ export class Evento {
129
188
  if (hdl.post) {
130
189
  toPost.push(hdl);
131
190
  }
191
+ const stat = {
192
+ handler: hdl,
193
+ total: {
194
+ startTime: new Date(),
195
+ doneTime: nullDate,
196
+ },
197
+ validated: {
198
+ startTime: nullDate,
199
+ doneTime: nullDate,
200
+ },
201
+ handled: {
202
+ startTime: nullDate,
203
+ doneTime: nullDate,
204
+ },
205
+ };
206
+ ctx.stats.handlers.push(stat);
207
+ stat.validated.startTime = new Date();
132
208
  const rData = await Promise.resolve(hdl.validate ? hdl.validate(validateCtx) : Result.Ok(Option.Some(ctx.enRequest)));
209
+ stat.validated.doneTime = new Date();
133
210
  if (rData.isErr()) {
211
+ stat.total.doneTime = new Date();
134
212
  return Result.Err(rData);
135
213
  }
136
214
  const data = rData.Ok();
@@ -143,19 +221,22 @@ export class Evento {
143
221
  request: ctx.request,
144
222
  enRequest: ctx.enRequest,
145
223
  });
146
- if (ctx.send.start) {
147
- const rStart = await startOnce.once(() => ctx.send.start(hdlCtx).then((rv) => {
148
- if (rv.isErr()) {
149
- return Result.Err(rv);
150
- }
151
- return Result.Ok(hdlCtx);
152
- }));
153
- if (rStart.isErr()) {
154
- return Result.Err(rStart);
224
+ const rStart = await startOnce.once(() => ctx.send.start(hdlCtx).then((rv) => {
225
+ if (rv.isErr()) {
226
+ return Result.Err(rv);
155
227
  }
228
+ return Result.Ok(hdlCtx);
229
+ }));
230
+ if (rStart.isErr()) {
231
+ stat.total.doneTime = new Date();
232
+ return Result.Err(rStart);
156
233
  }
234
+ stat.handled.startTime = new Date();
157
235
  const rHandle = await hdl.handle(hdlCtx);
236
+ stat.handled.doneTime = new Date();
237
+ stat.total.doneTime = new Date();
158
238
  if (rHandle.isErr()) {
239
+ stat.total.doneTime = new Date();
159
240
  return Result.Err(rHandle);
160
241
  }
161
242
  results.push(hdl.hash);
@@ -165,10 +246,10 @@ export class Evento {
165
246
  }
166
247
  return Result.Ok(results);
167
248
  });
249
+ if (!stepCtx) {
250
+ throw new Error("Internal error: stepCtx is null");
251
+ }
168
252
  for (const hdl of toPost) {
169
- if (res.isOk()) {
170
- stepCtx.triggerResult = res.Ok();
171
- }
172
253
  await exception2Result(() => hdl.post(stepCtx));
173
254
  }
174
255
  if (res.isErr()) {
@@ -177,13 +258,12 @@ export class Evento {
177
258
  await exception2Result(() => hdl.handle(stepCtx));
178
259
  }
179
260
  }
180
- const send = stepCtx && "send" in stepCtx ? stepCtx.send : undefined;
181
- if (send && send.done && startOnce.state === "processed" && startOnce.value) {
182
- if (startOnce.value.isOk()) {
183
- await send.done(startOnce.value.Ok());
184
- }
261
+ if (startOnce.value?.isOk()) {
262
+ const ctx = startOnce.value.Ok();
263
+ ctx.stats.request.doneTime = new Date();
264
+ await startOnce.value.Ok().send.done(ctx);
185
265
  }
186
- return res;
266
+ return Result.Ok(stepCtx);
187
267
  }
188
268
  }
189
269
  //# sourceMappingURL=evento.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"evento.js","sourceRoot":"","sources":["../../../src/evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA+IvD,MAAM,CAAC,MAAM,YAAY,GAAG;IAE1B,QAAQ,EAAE,UAAU;IAEpB,IAAI,EAAE,MAAM;CACJ,CAAC;SAOC,QAAQ;AAApB,IAAY,QAOX;AAPD,WAAY,QAAQ;IAElB,yBAAa,CAAA;IAEb,+BAAmB,CAAA;IAEnB,iCAAqB,CAAA;AAAC,CACxB,EAPY,QAAQ,KAAR,QAAQ,QAOnB;SAKW,UAAU;AAAtB,IAAY,UAOX;AAPD,WAAY,UAAU;IAEpB,mCAAqB,CAAA;IAErB,iCAAmB,CAAA;IAEnB,6BAAe,CAAA;AAAC,CAClB,EAPY,UAAU,KAAV,UAAU,QAOrB;AAyED,SAAS,SAAS,CAAC,IAAmB,EAAE,OAAwB,EAAc;IAC5E,OAAO,GAAS,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;IAAA,CACF,CAAC;AAAA,CACH;AA4ED,MAAM,OAAO,MAAM;IACT,OAAO,GAAoB,EAAE,CAAC;IAC9B,SAAS,GAAoB,EAAE,CAAC;IAChC,MAAM,GAAoB,EAAE,CAAC;IAE7B,OAAO,CAAoC;IAOnD,YAAY,OAA0C,EAAE;QACtD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAAA,CACxB;IAOD,QAAQ,GAGN;QACA,OAAO;YACL,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;YAC1B,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;SAC/B,CAAC;IAAA,CACH;IAQD,IAAI,CAAC,GAAG,IAAyC,EAAkB;QACjE,OAAO,IAAI,CAAC,QAAQ,CAClB,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9B,OAAO;gBACL,OAAO;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO;gBACxC,EAAE,EAAE,QAAQ,CAAC,IAAa;aAC3B,CAAC;QAAA,CACH,CAAC,CACH,CAAC;IAAA,CACH;IAQD,OAAO,CAAC,GAAG,IAAyC,EAAkB;QACpE,OAAO,IAAI,CAAC,QAAQ,CAClB,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO;gBACxC,EAAE,EAAE,QAAQ,CAAC,OAAgB;aAC9B,CAAC;QAAA,CACH,CAAC,CACH,CAAC;IAAA,CACH;IAWD,QAAQ,CAAC,GAAG,IAAuB,EAAkB;QACnD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACxB,IAAI,QAAyB,CAAC;YAC9B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAK,UAAU,CAAC,QAAQ;oBACtB,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC1B,MAAM;gBACR,KAAK,UAAU,CAAC,KAAK;oBACnB,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;oBACvB,MAAM;gBACR,KAAK,UAAU,CAAC,OAAO,CAAC;gBACxB;oBACE,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;oBACxB,MAAM;YACV,CAAC;YACD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtE,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YACzC,CAAC;YACD,QAAQ,IAAI,CAAC,EAAE,EAAE,CAAC;gBAChB,KAAK,QAAQ,CAAC,IAAI;oBAChB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC5B,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC3C,KAAK,QAAQ,CAAC,OAAO;oBACnB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/B,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC3C,KAAK,QAAQ,CAAC,QAAQ;oBACpB,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC3C,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC3C;oBACE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACxC,CAAC;QAAA,CACF,CAAC,CAAC;IAAA,CACJ;IAkBD,KAAK,CAAC,OAAO,CAAkB,IAAuC,EAA6B;QACjG,IAAI,OAAO,GAIE,EAAE,CAAC;QAChB,MAAM,MAAM,GAAoB,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,WAAW,EAA6C,CAAC;QAC/E,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,KAAK,IAA+B,EAAE,CAAC;YACxE,MAAM,GAAG,GAA2F;gBAClG,GAAG,IAAI;gBACP,OAAO,EAAE,IAAI,CAAC,OAAO,IAAK,IAAI,CAAC,OAAuC;gBACtE,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI,UAAU,EAAE;aAClC,CAAC;YACF,OAAO,GAAG,GAAG,CAAC;YACd,MAAM,OAAO,GAAa,EAAE,CAAC;YAE7B,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAgB,CAAC,CAAC;gBAC7D,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;oBACjB,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC1B,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC;YACtB,CAAC;YACD,MAAM,WAAW,GAAG,CAAC,OAAO,GAAG;gBAC7B,GAAG,GAAG;gBACN,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBACrE,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAEvB,MAAM;oBACR,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;oBACb,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACtH,IAAI,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;oBAClB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBACD,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,EAAE,CAAC;gBACxB,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;oBAClB,SAAS;gBACX,CAAC;gBACD,MAAM,MAAM,GAAG,CAAC,OAAO,GAAG;oBACxB,GAAG,GAAG;oBACN,SAAS,EAAE,IAAI,CAAC,MAAM,EAAS;oBAC/B,OAAO,EAAE,GAAG,CAAC,OAAgB;oBAC7B,SAAS,EAAE,GAAG,CAAC,SAAS;iBACzB,CAAC,CAAC;gBACH,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACnB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAEvC,GAAG,CAAC,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAA6C,EAAE,CAAC;wBAC9E,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;4BACf,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACxB,CAAC;wBACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBAAA,CAC1B,CAAC,CACH,CAAC;oBACF,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;wBACnB,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC5B,CAAC;gBACH,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzC,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;oBACpB,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC7B,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,OAAO,CAAC,EAAE,EAAE,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;oBACvC,MAAM;gBACR,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAAA,CAC3B,CAAC,CAAC;QACH,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;gBACd,OAA+C,CAAC,aAAa,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC;YAC5E,CAAC;YAED,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAK,CAAC,OAA4C,CAAC,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;YACf,OAA+C,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC;YACnE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC9B,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,OAA4C,CAAC,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,IAAI,MAAM,IAAI,OAAO,CAAC,CAAC,CAAE,OAAO,CAAC,IAAkD,CAAC,CAAC,CAAC,SAAS,CAAC;QACpH,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YAC5E,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IAAA,CACZ;CACF"}
1
+ {"version":3,"file":"evento.js","sourceRoot":"","sources":["../../../src/evento.ts"],"names":[],"mappings":"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"}