@reventlessdev/online-shop-dcb-ordering 1.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 +885 -0
- package/LICENSE +202 -0
- package/__mocks__/emptyModule.js +1 -0
- package/lib/bs/.compiler.log +2 -0
- package/lib/bs/OrderingPlugin.cmi +0 -0
- package/lib/bs/OrderingPlugin.cmj +0 -0
- package/lib/bs/OrderingPlugin.cmt +0 -0
- package/lib/bs/OrderingPlugin.mlmap +46 -0
- package/lib/bs/build.ninja +0 -0
- package/lib/bs/compiler-info.json +8 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct.ast +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct.res +28 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct.res.mjs +71 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior.ast +0 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior.res +27 -0
- package/lib/bs/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior.res.mjs +73 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts.ast +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts.res +13 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts.res.mjs +70 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection.ast +0 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection.res +8 -0
- package/lib/bs/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection.res.mjs +38 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress.res +20 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress.res.mjs +58 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress_Behavior.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress_Behavior.res +30 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeAddress_Behavior.res.mjs +74 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail.res +20 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail.res.mjs +58 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail_Behavior.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail_Behavior.res +26 -0
- package/lib/bs/src/Customer/StateChangeSlice/ChangeEmail_Behavior.res.mjs +74 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer.res +17 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer.res.mjs +46 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior.res +23 -0
- package/lib/bs/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior.res.mjs +58 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer.res +22 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer.res.mjs +47 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer_Behavior.ast +0 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer_Behavior.res +20 -0
- package/lib/bs/src/Customer/StateChangeSlice/RegisterCustomer_Behavior.res.mjs +44 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers.ast +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers.res +18 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers.res.mjs +69 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers_Projection-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers_Projection-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers_Projection-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers_Projection.ast +0 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers_Projection.res +13 -0
- package/lib/bs/src/Customer/StateViewSlice/Customers_Projection.res.mjs +62 -0
- package/lib/bs/src/Extension/Products_Extension-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Extension/Products_Extension-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Extension/Products_Extension-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Extension/Products_Extension.ast +0 -0
- package/lib/bs/src/Extension/Products_Extension.res +23 -0
- package/lib/bs/src/Extension/Products_Extension.res.mjs +43 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping.ast +0 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping.res +33 -0
- package/lib/bs/src/ExtensionPoint/Orders_ExtensionPointMapping.res.mjs +82 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder.ast +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder.res +19 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder.res.mjs +42 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation.ast +0 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation.res +36 -0
- package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation.res.mjs +101 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation.ast +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation.res +19 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation.res.mjs +42 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.ast +0 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res +24 -0
- package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res.mjs +46 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder.ast +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder.res +24 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder.res.mjs +60 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder_Behavior.ast +0 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder_Behavior.res +26 -0
- package/lib/bs/src/Order/StateChangeSlice/CancelOrder_Behavior.res.mjs +81 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder.ast +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder.res +33 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder.res.mjs +63 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder_Behavior.ast +0 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder_Behavior.res +44 -0
- package/lib/bs/src/Order/StateChangeSlice/PlaceOrder_Behavior.res.mjs +70 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder.ast +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder.res +21 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder.res.mjs +56 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder_Behavior.ast +0 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder_Behavior.res +26 -0
- package/lib/bs/src/Order/StateChangeSlice/ShipOrder_Behavior.res.mjs +73 -0
- package/lib/bs/src/Order/StateViewSlice/Orders-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders.ast +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders.res +23 -0
- package/lib/bs/src/Order/StateViewSlice/Orders.res.mjs +81 -0
- package/lib/bs/src/Order/StateViewSlice/Orders_Projection-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders_Projection-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders_Projection-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders_Projection.ast +0 -0
- package/lib/bs/src/Order/StateViewSlice/Orders_Projection.res +10 -0
- package/lib/bs/src/Order/StateViewSlice/Orders_Projection.res.mjs +52 -0
- package/lib/bs/src/Plugin-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Plugin-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Plugin-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Plugin.ast +0 -0
- package/lib/bs/src/Plugin.res +64 -0
- package/lib/bs/src/Plugin.res.mjs +346 -0
- package/lib/bs/src/Service/EmailService-OrderingPlugin.cmi +0 -0
- package/lib/bs/src/Service/EmailService-OrderingPlugin.cmj +0 -0
- package/lib/bs/src/Service/EmailService-OrderingPlugin.cmt +0 -0
- package/lib/bs/src/Service/EmailService.ast +0 -0
- package/lib/bs/src/Service/EmailService.res +3 -0
- package/lib/bs/src/Service/EmailService.res.mjs +11 -0
- package/lib/bs/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT.ast +0 -0
- package/lib/bs/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT.res +27 -0
- package/lib/bs/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT.res.mjs +109 -0
- package/lib/bs/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT.ast +0 -0
- package/lib/bs/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT.res +15 -0
- package/lib/bs/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT.res.mjs +93 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeAddress_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeAddress_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeAddress_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeAddress_GWT.ast +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeAddress_GWT.res +27 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeAddress_GWT.res.mjs +102 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeEmail_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeEmail_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeEmail_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeEmail_GWT.ast +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeEmail_GWT.res +27 -0
- package/lib/bs/tests/Customer/StateChangeSlice/ChangeEmail_GWT.res.mjs +102 -0
- package/lib/bs/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT.ast +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT.res +21 -0
- package/lib/bs/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT.res.mjs +84 -0
- package/lib/bs/tests/Customer/StateChangeSlice/RegisterCustomer_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/RegisterCustomer_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/RegisterCustomer_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/RegisterCustomer_GWT.ast +0 -0
- package/lib/bs/tests/Customer/StateChangeSlice/RegisterCustomer_GWT.res +21 -0
- package/lib/bs/tests/Customer/StateChangeSlice/RegisterCustomer_GWT.res.mjs +83 -0
- package/lib/bs/tests/Customer/StateViewSlice/Customers_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Customer/StateViewSlice/Customers_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Customer/StateViewSlice/Customers_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Customer/StateViewSlice/Customers_GWT.ast +0 -0
- package/lib/bs/tests/Customer/StateViewSlice/Customers_GWT.res +45 -0
- package/lib/bs/tests/Customer/StateViewSlice/Customers_GWT.res.mjs +124 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT.ast +0 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT.res +23 -0
- package/lib/bs/tests/Extension/Products_Extension_GWT.res.mjs +108 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT.ast +0 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT.res +23 -0
- package/lib/bs/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT.res.mjs +139 -0
- package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT.ast +0 -0
- package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT.res +55 -0
- package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT.res.mjs +133 -0
- package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT.ast +0 -0
- package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT.res +33 -0
- package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT.res.mjs +101 -0
- package/lib/bs/tests/Order/StateChangeSlice/CancelOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/CancelOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/CancelOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/CancelOrder_GWT.ast +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/CancelOrder_GWT.res +27 -0
- package/lib/bs/tests/Order/StateChangeSlice/CancelOrder_GWT.res.mjs +107 -0
- package/lib/bs/tests/Order/StateChangeSlice/PlaceOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/PlaceOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/PlaceOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/PlaceOrder_GWT.ast +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/PlaceOrder_GWT.res +39 -0
- package/lib/bs/tests/Order/StateChangeSlice/PlaceOrder_GWT.res.mjs +139 -0
- package/lib/bs/tests/Order/StateChangeSlice/ShipOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/ShipOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/ShipOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/ShipOrder_GWT.ast +0 -0
- package/lib/bs/tests/Order/StateChangeSlice/ShipOrder_GWT.res +27 -0
- package/lib/bs/tests/Order/StateChangeSlice/ShipOrder_GWT.res.mjs +91 -0
- package/lib/bs/tests/Order/StateViewSlice/Orders_GWT-OrderingPlugin.cmi +0 -0
- package/lib/bs/tests/Order/StateViewSlice/Orders_GWT-OrderingPlugin.cmj +0 -0
- package/lib/bs/tests/Order/StateViewSlice/Orders_GWT-OrderingPlugin.cmt +0 -0
- package/lib/bs/tests/Order/StateViewSlice/Orders_GWT.ast +0 -0
- package/lib/bs/tests/Order/StateViewSlice/Orders_GWT.res +36 -0
- package/lib/bs/tests/Order/StateViewSlice/Orders_GWT.res.mjs +114 -0
- package/lib/ocaml/.compiler.log +2 -0
- package/lib/ocaml/AutoShipOrder-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/AutoShipOrder-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/AutoShipOrder-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/AutoShipOrder.ast +0 -0
- package/lib/ocaml/AutoShipOrder.res +19 -0
- package/lib/ocaml/AutoShipOrder_Automation-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/AutoShipOrder_Automation-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/AutoShipOrder_Automation-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/AutoShipOrder_Automation.ast +0 -0
- package/lib/ocaml/AutoShipOrder_Automation.res +36 -0
- package/lib/ocaml/AutoShipOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/AutoShipOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/AutoShipOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/AutoShipOrder_GWT.ast +0 -0
- package/lib/ocaml/AutoShipOrder_GWT.res +55 -0
- package/lib/ocaml/AvailableProducts-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/AvailableProducts-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/AvailableProducts-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/AvailableProducts.ast +0 -0
- package/lib/ocaml/AvailableProducts.res +13 -0
- package/lib/ocaml/AvailableProducts_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/AvailableProducts_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/AvailableProducts_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/AvailableProducts_GWT.ast +0 -0
- package/lib/ocaml/AvailableProducts_GWT.res +15 -0
- package/lib/ocaml/AvailableProducts_Projection-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/AvailableProducts_Projection-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/AvailableProducts_Projection-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/AvailableProducts_Projection.ast +0 -0
- package/lib/ocaml/AvailableProducts_Projection.res +8 -0
- package/lib/ocaml/CancelOrder-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/CancelOrder-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/CancelOrder-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/CancelOrder.ast +0 -0
- package/lib/ocaml/CancelOrder.res +24 -0
- package/lib/ocaml/CancelOrder_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/CancelOrder_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/CancelOrder_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/CancelOrder_Behavior.ast +0 -0
- package/lib/ocaml/CancelOrder_Behavior.res +26 -0
- package/lib/ocaml/CancelOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/CancelOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/CancelOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/CancelOrder_GWT.ast +0 -0
- package/lib/ocaml/CancelOrder_GWT.res +27 -0
- package/lib/ocaml/ChangeAddress-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ChangeAddress-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ChangeAddress-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ChangeAddress.ast +0 -0
- package/lib/ocaml/ChangeAddress.res +20 -0
- package/lib/ocaml/ChangeAddress_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ChangeAddress_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ChangeAddress_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ChangeAddress_Behavior.ast +0 -0
- package/lib/ocaml/ChangeAddress_Behavior.res +30 -0
- package/lib/ocaml/ChangeAddress_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ChangeAddress_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ChangeAddress_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ChangeAddress_GWT.ast +0 -0
- package/lib/ocaml/ChangeAddress_GWT.res +27 -0
- package/lib/ocaml/ChangeEmail-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ChangeEmail-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ChangeEmail-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ChangeEmail.ast +0 -0
- package/lib/ocaml/ChangeEmail.res +20 -0
- package/lib/ocaml/ChangeEmail_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ChangeEmail_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ChangeEmail_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ChangeEmail_Behavior.ast +0 -0
- package/lib/ocaml/ChangeEmail_Behavior.res +26 -0
- package/lib/ocaml/ChangeEmail_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ChangeEmail_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ChangeEmail_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ChangeEmail_GWT.ast +0 -0
- package/lib/ocaml/ChangeEmail_GWT.res +27 -0
- package/lib/ocaml/Customers-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Customers-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Customers-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Customers.ast +0 -0
- package/lib/ocaml/Customers.res +18 -0
- package/lib/ocaml/Customers_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Customers_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Customers_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Customers_GWT.ast +0 -0
- package/lib/ocaml/Customers_GWT.res +45 -0
- package/lib/ocaml/Customers_Projection-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Customers_Projection-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Customers_Projection-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Customers_Projection.ast +0 -0
- package/lib/ocaml/Customers_Projection.res +13 -0
- package/lib/ocaml/DeactivateCustomer-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/DeactivateCustomer-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/DeactivateCustomer-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/DeactivateCustomer.ast +0 -0
- package/lib/ocaml/DeactivateCustomer.res +17 -0
- package/lib/ocaml/DeactivateCustomer_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/DeactivateCustomer_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/DeactivateCustomer_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/DeactivateCustomer_Behavior.ast +0 -0
- package/lib/ocaml/DeactivateCustomer_Behavior.res +23 -0
- package/lib/ocaml/DeactivateCustomer_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/DeactivateCustomer_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/DeactivateCustomer_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/DeactivateCustomer_GWT.ast +0 -0
- package/lib/ocaml/DeactivateCustomer_GWT.res +21 -0
- package/lib/ocaml/EmailService-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/EmailService-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/EmailService-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/EmailService.ast +0 -0
- package/lib/ocaml/EmailService.res +3 -0
- package/lib/ocaml/OrderingPlugin.cmi +0 -0
- package/lib/ocaml/OrderingPlugin.cmj +0 -0
- package/lib/ocaml/OrderingPlugin.cmt +0 -0
- package/lib/ocaml/OrderingPlugin.mlmap +46 -0
- package/lib/ocaml/Orders-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Orders-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders.ast +0 -0
- package/lib/ocaml/Orders.res +23 -0
- package/lib/ocaml/Orders_ExtensionPointMapping-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping.ast +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping.res +33 -0
- package/lib/ocaml/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping_GWT.ast +0 -0
- package/lib/ocaml/Orders_ExtensionPointMapping_GWT.res +23 -0
- package/lib/ocaml/Orders_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Orders_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_GWT.ast +0 -0
- package/lib/ocaml/Orders_GWT.res +36 -0
- package/lib/ocaml/Orders_Projection-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Orders_Projection-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Orders_Projection-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Orders_Projection.ast +0 -0
- package/lib/ocaml/Orders_Projection.res +10 -0
- package/lib/ocaml/PlaceOrder-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/PlaceOrder-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/PlaceOrder-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/PlaceOrder.ast +0 -0
- package/lib/ocaml/PlaceOrder.res +33 -0
- package/lib/ocaml/PlaceOrder_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/PlaceOrder_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/PlaceOrder_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/PlaceOrder_Behavior.ast +0 -0
- package/lib/ocaml/PlaceOrder_Behavior.res +44 -0
- package/lib/ocaml/PlaceOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/PlaceOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/PlaceOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/PlaceOrder_GWT.ast +0 -0
- package/lib/ocaml/PlaceOrder_GWT.res +39 -0
- package/lib/ocaml/Plugin-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Plugin-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Plugin-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Plugin.ast +0 -0
- package/lib/ocaml/Plugin.res +64 -0
- package/lib/ocaml/Products_Extension-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Products_Extension-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Products_Extension-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Products_Extension.ast +0 -0
- package/lib/ocaml/Products_Extension.res +23 -0
- package/lib/ocaml/Products_Extension_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/Products_Extension_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/Products_Extension_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/Products_Extension_GWT.ast +0 -0
- package/lib/ocaml/Products_Extension_GWT.res +23 -0
- package/lib/ocaml/RegisterCustomer-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/RegisterCustomer-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/RegisterCustomer-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/RegisterCustomer.ast +0 -0
- package/lib/ocaml/RegisterCustomer.res +22 -0
- package/lib/ocaml/RegisterCustomer_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/RegisterCustomer_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/RegisterCustomer_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/RegisterCustomer_Behavior.ast +0 -0
- package/lib/ocaml/RegisterCustomer_Behavior.res +20 -0
- package/lib/ocaml/RegisterCustomer_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/RegisterCustomer_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/RegisterCustomer_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/RegisterCustomer_GWT.ast +0 -0
- package/lib/ocaml/RegisterCustomer_GWT.res +21 -0
- package/lib/ocaml/SendOrderConfirmation-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/SendOrderConfirmation-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/SendOrderConfirmation-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/SendOrderConfirmation.ast +0 -0
- package/lib/ocaml/SendOrderConfirmation.res +19 -0
- package/lib/ocaml/SendOrderConfirmation_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/SendOrderConfirmation_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/SendOrderConfirmation_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/SendOrderConfirmation_GWT.ast +0 -0
- package/lib/ocaml/SendOrderConfirmation_GWT.res +33 -0
- package/lib/ocaml/SendOrderConfirmation_Translation-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/SendOrderConfirmation_Translation-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/SendOrderConfirmation_Translation-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/SendOrderConfirmation_Translation.ast +0 -0
- package/lib/ocaml/SendOrderConfirmation_Translation.res +24 -0
- package/lib/ocaml/ShipOrder-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ShipOrder-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ShipOrder-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ShipOrder.ast +0 -0
- package/lib/ocaml/ShipOrder.res +21 -0
- package/lib/ocaml/ShipOrder_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ShipOrder_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ShipOrder_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ShipOrder_Behavior.ast +0 -0
- package/lib/ocaml/ShipOrder_Behavior.res +26 -0
- package/lib/ocaml/ShipOrder_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/ShipOrder_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/ShipOrder_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/ShipOrder_GWT.ast +0 -0
- package/lib/ocaml/ShipOrder_GWT.res +27 -0
- package/lib/ocaml/SyncCatalogProduct-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/SyncCatalogProduct-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/SyncCatalogProduct-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/SyncCatalogProduct.ast +0 -0
- package/lib/ocaml/SyncCatalogProduct.res +28 -0
- package/lib/ocaml/SyncCatalogProduct_Behavior-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/SyncCatalogProduct_Behavior-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/SyncCatalogProduct_Behavior-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/SyncCatalogProduct_Behavior.ast +0 -0
- package/lib/ocaml/SyncCatalogProduct_Behavior.res +27 -0
- package/lib/ocaml/SyncCatalogProduct_GWT-OrderingPlugin.cmi +0 -0
- package/lib/ocaml/SyncCatalogProduct_GWT-OrderingPlugin.cmj +0 -0
- package/lib/ocaml/SyncCatalogProduct_GWT-OrderingPlugin.cmt +0 -0
- package/lib/ocaml/SyncCatalogProduct_GWT.ast +0 -0
- package/lib/ocaml/SyncCatalogProduct_GWT.res +27 -0
- package/package.json +52 -0
- package/rescript.json +37 -0
- package/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct.res +28 -0
- package/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct.res.mjs +71 -0
- package/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior.res +27 -0
- package/src/CatalogProduct/StateChangeSlice/SyncCatalogProduct_Behavior.res.mjs +73 -0
- package/src/CatalogProduct/StateViewSlice/AvailableProducts.res +13 -0
- package/src/CatalogProduct/StateViewSlice/AvailableProducts.res.mjs +70 -0
- package/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection.res +8 -0
- package/src/CatalogProduct/StateViewSlice/AvailableProducts_Projection.res.mjs +38 -0
- package/src/Customer/StateChangeSlice/ChangeAddress.res +20 -0
- package/src/Customer/StateChangeSlice/ChangeAddress.res.mjs +58 -0
- package/src/Customer/StateChangeSlice/ChangeAddress_Behavior.res +30 -0
- package/src/Customer/StateChangeSlice/ChangeAddress_Behavior.res.mjs +74 -0
- package/src/Customer/StateChangeSlice/ChangeEmail.res +20 -0
- package/src/Customer/StateChangeSlice/ChangeEmail.res.mjs +58 -0
- package/src/Customer/StateChangeSlice/ChangeEmail_Behavior.res +26 -0
- package/src/Customer/StateChangeSlice/ChangeEmail_Behavior.res.mjs +74 -0
- package/src/Customer/StateChangeSlice/DeactivateCustomer.res +17 -0
- package/src/Customer/StateChangeSlice/DeactivateCustomer.res.mjs +46 -0
- package/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior.res +23 -0
- package/src/Customer/StateChangeSlice/DeactivateCustomer_Behavior.res.mjs +58 -0
- package/src/Customer/StateChangeSlice/RegisterCustomer.res +22 -0
- package/src/Customer/StateChangeSlice/RegisterCustomer.res.mjs +47 -0
- package/src/Customer/StateChangeSlice/RegisterCustomer_Behavior.res +20 -0
- package/src/Customer/StateChangeSlice/RegisterCustomer_Behavior.res.mjs +44 -0
- package/src/Customer/StateViewSlice/Customers.res +18 -0
- package/src/Customer/StateViewSlice/Customers.res.mjs +69 -0
- package/src/Customer/StateViewSlice/Customers_Projection.res +13 -0
- package/src/Customer/StateViewSlice/Customers_Projection.res.mjs +62 -0
- package/src/Extension/Products_Extension.res +23 -0
- package/src/Extension/Products_Extension.res.mjs +43 -0
- package/src/ExtensionPoint/Orders_ExtensionPointMapping.res +33 -0
- package/src/ExtensionPoint/Orders_ExtensionPointMapping.res.mjs +82 -0
- package/src/Order/AutomationSlice/AutoShipOrder.res +19 -0
- package/src/Order/AutomationSlice/AutoShipOrder.res.mjs +42 -0
- package/src/Order/AutomationSlice/AutoShipOrder_Automation.res +36 -0
- package/src/Order/AutomationSlice/AutoShipOrder_Automation.res.mjs +101 -0
- package/src/Order/OutboundTranslationSlice/SendOrderConfirmation.res +19 -0
- package/src/Order/OutboundTranslationSlice/SendOrderConfirmation.res.mjs +42 -0
- package/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res +24 -0
- package/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res.mjs +46 -0
- package/src/Order/StateChangeSlice/CancelOrder.res +24 -0
- package/src/Order/StateChangeSlice/CancelOrder.res.mjs +60 -0
- package/src/Order/StateChangeSlice/CancelOrder_Behavior.res +26 -0
- package/src/Order/StateChangeSlice/CancelOrder_Behavior.res.mjs +81 -0
- package/src/Order/StateChangeSlice/PlaceOrder.res +33 -0
- package/src/Order/StateChangeSlice/PlaceOrder.res.mjs +63 -0
- package/src/Order/StateChangeSlice/PlaceOrder_Behavior.res +44 -0
- package/src/Order/StateChangeSlice/PlaceOrder_Behavior.res.mjs +70 -0
- package/src/Order/StateChangeSlice/ShipOrder.res +21 -0
- package/src/Order/StateChangeSlice/ShipOrder.res.mjs +56 -0
- package/src/Order/StateChangeSlice/ShipOrder_Behavior.res +26 -0
- package/src/Order/StateChangeSlice/ShipOrder_Behavior.res.mjs +73 -0
- package/src/Order/StateViewSlice/Orders.res +23 -0
- package/src/Order/StateViewSlice/Orders.res.mjs +81 -0
- package/src/Order/StateViewSlice/Orders_Projection.res +10 -0
- package/src/Order/StateViewSlice/Orders_Projection.res.mjs +52 -0
- package/src/Plugin.res +64 -0
- package/src/Plugin.res.mjs +346 -0
- package/src/Service/EmailService.res +3 -0
- package/src/Service/EmailService.res.mjs +11 -0
- package/src/plugin.json +1 -0
- package/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT.res +27 -0
- package/tests/CatalogProduct/StateChangeSlice/SyncCatalogProduct_GWT.res.mjs +109 -0
- package/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT.res +15 -0
- package/tests/CatalogProduct/StateViewSlice/AvailableProducts_GWT.res.mjs +93 -0
- package/tests/Customer/StateChangeSlice/ChangeAddress_GWT.res +27 -0
- package/tests/Customer/StateChangeSlice/ChangeAddress_GWT.res.mjs +102 -0
- package/tests/Customer/StateChangeSlice/ChangeEmail_GWT.res +27 -0
- package/tests/Customer/StateChangeSlice/ChangeEmail_GWT.res.mjs +102 -0
- package/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT.res +21 -0
- package/tests/Customer/StateChangeSlice/DeactivateCustomer_GWT.res.mjs +84 -0
- package/tests/Customer/StateChangeSlice/RegisterCustomer_GWT.res +21 -0
- package/tests/Customer/StateChangeSlice/RegisterCustomer_GWT.res.mjs +83 -0
- package/tests/Customer/StateViewSlice/Customers_GWT.res +45 -0
- package/tests/Customer/StateViewSlice/Customers_GWT.res.mjs +124 -0
- package/tests/Extension/Products_Extension_GWT.res +23 -0
- package/tests/Extension/Products_Extension_GWT.res.mjs +108 -0
- package/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT.res +23 -0
- package/tests/ExtensionPoint/Orders_ExtensionPointMapping_GWT.res.mjs +139 -0
- package/tests/Order/AutomationSlice/AutoShipOrder_GWT.res +55 -0
- package/tests/Order/AutomationSlice/AutoShipOrder_GWT.res.mjs +133 -0
- package/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT.res +33 -0
- package/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT.res.mjs +101 -0
- package/tests/Order/StateChangeSlice/CancelOrder_GWT.res +27 -0
- package/tests/Order/StateChangeSlice/CancelOrder_GWT.res.mjs +107 -0
- package/tests/Order/StateChangeSlice/PlaceOrder_GWT.res +39 -0
- package/tests/Order/StateChangeSlice/PlaceOrder_GWT.res.mjs +139 -0
- package/tests/Order/StateChangeSlice/ShipOrder_GWT.res +27 -0
- package/tests/Order/StateChangeSlice/ShipOrder_GWT.res.mjs +91 -0
- package/tests/Order/StateViewSlice/Orders_GWT.res +36 -0
- package/tests/Order/StateViewSlice/Orders_GWT.res.mjs +114 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
@@reventless.automation
|
|
2
|
+
|
|
3
|
+
// Single DCB source — events from the ordering plugin's own event log.
|
|
4
|
+
// `module Id = Reventless.Id.String` and dcbTags on `*Id` fields are
|
|
5
|
+
// auto-injected by `@@reventless.automation` (Source-module scan).
|
|
6
|
+
module OrderingDcbSource = {
|
|
7
|
+
let name = "OrderingDcbEventLog"
|
|
8
|
+
@schema
|
|
9
|
+
type event =
|
|
10
|
+
| OrderPlaced({orderId: string})
|
|
11
|
+
| OrderShipped({orderId: string})
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
module FromOrderingDcb = Mapping.Make(
|
|
15
|
+
OrderingDcbSource,
|
|
16
|
+
AutoShipOrder,
|
|
17
|
+
{
|
|
18
|
+
open OrderingDcbSource
|
|
19
|
+
|
|
20
|
+
let collect = (event, _ctx) =>
|
|
21
|
+
switch event {
|
|
22
|
+
| OrderPlaced({orderId}) => [(orderId, ({orderId: orderId}: AutoShipOrder.todoItem))]
|
|
23
|
+
| OrderShipped(_) => []
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
let resolve = event =>
|
|
27
|
+
switch event {
|
|
28
|
+
| OrderShipped({orderId}) => Some(orderId)
|
|
29
|
+
| OrderPlaced(_) => None
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
let mappings: array<module(Mapping)> = [module(FromOrderingDcb)]
|
|
35
|
+
|
|
36
|
+
let process = (id, _item) => Some((id, ShipOrder({orderId: id})))
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
// `Automation_GWT.Make` expects a single SliceSpec with `collect`, `resolve`
|
|
2
|
+
// and `process` as top-level bindings. The split-form production layout puts
|
|
3
|
+
// `collect`/`resolve` inside the per-source `FromOrderingDcb` mapping, so we
|
|
4
|
+
// compose the pieces locally before handing the result to the DSL.
|
|
5
|
+
|
|
6
|
+
let testContext: Reventless.AutomationSlice.context = {
|
|
7
|
+
environment: "test",
|
|
8
|
+
platformName: "test",
|
|
9
|
+
pluginName: "ordering",
|
|
10
|
+
sliceName: "AutoShipOrder",
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
module AutoShipOrderSlice = {
|
|
14
|
+
include AutoShipOrder
|
|
15
|
+
type consumedEvent = AutoShipOrder_Automation.FromOrderingDcb.sourceEvent
|
|
16
|
+
let consumedEventSchema = AutoShipOrder_Automation.FromOrderingDcb.sourceEventSchema
|
|
17
|
+
|
|
18
|
+
let collect = e => AutoShipOrder_Automation.FromOrderingDcb.collect(e, testContext)
|
|
19
|
+
let resolve = AutoShipOrder_Automation.FromOrderingDcb.resolve
|
|
20
|
+
let process = AutoShipOrder_Automation.process
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@@reventless.gwt
|
|
24
|
+
|
|
25
|
+
describe("AutoShipOrder AutomationSlice", () => {
|
|
26
|
+
test("collect: OrderPlaced creates a pending TODO", () =>
|
|
27
|
+
givenEvent(OrderPlaced({orderId: "o1"}))
|
|
28
|
+
->whenCollect
|
|
29
|
+
->thenTodos([("o1", {orderId: "o1"})])
|
|
30
|
+
)
|
|
31
|
+
|
|
32
|
+
test("collect: OrderShipped is ignored (no TODO)", () =>
|
|
33
|
+
givenEvent(OrderShipped({orderId: "o1"}))
|
|
34
|
+
->whenCollect
|
|
35
|
+
->thenTodos([])
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
test("resolve: OrderShipped marks the TODO done", () =>
|
|
39
|
+
givenEvent(OrderShipped({orderId: "o1"}))
|
|
40
|
+
->whenResolve
|
|
41
|
+
->thenResolved(Some("o1"))
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
test("resolve: OrderPlaced does not mark anything done", () =>
|
|
45
|
+
givenEvent(OrderPlaced({orderId: "o1"}))
|
|
46
|
+
->whenResolve
|
|
47
|
+
->thenResolved(None)
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
test("process: pending TODO emits ShipOrder for the same id", () =>
|
|
51
|
+
givenTodo("o1", {orderId: "o1"})
|
|
52
|
+
->whenProcess
|
|
53
|
+
->thenCommand("o1", ShipOrder({orderId: "o1"}))
|
|
54
|
+
)
|
|
55
|
+
})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// AvailableProducts StateViewSlice.
|
|
2
|
+
// Projects synced catalog product events into a queryable "available products" read model.
|
|
3
|
+
// This view exists to support Order placement and isn't shown in AutoUI panels.
|
|
4
|
+
@@reventless.spec
|
|
5
|
+
@@reventless.visibility(Internal)
|
|
6
|
+
|
|
7
|
+
@schema
|
|
8
|
+
type state = {productId: string, name: string, price: float}
|
|
9
|
+
|
|
10
|
+
@schema
|
|
11
|
+
type consumedEvent =
|
|
12
|
+
| CatalogProductSynced({productId: string, name: string, price: float})
|
|
13
|
+
| CatalogProductPriceChanged({productId: string, price: float})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
@@reventless.gwt
|
|
2
|
+
|
|
3
|
+
describe("AvailableProducts StateViewSlice", () => {
|
|
4
|
+
test("CatalogProductSynced creates a row", () =>
|
|
5
|
+
givenEvents([])
|
|
6
|
+
->whenEvent(CatalogProductSynced({productId: "p1", name: "Laptop", price: 999.99}))
|
|
7
|
+
->thenStateWithId("p1", {productId: "p1", name: "Laptop", price: 999.99})
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
test("CatalogProductPriceChanged updates the price", () =>
|
|
11
|
+
givenEvents([CatalogProductSynced({productId: "p1", name: "Laptop", price: 999.99})])
|
|
12
|
+
->whenEvent(CatalogProductPriceChanged({productId: "p1", price: 899.99}))
|
|
13
|
+
->thenStateWithId("p1", {productId: "p1", name: "Laptop", price: 899.99})
|
|
14
|
+
)
|
|
15
|
+
})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// CancelOrder StateChangeSlice.
|
|
2
|
+
// Requires order to exist and not be shipped; idempotent if already cancelled.
|
|
3
|
+
@@reventless.spec
|
|
4
|
+
|
|
5
|
+
@schema
|
|
6
|
+
type consumedEvent =
|
|
7
|
+
| OrderPlaced({productIds: array<string>})
|
|
8
|
+
| OrderShipped
|
|
9
|
+
| OrderCancelled
|
|
10
|
+
|
|
11
|
+
@schema
|
|
12
|
+
type command =
|
|
13
|
+
| @allowedStates([Orders.Placed]) CancelOrder({orderId: string})
|
|
14
|
+
|
|
15
|
+
@schema
|
|
16
|
+
type error =
|
|
17
|
+
| OrderNotFound
|
|
18
|
+
| OrderAlreadyShipped
|
|
19
|
+
|
|
20
|
+
@schema
|
|
21
|
+
type event = OrderCancelled({
|
|
22
|
+
@partitionTag orderId: string,
|
|
23
|
+
productIds: array<string>,
|
|
24
|
+
})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
@@reventless.behavior
|
|
2
|
+
|
|
3
|
+
type state = {exists: bool, shipped: bool, cancelled: bool, productIds: array<string>}
|
|
4
|
+
|
|
5
|
+
let initialState = {exists: false, shipped: false, cancelled: false, productIds: []}
|
|
6
|
+
|
|
7
|
+
let evolve = (state, event) =>
|
|
8
|
+
switch event {
|
|
9
|
+
| OrderPlaced({productIds}) => {exists: true, shipped: false, cancelled: false, productIds}
|
|
10
|
+
| OrderShipped => {...state, shipped: true}
|
|
11
|
+
| OrderCancelled => {...state, cancelled: true}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
let decide = (state, command) =>
|
|
15
|
+
switch command {
|
|
16
|
+
| CancelOrder({orderId: theId}) =>
|
|
17
|
+
if !state.exists {
|
|
18
|
+
Error(OrderNotFound)
|
|
19
|
+
} else if state.shipped {
|
|
20
|
+
Error(OrderAlreadyShipped)
|
|
21
|
+
} else if state.cancelled {
|
|
22
|
+
Ok([]) // idempotent — already cancelled
|
|
23
|
+
} else {
|
|
24
|
+
Ok([OrderCancelled({orderId: theId, productIds: state.productIds})])
|
|
25
|
+
}
|
|
26
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
@@reventless.gwt
|
|
2
|
+
|
|
3
|
+
describe("CancelOrder StateChangeSlice", () => {
|
|
4
|
+
test("non-existent order returns OrderNotFound", () =>
|
|
5
|
+
givenEvents([])
|
|
6
|
+
->whenCmd(CancelOrder({orderId: "o1"}))
|
|
7
|
+
->thenError(OrderNotFound)
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
test("placed order produces OrderCancelled with productIds carried over", () =>
|
|
11
|
+
givenEvents([OrderPlaced({productIds: ["p1", "p2"]})])
|
|
12
|
+
->whenCmd(CancelOrder({orderId: "o1"}))
|
|
13
|
+
->thenEvent(OrderCancelled({orderId: "o1", productIds: ["p1", "p2"]}))
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
test("already cancelled order produces no events (idempotent)", () =>
|
|
17
|
+
givenEvents([OrderPlaced({productIds: ["p1"]}), OrderCancelled])
|
|
18
|
+
->whenCmd(CancelOrder({orderId: "o1"}))
|
|
19
|
+
->thenNoEvent
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
test("shipped order returns OrderAlreadyShipped", () =>
|
|
23
|
+
givenEvents([OrderPlaced({productIds: ["p1"]}), OrderShipped])
|
|
24
|
+
->whenCmd(CancelOrder({orderId: "o1"}))
|
|
25
|
+
->thenError(OrderAlreadyShipped)
|
|
26
|
+
)
|
|
27
|
+
})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// ChangeAddress StateChangeSlice.
|
|
2
|
+
// Requires customer to exist and not be deactivated; idempotent when address is unchanged.
|
|
3
|
+
@@reventless.spec
|
|
4
|
+
|
|
5
|
+
@schema
|
|
6
|
+
type consumedEvent =
|
|
7
|
+
| CustomerRegistered({address: string})
|
|
8
|
+
| AddressChanged({address: string})
|
|
9
|
+
| CustomerDeactivated
|
|
10
|
+
|
|
11
|
+
@schema
|
|
12
|
+
type command = ChangeAddress({customerId: string, address: string})
|
|
13
|
+
|
|
14
|
+
@schema
|
|
15
|
+
type error =
|
|
16
|
+
| CustomerNotFound
|
|
17
|
+
| CustomerAlreadyDeactivated
|
|
18
|
+
|
|
19
|
+
@schema
|
|
20
|
+
type event = AddressChanged({customerId: string, address: string})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
@@reventless.behavior
|
|
2
|
+
|
|
3
|
+
type state = {exists: bool, deactivated: bool, currentAddress: string}
|
|
4
|
+
|
|
5
|
+
let initialState = {exists: false, deactivated: false, currentAddress: ""}
|
|
6
|
+
|
|
7
|
+
let evolve = (state, event) =>
|
|
8
|
+
switch event {
|
|
9
|
+
| CustomerRegistered({address}) => {
|
|
10
|
+
exists: true,
|
|
11
|
+
deactivated: false,
|
|
12
|
+
currentAddress: address,
|
|
13
|
+
}
|
|
14
|
+
| AddressChanged({address}) => {...state, currentAddress: address}
|
|
15
|
+
| CustomerDeactivated => {...state, deactivated: true}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
let decide = (state, command) =>
|
|
19
|
+
switch command {
|
|
20
|
+
| ChangeAddress({customerId, address}) =>
|
|
21
|
+
if !state.exists {
|
|
22
|
+
Error(CustomerNotFound)
|
|
23
|
+
} else if state.deactivated {
|
|
24
|
+
Error(CustomerAlreadyDeactivated)
|
|
25
|
+
} else if address == state.currentAddress {
|
|
26
|
+
Ok([]) // idempotent — address unchanged
|
|
27
|
+
} else {
|
|
28
|
+
Ok([AddressChanged({customerId, address})])
|
|
29
|
+
}
|
|
30
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
@@reventless.gwt
|
|
2
|
+
|
|
3
|
+
describe("ChangeAddress StateChangeSlice", () => {
|
|
4
|
+
test("non-existent customer returns CustomerNotFound", () =>
|
|
5
|
+
givenEvents([])
|
|
6
|
+
->whenCmd(ChangeAddress({customerId: "c1", address: "789 Pine"}))
|
|
7
|
+
->thenError(CustomerNotFound)
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
test("active customer produces AddressChanged", () =>
|
|
11
|
+
givenEvents([CustomerRegistered({address: "123 Main"})])
|
|
12
|
+
->whenCmd(ChangeAddress({customerId: "c1", address: "789 Pine"}))
|
|
13
|
+
->thenEvent(AddressChanged({customerId: "c1", address: "789 Pine"}))
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
test("same address produces no events (idempotent)", () =>
|
|
17
|
+
givenEvents([CustomerRegistered({address: "123 Main"})])
|
|
18
|
+
->whenCmd(ChangeAddress({customerId: "c1", address: "123 Main"}))
|
|
19
|
+
->thenNoEvent
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
test("deactivated customer returns CustomerAlreadyDeactivated", () =>
|
|
23
|
+
givenEvents([CustomerRegistered({address: "123 Main"}), CustomerDeactivated])
|
|
24
|
+
->whenCmd(ChangeAddress({customerId: "c1", address: "789 Pine"}))
|
|
25
|
+
->thenError(CustomerAlreadyDeactivated)
|
|
26
|
+
)
|
|
27
|
+
})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// ChangeEmail StateChangeSlice.
|
|
2
|
+
// Requires customer to exist and not be deactivated; idempotent when email is unchanged.
|
|
3
|
+
@@reventless.spec
|
|
4
|
+
|
|
5
|
+
@schema
|
|
6
|
+
type consumedEvent =
|
|
7
|
+
| CustomerRegistered({email: string})
|
|
8
|
+
| EmailChanged({email: string})
|
|
9
|
+
| CustomerDeactivated
|
|
10
|
+
|
|
11
|
+
@schema
|
|
12
|
+
type command = ChangeEmail({customerId: string, email: string})
|
|
13
|
+
|
|
14
|
+
@schema
|
|
15
|
+
type error =
|
|
16
|
+
| CustomerNotFound
|
|
17
|
+
| CustomerAlreadyDeactivated
|
|
18
|
+
|
|
19
|
+
@schema
|
|
20
|
+
type event = EmailChanged({customerId: string, email: string})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
@@reventless.behavior
|
|
2
|
+
|
|
3
|
+
type state = {exists: bool, deactivated: bool, currentEmail: string}
|
|
4
|
+
|
|
5
|
+
let initialState = {exists: false, deactivated: false, currentEmail: ""}
|
|
6
|
+
|
|
7
|
+
let evolve = (state, event) =>
|
|
8
|
+
switch event {
|
|
9
|
+
| CustomerRegistered({email}) => {exists: true, deactivated: false, currentEmail: email}
|
|
10
|
+
| EmailChanged({email}) => {...state, currentEmail: email}
|
|
11
|
+
| CustomerDeactivated => {...state, deactivated: true}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
let decide = (state, command) =>
|
|
15
|
+
switch command {
|
|
16
|
+
| ChangeEmail({customerId, email}) =>
|
|
17
|
+
if !state.exists {
|
|
18
|
+
Error(CustomerNotFound)
|
|
19
|
+
} else if state.deactivated {
|
|
20
|
+
Error(CustomerAlreadyDeactivated)
|
|
21
|
+
} else if email == state.currentEmail {
|
|
22
|
+
Ok([]) // idempotent — email unchanged
|
|
23
|
+
} else {
|
|
24
|
+
Ok([EmailChanged({customerId, email})])
|
|
25
|
+
}
|
|
26
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
@@reventless.gwt
|
|
2
|
+
|
|
3
|
+
describe("ChangeEmail StateChangeSlice", () => {
|
|
4
|
+
test("non-existent customer returns CustomerNotFound", () =>
|
|
5
|
+
givenEvents([])
|
|
6
|
+
->whenCmd(ChangeEmail({customerId: "c1", email: "alice2@x.y"}))
|
|
7
|
+
->thenError(CustomerNotFound)
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
test("active customer produces EmailChanged", () =>
|
|
11
|
+
givenEvents([CustomerRegistered({email: "alice@x.y"})])
|
|
12
|
+
->whenCmd(ChangeEmail({customerId: "c1", email: "alice2@x.y"}))
|
|
13
|
+
->thenEvent(EmailChanged({customerId: "c1", email: "alice2@x.y"}))
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
test("same email produces no events (idempotent)", () =>
|
|
17
|
+
givenEvents([CustomerRegistered({email: "alice@x.y"})])
|
|
18
|
+
->whenCmd(ChangeEmail({customerId: "c1", email: "alice@x.y"}))
|
|
19
|
+
->thenNoEvent
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
test("deactivated customer returns CustomerAlreadyDeactivated", () =>
|
|
23
|
+
givenEvents([CustomerRegistered({email: "alice@x.y"}), CustomerDeactivated])
|
|
24
|
+
->whenCmd(ChangeEmail({customerId: "c1", email: "alice2@x.y"}))
|
|
25
|
+
->thenError(CustomerAlreadyDeactivated)
|
|
26
|
+
)
|
|
27
|
+
})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Customers StateViewSlice.
|
|
2
|
+
// Projects customer events from the shared ordering event log into a Customers read model.
|
|
3
|
+
@@reventless.spec
|
|
4
|
+
|
|
5
|
+
@schema
|
|
6
|
+
type state = {
|
|
7
|
+
customerId: string,
|
|
8
|
+
@displayName email: string,
|
|
9
|
+
address: string,
|
|
10
|
+
deactivated: bool,
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@schema
|
|
14
|
+
type consumedEvent =
|
|
15
|
+
| CustomerRegistered({customerId: string, email: string, address: string})
|
|
16
|
+
| EmailChanged({customerId: string, email: string})
|
|
17
|
+
| AddressChanged({customerId: string, address: string})
|
|
18
|
+
| CustomerDeactivated({customerId: string})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
@@reventless.gwt
|
|
2
|
+
|
|
3
|
+
describe("Customers StateViewSlice", () => {
|
|
4
|
+
test("CustomerRegistered creates a row", () =>
|
|
5
|
+
givenEvents([])
|
|
6
|
+
->whenEvent(CustomerRegistered({customerId: "c1", email: "alice@x.y", address: "123 Main"}))
|
|
7
|
+
->thenStateWithId(
|
|
8
|
+
"c1",
|
|
9
|
+
{customerId: "c1", email: "alice@x.y", address: "123 Main", deactivated: false},
|
|
10
|
+
)
|
|
11
|
+
)
|
|
12
|
+
|
|
13
|
+
test("EmailChanged updates the email", () =>
|
|
14
|
+
givenEvents([
|
|
15
|
+
CustomerRegistered({customerId: "c1", email: "alice@x.y", address: "123 Main"}),
|
|
16
|
+
])
|
|
17
|
+
->whenEvent(EmailChanged({customerId: "c1", email: "alice2@x.y"}))
|
|
18
|
+
->thenStateWithId(
|
|
19
|
+
"c1",
|
|
20
|
+
{customerId: "c1", email: "alice2@x.y", address: "123 Main", deactivated: false},
|
|
21
|
+
)
|
|
22
|
+
)
|
|
23
|
+
|
|
24
|
+
test("AddressChanged updates the address", () =>
|
|
25
|
+
givenEvents([
|
|
26
|
+
CustomerRegistered({customerId: "c1", email: "alice@x.y", address: "123 Main"}),
|
|
27
|
+
])
|
|
28
|
+
->whenEvent(AddressChanged({customerId: "c1", address: "789 Pine"}))
|
|
29
|
+
->thenStateWithId(
|
|
30
|
+
"c1",
|
|
31
|
+
{customerId: "c1", email: "alice@x.y", address: "789 Pine", deactivated: false},
|
|
32
|
+
)
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
test("CustomerDeactivated sets deactivated flag", () =>
|
|
36
|
+
givenEvents([
|
|
37
|
+
CustomerRegistered({customerId: "c1", email: "alice@x.y", address: "123 Main"}),
|
|
38
|
+
])
|
|
39
|
+
->whenEvent(CustomerDeactivated({customerId: "c1"}))
|
|
40
|
+
->thenStateWithId(
|
|
41
|
+
"c1",
|
|
42
|
+
{customerId: "c1", email: "alice@x.y", address: "123 Main", deactivated: true},
|
|
43
|
+
)
|
|
44
|
+
)
|
|
45
|
+
})
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
@@reventless.projection
|
|
2
|
+
|
|
3
|
+
let project = event =>
|
|
4
|
+
switch event {
|
|
5
|
+
| CustomerRegistered({customerId, email, address}) => [
|
|
6
|
+
Set(customerId, {customerId, email, address, deactivated: false}),
|
|
7
|
+
]
|
|
8
|
+
| EmailChanged({customerId, email}) => [Update(customerId, state => {...state, email})]
|
|
9
|
+
| AddressChanged({customerId, address}) => [Update(customerId, state => {...state, address})]
|
|
10
|
+
| CustomerDeactivated({customerId}) => [
|
|
11
|
+
Update(customerId, state => {...state, deactivated: true}),
|
|
12
|
+
]
|
|
13
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// DeactivateCustomer StateChangeSlice.
|
|
2
|
+
// Requires customer to exist; idempotent if already deactivated.
|
|
3
|
+
@@reventless.spec
|
|
4
|
+
|
|
5
|
+
@schema
|
|
6
|
+
type consumedEvent =
|
|
7
|
+
| CustomerRegistered
|
|
8
|
+
| CustomerDeactivated
|
|
9
|
+
|
|
10
|
+
@schema
|
|
11
|
+
type command = DeactivateCustomer({customerId: string})
|
|
12
|
+
|
|
13
|
+
@schema
|
|
14
|
+
type error = CustomerNotFound
|
|
15
|
+
|
|
16
|
+
@schema
|
|
17
|
+
type event = CustomerDeactivated({customerId: string})
|