Skip to content

feat(VCST-4584): implement select-address-map-modal to product page#2181

Open
goldenmaya wants to merge 11 commits intodevfrom
feat/VCST-4584-bopis
Open

feat(VCST-4584): implement select-address-map-modal to product page#2181
goldenmaya wants to merge 11 commits intodevfrom
feat/VCST-4584-bopis

Conversation

@goldenmaya
Copy link
Contributor

@goldenmaya goldenmaya commented Feb 13, 2026

Description

Before

Screenshot 2026-02-16 at 15 41 57

After

Screenshot 2026-02-16 at 15 40 21 Screenshot 2026-02-16 at 15 43 48

References

Jira-link:

https://virtocommerce.atlassian.net/browse/VCST-4584
https://virtocommerce.atlassian.net/browse/VCST-4613

Artifact URL:

https://vc3prerelease.blob.core.windows.net/packages/vc-theme-b2b-vue-2.42.0-pr-2181-2d87-2d87863a.zip


Note

Medium Risk
Touches shared checkout/map modal behavior and introduces a new provided/injected filter context, so regressions could impact both BOPIS selection flow and the new product-page view mode.

Overview
Adds a product-page entry point to view pickup locations in the existing SelectAddressMapModal: ProductPickupLocations now takes productId, fetches up to 50 locations on demand, and opens the modal in non-selectable (view-only) mode using the shipping module’s BOPIS map API key.

Extends the product pickup locations GraphQL query to include richer location details (description, contacts, workingHours, geoLocation, and full address) needed by the map/info card.

Introduces an injectable usePickupFilterContext to decouple map/filter components from cart-specific state; wires this into both BOPIS checkout flow (useBopis, select-address-modal, select-address-map-modal, useSelectAddressMap) and the product modal. Updates map/list/card components to respect a new selectable flag (hide footer actions, hide radio indicator) and tweaks UI behavior/styling (tooltip for availability chip, popover max-width).

Written by Cursor Bugbot for commit 2d87863. This will update automatically on new commits. Configure here.

@goldenmaya goldenmaya marked this pull request as ready for review February 13, 2026 07:31
@goldenmaya goldenmaya requested a review from a team as a code owner February 13, 2026 07:31
@goldenmaya goldenmaya requested review from Andrew-Orlov, ivan-kalachikov, muller39 and vas11yev1work and removed request for a team February 13, 2026 07:31
@sonarqubecloud
Copy link

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

clearFilter();
applyFilter();
closeInfoCard();
onFilterChange();
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reset filter causes content flicker in product modal

Medium Severity

In the product flow, clicking "Reset search" in the pickup locations modal causes the entire content area (filter, map, list) to vanish momentarily. resetFilter calls clearFilter() from createProductFilterContext, which synchronously sets filterIsApplied to false. Since both desktop and mobile templates gate content on addresses.length || filterIsApplied, and addresses is still empty at that point, the v-if evaluates to false and the UI flips to a generic "not found" message before the async re-fetch completes and repopulates the list. The old code called applyFilter() after clearFilter(), which kept filterIsApplied at true to prevent this.

Additional Locations (1)

Fix in Cursor Fix in Web

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

Comments