Implementation
Map<String, dynamic> toJson() => {
"rating": rating,
"colorOptions": colorOptions,
"sizes": sizes == null
? null
: List<dynamic>.from(sizes!.map((x) => x.toJson())),
"colors": colors == null
? null
: List<dynamic>.from(colors!.map((x) => x.toJson())),
"preOrder": preOrder,
"availabilityDate": availabilityDate == null
? null
: availabilityDate!.toIso8601String(),
"id": id,
"productID": productId,
"productCode": productCode,
"imageUrl": imageUrl,
"imageThumbUrl": imageThumbUrl,
"title": title,
"seoTitle": seoTitle,
"isOutOfStock": isOutOfStock,
"price": price,
"finalPrice": finalPrice,
"hasDiscount": hasDiscount,
"discountValue": discountValue,
"discountType": discountType,
"promoText": promoText,
"bogoPromoText": bogoPromoText,
"croppedImageURL": croppedImageUrl,
"enableCropping": enableCropping,
"size": size,
"sizeID": sizeId,
"colorHexaCode": colorHexaCode,
"color": color,
"colorID": colorId,
};