You could utilize FireworkSDK.getInstance().shopping.productInfoViewConfiguration to customize the shopping CTA button, the Firework PDP link button, and the video product card. The following are sample codes. For further details, please refer to ProductInfoViewConfiguration.
FireworkSDK.getInstance().shopping.productInfoViewConfiguration = {
// Configure product card for videos
productCard: {
// The theme of video product card
theme: 'light',
// The corner radius of video product card
cornerRadius: 10,
// Specifies if the CTA button should be hidden
isCtaButtonHidden: true,
// The text of shopping CTA button: "Buy now" or "Shop now"
ctaButtonText: 'buyNow',
// The cta button style of video product card
// Only supported on iOS
ctaButtonStyle: {
textColor: '#000000', // configure text color of product card CTA button
fontSize: 16, // configure font size of product card CTA button
iOSFontInfo: {
fontName: 'Helvetica', // such as "Helvetica", "Helvetica-Bold"
systemFontStyle: 'italic', // or normal.
systemFontWeight: 'regular', // or medium, semibold or bold etc.
},
},
// The price configuration of video product card
priceConfiguration: {
// The axis of price label: horizontal or vertical
// Only supported on iOS
axis: 'horizontal',
// The label configuration of price
// Only supported on iOS
priceLabel: {
textColor: '#000000',
fontSize: 16,
numberOfLines: 2,
iOSFontInfo: {
fontName: 'Helvetica', // such as "Helvetica", "Helvetica-Bold"
systemFontStyle: 'italic', // or normal.
systemFontWeight: 'regular', // or medium, semibold or bold etc.
},
},
// The label configuration of original price
// Only supported on iOS
originalPriceLabel: {
textColor: '#000000',
fontSize: 16,
numberOfLines: 2,
iOSFontInfo: {
fontName: 'Helvetica', // such as "Helvetica", "Helvetica-Bold"
systemFontStyle: 'italic', // or normal.
systemFontWeight: 'regular', // or medium, semibold or bold etc.
},
},
// The default display order is [priceLabel, originalPriceLabel]
// When the value is `true`, the order is reversed
// Only supported on iOS
isPriceFirst: false,
},
// The width of video product card
// Only supported on iOS
width: 300,
// The height of video product card
// Only supported on iOS
height: 120,
// The background color of video product card
// Only supported on iOS
backgroundColor: '#c0c0c0',
// The icon configuration of product icon
// Only supported on iOS
iconConfiguration: {
cornerRadius: 4,
},
// The label configuration of video product name
// Only supported on iOS
nameLabel: {
textColor: '#000000',
fontSize: 16,
numberOfLines: 2,
iOSFontInfo: {
fontName: 'Helvetica', // such as "Helvetica", "Helvetica-Bold"
systemFontStyle: 'italic', // or normal.
systemFontWeight: 'regular', // or medium, semibold or bold etc.
},
},
},
// Configure Firework PDP link button
linkButton: { isHidden: true },
// Configure shopping CTA
ctaButton: {
// The text of shopping CTA button: "Shop now" or "Add to card"
text: 'shopNow',
// The text color of CTA button
// Only supported on iOS
textColor: '#000000',
// The background color of CTA button
// Only supported on iOS
backgroundColor: '#c0c0c0',
// The text color of CTA button
// Only supported on iOS
fontSize: 16,
// iOS font info
iOSFontInfo: {
fontName: 'Helvetica',
systemFontStyle: 'italic',
systemFontWeight: 'bold',
},
},
};
The host app could use FireworkSDK.getInstance().shopping.setCartItemCount to sync the cart item count to Firework SDK. The count should be greater than or equal to 0. We just use count to show or hide the red indicator on the cart icon. If count > 0, we will show the red indicator on the cart icon. Otherwise, we will hide the red indicator on the cart icon.