@reventlessdev/online-shop-aggregates-ordering 3.0.0-alpha.101 → 3.0.0-alpha.103
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/CHANGELOG.md +15 -0
- package/lib/bs/.compiler.log +2 -2
- package/lib/bs/compiler-info.json +1 -1
- package/lib/bs/src/Extension/Products_Extension-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Extension/Products_Extension-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/Aggregate/Order-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/Aggregate/Order-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/Aggregate/Order_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/Aggregate/Order_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/Aggregate/Order_Behavior.ast +0 -0
- package/lib/bs/src/Order/Aggregate/Order_Behavior.res +1 -0
- package/lib/bs/src/Order/Aggregate/Order_Behavior.res.mjs +1 -9
- package/lib/bs/src/Order/Aggregate/Order_Mappings-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/Aggregate/Order_Mappings-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/ReadModel/Orders_Projections-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/ReadModel/Orders_Projections-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/SideEffect/Order_EmailNotification-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/SideEffect/Order_EmailNotification-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Plugin-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Plugin-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Task/OrderNotifications-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Task/OrderNotifications-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/Aggregate/OrderMappings_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/Aggregate/OrderMappings_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/Aggregate/Order_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/Aggregate/Order_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/ReadModel/Orders_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/ReadModel/Orders_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/SideEffect/Order_EmailNotification_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/SideEffect/Order_EmailNotification_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/SideEffect/Order_EmailNotification_GWT.ast +0 -0
- package/lib/bs/tests/Order/SideEffect/Order_EmailNotification_GWT.res +4 -1
- package/lib/bs/tests/Order/SideEffect/Order_EmailNotification_GWT.res.mjs +1 -1
- package/lib/ocaml/.compiler.log +2 -2
- package/lib/ocaml/Order-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Order-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/OrderMappings_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/OrderMappings_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/OrderNotifications-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/OrderNotifications-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Order_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Order_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Order_Behavior.ast +0 -0
- package/lib/ocaml/Order_Behavior.res +1 -0
- package/lib/ocaml/Order_EmailNotification-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Order_EmailNotification-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Order_EmailNotification_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Order_EmailNotification_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Order_EmailNotification_GWT.ast +0 -0
- package/lib/ocaml/Order_EmailNotification_GWT.res +4 -1
- package/lib/ocaml/Order_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Order_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Order_Mappings-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Order_Mappings-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_Projections-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_Projections-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Plugin-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Plugin-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Products_Extension-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Products_Extension-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Products_Extension_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Products_Extension_GWT-OrderingPlugin.cmt +0 -0
- package/package.json +8 -8
- package/src/Order/Aggregate/Order_Behavior.res +1 -0
- package/src/Order/Aggregate/Order_Behavior.res.mjs +1 -9
- package/tests/Order/SideEffect/Order_EmailNotification_GWT.res +4 -1
- package/tests/Order/SideEffect/Order_EmailNotification_GWT.res.mjs +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,21 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 3.0.0-alpha.103 (2026-06-29)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @reventlessdev/online-shop-aggregates-ordering
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# 3.0.0-alpha.102 (2026-06-27)
|
|
15
|
+
|
|
16
|
+
### Bug Fixes
|
|
17
|
+
|
|
18
|
+
* **ordering-example:** resolve evolve exhaustiveness + GWT unused-open warnings ([c1e1476](https://github.com/ReventlessDev/reventless-core/commit/c1e1476eba7036fcf355f4190aa045e1c876edd7))
|
|
19
|
+
|
|
20
|
+
|
|
6
21
|
# 3.0.0-alpha.101 (2026-06-27)
|
|
7
22
|
|
|
8
23
|
**Note:** Version bump only for package @reventlessdev/online-shop-aggregates-ordering
|
package/lib/bs/.compiler.log
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#Start(
|
|
2
|
-
#Done(
|
|
1
|
+
#Start(1782764558688)
|
|
2
|
+
#Done(1782764559995)
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
"bsc_hash": "75e3a59c95cc953608fd3dd6ea6ed68141bba4414a20a52f114261b8a48385fa",
|
|
5
5
|
"rescript_config_hash": "4c884bf958b93b21c77764e35498f269b81377cfcc324135f1ab7a1cc5b569cb",
|
|
6
6
|
"runtime_path": "/home/runner/work/reventless-core/reventless-core/node_modules/@rescript/runtime",
|
|
7
|
-
"generated_at": "
|
|
7
|
+
"generated_at": "1782764559997"
|
|
8
8
|
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -19,6 +19,7 @@ let evolve = (state, event) =>
|
|
|
19
19
|
| (Placed(_), Order.Placed({customerId, productIds})) => Placed({customerId, productIds})
|
|
20
20
|
| (Placed(_), Order.Shipped) => Shipped
|
|
21
21
|
| (Placed(_), Order.Cancelled(_)) => Cancelled
|
|
22
|
+
| (Placed(_), Order.Refunded(_)) => state // unreachable: refunds only follow a cancellation
|
|
22
23
|
| (Cancelled, Order.Refunded(_)) => Refunded
|
|
23
24
|
| (Shipped, _) => state
|
|
24
25
|
| (Cancelled, _) => state
|
|
@@ -51,15 +51,7 @@ function evolve(state, event) {
|
|
|
51
51
|
case "Cancelled" :
|
|
52
52
|
return "Cancelled";
|
|
53
53
|
case "Refunded" :
|
|
54
|
-
|
|
55
|
-
RE_EXN_ID: "Match_failure",
|
|
56
|
-
_1: [
|
|
57
|
-
"Order_Behavior.res",
|
|
58
|
-
17,
|
|
59
|
-
2
|
|
60
|
-
],
|
|
61
|
-
Error: new Error()
|
|
62
|
-
};
|
|
54
|
+
return state;
|
|
63
55
|
}
|
|
64
56
|
}
|
|
65
57
|
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -8,7 +8,10 @@
|
|
|
8
8
|
// install also resets the recorded-calls ref, so tests stay isolated without
|
|
9
9
|
// pulling rescript-jest's `beforeEach` into the example's dependencies.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
// `name` comes from the spec module the PPX auto-opens (`Order_EmailNotification`);
|
|
12
|
+
// using it here names the suite after the spec and consumes that open — an egress
|
|
13
|
+
// test otherwise references only the source aggregate's events (`Order.*`).
|
|
14
|
+
describe(name ++ " SideEffect", () => {
|
|
12
15
|
test("Placed triggers a confirmation email", () => {
|
|
13
16
|
EmailService_Mock.install()
|
|
14
17
|
givenEventForId(
|
|
@@ -29,7 +29,7 @@ let thenNoExternalCalls = include.thenNoExternalCalls;
|
|
|
29
29
|
|
|
30
30
|
let thenExternalCalls = include.thenExternalCalls;
|
|
31
31
|
|
|
32
|
-
describe(
|
|
32
|
+
describe(Order_EmailNotification$OrderingPlugin.name + " SideEffect", () => {
|
|
33
33
|
test("Placed triggers a confirmation email", undefined, () => {
|
|
34
34
|
EmailService_Mock$OrderingPlugin.install();
|
|
35
35
|
return thenExternalCalls(whenExecuted(givenEventForId(Id$Reventless.$$String.makeFromString("o1"), {
|
package/lib/ocaml/.compiler.log
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#Start(
|
|
2
|
-
#Done(
|
|
1
|
+
#Start(1782764558688)
|
|
2
|
+
#Done(1782764559995)
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -19,6 +19,7 @@ let evolve = (state, event) =>
|
|
|
19
19
|
| (Placed(_), Order.Placed({customerId, productIds})) => Placed({customerId, productIds})
|
|
20
20
|
| (Placed(_), Order.Shipped) => Shipped
|
|
21
21
|
| (Placed(_), Order.Cancelled(_)) => Cancelled
|
|
22
|
+
| (Placed(_), Order.Refunded(_)) => state // unreachable: refunds only follow a cancellation
|
|
22
23
|
| (Cancelled, Order.Refunded(_)) => Refunded
|
|
23
24
|
| (Shipped, _) => state
|
|
24
25
|
| (Cancelled, _) => state
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -8,7 +8,10 @@
|
|
|
8
8
|
// install also resets the recorded-calls ref, so tests stay isolated without
|
|
9
9
|
// pulling rescript-jest's `beforeEach` into the example's dependencies.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
// `name` comes from the spec module the PPX auto-opens (`Order_EmailNotification`);
|
|
12
|
+
// using it here names the suite after the spec and consumes that open — an egress
|
|
13
|
+
// test otherwise references only the source aggregate's events (`Order.*`).
|
|
14
|
+
describe(name ++ " SideEffect", () => {
|
|
12
15
|
test("Placed triggers a confirmation email", () => {
|
|
13
16
|
EmailService_Mock.install()
|
|
14
17
|
givenEventForId(
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reventlessdev/online-shop-aggregates-ordering",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.103",
|
|
4
4
|
"description": "Online Shop example — Ordering plugin (Customer & Order aggregates)",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"jest": {
|
|
@@ -21,18 +21,18 @@
|
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"sury": "^11.0.0-alpha.4",
|
|
24
|
-
"@reventlessdev/online-shop-aggregates-catalog-spec": "3.0.0-alpha.
|
|
25
|
-
"@reventlessdev/online-shop-aggregates-ordering-spec": "3.0.0-alpha.
|
|
24
|
+
"@reventlessdev/online-shop-aggregates-catalog-spec": "3.0.0-alpha.58",
|
|
25
|
+
"@reventlessdev/online-shop-aggregates-ordering-spec": "3.0.0-alpha.58",
|
|
26
26
|
"@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.14",
|
|
27
|
-
"@reventlessdev/reventless-
|
|
28
|
-
"@reventlessdev/reventless-
|
|
29
|
-
"@reventlessdev/reventless-local": "3.0.0-alpha.
|
|
30
|
-
"@reventlessdev/reventless-spec": "3.0.0-alpha.
|
|
27
|
+
"@reventlessdev/reventless-infra": "3.0.0-alpha.82",
|
|
28
|
+
"@reventlessdev/reventless-gwt": "1.0.0-alpha.75",
|
|
29
|
+
"@reventlessdev/reventless-local": "3.0.0-alpha.114",
|
|
30
|
+
"@reventlessdev/reventless-spec": "3.0.0-alpha.62"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"rescript": "^12.3.0",
|
|
34
34
|
"sury-ppx": "11.0.0-alpha.2",
|
|
35
|
-
"@reventlessdev/reventless-ppx": "1.0.0-alpha.
|
|
35
|
+
"@reventlessdev/reventless-ppx": "1.0.0-alpha.48"
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {
|
|
38
38
|
"rescript": "^12.3.0"
|
|
@@ -19,6 +19,7 @@ let evolve = (state, event) =>
|
|
|
19
19
|
| (Placed(_), Order.Placed({customerId, productIds})) => Placed({customerId, productIds})
|
|
20
20
|
| (Placed(_), Order.Shipped) => Shipped
|
|
21
21
|
| (Placed(_), Order.Cancelled(_)) => Cancelled
|
|
22
|
+
| (Placed(_), Order.Refunded(_)) => state // unreachable: refunds only follow a cancellation
|
|
22
23
|
| (Cancelled, Order.Refunded(_)) => Refunded
|
|
23
24
|
| (Shipped, _) => state
|
|
24
25
|
| (Cancelled, _) => state
|
|
@@ -51,15 +51,7 @@ function evolve(state, event) {
|
|
|
51
51
|
case "Cancelled" :
|
|
52
52
|
return "Cancelled";
|
|
53
53
|
case "Refunded" :
|
|
54
|
-
|
|
55
|
-
RE_EXN_ID: "Match_failure",
|
|
56
|
-
_1: [
|
|
57
|
-
"Order_Behavior.res",
|
|
58
|
-
17,
|
|
59
|
-
2
|
|
60
|
-
],
|
|
61
|
-
Error: new Error()
|
|
62
|
-
};
|
|
54
|
+
return state;
|
|
63
55
|
}
|
|
64
56
|
}
|
|
65
57
|
}
|
|
@@ -8,7 +8,10 @@
|
|
|
8
8
|
// install also resets the recorded-calls ref, so tests stay isolated without
|
|
9
9
|
// pulling rescript-jest's `beforeEach` into the example's dependencies.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
// `name` comes from the spec module the PPX auto-opens (`Order_EmailNotification`);
|
|
12
|
+
// using it here names the suite after the spec and consumes that open — an egress
|
|
13
|
+
// test otherwise references only the source aggregate's events (`Order.*`).
|
|
14
|
+
describe(name ++ " SideEffect", () => {
|
|
12
15
|
test("Placed triggers a confirmation email", () => {
|
|
13
16
|
EmailService_Mock.install()
|
|
14
17
|
givenEventForId(
|
|
@@ -29,7 +29,7 @@ let thenNoExternalCalls = include.thenNoExternalCalls;
|
|
|
29
29
|
|
|
30
30
|
let thenExternalCalls = include.thenExternalCalls;
|
|
31
31
|
|
|
32
|
-
describe(
|
|
32
|
+
describe(Order_EmailNotification$OrderingPlugin.name + " SideEffect", () => {
|
|
33
33
|
test("Placed triggers a confirmation email", undefined, () => {
|
|
34
34
|
EmailService_Mock$OrderingPlugin.install();
|
|
35
35
|
return thenExternalCalls(whenExecuted(givenEventForId(Id$Reventless.$$String.makeFromString("o1"), {
|