Commits
- Updated blog-post.html to include a responsive video container for better video display.
- Adjusted layout structure for improved rendering of breadcrumbs and blog post content.
STRF-14251 Make cart preview work with multi-lang
Made-with: Cursor
- Inject backorder_messages list and product.show_backorder_message into
JS context from product-view.html
- Split data-product-backordered row into two spans: one for qty
backordered message and one for the custom backorder message
- Add updateBackorderMessage() that looks up backorder_message_id in the
injected list and renders alongside the qty backordered message
- Add toggleBackorderedContainer() driven solely by qty span visibility
so the row is only shown when units are actually backordered
- Capture backorder_message_id from optionChange API response in
updateBackorderContext() always overwriting with ?? null to prevent
stale IDs bleeding across variant switches
- Call updateBackorderMessage() in updateView() and both quantity change
handlers (button click and keyup)
- For simple products (no options) make an explicit optionChange call on
page init to fetch backorder_message_id
Made-with: Cursor
feat(backorders): BACK-410 move shipping expectation prompt to cart totals
Move the default shipping expectation message from the per-item level
in cart content to the shipping totals section, so it displays once
under the "Shipping" heading instead of repeating for each cart item.
Made-with: Cursor
feat(backorders): BACK-410 render shipping expectation prompt on cart page
Display the merchant's default shipping expectation message alongside
backordered cart items when the prompt is enabled in inventory settings.
Made-with: Cursor
* feat(storefront): SD-11287 create Language Selector Component (UI implementation)
* feat(storefront): SD-11501 refactor Language Selector Component to consume real data from Stencil Context
* feat(checkout): CHECKOUT-9858 show maximum discount applied text
* feat(checkout): CHECKOUT-9858 update changelog
feat(backorders): BACK-472 Add backorder availability prompt for complex products
feat(sd): SD-11467 Fix misc. crashes
Enable the backorder availability prompt and quantity message for
products with variants by dynamically updating backorder context
from the option-change API response.
Made-with: Cursor
feat(backorders): BACK-472 render backorder quantity prompt for complex products on PDP
Update the backorder quantity message to work for complex products
(with variants) in addition to simple products. When a variant is
selected, inventory context (availableOnHand, availableForBackorder,
availableToSell) is refreshed from the optionChange API response so
the backorder calculation uses the correct variant-level values.
Changes:
- Inject availableToSell, showBackorderAvailabilityPrompt, and the
i18n backorder message into the JS context
- Add updateBackorderContext() to refresh inventory values on variant
change, with fallback to data.stock when available_on_hand is absent
- Recalculate the backorder message inside updateView() after every
variant selection
- Use the i18n string (products.quantity_backordered) instead of
hardcoded text
- Read displayed stock from the DOM as fallback for onHand to handle
products where available_on_hand is not populated
- Respect showBackorderAvailabilityPrompt merchant setting
- Preserve backward compatibility for simple products
Made-with: Cursor
feat(backorders): BACK-471 display backordered quantity message on PDP
Show a dynamic message indicating how many items will be backordered
based on the selected quantity, available on-hand stock, and backorder
availability.
Co-authored-by: Cursor <cursoragent@cursor.com>
feat(checkout): CHECKOUT-8841 Display strikethrough shipping price
fix(storefront): BACK-475 Display backorder message on cart page
Add backorder message below quantity controls in cart items when
stock_position.backorder_message is available, with null-safe checks.
Style the message with zero bottom margin for proper alignment.
Co-authored-by: Cursor <cursoragent@cursor.com>
* feat(customers): CUST-4055 Add backend based static translations for 4 fields on the account edit page
* chore(customers): CUST-4055 Add PR link in the changelog
feat(backorders): BACK-469 add backorder availability prompt on PDP
Only show the backorder availability prompt when available_to_sell > 0
and available_for_backorder > 0, in addition to the existing
show_backorder_availability_prompt check.
Co-authored-by: Cursor <cursoragent@cursor.com>
fix(storefront): STRF-14009 Fix bulk price display when discount_inc_tax is present for fixed price type
Co-authored-by: Raymond Kong <81659892+bc-raymond-kong@users.noreply.github.com>
- Inject backorder_messages list and product.show_backorder_message into
JS context from product-view.html
- Split data-product-backordered row into two spans: one for qty
backordered message and one for the custom backorder message
- Add updateBackorderMessage() that looks up backorder_message_id in the
injected list and renders alongside the qty backordered message
- Add toggleBackorderedContainer() driven solely by qty span visibility
so the row is only shown when units are actually backordered
- Capture backorder_message_id from optionChange API response in
updateBackorderContext() always overwriting with ?? null to prevent
stale IDs bleeding across variant switches
- Call updateBackorderMessage() in updateView() and both quantity change
handlers (button click and keyup)
- For simple products (no options) make an explicit optionChange call on
page init to fetch backorder_message_id
Made-with: Cursor
Update the backorder quantity message to work for complex products
(with variants) in addition to simple products. When a variant is
selected, inventory context (availableOnHand, availableForBackorder,
availableToSell) is refreshed from the optionChange API response so
the backorder calculation uses the correct variant-level values.
Changes:
- Inject availableToSell, showBackorderAvailabilityPrompt, and the
i18n backorder message into the JS context
- Add updateBackorderContext() to refresh inventory values on variant
change, with fallback to data.stock when available_on_hand is absent
- Recalculate the backorder message inside updateView() after every
variant selection
- Use the i18n string (products.quantity_backordered) instead of
hardcoded text
- Read displayed stock from the DOM as fallback for onHand to handle
products where available_on_hand is not populated
- Respect showBackorderAvailabilityPrompt merchant setting
- Preserve backward compatibility for simple products
Made-with: Cursor