///|
// Represents a PRODUCT_RELATED_PRODUCT_CATEGORY entity.
// Example from simple-box.step:
// PRODUCT_RELATED_PRODUCT_CATEGORY('part','',(#18))
pub struct ProductRelatedProductCategory {
name : String
description : String
products : Array[@step.Ref]
}
///|
pub fn ProductRelatedProductCategory::new(
name : String,
description : String,
products : Array[@step.Ref],
) -> ProductRelatedProductCategory {
ProductRelatedProductCategory::{ name, description, products, }
}
///|
pub impl @step.Entity for ProductRelatedProductCategory with fn to_step(self) {
let products_str = self.products.map(fn(p) { "#\{p.id.value}" }).join(",")
"PRODUCT_RELATED_PRODUCT_CATEGORY(\{step_str_or_dollar(self.name)},\{step_str_or_dollar(self.description)},(\{products_str}))"
}