@eventcatalog/create-eventcatalog 4.3.3 → 4.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (458) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +1 -1
  3. package/templates/default/README-template.md +3 -2
  4. package/templates/default/_data/visualizer-layouts/domains-systems-context/catalog/1.0.0.json +31 -0
  5. package/templates/default/_data/visualizer-layouts/domains-systems-context/customer/1.0.0.json +23 -0
  6. package/templates/default/_data/visualizer-layouts/system-context-map/system-context-map/1.0.0.json +91 -0
  7. package/templates/default/_data/visualizer-layouts/systems-context/customer-management-system/1.0.0.json +23 -0
  8. package/templates/default/components/footer.astro +0 -1
  9. package/templates/default/domains/Catalog/entities/category/index.mdx +36 -0
  10. package/templates/default/domains/Catalog/entities/product/index.mdx +37 -0
  11. package/templates/default/domains/Catalog/entities/product-variant/index.mdx +35 -0
  12. package/templates/default/domains/Catalog/entities/search-document/index.mdx +35 -0
  13. package/templates/default/domains/Catalog/index.mdx +65 -0
  14. package/templates/default/domains/Catalog/systems/product-catalog-system/adrs/adr-001-use-transactional-outbox/index.mdx +43 -0
  15. package/templates/default/domains/Catalog/systems/product-catalog-system/adrs/adr-002-postgres-as-system-of-record/index.mdx +40 -0
  16. package/templates/default/domains/Catalog/systems/product-catalog-system/adrs/adr-003-offload-async-work-to-worker/index.mdx +41 -0
  17. package/templates/default/domains/Catalog/systems/product-catalog-system/containers/product-database/index.mdx +45 -0
  18. package/templates/default/domains/Catalog/systems/product-catalog-system/containers/product-database/schema.sql +33 -0
  19. package/templates/default/domains/Catalog/systems/product-catalog-system/index.mdx +72 -0
  20. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/CreateProduct/index.mdx +32 -0
  21. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/CreateProduct/schema.json +41 -0
  22. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/DeleteProduct/index.mdx +32 -0
  23. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/DeleteProduct/schema.json +19 -0
  24. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/UpdateProduct/index.mdx +32 -0
  25. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/commands/UpdateProduct/schema.json +42 -0
  26. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductCreated/index.mdx +29 -0
  27. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductCreated/schema.json +62 -0
  28. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductDeleted/index.mdx +29 -0
  29. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductDeleted/schema.json +29 -0
  30. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductUpdated/index.mdx +29 -0
  31. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/events/ProductUpdated/schema.json +55 -0
  32. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/index.mdx +69 -0
  33. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/openapi.yml +219 -0
  34. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/queries/GetProduct/index.mdx +32 -0
  35. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductAPI/queries/GetProduct/schema.json +56 -0
  36. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductSearchPublisher/index.mdx +56 -0
  37. package/templates/default/domains/Catalog/systems/product-catalog-system/services/ProductWorker/index.mdx +48 -0
  38. package/templates/default/domains/Catalog/systems/search-system/containers/search-index/index.mdx +39 -0
  39. package/templates/default/domains/Catalog/systems/search-system/flows/ProductSearchIndexing/index.mdx +130 -0
  40. package/templates/default/domains/Catalog/systems/search-system/index.mdx +66 -0
  41. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/index.mdx +44 -0
  42. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/openapi.yml +138 -0
  43. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/queries/SearchProducts/index.mdx +32 -0
  44. package/templates/default/domains/Catalog/systems/search-system/services/SearchAPI/queries/SearchProducts/schema.json +108 -0
  45. package/templates/default/domains/Catalog/systems/search-system/services/SearchIndexer/index.mdx +54 -0
  46. package/templates/default/domains/Catalog/ubiquitous-language.mdx +54 -0
  47. package/templates/default/domains/Customer/entities/authentication-session/index.mdx +35 -0
  48. package/templates/default/domains/Customer/entities/customer-account/index.mdx +36 -0
  49. package/templates/default/domains/Customer/entities/customer-address/index.mdx +35 -0
  50. package/templates/default/domains/Customer/entities/customer-profile/index.mdx +33 -0
  51. package/templates/default/domains/Customer/index.mdx +67 -0
  52. package/templates/default/domains/Customer/systems/customer-management-system/containers/customer-database/index.mdx +43 -0
  53. package/templates/default/domains/Customer/systems/customer-management-system/containers/customer-database/schema.sql +14 -0
  54. package/templates/default/domains/Customer/systems/customer-management-system/index.mdx +60 -0
  55. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/RegisterCustomer/index.mdx +32 -0
  56. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/RegisterCustomer/schema.json +24 -0
  57. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/UpdateCustomer/index.mdx +32 -0
  58. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/commands/UpdateCustomer/schema.json +29 -0
  59. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerRegistered/index.mdx +29 -0
  60. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerRegistered/schema.json +45 -0
  61. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerUpdated/index.mdx +29 -0
  62. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/events/CustomerUpdated/schema.json +42 -0
  63. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/index.mdx +72 -0
  64. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/openapi.yml +164 -0
  65. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/queries/GetCustomer/index.mdx +32 -0
  66. package/templates/default/domains/Customer/systems/customer-management-system/services/CustomerAPI/queries/GetCustomer/schema.json +47 -0
  67. package/templates/default/domains/Customer/systems/identity-provider/containers/user-directory/index.mdx +36 -0
  68. package/templates/default/domains/Customer/systems/identity-provider/index.mdx +54 -0
  69. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/commands/AuthenticateCustomer/index.mdx +32 -0
  70. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/commands/AuthenticateCustomer/schema.json +41 -0
  71. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/events/CustomerAuthenticated/index.mdx +29 -0
  72. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/events/CustomerAuthenticated/schema.json +33 -0
  73. package/templates/default/domains/Customer/systems/identity-provider/services/OAuthAPI/index.mdx +59 -0
  74. package/templates/default/domains/Customer/ubiquitous-language.mdx +48 -0
  75. package/templates/default/domains/Fulfilment/entities/inventory-reservation/index.mdx +39 -0
  76. package/templates/default/domains/Fulfilment/entities/shipment/index.mdx +36 -0
  77. package/templates/default/domains/Fulfilment/entities/stock-item/index.mdx +36 -0
  78. package/templates/default/domains/Fulfilment/entities/warehouse-pick/index.mdx +35 -0
  79. package/templates/default/domains/Fulfilment/index.mdx +83 -0
  80. package/templates/default/domains/Fulfilment/systems/carrier/index.mdx +52 -0
  81. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierShippingAPI/index.mdx +40 -0
  82. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentCreated/index.mdx +29 -0
  83. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentCreated/schema.json +15 -0
  84. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentDelivered/index.mdx +29 -0
  85. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentDelivered/schema.json +13 -0
  86. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentFailed/index.mdx +29 -0
  87. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/events/ShipmentFailed/schema.json +16 -0
  88. package/templates/default/domains/Fulfilment/systems/carrier/services/CarrierTrackingAPI/index.mdx +44 -0
  89. package/templates/default/domains/Fulfilment/systems/inventory-system/containers/inventory-database/index.mdx +35 -0
  90. package/templates/default/domains/Fulfilment/systems/inventory-system/containers/inventory-database/schema.sql +26 -0
  91. package/templates/default/domains/Fulfilment/systems/inventory-system/index.mdx +49 -0
  92. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/commands/ReleaseInventory/index.mdx +32 -0
  93. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/commands/ReleaseInventory/schema.json +14 -0
  94. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryReserved/index.mdx +29 -0
  95. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryReserved/schema.json +24 -0
  96. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryUnavailable/index.mdx +29 -0
  97. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/events/InventoryUnavailable/schema.json +24 -0
  98. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/index.mdx +67 -0
  99. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/queries/GetStockLevel/index.mdx +32 -0
  100. package/templates/default/domains/Fulfilment/systems/inventory-system/services/InventoryService/queries/GetStockLevel/schema.json +25 -0
  101. package/templates/default/domains/Fulfilment/systems/shipping-system/index.mdx +47 -0
  102. package/templates/default/domains/Fulfilment/systems/shipping-system/services/CarrierAdapter/commands/CreateShipment/index.mdx +32 -0
  103. package/templates/default/domains/Fulfilment/systems/shipping-system/services/CarrierAdapter/commands/CreateShipment/schema.json +26 -0
  104. package/templates/default/domains/Fulfilment/systems/shipping-system/services/CarrierAdapter/index.mdx +40 -0
  105. package/templates/default/domains/Fulfilment/systems/shipping-system/services/ShippingAPI/index.mdx +40 -0
  106. package/templates/default/domains/Fulfilment/systems/warehouse-system/containers/warehouse-database/index.mdx +35 -0
  107. package/templates/default/domains/Fulfilment/systems/warehouse-system/containers/warehouse-database/schema.sql +21 -0
  108. package/templates/default/domains/Fulfilment/systems/warehouse-system/index.mdx +53 -0
  109. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/PickingWorker/events/OrderPacked/index.mdx +29 -0
  110. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/PickingWorker/events/OrderPacked/schema.json +13 -0
  111. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/PickingWorker/index.mdx +44 -0
  112. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/WarehouseService/events/OrderReadyForShipping/index.mdx +29 -0
  113. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/WarehouseService/events/OrderReadyForShipping/schema.json +23 -0
  114. package/templates/default/domains/Fulfilment/systems/warehouse-system/services/WarehouseService/index.mdx +53 -0
  115. package/templates/default/domains/Fulfilment/ubiquitous-language.mdx +44 -0
  116. package/templates/default/domains/Ordering/entities/checkout-session/index.mdx +36 -0
  117. package/templates/default/domains/Ordering/entities/order/index.mdx +36 -0
  118. package/templates/default/domains/Ordering/entities/order-line/index.mdx +38 -0
  119. package/templates/default/domains/Ordering/entities/order-status-history/index.mdx +35 -0
  120. package/templates/default/domains/Ordering/flows/PlaceAnOrder/index.mdx +158 -0
  121. package/templates/default/domains/Ordering/index.mdx +70 -0
  122. package/templates/default/domains/Ordering/systems/checkout-system/flows/CheckoutSaga/index.mdx +101 -0
  123. package/templates/default/domains/Ordering/systems/checkout-system/index.mdx +57 -0
  124. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutAPI/index.mdx +53 -0
  125. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/AuthorizePayment/index.mdx +32 -0
  126. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/AuthorizePayment/schema.json +29 -0
  127. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/ReserveInventory/index.mdx +32 -0
  128. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/commands/ReserveInventory/schema.json +37 -0
  129. package/templates/default/domains/Ordering/systems/checkout-system/services/CheckoutOrchestrator/index.mdx +59 -0
  130. package/templates/default/domains/Ordering/systems/order-management-system/containers/order-database/index.mdx +39 -0
  131. package/templates/default/domains/Ordering/systems/order-management-system/containers/order-database/schema.sql +24 -0
  132. package/templates/default/domains/Ordering/systems/order-management-system/flows/OrderCancellation/index.mdx +105 -0
  133. package/templates/default/domains/Ordering/systems/order-management-system/index.mdx +53 -0
  134. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/asyncapi.yml +233 -0
  135. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CancelOrder/index.mdx +32 -0
  136. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CancelOrder/schema.json +19 -0
  137. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CreateOrder/index.mdx +32 -0
  138. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/commands/CreateOrder/schema.json +55 -0
  139. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCancelled/index.mdx +29 -0
  140. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCancelled/schema.json +25 -0
  141. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCompleted/index.mdx +29 -0
  142. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCompleted/schema.json +21 -0
  143. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCreated/index.mdx +29 -0
  144. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/events/OrderCreated/schema.json +29 -0
  145. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/index.mdx +74 -0
  146. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/queries/GetOrder/index.mdx +32 -0
  147. package/templates/default/domains/Ordering/systems/order-management-system/services/OrderService/queries/GetOrder/schema.json +64 -0
  148. package/templates/default/domains/Ordering/ubiquitous-language.mdx +53 -0
  149. package/templates/default/domains/Payments/entities/fraud-check/index.mdx +39 -0
  150. package/templates/default/domains/Payments/entities/payment/index.mdx +36 -0
  151. package/templates/default/domains/Payments/entities/payment-authorization/index.mdx +35 -0
  152. package/templates/default/domains/Payments/entities/refund/index.mdx +36 -0
  153. package/templates/default/domains/Payments/index.mdx +69 -0
  154. package/templates/default/domains/Payments/systems/fraud-detection/index.mdx +49 -0
  155. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckFailed/index.mdx +29 -0
  156. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckFailed/schema.json +22 -0
  157. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckPassed/index.mdx +29 -0
  158. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/events/FraudCheckPassed/schema.json +18 -0
  159. package/templates/default/domains/Payments/systems/fraud-detection/services/FraudAPI/index.mdx +51 -0
  160. package/templates/default/domains/Payments/systems/payment-processing-system/containers/payment-database/index.mdx +39 -0
  161. package/templates/default/domains/Payments/systems/payment-processing-system/containers/payment-database/schema.sql +25 -0
  162. package/templates/default/domains/Payments/systems/payment-processing-system/index.mdx +53 -0
  163. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentAPI/index.mdx +51 -0
  164. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/PaymentRequested/index.mdx +29 -0
  165. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/PaymentRequested/schema.json +19 -0
  166. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/RefundRequested/index.mdx +29 -0
  167. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/events/RefundRequested/schema.json +20 -0
  168. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentWorker/index.mdx +66 -0
  169. package/templates/default/domains/Payments/systems/stripe/index.mdx +52 -0
  170. package/templates/default/domains/Payments/systems/stripe/services/StripePaymentsAPI/index.mdx +42 -0
  171. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentFailed/index.mdx +29 -0
  172. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentFailed/schema.json +16 -0
  173. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentSucceeded/index.mdx +29 -0
  174. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/PaymentSucceeded/schema.json +15 -0
  175. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/RefundProcessed/index.mdx +29 -0
  176. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/events/RefundProcessed/schema.json +14 -0
  177. package/templates/default/domains/Payments/systems/stripe/services/StripeWebhookEndpoint/index.mdx +44 -0
  178. package/templates/default/domains/Payments/ubiquitous-language.mdx +41 -0
  179. package/templates/default/domains/Reviews/asyncapi.yml +181 -0
  180. package/templates/default/domains/Reviews/containers/rating-cache/index.mdx +29 -0
  181. package/templates/default/domains/Reviews/containers/review-database/index.mdx +33 -0
  182. package/templates/default/domains/Reviews/entities/moderation-decision/index.mdx +38 -0
  183. package/templates/default/domains/Reviews/entities/rating-summary/index.mdx +35 -0
  184. package/templates/default/domains/Reviews/entities/review/index.mdx +63 -0
  185. package/templates/default/domains/Reviews/entities/review-flag/index.mdx +35 -0
  186. package/templates/default/domains/Reviews/entities/review-vote/index.mdx +38 -0
  187. package/templates/default/domains/Reviews/flows/review-submission/index.mdx +120 -0
  188. package/templates/default/domains/Reviews/index.mdx +93 -0
  189. package/templates/default/domains/Reviews/openapi.yml +209 -0
  190. package/templates/default/domains/Reviews/services/RatingAggregator/events/rating-updated/index.mdx +29 -0
  191. package/templates/default/domains/Reviews/services/RatingAggregator/events/rating-updated/schema.json +12 -0
  192. package/templates/default/domains/Reviews/services/RatingAggregator/index.mdx +47 -0
  193. package/templates/default/domains/Reviews/services/ReviewAPI/commands/flag-review/index.mdx +29 -0
  194. package/templates/default/domains/Reviews/services/ReviewAPI/commands/flag-review/schema.json +13 -0
  195. package/templates/default/domains/Reviews/services/ReviewAPI/commands/submit-review/index.mdx +29 -0
  196. package/templates/default/domains/Reviews/services/ReviewAPI/commands/submit-review/schema.json +15 -0
  197. package/templates/default/domains/Reviews/services/ReviewAPI/commands/vote-review-helpful/index.mdx +29 -0
  198. package/templates/default/domains/Reviews/services/ReviewAPI/commands/vote-review-helpful/schema.json +12 -0
  199. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-flagged/index.mdx +29 -0
  200. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-flagged/schema.json +13 -0
  201. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-helpful-voted/index.mdx +29 -0
  202. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-helpful-voted/schema.json +12 -0
  203. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-submitted/index.mdx +29 -0
  204. package/templates/default/domains/Reviews/services/ReviewAPI/events/review-submitted/schema.json +15 -0
  205. package/templates/default/domains/Reviews/services/ReviewAPI/index.mdx +58 -0
  206. package/templates/default/domains/Reviews/services/ReviewAPI/queries/get-product-reviews/index.mdx +24 -0
  207. package/templates/default/domains/Reviews/services/ReviewAPI/queries/get-product-reviews/schema.json +12 -0
  208. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-published/index.mdx +29 -0
  209. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-published/schema.json +13 -0
  210. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-rejected/index.mdx +29 -0
  211. package/templates/default/domains/Reviews/services/ReviewModerationWorker/events/review-rejected/schema.json +12 -0
  212. package/templates/default/domains/Reviews/services/ReviewModerationWorker/index.mdx +50 -0
  213. package/templates/default/domains/Shopping/entities/cart/index.mdx +40 -0
  214. package/templates/default/domains/Shopping/entities/cart-item/index.mdx +38 -0
  215. package/templates/default/domains/Shopping/entities/discount/index.mdx +35 -0
  216. package/templates/default/domains/Shopping/entities/promotion/index.mdx +40 -0
  217. package/templates/default/domains/Shopping/index.mdx +67 -0
  218. package/templates/default/domains/Shopping/systems/cart-system/containers/cart-database/index.mdx +39 -0
  219. package/templates/default/domains/Shopping/systems/cart-system/containers/cart-database/schema.sql +22 -0
  220. package/templates/default/domains/Shopping/systems/cart-system/index.mdx +53 -0
  221. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/AddItemToCart/index.mdx +32 -0
  222. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/AddItemToCart/schema.json +25 -0
  223. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/CheckoutCart/index.mdx +32 -0
  224. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/CheckoutCart/schema.json +23 -0
  225. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/RemoveItemFromCart/index.mdx +32 -0
  226. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/commands/RemoveItemFromCart/schema.json +24 -0
  227. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/events/CartCheckedOut/index.mdx +29 -0
  228. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/events/CartCheckedOut/schema.json +62 -0
  229. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/index.mdx +72 -0
  230. package/templates/default/domains/Shopping/systems/cart-system/services/CartAPI/openapi.yml +200 -0
  231. package/templates/default/domains/Shopping/systems/promotion-system/containers/promotion-database/index.mdx +40 -0
  232. package/templates/default/domains/Shopping/systems/promotion-system/containers/promotion-database/schema.sql +21 -0
  233. package/templates/default/domains/Shopping/systems/promotion-system/index.mdx +48 -0
  234. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/commands/CalculateDiscount/index.mdx +32 -0
  235. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/commands/CalculateDiscount/schema.json +53 -0
  236. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/events/DiscountCalculated/index.mdx +29 -0
  237. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/events/DiscountCalculated/schema.json +37 -0
  238. package/templates/default/domains/Shopping/systems/promotion-system/services/PromotionService/index.mdx +59 -0
  239. package/templates/default/domains/Shopping/ubiquitous-language.mdx +48 -0
  240. package/templates/default/eventcatalog.config.js +13 -0
  241. package/templates/default/pages/homepage.astro +109 -0
  242. package/templates/default/public/icons/analytics/clickhouse.svg +1 -0
  243. package/templates/default/public/icons/cache/redis.svg +1 -0
  244. package/templates/default/public/icons/database/postgresql.svg +1 -0
  245. package/templates/default/public/icons/languages/go.svg +1 -0
  246. package/templates/default/public/icons/languages/java.svg +1 -0
  247. package/templates/default/public/icons/languages/nodejs.svg +1 -0
  248. package/templates/default/public/icons/payments/stripe.svg +1 -0
  249. package/templates/default/teams/customer-platform.mdx +18 -0
  250. package/templates/default/teams/fulfilment-platform.mdx +20 -0
  251. package/templates/default/teams/ordering-platform.mdx +18 -0
  252. package/templates/default/teams/payments-platform.mdx +18 -0
  253. package/templates/default/teams/product-platform.mdx +20 -0
  254. package/templates/default/teams/reviews-platform.mdx +20 -0
  255. package/templates/default/teams/search-platform.mdx +19 -0
  256. package/templates/default/teams/shopping-platform.mdx +18 -0
  257. package/templates/default/users/dboyne.mdx +1 -1
  258. package/templates/default/channels/inventory.{env}.events/index.mdx +0 -159
  259. package/templates/default/channels/orders.{env}.events/index.mdx +0 -85
  260. package/templates/default/channels/payment.{env}.events/index.mdx +0 -89
  261. package/templates/default/domains/E-Commerce/index.mdx +0 -140
  262. package/templates/default/domains/E-Commerce/ubiquitous-language.mdx +0 -87
  263. package/templates/default/domains/Orders/changelog.mdx +0 -7
  264. package/templates/default/domains/Orders/entities/CartItem/index.mdx +0 -124
  265. package/templates/default/domains/Orders/entities/Customer/index.mdx +0 -59
  266. package/templates/default/domains/Orders/entities/Order/index.mdx +0 -98
  267. package/templates/default/domains/Orders/entities/OrderItem/index.mdx +0 -62
  268. package/templates/default/domains/Orders/entities/ShoppingCart/index.mdx +0 -151
  269. package/templates/default/domains/Orders/index.mdx +0 -117
  270. package/templates/default/domains/Orders/services/InventoryService/changelog.mdx +0 -7
  271. package/templates/default/domains/Orders/services/InventoryService/channels/inventory-dlq/index.mdx +0 -13
  272. package/templates/default/domains/Orders/services/InventoryService/channels/inventory-queue/index.mdx +0 -13
  273. package/templates/default/domains/Orders/services/InventoryService/commands/AddInventory/index.mdx +0 -45
  274. package/templates/default/domains/Orders/services/InventoryService/commands/AddInventory/schema.json +0 -28
  275. package/templates/default/domains/Orders/services/InventoryService/commands/PlaceOrder/index.mdx +0 -34
  276. package/templates/default/domains/Orders/services/InventoryService/commands/PlaceOrder/schema.json +0 -124
  277. package/templates/default/domains/Orders/services/InventoryService/commands/UpdateInventory/index.mdx +0 -47
  278. package/templates/default/domains/Orders/services/InventoryService/commands/UpdateInventory/schema.json +0 -28
  279. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/changelog.mdx +0 -67
  280. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/examples/examples.config.yaml +0 -15
  281. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/examples/stock-decrease.json +0 -23
  282. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/examples/stock-increase.json +0 -23
  283. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/index.mdx +0 -124
  284. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/schema.avro +0 -13
  285. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/schema.json +0 -35
  286. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/changelog.mdx +0 -26
  287. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/index.mdx +0 -23
  288. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/schema.avro +0 -9
  289. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/0.0.1/schema.json +0 -36
  290. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/changelog.mdx +0 -26
  291. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/index.mdx +0 -108
  292. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/schema.avro +0 -10
  293. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/versioned/1.0.0/schema.json +0 -36
  294. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/examples/examples.config.yaml +0 -7
  295. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/examples/product-depleted.json +0 -19
  296. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/index.mdx +0 -102
  297. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/schema.json +0 -28
  298. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/versioned/0.0.1/index.mdx +0 -98
  299. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/versioned/0.0.1/schema.json +0 -28
  300. package/templates/default/domains/Orders/services/InventoryService/index.mdx +0 -120
  301. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryList/index.mdx +0 -22
  302. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryList/schema.json +0 -52
  303. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryStatus/index.mdx +0 -40
  304. package/templates/default/domains/Orders/services/InventoryService/queries/GetInventoryStatus/schema.json +0 -27
  305. package/templates/default/domains/Orders/services/InventoryService/versioned/0.0.1/index.mdx +0 -52
  306. package/templates/default/domains/Orders/services/NotificationService/index.mdx +0 -82
  307. package/templates/default/domains/Orders/services/NotificationService/queries/GetNotificationDetails/index.mdx +0 -26
  308. package/templates/default/domains/Orders/services/NotificationService/queries/GetNotificationDetails/schema.json +0 -55
  309. package/templates/default/domains/Orders/services/NotificationService/queries/GetUserNotifications/index.mdx +0 -26
  310. package/templates/default/domains/Orders/services/NotificationService/queries/GetUserNotifications/schema.json +0 -46
  311. package/templates/default/domains/Orders/services/OrdersService/changelog.mdx +0 -3
  312. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/examples/address-change.json +0 -36
  313. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/examples/examples.config.yaml +0 -15
  314. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/examples/quantity-change.json +0 -29
  315. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/index.mdx +0 -58
  316. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/schema.avro +0 -75
  317. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/schema.json +0 -70
  318. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/examples/customer-request.json +0 -34
  319. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/examples/examples.config.yaml +0 -15
  320. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/examples/out-of-stock.json +0 -28
  321. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/index.mdx +0 -54
  322. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/schema.json +0 -71
  323. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/examples/examples.config.yaml +0 -15
  324. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/examples/gift-order.json +0 -38
  325. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/examples/standard-order.json +0 -42
  326. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/index.mdx +0 -55
  327. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/schema.json +0 -66
  328. package/templates/default/domains/Orders/services/OrdersService/index.mdx +0 -81
  329. package/templates/default/domains/Orders/services/OrdersService/openapi.yml +0 -185
  330. package/templates/default/domains/Orders/services/OrdersService/order-service-asyncapi.yaml +0 -148
  331. package/templates/default/domains/Orders/services/OrdersService/queries/GetOrder/index.mdx +0 -26
  332. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/changelog.mdx +0 -3
  333. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/index.mdx +0 -40
  334. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/openapi.yml +0 -96
  335. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/order-service-asyncapi.yaml +0 -148
  336. package/templates/default/domains/Orders/services/ShippingService/commands/CancelShipment/index.mdx +0 -22
  337. package/templates/default/domains/Orders/services/ShippingService/commands/CancelShipment/schema.json +0 -13
  338. package/templates/default/domains/Orders/services/ShippingService/commands/CreateReturnLabel/index.mdx +0 -22
  339. package/templates/default/domains/Orders/services/ShippingService/commands/CreateReturnLabel/schema.json +0 -19
  340. package/templates/default/domains/Orders/services/ShippingService/commands/CreateShipment/index.mdx +0 -22
  341. package/templates/default/domains/Orders/services/ShippingService/commands/CreateShipment/schema.json +0 -62
  342. package/templates/default/domains/Orders/services/ShippingService/commands/UpdateShipmentStatus/index.mdx +0 -22
  343. package/templates/default/domains/Orders/services/ShippingService/commands/UpdateShipmentStatus/schema.json +0 -29
  344. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/address-not-found.json +0 -23
  345. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/customer-unavailable.json +0 -40
  346. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/damaged-in-transit.json +0 -33
  347. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/examples/examples.config.yaml +0 -23
  348. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/index.mdx +0 -22
  349. package/templates/default/domains/Orders/services/ShippingService/events/DeliveryFailed/schema.json +0 -17
  350. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/examples/defective-item.json +0 -33
  351. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/examples/examples.config.yaml +0 -15
  352. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/examples/wrong-item.json +0 -51
  353. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/index.mdx +0 -22
  354. package/templates/default/domains/Orders/services/ShippingService/events/ReturnInitiated/schema.json +0 -17
  355. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/examples/examples.config.yaml +0 -15
  356. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/examples/multi-package.json +0 -76
  357. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/examples/single-package.json +0 -51
  358. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/index.mdx +0 -22
  359. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentCreated/schema.json +0 -64
  360. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/examples/examples.config.yaml +0 -15
  361. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/examples/front-door-delivery.json +0 -30
  362. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/examples/signed-delivery.json +0 -31
  363. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/index.mdx +0 -22
  364. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDelivered/schema.json +0 -17
  365. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/examples/examples.config.yaml +0 -15
  366. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/examples/express-shipping.json +0 -33
  367. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/examples/standard-shipping.json +0 -32
  368. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/index.mdx +0 -22
  369. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentDispatched/schema.json +0 -17
  370. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/examples/domestic-transit.json +0 -48
  371. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/examples/examples.config.yaml +0 -15
  372. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/examples/international-transit.json +0 -61
  373. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/index.mdx +0 -22
  374. package/templates/default/domains/Orders/services/ShippingService/events/ShipmentInTransit/schema.json +0 -17
  375. package/templates/default/domains/Orders/services/ShippingService/index.mdx +0 -61
  376. package/templates/default/domains/Orders/ubiquitous-language.mdx +0 -127
  377. package/templates/default/domains/Orders/versioned/0.0.1/index.mdx +0 -21
  378. package/templates/default/domains/Orders/versioned/0.0.2/index.mdx +0 -50
  379. package/templates/default/domains/Payment/entities/Address/index.mdx +0 -165
  380. package/templates/default/domains/Payment/entities/Invoice/index.mdx +0 -92
  381. package/templates/default/domains/Payment/entities/Payment/index.mdx +0 -140
  382. package/templates/default/domains/Payment/entities/PaymentMethod/index.mdx +0 -80
  383. package/templates/default/domains/Payment/entities/Transaction/index.mdx +0 -80
  384. package/templates/default/domains/Payment/flows/PaymentProcessed/index.mdx +0 -82
  385. package/templates/default/domains/Payment/index.mdx +0 -40
  386. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/examples/check-flagged.json +0 -50
  387. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/examples/check-passed.json +0 -45
  388. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/examples/examples.config.yaml +0 -15
  389. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/index.mdx +0 -50
  390. package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/schema.json +0 -44
  391. package/templates/default/domains/Payment/services/FraudDetectionService/index.mdx +0 -62
  392. package/templates/default/domains/Payment/services/PaymentGatewayService/commands/ProcessPayment/index.mdx +0 -75
  393. package/templates/default/domains/Payment/services/PaymentGatewayService/commands/ProcessPayment/schema.json +0 -58
  394. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/card-declined.json +0 -38
  395. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/examples.config.yaml +0 -23
  396. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/expired-card.json +0 -38
  397. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/examples/insufficient-funds.json +0 -38
  398. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/index.mdx +0 -64
  399. package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/schema.json +0 -68
  400. package/templates/default/domains/Payment/services/PaymentGatewayService/index.mdx +0 -71
  401. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/examples/examples.config.yaml +0 -15
  402. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/examples/express-checkout.json +0 -45
  403. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/examples/standard-checkout.json +0 -52
  404. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/index.mdx +0 -37
  405. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/schema.json +0 -31
  406. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/examples/examples.config.yaml +0 -15
  407. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/examples/international-payment.json +0 -48
  408. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/examples/successful-payment.json +0 -48
  409. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/index.mdx +0 -43
  410. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/schema.json +0 -54
  411. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/versioned/0.0.1/index.mdx +0 -43
  412. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/versioned/0.0.1/schema.json +0 -54
  413. package/templates/default/domains/Payment/services/PaymentService/index.mdx +0 -41
  414. package/templates/default/domains/Payment/services/PaymentService/queries/GetPaymentStatus/index.mdx +0 -26
  415. package/templates/default/domains/Payment/services/PaymentService/queries/GetPaymentStatus/schema.json +0 -39
  416. package/templates/default/domains/Payment/ubiquitous-language.mdx +0 -96
  417. package/templates/default/domains/ProductCatalog/entities/Category/index.mdx +0 -127
  418. package/templates/default/domains/ProductCatalog/entities/Inventory/index.mdx +0 -119
  419. package/templates/default/domains/ProductCatalog/entities/Product/index.mdx +0 -118
  420. package/templates/default/domains/ProductCatalog/entities/Review/index.mdx +0 -157
  421. package/templates/default/domains/ProductCatalog/index.mdx +0 -73
  422. package/templates/default/domains/ProductCatalog/ubiquitous-language.mdx +0 -88
  423. package/templates/default/domains/Subscriptions/entities/BillingProfile/index.mdx +0 -71
  424. package/templates/default/domains/Subscriptions/entities/SubscriptionPeriod/index.mdx +0 -76
  425. package/templates/default/domains/Subscriptions/flows/CancelSubscription/SubscriptionRenewed/index.mdx +0 -300
  426. package/templates/default/domains/Subscriptions/flows/CancelSubscription/index.mdx +0 -69
  427. package/templates/default/domains/Subscriptions/flows/CancelSubscription/versioned/0.0.1/index.mdx +0 -51
  428. package/templates/default/domains/Subscriptions/index.mdx +0 -35
  429. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/examples/examples.config.yaml +0 -7
  430. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/examples/upcoming-renewal.json +0 -28
  431. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/index.mdx +0 -63
  432. package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/schema.json +0 -54
  433. package/templates/default/domains/Subscriptions/services/BillingService/index.mdx +0 -83
  434. package/templates/default/domains/Subscriptions/services/PlanManagementService/index.mdx +0 -83
  435. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/CancelSubscription/index.mdx +0 -26
  436. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/CancelSubscription/schema.json +0 -30
  437. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/SubscribeUser/index.mdx +0 -26
  438. package/templates/default/domains/Subscriptions/services/SubscriptionService/commands/SubscribeUser/schema.json +0 -31
  439. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/examples/examples.config.yaml +0 -15
  440. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/examples/payment-failure.json +0 -25
  441. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/examples/voluntary-cancellation.json +0 -23
  442. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/index.mdx +0 -26
  443. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionCancelled/schema.json +0 -35
  444. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/examples/annual-plan.json +0 -26
  445. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/examples/examples.config.yaml +0 -15
  446. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/examples/monthly-plan.json +0 -25
  447. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/index.mdx +0 -26
  448. package/templates/default/domains/Subscriptions/services/SubscriptionService/events/UserSubscriptionStarted/schema.json +0 -36
  449. package/templates/default/domains/Subscriptions/services/SubscriptionService/index.mdx +0 -62
  450. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/index.mdx +0 -26
  451. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/schema.json +0 -54
  452. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/versioned/0.0.1/index.mdx +0 -26
  453. package/templates/default/domains/Subscriptions/services/SubscriptionService/queries/GetSubscriptionStatus/versioned/0.0.1/schema.json +0 -54
  454. package/templates/default/domains/Subscriptions/ubiquitous-language.mdx +0 -129
  455. package/templates/default/teams/full-stack.mdx +0 -26
  456. package/templates/default/teams/mobile-devs.mdx +0 -23
  457. package/templates/default/users/aSmith.mdx +0 -27
  458. package/templates/default/users/mSmith.mdx +0 -9
