docs: updates to use DML and other changes (#7834)

- Change existing data model guides and add new ones for DML
- Change module's docs around service factory + remove guides that are now necessary
- Hide/remove all mentions of module relationships, or label them as coming soon.
- Change all data model creation snippets to use DML
- use `property` instead of `field` when referring to a data model's properties.
- Fix all snippets in commerce module guides to use new method suffix (no more main model methods)
- Rework recipes, removing/hiding a lot of sections as a lot of recipes are incomplete with the current state of DML.


### Other changes

- Highlight fixes in some guides
- Remove feature flags guide
- Fix code block styles when there are no line numbers.

### Upcoming changes in other PRs

- Re-generate commerce module references (for the updates in the method names)
- Ensure that the data model references are generated correctly for models using DML.
- (probably at a very later point) revisit recipes
This commit is contained in:
Shahed Nasser
2024-06-26 07:55:59 +00:00
committed by GitHub
parent 62dacdda75
commit 0462cc5acf
126 changed files with 1808 additions and 14242 deletions
@@ -102,7 +102,7 @@ export const serviceHighlights = [
<Note title="Tip">
You can store the product's ID in the external system using the `metadata` field of the `Product` data model in the Product Module. Alternatively, you can create a [data model](!docs!/basics/data-models) in your module to store data related to the external system.
You can store the product's ID in the external system using the `metadata` property of the `Product` data model in the Product Module. Alternatively, you can create a [data model](!docs!/basics/data-models) in your module to store data related to the external system.
</Note>
@@ -203,13 +203,13 @@ export const workflowHighlights = [
.resolve(ModuleRegistrationName.PRODUCT)
const createdProductData = await productModuleService
.retrieve(productId)
.retrieveProduct(productId)
const erpProduct = await erpModuleService.createProduct(
createdProductData
)
await productModuleService.update(productId, {
await productModuleService.updateProducts(productId, {
metadata: {
erp_id: erpProduct.id
}
@@ -229,7 +229,7 @@ export const workflowHighlights = [
.resolve(ModuleRegistrationName.PRODUCT)
await erpModuleService.deleteProduct(erpId)
await productModuleService.update(productId, {
await productModuleService.updateProducts(productId, {
metadata: {}
})
})
@@ -249,7 +249,7 @@ export const workflowHighlights = [
- Retrieves the product's data using the Product Module's main service.
- Create the product in the ERP system using the ERP Module's main service.
- Updates the product in Medusa by setting the ID of the ERP product in the product's `metadata` field.
- Updates the product in Medusa by setting the ID of the ERP product in the product's `metadata` property.
The step also has a compensation function that rolls back changes when an error occurs. It deletes the product in the ERP system and removes the ID of the ERP product in the Medusa product.
@@ -334,7 +334,7 @@ For example, suppose an administrator changes the product data in the ERP system
ModuleRegistrationName.PRODUCT
)
await productService.update(id, updatedData)
await productService.updateProducts(id, updatedData)
res.status(200)
}