@rotorsoft/act 0.0.2 → 0.3.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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/act-builder.d.ts +17 -0
- package/dist/act-builder.d.ts.map +1 -0
- package/dist/act-builder.js +69 -0
- package/dist/act-builder.js.map +1 -0
- package/dist/act.d.ts +6 -6
- package/dist/act.d.ts.map +1 -1
- package/dist/act.js +3 -3
- package/dist/act.js.map +1 -1
- package/dist/config.d.ts +20 -69
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +2 -2
- package/dist/config.js.map +1 -1
- package/dist/event-sourcing.d.ts +3 -3
- package/dist/event-sourcing.d.ts.map +1 -1
- package/dist/event-sourcing.js +1 -1
- package/dist/event-sourcing.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/ports.d.ts.map +1 -1
- package/dist/state-builder.d.ts +57 -0
- package/dist/state-builder.d.ts.map +1 -0
- package/dist/state-builder.js +83 -0
- package/dist/state-builder.js.map +1 -0
- package/dist/types/action.d.ts +30 -27
- package/dist/types/action.d.ts.map +1 -1
- package/dist/types/registry.d.ts +8 -6
- package/dist/types/registry.d.ts.map +1 -1
- package/dist/types/schemas.d.ts +59 -914
- package/dist/types/schemas.d.ts.map +1 -1
- package/dist/types/schemas.js +8 -9
- package/dist/types/schemas.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +2 -2
- package/dist/utils.js.map +1 -1
- package/package.json +4 -4
- package/dist/builder.d.ts +0 -30
- package/dist/builder.d.ts.map +0 -1
- package/dist/builder.js +0 -97
- package/dist/builder.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEnD,eAAO,MAAM,QAAQ,sCAAkC,CAAC;AAExD,eAAO,MAAM,WAAW;;;kBAKX,CAAC;AAEd,eAAO,MAAM,YAAY;;;;;;;kBAMZ,CAAC;AAEd,eAAO,MAAM,oBAAoB;;;;iBAI/B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;kBAQf,CAAC;AAEd,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;kBAQnB,CAAC;AAEd,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG,OAAO,QAAQ,CAAC,CAAC;IACjE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG,OAAO,QAAQ,CAAC,CAAC;IAClE,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;CAC/B,CAAC,CAAC;AAEH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkB9D;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;iBAUtB,CAAC"}
|
package/dist/types/schemas.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
export const ZodEmpty = z.record(z.never());
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
export const ZodEmpty = z.record(z.string(), z.never());
|
|
3
3
|
export const ActorSchema = z
|
|
4
4
|
.object({
|
|
5
5
|
id: z.string(),
|
|
@@ -13,18 +13,17 @@ export const TargetSchema = z
|
|
|
13
13
|
expectedVersion: z.number().optional(),
|
|
14
14
|
})
|
|
15
15
|
.readonly();
|
|
16
|
+
export const CausationEventSchema = z.object({
|
|
17
|
+
id: z.number(),
|
|
18
|
+
name: z.string(),
|
|
19
|
+
stream: z.string(),
|
|
20
|
+
});
|
|
16
21
|
export const EventMetaSchema = z
|
|
17
22
|
.object({
|
|
18
23
|
correlation: z.string(),
|
|
19
24
|
causation: z.object({
|
|
20
25
|
action: TargetSchema.and(z.object({ name: z.string() })).optional(),
|
|
21
|
-
event:
|
|
22
|
-
.object({
|
|
23
|
-
id: z.number(),
|
|
24
|
-
name: z.string(),
|
|
25
|
-
stream: z.string(),
|
|
26
|
-
})
|
|
27
|
-
.optional(),
|
|
26
|
+
event: CausationEventSchema.optional(),
|
|
28
27
|
}),
|
|
29
28
|
})
|
|
30
29
|
.readonly();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAA0B,MAAM,
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,EAAiB,MAAM,QAAQ,CAAC;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AA+B7C;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,MAAM,EACpC,UAAU,QAAQ,CAAC,CAAC,CAAC,EACrB,SAAS,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAC1B,QAAQ,CAAC,CAAC,CAgBZ,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,CAAC,EACxB,QAAQ,MAAM,EACd,SAAS,QAAQ,CAAC,CAAC,CAAC,EACpB,SAAS,OAAO,CAAC,CAAC,CAAC,KAClB,QAAQ,CAAC,CAAC,CAaZ,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,GACjB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAEjC,QAAQ,QAAQ,CAAC,CAAC,CAAC,EACnB,QAAQ,OAAO,CAAC,CAAC,CAAC,EAClB,SAAS,QAAQ,CAAC,CAAC,CAAC,KACnB,QAAQ,CAAC,CAAC,GAAG,CAAC,CAGhB,CAAC;AAEF,wBAAsB,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,oBAEtC"}
|
package/dist/utils.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { prettifyError } from "zod/v4";
|
|
1
2
|
import { config } from "./config";
|
|
2
3
|
import { ValidationError } from "./types";
|
|
3
4
|
/** These objects are copied instead of deep merged */
|
|
@@ -54,8 +55,7 @@ export const validate = (target, payload, schema) => {
|
|
|
54
55
|
}
|
|
55
56
|
catch (error) {
|
|
56
57
|
if (error instanceof Error && error.name === "ZodError") {
|
|
57
|
-
|
|
58
|
-
throw new ValidationError(target, payload, details);
|
|
58
|
+
throw new ValidationError(target, payload, prettifyError(error));
|
|
59
59
|
}
|
|
60
60
|
throw new ValidationError(target, payload, error);
|
|
61
61
|
}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rotorsoft/act",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0
|
|
4
|
+
"version": "0.3.0",
|
|
5
5
|
"description": "act core library",
|
|
6
6
|
"author": "rotorsoft",
|
|
7
7
|
"license": "MIT",
|
|
@@ -20,10 +20,10 @@
|
|
|
20
20
|
}
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"dotenv": "^16.
|
|
24
|
-
"pino": "^9.
|
|
23
|
+
"dotenv": "^16.5.0",
|
|
24
|
+
"pino": "^9.7.0",
|
|
25
25
|
"pino-pretty": "^13.0.0",
|
|
26
|
-
"zod": "^3.
|
|
26
|
+
"zod": "^3.25.64"
|
|
27
27
|
},
|
|
28
28
|
"scripts": {
|
|
29
29
|
"clean": "rm -rf dist",
|
package/dist/builder.d.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Act } from "./act";
|
|
2
|
-
import type { EventRegister, ReactionHandler, ReactionOptions, ReactionResolver, Registry, Schema, SchemaRegister, Schemas, StateFactory } from "./types";
|
|
3
|
-
export interface IActBuilder<E extends Schemas, A extends Schemas, S extends SchemaRegister<A>> {
|
|
4
|
-
get events(): EventRegister<E>;
|
|
5
|
-
with<EX extends Schemas, AX extends Schemas, SX extends Schema>(factory: StateFactory<EX, AX, SX>): IActBuilder<E & EX, A & AX, S & {
|
|
6
|
-
[K in keyof AX]: SX;
|
|
7
|
-
}>;
|
|
8
|
-
on<K extends keyof E>(event: K): IDoBuilder<E, A, S, K>;
|
|
9
|
-
build(drainLimit?: number): Act<E, A, S>;
|
|
10
|
-
}
|
|
11
|
-
interface IDoBuilder<E extends Schemas, A extends Schemas, S extends SchemaRegister<A>, K extends keyof E> extends IActBuilder<E, A, S> {
|
|
12
|
-
do(handler: ReactionHandler<E, K>, options?: Partial<ReactionOptions>): IToBuilder<E, A, S, K>;
|
|
13
|
-
}
|
|
14
|
-
interface IToBuilder<E extends Schemas, A extends Schemas, S extends SchemaRegister<A>, K extends keyof E> extends IDoBuilder<E, A, S, K> {
|
|
15
|
-
to(resolver: ReactionResolver<E, K>): IDoBuilder<E, A, S, K>;
|
|
16
|
-
void(): IDoBuilder<E, A, S, K>;
|
|
17
|
-
}
|
|
18
|
-
export declare class ActBuilder<E extends Schemas = {}, A extends Schemas = {}, S extends SchemaRegister<A> = {}> implements IActBuilder<E, A, S> {
|
|
19
|
-
protected _registry: Registry<E, A, S>;
|
|
20
|
-
private factories;
|
|
21
|
-
constructor(_registry?: Registry<E, A, S>);
|
|
22
|
-
get events(): EventRegister<E>;
|
|
23
|
-
with<EX extends Schemas, AX extends Schemas, SX extends Schema>(factory: StateFactory<EX, AX, SX>): IActBuilder<E & EX, A & AX, S & {
|
|
24
|
-
[K in keyof AX]: SX;
|
|
25
|
-
}>;
|
|
26
|
-
on<K extends keyof E>(event: K): IDoBuilder<E, A, S, K>;
|
|
27
|
-
build(drainLimit?: number): Act<E, A, S>;
|
|
28
|
-
}
|
|
29
|
-
export {};
|
|
30
|
-
//# sourceMappingURL=builder.d.ts.map
|
package/dist/builder.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/builder.js
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { Act } from "./act";
|
|
2
|
-
// default resolver resolves to same event stream
|
|
3
|
-
const _this_ = ({ stream }) => stream;
|
|
4
|
-
// nothing to resolve
|
|
5
|
-
const _void_ = () => undefined;
|
|
6
|
-
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
|
7
|
-
export class ActBuilder {
|
|
8
|
-
_registry;
|
|
9
|
-
factories = new Set();
|
|
10
|
-
constructor(_registry = {
|
|
11
|
-
actions: {},
|
|
12
|
-
events: {},
|
|
13
|
-
}) {
|
|
14
|
-
this._registry = _registry;
|
|
15
|
-
}
|
|
16
|
-
get events() {
|
|
17
|
-
return this._registry.events;
|
|
18
|
-
}
|
|
19
|
-
with(factory) {
|
|
20
|
-
if (!this.factories.has(factory.name)) {
|
|
21
|
-
this.factories.add(factory.name);
|
|
22
|
-
const me = factory();
|
|
23
|
-
Object.keys(me.actions).forEach((name) => {
|
|
24
|
-
if (this._registry.actions[name])
|
|
25
|
-
throw Error(`Duplicate action "${name}"`);
|
|
26
|
-
// @ts-expect-error indexed access
|
|
27
|
-
this._registry.actions[name] = me;
|
|
28
|
-
});
|
|
29
|
-
Object.keys(me.events).forEach((name) => {
|
|
30
|
-
if (this._registry.events[name])
|
|
31
|
-
throw Error(`Duplicate event "${name}"`);
|
|
32
|
-
// @ts-expect-error indexed access
|
|
33
|
-
this._registry.events[name] = {
|
|
34
|
-
schema: me.events[name],
|
|
35
|
-
reactions: new Map(),
|
|
36
|
-
};
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
return this;
|
|
40
|
-
}
|
|
41
|
-
on(event) {
|
|
42
|
-
return new DoBuilder(this._registry, event);
|
|
43
|
-
}
|
|
44
|
-
build(drainLimit = 10) {
|
|
45
|
-
return new Act(this._registry, drainLimit);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
class DoBuilder extends ActBuilder {
|
|
49
|
-
event;
|
|
50
|
-
constructor(registry, event) {
|
|
51
|
-
super(registry);
|
|
52
|
-
this.event = event;
|
|
53
|
-
}
|
|
54
|
-
get events() {
|
|
55
|
-
throw new Error("Method not implemented.");
|
|
56
|
-
}
|
|
57
|
-
do(handler, options) {
|
|
58
|
-
const reaction = {
|
|
59
|
-
handler: handler,
|
|
60
|
-
resolver: _this_,
|
|
61
|
-
options: {
|
|
62
|
-
blockOnError: options?.blockOnError ?? true,
|
|
63
|
-
maxRetries: options?.maxRetries ?? 3,
|
|
64
|
-
retryDelayMs: options?.retryDelayMs ?? 1000,
|
|
65
|
-
},
|
|
66
|
-
};
|
|
67
|
-
this._registry.events[this.event].reactions.set(handler.name, reaction);
|
|
68
|
-
return new ToBuilder(this._registry, this.event, reaction);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
class ToBuilder extends DoBuilder {
|
|
72
|
-
reaction;
|
|
73
|
-
constructor(registry, event, reaction) {
|
|
74
|
-
super(registry, event);
|
|
75
|
-
this.reaction = reaction;
|
|
76
|
-
}
|
|
77
|
-
get events() {
|
|
78
|
-
throw new Error("Method not implemented.");
|
|
79
|
-
}
|
|
80
|
-
to(resolver) {
|
|
81
|
-
this._registry.events[this.event].reactions.set(this.reaction.handler.name, {
|
|
82
|
-
handler: this.reaction.handler,
|
|
83
|
-
resolver: resolver,
|
|
84
|
-
options: this.reaction.options,
|
|
85
|
-
});
|
|
86
|
-
return new DoBuilder(this._registry, this.event);
|
|
87
|
-
}
|
|
88
|
-
void() {
|
|
89
|
-
this._registry.events[this.event].reactions.set(this.reaction.handler.name, {
|
|
90
|
-
handler: this.reaction.handler,
|
|
91
|
-
resolver: _void_,
|
|
92
|
-
options: this.reaction.options,
|
|
93
|
-
});
|
|
94
|
-
return new DoBuilder(this._registry, this.event);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
//# sourceMappingURL=builder.js.map
|
package/dist/builder.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|