The product to serialize.
A cleaned object suitable for JSON/YAML copy output.
getExportableProductData(product).images; // => ["https://…/image.jpeg"]
getExportableProductData(product).thumbnails; // => ["https://…/120x120x2/image.jpeg"]
export function getExportableProductData(product: Product): Record<string, unknown> {
const cleaned = cleanProductFields(product);
if (product.variants && product.variants.length > 0) {
cleaned.variants = product.variants.map(cleanProductFields);
}
return cleaned;
}
Builds a copy/export-friendly plain object from a product: internal fields are dropped, the price is rendered with its currency symbol, and every image list (on the product and each variant) is split into
images/thumbnailshref arrays so the copied output isn't cluttered with{ href, type }pairs.