Skip to content

feat(promotions): PROMO-1507 add featured promotions callout to pdp and plp #3057

Open
bc-vivekaggarwal wants to merge 3 commits into
canaryfrom
PROMO-1507-promotion-callout-plp-pdp
Open

feat(promotions): PROMO-1507 add featured promotions callout to pdp and plp #3057
bc-vivekaggarwal wants to merge 3 commits into
canaryfrom
PROMO-1507-promotion-callout-plp-pdp

Conversation

@bc-vivekaggarwal

@bc-vivekaggarwal bc-vivekaggarwal commented Jun 22, 2026

Copy link
Copy Markdown

Linear: PROMO-1507

What/Why?

Wire promotion callouts into PDP and PLP pages using live data from the Storefront GraphQL API (featuredPromotions on the Product type).

  • PDP: stacked callout boxes render inline below the price, one per active promotion.
  • PLP (category, brand, search): each product card shows its first promotion inline below the price; if there are multiple, a "+N more" label appears within the same callout.

Rollout/Rollback

Revert.

Testing

  • pnpm build passes
  • pnpm lint passes
  • PDP and PLP pages load for guest and authenticated users

testing notes / screenshots:

  • Homepage(no callouts):
image
  • PDP Page(Product related promotions):
image
  • PLP Page / Category:
image
  • Mobile view:
image

Migration

None.

@bc-vivekaggarwal bc-vivekaggarwal requested a review from a team as a code owner June 22, 2026 01:19
@changeset-bot

changeset-bot Bot commented Jun 22, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 4a7216e

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@bigcommerce/catalyst-core Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercel Bot commented Jun 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
catalyst Ready Ready Preview, Comment Jun 26, 2026 11:29am

Request Review

@github-actions

github-actions Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Bundle Size Report

Comparing against baseline from 98d5b87 (2026-06-26).

Metric Baseline Current Delta
Total JS 435.4 kB 444.6 kB +9.2 kB (+2.1%)

Per-Route First Load JS

Route Baseline Current Delta
/(default)/(auth)/change-password/page 318.8 kB 327.9 kB +9.1 kB (+2.9%)
/(default)/(auth)/login/forgot-password/page 318 kB 327.1 kB +9.1 kB (+2.9%)
/(default)/(auth)/login/page 318.4 kB 327.5 kB +9.1 kB (+2.9%)
/(default)/(auth)/register/page 354.6 kB 363.7 kB +9.1 kB (+2.6%)
/(default)/(faceted)/brand/[slug]/page 330.5 kB 339.6 kB +9.1 kB (+2.8%)
/(default)/(faceted)/category/[slug]/page 339 kB 348.1 kB +9.1 kB (+2.7%)
/(default)/(faceted)/search/page 330.5 kB 339.6 kB +9.1 kB (+2.8%)
/(default)/[...rest]/page 313.5 kB 322.7 kB +9.2 kB (+2.9%)
/(default)/account/addresses/page 358 kB 367.1 kB +9.1 kB (+2.5%)
/(default)/account/orders/[id]/page 321.6 kB 330.8 kB +9.2 kB (+2.9%)
/(default)/account/orders/page 322.6 kB 331.7 kB +9.1 kB (+2.8%)
/(default)/account/settings/page 329.2 kB 338.3 kB +9.1 kB (+2.8%)
/(default)/account/wishlists/[id]/page 336.4 kB 345.5 kB +9.1 kB (+2.7%)
/(default)/account/wishlists/page 331.5 kB 340.6 kB +9.1 kB (+2.7%)
/(default)/blog/[blogId]/page 313.5 kB 322.7 kB +9.2 kB (+2.9%)
/(default)/blog/page 314.5 kB 323.6 kB +9.1 kB (+2.9%)
/(default)/cart/page 334.3 kB 343.5 kB +9.2 kB (+2.8%)
/(default)/compare/page 325.7 kB 334.8 kB +9.1 kB (+2.8%)
/(default)/gift-certificates/balance/page 317.5 kB 326.6 kB +9.1 kB (+2.9%)
/(default)/gift-certificates/page 313.5 kB 322.7 kB +9.2 kB (+2.9%)
/(default)/gift-certificates/purchase/page 357.1 kB 366.2 kB +9.1 kB (+2.5%)
/(default)/page 330.7 kB 339.8 kB +9.1 kB (+2.8%)
/(default)/product/[slug]/page 385.4 kB 394.6 kB +9.2 kB (+2.4%)
/(default)/webpages/[id]/contact/page 355.5 kB 364.6 kB +9.1 kB (+2.6%)
/(default)/webpages/[id]/normal/page 321.6 kB 330.8 kB +9.2 kB (+2.9%)
/(default)/wishlist/[token]/page 326.3 kB 335.5 kB +9.2 kB (+2.8%)
/maintenance/page 307.1 kB 316.3 kB +9.2 kB (+3%)

Threshold: 5% increase. Routes with ⚠️ exceed the threshold.

@github-actions

github-actions Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Unlighthouse Performance Comparison — Vercel

Comparing PR preview deployment Unlighthouse scores vs production Unlighthouse scores.

Summary Score

Aggregate score across all categories as reported by Unlighthouse.

Prod Desktop Prod Mobile Preview Desktop Preview Mobile
Score 90 92 92 94

Category Scores

Category Prod Desktop Prod Mobile Preview Desktop Preview Mobile
Performance 77 81 75 77
Accessibility 95 98 95 95
Best Practices 100 100 100 100
SEO 88 88 100 100

Core Web Vitals

Metric Prod Desktop Prod Mobile Preview Desktop Preview Mobile
LCP 3.6 s 5.1 s 3.6 s 6.4 s
CLS 0.001 0.001 0 0
FCP 1.2 s 1.2 s 1.2 s 1.2 s
TBT 0 ms 10 ms 0 ms 0 ms
Max Potential FID 30 ms 60 ms 40 ms 40 ms
Time to Interactive 3.6 s 5.3 s 3.6 s 6.4 s

Full Unlighthouse report →

@jorgemoya

Copy link
Copy Markdown
Contributor

Code looks good but design seems off. @andrewreifman do you have input on this?

Copy link
Copy Markdown
Contributor

So @hunterbecton just released a Callout component into Storefrontkit to be used within PLP and PDP that was requested by others on the TRAC team, but this appears to be a different type of component and use case. Based on the screenshots above, this look more like the Banner, but supporting multiple items/text instead of just one.

@bc-vivekaggarwal bc-vivekaggarwal force-pushed the PROMO-1507-promotion-callout-plp-pdp branch from e117655 to f6d4bfa Compare June 26, 2026 07:20
@bc-vivekaggarwal bc-vivekaggarwal marked this pull request as ready for review June 26, 2026 08:57
@bc-vivekaggarwal

Copy link
Copy Markdown
Author

@jorgemoya and @andrewreifman Thanks for pointing out about the callout component and outdated designs.
I have implemented the changes as suggested in the thread and incorporated the new designs.
Waiting on callout prop to be included in the ProductCard. Meanwhile, would really appreciate your feedback on the changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants