Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
6d2f429
Initial Commit
bendvc Aug 8, 2025
11f36b0
Update presets
bendvc Aug 8, 2025
2a66898
Update CHANGELOG.md
bendvc Aug 8, 2025
038db25
Pruning Batch 1
bendvc Aug 8, 2025
f6ed2b8
Pruning Batch 2
bendvc Aug 8, 2025
ab745aa
Pruning Batch 3
bendvc Aug 8, 2025
1820ee5
Pruning Batch 4
bendvc Aug 8, 2025
afe7bee
Possible issue?
bendvc Aug 8, 2025
c64828c
Update index.test.js
bendvc Aug 8, 2025
b5adbb0
Update data.mock.js
bendvc Aug 8, 2025
3936555
Update index.test.js
bendvc Aug 8, 2025
efc9e94
Update index.jsx
bendvc Aug 8, 2025
802451c
Update index.jsx
bendvc Aug 8, 2025
0ca58e3
Update index.jsx
bendvc Aug 8, 2025
14faf31
Update constant.js
bendvc Aug 8, 2025
11010c0
Update use-product-detail-data.js
bendvc Aug 8, 2025
61996b2
Update product-details-composite.jsx
bendvc Aug 8, 2025
5c8b0b9
Fixed
bendvc Aug 8, 2025
2f16dec
Update product-details-simple.jsx
bendvc Aug 8, 2025
3a72825
Update product-details.jsx
bendvc Aug 8, 2025
ced6c2e
Update index.jsx
bendvc Aug 8, 2025
40c6597
Update index.test.js
bendvc Aug 8, 2025
2b6ed7d
Update product-list-grid.jsx
bendvc Aug 8, 2025
80adbf6
Update product-list-grid.test.js
bendvc Aug 8, 2025
c95adde
Update use-wish-list.test.js
bendvc Aug 8, 2025
5bf0f93
Update use-wish-list.js
bendvc Aug 8, 2025
d2ea671
Update index.jsx
bendvc Aug 9, 2025
e36be83
Fix missing closing annotation
bendvc Aug 9, 2025
81845ed
Update constants annotations.
bendvc Aug 9, 2025
c6c5f87
Update app-header.test.jsx
bendvc Aug 9, 2025
aa3932d
Update index.jsx
bendvc Aug 9, 2025
a9099e7
Update index.test.js
bendvc Aug 9, 2025
174af6b
Update index.test.js
bendvc Aug 9, 2025
2e783c0
Update index.test.js
bendvc Aug 9, 2025
2d0c653
Update index.test.js
bendvc Aug 9, 2025
8b8153c
Update index.jsx
bendvc Aug 9, 2025
d422c5c
Update index.jsx
bendvc Aug 9, 2025
e69b8bf
Update constants.js
bendvc Aug 9, 2025
5067615
Update use-add-to-cart-modal.test.js
bendvc Aug 9, 2025
0249428
Update constant.js
bendvc Aug 9, 2025
4a62844
More constant out of optional block
bendvc Aug 11, 2025
cd93a04
Don't use wishlist on cart if not enabled
bendvc Aug 11, 2025
0f6a724
Fixing lint errors
bendvc Aug 11, 2025
3847eb9
Merge branch 'next' into bendvc/W-19150667_prune-wishlist-2
bendvc Aug 11, 2025
b05bd11
Fix after bad merge
bendvc Aug 11, 2025
4683222
Update cart-secondary-button-group.jsx
bendvc Aug 11, 2025
e51dd50
Update index.test.js
bendvc Aug 11, 2025
14f0587
Update cart-secondary-button-group.test.js
bendvc Aug 11, 2025
29c1157
Merge pull request #3046 from SalesforceCommerceCloud/bendvc/W-191506…
bendvc Aug 13, 2025
3b31116
bundle size increase by 1kb
kevinxh Aug 13, 2025
ef6effe
Revert "bundle size increase by 1kb"
kevinxh Aug 13, 2025
95cc1ae
Merge branch 'next' into t/cc-sharks/sprasoon/update-bonus-products-v…
sf-shikhar-prasoon Aug 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions packages/pwa-kit-create-app/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
- Deprecate V3 Extensibility and experimental V4 Extensibility (#2573)
- Move extensibility logic to generator (#2573)
- Apply prettier to trimmed files (#2688)
- Add Wishlist feature extension flag [#3046](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3046)
- Convert Social Login feature into an extension [#3017](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3017)

## v3.10.0 (Feb 18, 2025)
Expand Down
3 changes: 3 additions & 0 deletions packages/pwa-kit-create-app/assets/plugin-config.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ module.exports = {
// },
SFDC_EXT_SOCIAL_LOGIN: {
description: 'Social login Extension'
},
SFDC_EXT_WISHLIST: {
description: 'Wishlist Extension'
}
}
}
22 changes: 15 additions & 7 deletions packages/pwa-kit-create-app/scripts/create-mobify-app.js
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,8 @@ const PRESETS = [
'project.dataCloud.appSourceId': '7ae070a6-f4ec-4def-a383-d9cacc3f20a1',
'project.dataCloud.tenantId': 'g82wgnrvm-ywk9dggrrw8mtggy.pc-rnd',
'project.demo.enableDemoSettings': false,
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false,
'project.selectedPlugins.SFDC_EXT_WISHLIST': false
},
assets: ['translations'],
private: false
Expand Down Expand Up @@ -315,7 +316,8 @@ const PRESETS = [
['project.dataCloud.appSourceId']: 'fb81edab-24c6-4b40-8684-b67334dfdf32',
['project.dataCloud.tenantId']: 'mmyw8zrxhfsg09lfmzrd1zjqmg',
['project.demo.enableDemoSettings']: true, // True only for presets deployed to demo environments like pwa-kit.mobify-storefront.com
['project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN']: false
['project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN']: false,
['project.selectedPlugins.SFDC_EXT_WISHLIST']: false
},
assets: ['translations'],
private: true
Expand All @@ -342,7 +344,8 @@ const PRESETS = [
'project.dataCloud.appSourceId': 'fb81edab-24c6-4b40-8684-b67334dfdf32',
'project.dataCloud.tenantId': 'mmyw8zrxhfsg09lfmzrd1zjqmg',
'project.demo.enableDemoSettings': false,
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': true
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': true,
'project.selectedPlugins.SFDC_EXT_WISHLIST': true
},
assets: ['translations'],
private: true
Expand All @@ -369,7 +372,8 @@ const PRESETS = [
'project.dataCloud.appSourceId': 'fb81edab-24c6-4b40-8684-b67334dfdf32',
'project.dataCloud.tenantId': 'mmyw8zrxhfsg09lfmzrd1zjqmg',
'project.demo.enableDemoSettings': false,
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false,
'project.selectedPlugins.SFDC_EXT_WISHLIST': false
},
assets: ['translations'],
private: true
Expand All @@ -396,7 +400,8 @@ const PRESETS = [
'project.dataCloud.tenantId': 'mmyw8zrxhfsg09lfmzrd1zjqmg',
'project.commerce.isSlasPrivate': true,
'project.demo.enableDemoSettings': false,
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false,
'project.selectedPlugins.SFDC_EXT_WISHLIST': false
},
assets: ['translations'],
private: true
Expand All @@ -423,7 +428,8 @@ const PRESETS = [
'project.dataCloud.appSourceId': 'fb81edab-24c6-4b40-8684-b67334dfdf32',
'project.dataCloud.tenantId': 'mmyw8zrxhfsg09lfmzrd1zjqmg',
'project.demo.enableDemoSettings': false,
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false,
'project.selectedPlugins.SFDC_EXT_WISHLIST': false
},
assets: ['translations'],
private: true
Expand All @@ -450,7 +456,8 @@ const PRESETS = [
'project.dataCloud.appSourceId': 'fb81edab-24c6-4b40-8684-b67334dfdf32',
'project.dataCloud.tenantId': 'mmyw8zrxhfsg09lfmzrd1zjqmg',
'project.demo.enableDemoSettings': false,
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false
'project.selectedPlugins.SFDC_EXT_SOCIAL_LOGIN': false,
'project.selectedPlugins.SFDC_EXT_WISHLIST': false
},
assets: ['translations'],
private: true
Expand Down Expand Up @@ -920,6 +927,7 @@ const main = async (opts) => {
answers: expandObject(answers)
})
}

// load plugin selected answer from context object to selectedPlugins (which used for code trimming process)
Object.entries(context.answers?.project?.selectedPlugins || {}).forEach(
([pluginKey, enabled]) => {
Expand Down
1 change: 1 addition & 0 deletions packages/template-chakra-storefront/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
- Migrate directory structure from `app/*` to `src/*` [#2693](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2693)
- Upgrade to Chakra UI v3 and Decomposition on Cart, PLP, PDP and Cart [2839](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2839), [#2872](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2872), [#2878](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2878), [#2924](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2924)
- Create a safe version of `<Portal>` that won't break the SSR rendering [#2785](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2785)
- Convert Wishlist feature into an extension [#3046](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3046)
- Convert Social Login feature into an extension [#3017](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3017)


Expand Down
11 changes: 6 additions & 5 deletions packages/template-chakra-storefront/config/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ export const urlPartPositions = {
// definitions to a common location (here), so that each message is only defined
// once.

//@sfdc-extension-block-start SFDC_EXT_WISHLIST
export const TOAST_MESSAGE_ADDED_TO_WISHLIST = defineMessage({
id: 'global.info.added_to_wishlist',
defaultMessage: '{quantity} {quantity, plural, one {item} other {items}} added to wishlist'
Expand All @@ -68,11 +69,6 @@ export const TOAST_MESSAGE_ALREADY_IN_WISHLIST = defineMessage({
defaultMessage: 'Item is already in wishlist'
})

export const TOAST_MESSAGE_REMOVED_ITEM_FROM_CART = defineMessage({
defaultMessage: 'Item removed from cart',
id: 'cart.info.removed_from_cart'
})

export const TOAST_ACTION_VIEW_WISHLIST = defineMessage({
defaultMessage: 'View',
id: 'global.link.added_to_wishlist.view_wishlist'
Expand All @@ -82,6 +78,11 @@ export const TOAST_MESSAGE_REMOVED_FROM_WISHLIST = defineMessage({
id: 'global.info.removed_from_wishlist',
defaultMessage: 'Item removed from wishlist'
})
//@sfdc-extension-block-end SFDC_EXT_WISHLIST
export const TOAST_MESSAGE_REMOVED_ITEM_FROM_CART = defineMessage({
defaultMessage: 'Item removed from cart',
id: 'cart.info.removed_from_cart'
})

// Einstein recommender constants used in <RecommendedProducts/>
export const EINSTEIN_RECOMMENDERS = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,16 +37,19 @@ export const useAppNavigation = () => {
history?.push(path)
}, [buildUrl, history])

//@sfdc-extension-block-start SFDC_EXT_WISHLIST
const onWishlistClick = useCallback(() => {
// Link to wishlist page if registered; Header component will show auth modal for guest users
const path = buildUrl('/account/wishlist')
history?.push(path)
}, [buildUrl, history])
//@sfdc-extension-block-end SFDC_EXT_WISHLIST

return {
onLogoClick,
onCartClick,
onAccountClick,
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ describe('useAppNavigation', () => {
expect(result.current.onLogoClick).toEqual(expect.any(Function))
expect(result.current.onCartClick).toEqual(expect.any(Function))
expect(result.current.onAccountClick).toEqual(expect.any(Function))
//@sfdc-extension-line SFDC_EXT_WISHLIST
expect(result.current.onWishlistClick).toEqual(expect.any(Function))
})

Expand Down Expand Up @@ -89,6 +90,7 @@ describe('useAppNavigation', () => {
expect(mockHistory.push).toHaveBeenCalledWith('/account')
})

//@sfdc-extension-block-start SFDC_EXT_WISHLIST
test('handles wishlist click navigation', () => {
const {result} = renderHook(() => useAppNavigation())

Expand All @@ -97,6 +99,7 @@ describe('useAppNavigation', () => {
expect(mockLocalization.buildUrl).toHaveBeenCalledWith('/account/wishlist')
expect(mockHistory.push).toHaveBeenCalledWith('/account/wishlist')
})
//@sfdc-extension-block-end SFDC_EXT_WISHLIST

test('handles multiple navigation calls', () => {
const {result} = renderHook(() => useAppNavigation())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,13 @@ const App = (props) => {
const {getTokenWhenReady, authModal} = useAppAuth()
const {targetLocale, messages, site, locale, buildUrl, currency, appOrigin} =
useAppLocalization()
const {onLogoClick, onCartClick, onAccountClick, onWishlistClick} = useAppNavigation()
const {
onLogoClick,
onCartClick,
onAccountClick,
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick
} = useAppNavigation()
const {
isDrawerMenuOpen,
onDrawerMenuOpen,
Expand Down Expand Up @@ -81,6 +87,7 @@ const App = (props) => {
onLogoClick,
onMyCartClick: onCartClick,
onMyAccountClick: onAccountClick,
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick,
// TODO: Will be enabled when store locator feature is ready
// onStoreLocatorClick: onOpenStoreLocator,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ jest.mock('./hooks', () => ({
onLogoClick: jest.fn(),
onCartClick: jest.fn(),
onAccountClick: jest.fn(),
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick: jest.fn()
})),
useAppModals: jest.fn(() => ({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ const AppHeader = ({
onLogoClick,
onMyCartClick,
onMyAccountClick,
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick,
onStoreLocatorClick,
mobileNavigationProps
Expand All @@ -36,6 +37,7 @@ const AppHeader = ({
onLogoClick={onLogoClick}
onMyCartClick={onMyCartClick}
onMyAccountClick={onMyAccountClick}
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick={onWishlistClick}
onStoreLocatorClick={onStoreLocatorClick}
>
Expand All @@ -56,6 +58,7 @@ AppHeader.propTypes = {
onLogoClick: PropTypes.func.isRequired,
onMyCartClick: PropTypes.func.isRequired,
onMyAccountClick: PropTypes.func.isRequired,
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick: PropTypes.func.isRequired,
onStoreLocatorClick: PropTypes.func.isRequired,
mobileNavigationProps: PropTypes.object.isRequired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,10 @@ jest.mock('../../header', () => {
typeof props.onMyCartClick === 'function' ? 'function' : props.onMyCartClick,
onMyAccountClick:
typeof props.onMyAccountClick === 'function' ? 'function' : props.onMyAccountClick,
//@sfdc-extension-block-start SFDC_EXT_WISHLIST
onWishlistClick:
typeof props.onWishlistClick === 'function' ? 'function' : props.onWishlistClick,
//@sfdc-extension-block-end SFDC_EXT_WISHLIST
onStoreLocatorClick:
typeof props.onStoreLocatorClick === 'function'
? 'function'
Expand Down Expand Up @@ -91,6 +93,7 @@ describe('AppHeader', () => {
onLogoClick: jest.fn(),
onMyCartClick: jest.fn(),
onMyAccountClick: jest.fn(),
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick: jest.fn(),
onStoreLocatorClick: jest.fn(),
mobileNavigationProps: {
Expand Down Expand Up @@ -134,6 +137,7 @@ describe('AppHeader', () => {
expect(headerProps.onLogoClick).toBe('function')
expect(headerProps.onMyCartClick).toBe('function')
expect(headerProps.onMyAccountClick).toBe('function')
//@sfdc-extension-line SFDC_EXT_WISHLIST
expect(headerProps.onWishlistClick).toBe('function')
})

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ const SearchBar = (props) => {
* @param {object} props.searchInputRef reference of the search input
* @param {func} props.onMyAccountClick click event handler for my account button
* @param {func} props.onMyCartClick click event handler for my cart button
//@sfdc-extension-line SFDC_EXT_WISHLIST
* @param {func} props.onWishlistClick click event handler for wish list button
* @param {func} props.onStoreLocatorClick click event handler for store locator button
* @param {React.ReactElement} props.children - React Node to be rendered inside Header
Expand All @@ -109,6 +110,7 @@ const Header = ({
onMyAccountClick = noop,
onLogoClick = noop,
onMyCartClick = noop,
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick = noop,
onStoreLocatorClick = noop,
...props
Expand Down Expand Up @@ -168,10 +170,12 @@ const Header = ({
defaultMessage: 'Log out',
id: 'header.popover.action.log_out'
}),
//@sfdc-extension-block-start SFDC_EXT_WISHLIST
wishlist: formatMessage({
defaultMessage: 'Wishlist',
id: 'header.button.assistive_msg.wishlist'
}),
//@sfdc-extension-block-end SFDC_EXT_WISHLIST
storeLocator: formatMessage({
defaultMessage: 'Store Locator',
id: 'header.button.assistive_msg.store_locator'
Expand Down Expand Up @@ -319,6 +323,7 @@ const Header = ({
</Popover.Positioner>
</Popover.Root>
)}
{/* @sfdc-extension-block-start SFDC_EXT_WISHLIST */}
<IconButtonWithRegistration
aria-label={headerMessages.wishlist}
variant="unstyled"
Expand All @@ -327,6 +332,7 @@ const Header = ({
>
<HeartIcon boxSize="6" />
</IconButtonWithRegistration>
{/* @sfdc-extension-block-end SFDC_EXT_WISHLIST */}
{isStoreLocatorEnabled && (
<IconButton
aria-label={headerMessages.storeLocator}
Expand Down Expand Up @@ -367,6 +373,7 @@ Header.propTypes = {
onMenuClick: PropTypes.func,
onLogoClick: PropTypes.func,
onMyAccountClick: PropTypes.func,
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick: PropTypes.func,
onMyCartClick: PropTypes.func,
onStoreLocatorClick: PropTypes.func,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,18 @@ const MockedComponent = ({history}) => {
const onAccountClick = () => {
history.push(createPathWithDefaults('/account'))
}
//@sfdc-extension-block-start SFDC_EXT_WISHLIST
const onWishlistClick = () => {
history.push(createPathWithDefaults('/account/wishlist'))
}
//@sfdc-extension-block-end SFDC_EXT_WISHLIST
return (
<div>
<Header onMyAccountClick={onAccountClick} onWishlistClick={onWishlistClick} />
<Header
onMyAccountClick={onAccountClick}
//@sfdc-extension-line SFDC_EXT_WISHLIST
onWishlistClick={onWishlistClick}
/>
</div>
)
}
Expand Down Expand Up @@ -66,7 +72,7 @@ test('renders Header', async () => {
expect(logo).toBeInTheDocument()
expect(account).toBeInTheDocument()
expect(cart).toBeInTheDocument()
// Note: Wishlist button is currently commented out in the header component
//@sfdc-extension-line SFDC_EXT_WISHLIST
// expect(wishlist).toBeInTheDocument()
expect(searchInput).toBeInTheDocument()
})
Expand Down Expand Up @@ -176,6 +182,7 @@ test('route to account page when an authenticated users click on account icon',
})
})

//@sfdc-extension-block-start SFDC_EXT_WISHLIST
test('route to wishlist page when an authenticated users click on wishlist icon', async () => {
const history = createMemoryHistory()
// mock push function
Expand All @@ -196,3 +203,4 @@ test('route to wishlist page when an authenticated users click on wishlist icon'
expect(history.push).toHaveBeenCalledWith(createPathWithDefaults('/account/wishlist'))
})
})
//@sfdc-extension-block-end SFDC_EXT_WISHLIST
Original file line number Diff line number Diff line change
Expand Up @@ -428,6 +428,7 @@ export const cartVariant = {
isProductUnavailable: false
}

//@sfdc-extension-block-start SFDC_EXT_WISHLIST
export const wishlistVariant = {
currency: 'GBP',
id: '701643563814M',
Expand Down Expand Up @@ -762,3 +763,4 @@ export const wishlistVariant = {
c_width: 'Z',
quantity: 5
}
//@sfdc-extension-block-end SFDC_EXT_WISHLIST
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,11 @@ import PropTypes from 'prop-types'
import {renderWithProviders} from '../../utils/test-utils'
import ItemVariantProvider from './index'
import ItemPrice from './item-price'
import {cartVariant, wishlistVariant} from './data.mock'
import {
cartVariant,
//@sfdc-extension-line SFDC_EXT_WISHLIST
wishlistVariant
} from './data.mock'
import {within} from '@testing-library/react'
import {useMediaQuery} from '@chakra-ui/react'

Expand Down Expand Up @@ -62,6 +66,7 @@ describe('ItemPrice', function () {
expect(getByText(/^£0\.00$/i)).toBeInTheDocument()
})

//@sfdc-extension-block-start SFDC_EXT_WISHLIST
test('should display product prices if variant is for wishlist page on desktop', () => {
useMediaQuery.mockReturnValue([true])
const {getByText, container, getAllByText} = renderWithProviders(
Expand Down Expand Up @@ -95,4 +100,5 @@ describe('ItemPrice', function () {
const strikethroughPriceTag = container.querySelector('s')
expect(within(strikethroughPriceTag).getByText(/£476\.80/i)).toBeInTheDocument()
})
//@sfdc-extension-block-end SFDC_EXT_WISHLIST
})
Loading
Loading