feat: implement product detail page and define catalog interfaces
This commit is contained in:
@@ -49,8 +49,8 @@ export class ProductDetailPageComponent implements OnInit, OnDestroy {
|
||||
protected readonly carouselImages = computed(() => {
|
||||
const prod = this.product();
|
||||
if (!prod) return [];
|
||||
if (prod.default_variant?.images && prod.default_variant.images.length > 0) {
|
||||
return prod.default_variant.images;
|
||||
if (prod.variant?.images && prod.variant.images.length > 0) {
|
||||
return prod.variant.images;
|
||||
}
|
||||
if (prod.images && prod.images.length > 0) {
|
||||
return prod.images;
|
||||
@@ -181,7 +181,7 @@ export class ProductDetailPageComponent implements OnInit, OnDestroy {
|
||||
}
|
||||
|
||||
private initializeSelections(product: ProductDetail): void {
|
||||
const defaultVariant = product.default_variant;
|
||||
const defaultVariant = product.variant;
|
||||
const selections: Record<number, number> = {};
|
||||
|
||||
for (const attribute of product.attributes) {
|
||||
@@ -202,7 +202,7 @@ export class ProductDetailPageComponent implements OnInit, OnDestroy {
|
||||
return null;
|
||||
}
|
||||
|
||||
const defaultValue = this.getDefaultVariantAttributeValue(attribute, variant.attributes);
|
||||
const defaultValue = this.getDefaultVariantAttributeValue(attribute, variant.definitions);
|
||||
if (!defaultValue) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user