@@ -0,0 +1,29 @@
1
+ ---
2
+ id: shipment-delivered
3
+ name: Shipment Delivered
4
+ version: 1.0.0
5
+ summary: |
6
+ Published by the carrier when a shipment has been delivered to the customer.
7
+ owners:
8
+ - fulfilment-platform
9
+ badges:
10
+ - content: 'Broker:Kafka'
11
+ backgroundColor: blue
12
+ textColor: blue
13
+ icon: BoltIcon
14
+ schemaPath: schema.json
15
+ ---
16
+
17
+ import Footer from '@catalog/components/footer.astro';
18
+
19
+ ## Overview
20
+
21
+ `ShipmentDelivered` is published by the carrier's [[service|carrier-tracking-api]] when a shipment reaches the customer. This is the happy-path end of the fulfilment journey — Acme Inc consumes it to close out the order and prompt the customer for feedback.
22
+
23
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
24
+
25
+ ## Architecture diagram
26
+
27
+ <NodeGraph />
28
+
29
+ <Footer />
@@ -0,0 +1,13 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "ShipmentDelivered",
4
+ "description": "Published when a shipment has been delivered to the customer",
5
+ "type": "object",
6
+ "properties": {
7
+ "shipmentId": { "type": "string", "format": "uuid" },
8
+ "orderId": { "type": "string", "format": "uuid" },
9
+ "deliveredAt": { "type": "string", "format": "date-time" },
10
+ "signedBy": { "type": "string", "description": "Name of the person who accepted delivery, if captured" }
11
+ },
12
+ "required": ["shipmentId", "orderId", "deliveredAt"]
13
+ }
@@ -0,0 +1,29 @@
1
+ ---
2
+ id: shipment-failed
3
+ name: Shipment Failed
4
+ version: 1.0.0
5
+ summary: |
6
+ Published by the carrier when a shipment could not be delivered.
7
+ owners:
8
+ - fulfilment-platform
9
+ badges:
10
+ - content: 'Broker:Kafka'
11
+ backgroundColor: blue
12
+ textColor: blue
13
+ icon: BoltIcon
14
+ schemaPath: schema.json
15
+ ---
16
+
17
+ import Footer from '@catalog/components/footer.astro';
18
+
19
+ ## Overview
20
+
21
+ `ShipmentFailed` is published by the carrier's [[service|carrier-tracking-api]] when a shipment cannot be delivered — for example a failed delivery attempt or a lost parcel. Acme Inc consumes it to trigger a redelivery, refund, or customer follow-up.
22
+
23
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
24
+
25
+ ## Architecture diagram
26
+
27
+ <NodeGraph />
28
+
29
+ <Footer />
@@ -0,0 +1,16 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "ShipmentFailed",
4
+ "description": "Published when a shipment could not be delivered",
5
+ "type": "object",
6
+ "properties": {
7
+ "shipmentId": { "type": "string", "format": "uuid" },
8
+ "orderId": { "type": "string", "format": "uuid" },
9
+ "reason": {
10
+ "type": "string",
11
+ "enum": ["FAILED_DELIVERY", "LOST", "DAMAGED", "RETURNED_TO_SENDER"]
12
+ },
13
+ "failedAt": { "type": "string", "format": "date-time" }
14
+ },
15
+ "required": ["shipmentId", "orderId", "reason", "failedAt"]
16
+ }
@@ -0,0 +1,44 @@
1
+ ---
2
+ id: carrier-tracking-api
3
+ version: 1.0.0
4
+ name: Tracking API
5
+ summary: |
6
+ The carrier's API for reporting delivery progress. It notifies Acme Inc when a shipment is created, delivered, or fails.
7
+ styles:
8
+ icon: /icons/languages/nodejs.svg
9
+ owners:
10
+ - fulfilment-platform
11
+ sends:
12
+ - id: shipment-created
13
+ version: 1.0.0
14
+ - id: shipment-delivered
15
+ version: 1.0.0
16
+ - id: shipment-failed
17
+ version: 1.0.0
18
+ repository:
19
+ language: External
20
+ url: 'https://github.com/acme/carrier-integration'
21
+ ---
22
+
23
+ import Footer from '@catalog/components/footer.astro';
24
+
25
+ ## Overview
26
+
27
+ The **Tracking API** is how the carrier reports delivery progress back to Acme Inc. After a shipment is created via the [[service|carrier-shipping-api]], it emits [[event|shipment-created]], then [[event|shipment-delivered]] on success or [[event|shipment-failed]] if delivery cannot be completed.
28
+
29
+ <Tiles>
30
+ <Tile
31
+ icon="BoltIcon"
32
+ href={`/visualiser/services/${frontmatter.id}/${frontmatter.version}`}
33
+ title={`Sends ${frontmatter.sends.length} messages`}
34
+ description="Shipment lifecycle events"
35
+ />
36
+ </Tiles>
37
+
38
+ ## Architecture diagram
39
+
40
+ <NodeGraph />
41
+
42
+ <MessageTable format="all" limit={8} />
43
+
44
+ <Footer />
@@ -0,0 +1,35 @@
1
+ ---
2
+ id: inventory-database
3
+ name: Inventory Database
4
+ version: 1.0.0
5
+ summary: PostgreSQL database that is the system of record for stock levels and reservations.
6
+ container_type: database
7
+ technology: postgres@16
8
+ authoritative: true
9
+ access_mode: readWrite
10
+ purpose: System of record for stock levels and reservations
11
+ classification: internal
12
+ retention: 3y
13
+ residency: eu-west-1
14
+ styles:
15
+ icon: /icons/database/postgresql.svg
16
+ ---
17
+
18
+ <NodeGraph />
19
+
20
+ ### What is this?
21
+
22
+ The **Inventory Database** is the authoritative store for stock levels at Acme Inc. The [[service|inventory-service]] reads from and writes to it as stock is reserved and released.
23
+
24
+ ### What does it store?
25
+
26
+ - **Stock** — one row per product: available quantity and reserved quantity.
27
+ - **Reservations** — one row per reservation: id, order, items and status.
28
+
29
+ ### Schema
30
+
31
+ <AccordionGroup>
32
+ <Accordion title="Inventory Database schema">
33
+ <Schema file="schema.sql" lang="sql" title="schema.sql" />
34
+ </Accordion>
35
+ </AccordionGroup>
@@ -0,0 +1,26 @@
1
+ -- Inventory Database — system of record for stock levels and reservations
2
+
3
+ CREATE TABLE stock (
4
+ product_id UUID PRIMARY KEY,
5
+ available INTEGER NOT NULL DEFAULT 0 CHECK (available >= 0),
6
+ reserved INTEGER NOT NULL DEFAULT 0 CHECK (reserved >= 0),
7
+ updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
8
+ );
9
+
10
+ CREATE TABLE reservations (
11
+ reservation_id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
12
+ order_id UUID,
13
+ cart_id UUID,
14
+ status TEXT NOT NULL DEFAULT 'HELD'
15
+ CHECK (status IN ('HELD', 'RELEASED', 'CONSUMED')),
16
+ created_at TIMESTAMPTZ NOT NULL DEFAULT now()
17
+ );
18
+
19
+ CREATE TABLE reservation_items (
20
+ reservation_id UUID NOT NULL REFERENCES reservations (reservation_id) ON DELETE CASCADE,
21
+ product_id UUID NOT NULL,
22
+ quantity INTEGER NOT NULL CHECK (quantity > 0),
23
+ PRIMARY KEY (reservation_id, product_id)
24
+ );
25
+
26
+ CREATE INDEX idx_reservations_order ON reservations (order_id);
@@ -0,0 +1,49 @@
1
+ ---
2
+ id: inventory-system
3
+ name: Inventory System
4
+ version: 1.0.0
5
+ summary: |
6
+ Internal system that tracks stock and reserves it for orders. It is the source of truth for available inventory and confirms whether stock can be reserved.
7
+ owners:
8
+ - fulfilment-platform
9
+ services:
10
+ - id: inventory-service
11
+ containers:
12
+ - id: inventory-database
13
+ relationships:
14
+ - id: warehouse-system
15
+ label: provides stock for
16
+ badges:
17
+ - content: Internal
18
+ backgroundColor: gray
19
+ textColor: gray
20
+ icon: LockClosedIcon
21
+ ---
22
+
23
+ ## Overview
24
+
25
+ The **Inventory System** owns stock levels at Acme Inc. During checkout it receives [[command|reserve-inventory]] and confirms whether stock is available — replying with [[event|inventory-reserved]] or [[event|inventory-unavailable]]. It also handles [[command|release-inventory]] (when a reservation is no longer needed) and serves [[query|get-stock-level]] lookups from the [[container|inventory-database]].
26
+
27
+ ## Context Diagram
28
+
29
+ How this system relates to the other systems around it.
30
+
31
+ <ContextDiagram />
32
+
33
+ ## Resource Diagram
34
+
35
+ The services, data stores and messages that make up this system.
36
+
37
+ <NodeGraph />
38
+
39
+ ## What's inside
40
+
41
+ | Component | Type | Responsibility |
42
+ | --------------------------------- | ---------- | ---------------------------------------------------------------------------------------- |
43
+ | [[service\|inventory-service]] | Service | Reserves and releases stock, serves stock-level queries, and publishes inventory events. |
44
+ | [[container\|inventory-database]] | Data store | PostgreSQL system of record for stock levels and reservations. |
45
+
46
+ ## Messages this system publishes
47
+
48
+ - [[event\|inventory-reserved]] — stock was successfully reserved for an order.
49
+ - [[event\|inventory-unavailable]] — stock could not be reserved.
@@ -0,0 +1,32 @@
1
+ ---
2
+ id: release-inventory
3
+ name: Release Inventory
4
+ version: 1.0.0
5
+ summary: |
6
+ Command to release a previously held inventory reservation.
7
+ owners:
8
+ - fulfilment-platform
9
+ schemaPath: schema.json
10
+ operation:
11
+ method: POST
12
+ path: /reservations/{reservationId}/release
13
+ statusCodes: ['200', '404']
14
+ sidebar:
15
+ badge: 'POST'
16
+ ---
17
+
18
+ import Footer from '@catalog/components/footer.astro';
19
+
20
+ ## Overview
21
+
22
+ `ReleaseInventory` is handled by the [[service|inventory-service]]. It releases a reservation that is no longer needed — for example when checkout fails after stock was reserved, or an order is cancelled.
23
+
24
+ ## Architecture diagram
25
+
26
+ <NodeGraph />
27
+
28
+ ## Schema
29
+
30
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
31
+
32
+ <Footer />
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "ReleaseInventory",
4
+ "description": "Command to release a previously held inventory reservation",
5
+ "type": "object",
6
+ "properties": {
7
+ "reservationId": { "type": "string", "format": "uuid" },
8
+ "reason": {
9
+ "type": "string",
10
+ "enum": ["CHECKOUT_FAILED", "ORDER_CANCELLED", "EXPIRED"]
11
+ }
12
+ },
13
+ "required": ["reservationId"]
14
+ }
@@ -0,0 +1,29 @@
1
+ ---
2
+ id: inventory-reserved
3
+ name: Inventory Reserved
4
+ version: 1.0.0
5
+ summary: |
6
+ Published when stock has been successfully reserved for an order.
7
+ owners:
8
+ - fulfilment-platform
9
+ badges:
10
+ - content: 'Broker:Kafka'
11
+ backgroundColor: blue
12
+ textColor: blue
13
+ icon: BoltIcon
14
+ schemaPath: schema.json
15
+ ---
16
+
17
+ import Footer from '@catalog/components/footer.astro';
18
+
19
+ ## Overview
20
+
21
+ `InventoryReserved` is published by the [[service|inventory-service]] when stock for an order has been successfully reserved. The Ordering domain's checkout saga relies on this to continue placing the order.
22
+
23
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
24
+
25
+ ## Architecture diagram
26
+
27
+ <NodeGraph />
28
+
29
+ <Footer />
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "InventoryReserved",
4
+ "description": "Published when stock has been successfully reserved for an order",
5
+ "type": "object",
6
+ "properties": {
7
+ "reservationId": { "type": "string", "format": "uuid" },
8
+ "orderId": { "type": "string", "format": "uuid" },
9
+ "cartId": { "type": "string", "format": "uuid" },
10
+ "items": {
11
+ "type": "array",
12
+ "items": {
13
+ "type": "object",
14
+ "properties": {
15
+ "productId": { "type": "string", "format": "uuid" },
16
+ "quantity": { "type": "integer", "minimum": 1 }
17
+ },
18
+ "required": ["productId", "quantity"]
19
+ }
20
+ },
21
+ "reservedAt": { "type": "string", "format": "date-time" }
22
+ },
23
+ "required": ["reservationId", "items", "reservedAt"]
24
+ }
@@ -0,0 +1,29 @@
1
+ ---
2
+ id: inventory-unavailable
3
+ name: Inventory Unavailable
4
+ version: 1.0.0
5
+ summary: |
6
+ Published when stock could not be reserved for an order.
7
+ owners:
8
+ - fulfilment-platform
9
+ badges:
10
+ - content: 'Broker:Kafka'
11
+ backgroundColor: blue
12
+ textColor: blue
13
+ icon: BoltIcon
14
+ schemaPath: schema.json
15
+ ---
16
+
17
+ import Footer from '@catalog/components/footer.astro';
18
+
19
+ ## Overview
20
+
21
+ `InventoryUnavailable` is published by the [[service|inventory-service]] when stock for an order cannot be reserved. The Ordering domain's checkout saga uses it to fail checkout and cancel the order.
22
+
23
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
24
+
25
+ ## Architecture diagram
26
+
27
+ <NodeGraph />
28
+
29
+ <Footer />
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "InventoryUnavailable",
4
+ "description": "Published when stock could not be reserved for an order",
5
+ "type": "object",
6
+ "properties": {
7
+ "orderId": { "type": "string", "format": "uuid" },
8
+ "cartId": { "type": "string", "format": "uuid" },
9
+ "unavailableItems": {
10
+ "type": "array",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "productId": { "type": "string", "format": "uuid" },
15
+ "requested": { "type": "integer", "minimum": 1 },
16
+ "available": { "type": "integer", "minimum": 0 }
17
+ },
18
+ "required": ["productId", "requested", "available"]
19
+ }
20
+ },
21
+ "checkedAt": { "type": "string", "format": "date-time" }
22
+ },
23
+ "required": ["unavailableItems", "checkedAt"]
24
+ }
@@ -0,0 +1,67 @@
1
+ ---
2
+ id: inventory-service
3
+ version: 1.0.0
4
+ name: Inventory Service
5
+ summary: |
6
+ The system of record for stock. Reserves and releases inventory, serves stock-level queries, and publishes events when stock is reserved or unavailable.
7
+ styles:
8
+ icon: /icons/languages/java.svg
9
+ owners:
10
+ - fulfilment-platform
11
+ receives:
12
+ - id: reserve-inventory
13
+ version: 1.0.0
14
+ - id: release-inventory
15
+ version: 1.0.0
16
+ - id: get-stock-level
17
+ version: 1.0.0
18
+ sends:
19
+ - id: inventory-reserved
20
+ version: 1.0.0
21
+ - id: inventory-unavailable
22
+ version: 1.0.0
23
+ writesTo:
24
+ - id: inventory-database
25
+ readsFrom:
26
+ - id: inventory-database
27
+ repository:
28
+ language: Java
29
+ url: 'https://github.com/acme/inventory-service'
30
+ ---
31
+
32
+ import Footer from '@catalog/components/footer.astro';
33
+
34
+ ## Overview
35
+
36
+ The **Inventory Service** is the heart of the Inventory System. It receives [[command|reserve-inventory]] during checkout and replies with [[event|inventory-reserved]] or [[event|inventory-unavailable]]. It also handles [[command|release-inventory]] and serves [[query|get-stock-level]] reads, all backed by the [[container|inventory-database]].
37
+
38
+ <Tiles>
39
+ <Tile
40
+ icon="BoltIcon"
41
+ href={`/visualiser/services/${frontmatter.id}/${frontmatter.version}`}
42
+ title={`Sends ${frontmatter.sends.length} messages`}
43
+ description="Inventory outcomes"
44
+ />
45
+ <Tile
46
+ icon="BoltIcon"
47
+ href={`/visualiser/services/${frontmatter.id}/${frontmatter.version}`}
48
+ title={`Receives ${frontmatter.receives.length} messages`}
49
+ description="Inventory commands and queries"
50
+ />
51
+ </Tiles>
52
+
53
+ ### Responsibilities
54
+
55
+ | Area | Description |
56
+ | ---------------- | ----------------------------------------------------------------------------- |
57
+ | Reservations | Handles [[command\|reserve-inventory]] and [[command\|release-inventory]]. |
58
+ | Lookups | Serves [[query\|get-stock-level]] from the [[container\|inventory-database]]. |
59
+ | Event publishing | Emits [[event\|inventory-reserved]] and [[event\|inventory-unavailable]]. |
60
+
61
+ ## Architecture diagram
62
+
63
+ <NodeGraph />
64
+
65
+ <MessageTable format="all" limit={8} />
66
+
67
+ <Footer />
@@ -0,0 +1,32 @@
1
+ ---
2
+ id: get-stock-level
3
+ name: Get Stock Level
4
+ version: 1.0.0
5
+ summary: |
6
+ Query to fetch the current available stock level for a product.
7
+ owners:
8
+ - fulfilment-platform
9
+ schemaPath: schema.json
10
+ operation:
11
+ method: GET
12
+ path: /stock/{productId}
13
+ statusCodes: ['200', '404']
14
+ sidebar:
15
+ badge: 'GET'
16
+ ---
17
+
18
+ import Footer from '@catalog/components/footer.astro';
19
+
20
+ ## Overview
21
+
22
+ `GetStockLevel` is handled by the [[service|inventory-service]]. It returns the current available stock for a product, read directly from the [[container|inventory-database]].
23
+
24
+ ## Architecture diagram
25
+
26
+ <NodeGraph />
27
+
28
+ ## Schema
29
+
30
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
31
+
32
+ <Footer />
@@ -0,0 +1,25 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "GetStockLevel",
4
+ "description": "Query to fetch the current available stock level for a product, and the level returned",
5
+ "type": "object",
6
+ "properties": {
7
+ "request": {
8
+ "type": "object",
9
+ "properties": {
10
+ "productId": { "type": "string", "format": "uuid" }
11
+ },
12
+ "required": ["productId"]
13
+ },
14
+ "response": {
15
+ "type": "object",
16
+ "properties": {
17
+ "productId": { "type": "string", "format": "uuid" },
18
+ "available": { "type": "integer", "minimum": 0 },
19
+ "reserved": { "type": "integer", "minimum": 0 }
20
+ },
21
+ "required": ["productId", "available"]
22
+ }
23
+ },
24
+ "required": ["request", "response"]
25
+ }
@@ -0,0 +1,47 @@
1
+ ---
2
+ id: shipping-system
3
+ name: Shipping System
4
+ version: 1.0.0
5
+ summary: |
6
+ Internal system that hands packed orders to carriers. It reacts to ready-for-shipping orders and creates shipments with an external carrier.
7
+ owners:
8
+ - fulfilment-platform
9
+ services:
10
+ - id: shipping-api
11
+ - id: carrier-adapter
12
+ relationships:
13
+ - id: carrier
14
+ label: creates shipments with
15
+ badges:
16
+ - content: Internal
17
+ backgroundColor: gray
18
+ textColor: gray
19
+ icon: LockClosedIcon
20
+ ---
21
+
22
+ ## Overview
23
+
24
+ The **Shipping System** connects Acme Inc to its carriers. When the [[system|warehouse-system]] publishes [[event|order-ready-for-shipping]], the [[service|shipping-api]] selects a carrier and the [[service|carrier-adapter]] sends a [[command|create-shipment]] to the external [[system|carrier]] to dispatch the parcel.
25
+
26
+ ## Context Diagram
27
+
28
+ How this system relates to the other systems around it.
29
+
30
+ <ContextDiagram />
31
+
32
+ ## Resource Diagram
33
+
34
+ The services and messages that make up this system.
35
+
36
+ <NodeGraph />
37
+
38
+ ## What's inside
39
+
40
+ | Component | Type | Responsibility |
41
+ | ---------------------------- | ------- | --------------------------------------------------------------- |
42
+ | [[service\|shipping-api]] | Service | Receives ready-for-shipping orders and selects a carrier. |
43
+ | [[service\|carrier-adapter]] | Service | Translates and sends shipment requests to the external carrier. |
44
+
45
+ ## Messages this system sends
46
+
47
+ - [[command\|create-shipment]] — create a shipment with the carrier.
@@ -0,0 +1,32 @@
1
+ ---
2
+ id: create-shipment
3
+ name: Create Shipment
4
+ version: 1.0.0
5
+ summary: |
6
+ Command to create a shipment with a carrier for a packed order.
7
+ owners:
8
+ - fulfilment-platform
9
+ schemaPath: schema.json
10
+ operation:
11
+ method: POST
12
+ path: /shipments
13
+ statusCodes: ['201', '400', '422']
14
+ sidebar:
15
+ badge: 'POST'
16
+ ---
17
+
18
+ import Footer from '@catalog/components/footer.astro';
19
+
20
+ ## Overview
21
+
22
+ `CreateShipment` is sent by the [[service|carrier-adapter]] to the external [[system|carrier]] to dispatch a packed order. The carrier responds asynchronously with [[event|shipment-created]] and later [[event|shipment-delivered]] or [[event|shipment-failed]].
23
+
24
+ ## Architecture diagram
25
+
26
+ <NodeGraph />
27
+
28
+ ## Schema
29
+
30
+ <SchemaViewer file="schema.json" title="JSON Schema" maxHeight="500" />
31
+
32
+ <Footer />
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "CreateShipment",
4
+ "description": "Command to create a shipment with a carrier for a packed order",
5
+ "type": "object",
6
+ "properties": {
7
+ "orderId": { "type": "string", "format": "uuid" },
8
+ "carrier": { "type": "string", "description": "The carrier to ship with" },
9
+ "service": {
10
+ "type": "string",
11
+ "enum": ["STANDARD", "EXPRESS", "NEXT_DAY"]
12
+ },
13
+ "parcelCount": { "type": "integer", "minimum": 1 },
14
+ "destination": {
15
+ "type": "object",
16
+ "properties": {
17
+ "line1": { "type": "string" },
18
+ "city": { "type": "string" },
19
+ "postcode": { "type": "string" },
20
+ "country": { "type": "string", "pattern": "^[A-Z]{2}$" }
21
+ },
22
+ "required": ["line1", "city", "postcode", "country"]
23
+ }
24
+ },
25
+ "required": ["orderId", "destination"]
26
+ }