From e1e2bee590e1bbeeee6a19cb145ac8e55ee939f3 Mon Sep 17 00:00:00 2001 From: Stan Runge Date: Tue, 27 Oct 2026 09:19:40 +0000 Subject: [PATCH] groceries/picnic: label the Picnic Family member discount --- src/lib/server/groceries/picnic.test.ts | 4 ++++ src/lib/server/groceries/picnic.ts | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/lib/server/groceries/picnic.test.ts b/src/lib/server/groceries/picnic.test.ts index 2eda696..fd4b04f 100644 --- a/src/lib/server/groceries/picnic.test.ts +++ b/src/lib/server/groceries/picnic.test.ts @@ -57,6 +57,10 @@ describe('picnicItem', () => { imageUrl: 'https://storefront-prod.nl.picnicinternational.com/static/images/abc/medium.png' }); }); + it('names the Picnic Family member discount', () => { + const fam = { ...base, labels: {}, discountInfo: { label: 'Family' } }; + expect(picnicItem(fam, TOP['21730'], 'x')?.promoLabel).toBe('Picnic Family-korting'); + }); it('maps a regular and an unavailable tile', () => { const regular = { ...base, labels: {}, price: { priceValue: 0.84 } }; expect(picnicItem(regular, TOP['21730'], 'x')).toMatchObject({ diff --git a/src/lib/server/groceries/picnic.ts b/src/lib/server/groceries/picnic.ts index f2f7043..244fbcc 100644 --- a/src/lib/server/groceries/picnic.ts +++ b/src/lib/server/groceries/picnic.ts @@ -123,7 +123,12 @@ export function picnicItem( sizeText: texts[0]?.trim() || null, priceCents: promo ? ref : now, promoPriceCents: promo, - promoLabel: promo ? promoText?.trim() || 'Actie' : null, + // "Family" is Picnic's member discount (Picnic Family), not a store-wide promo. + promoLabel: promo + ? promoText?.trim() === 'Family' + ? 'Picnic Family-korting' + : promoText?.trim() || 'Actie' + : null, storeUnitPrice: null, storeUnitBasisCents: null, category: cat.category,