Skip to content

Required-ancestor matrix

TagNearest required ancestorContext consumed
storesynk-store(none - root provider)- (provides storeContext)
storesynk-productstoresynk-storestoreContext (provides productContext)
storesynk-cartstoresynk-storestoreContext
cart-line-liststoresynk-store (usually inside storesynk-cart)storeContext
cart-linecart-line-list- (provides cartLineContext)
storesynk-liststoresynk-storestoreContext
search-result-liststoresynk-storestoreContext
predictive-searchstoresynk-storestoreContext
search-input(none - needs a store on the page, not as ancestor)- (targets by for id)
search-result-itemsearch-result-list or predictive-search- (styleable wrapper; no context)
show-data, show-title, show-description, show-vendor, show-product-typestoresynk-productproductContext (+ storeContext for money)
show-min-price, show-max-price, show-min-compare-price, show-max-compare-pricestoresynk-productproductContext + storeContext
show-price, show-compare-price, show-sku, show-barcode, show-stock, show-weight, show-unit-pricestoresynk-productproductContext + storeContext
show-quantitystoresynk-productproductContext
show-image, show-media, show-thumbnailstoresynk-productproductContext
change-optionstoresynk-productproductContext
option-valuechange-option- (styleable; engine-populated)
show-option-titleoption-value (within change-option)- (invisible text holder; the value’s name)
show-option-swatchoption-value (within change-option)- (engine-filled swatch)
show-option-label, show-active-option-titlestoresynk-product (optionally inside change-option)optionContext when nested, else productContext + a group/name attr
change-purchase-optionstoresynk-productproductContext (one-time / subscribe toggle)
purchase-optionchange-purchase-option or change-line-purchase-option- (styleable; value="single"/"recurring"; engine sets [ss-active])
change-selling-planstoresynk-productproductContext (+ storeContext for money)
selling-plan-optionchange-selling-plan or change-line-selling-plan- (styleable; engine-populated per plan)
show-selling-plan-name, show-selling-plan-priceselling-plan-option (within change-selling-plan or change-line-selling-plan)- (invisible text holders the engine fills)
show-metafield, metafield-wrapperstoresynk-productproductContext (metafield displayer / label-block wrapper)
metafield-itemshow-metafield- (styleable; per-value template for list.* metafields)
change-quantitystoresynk-productproductContext
increase-quantity, decrease-quantity, input-quantitychange-quantityproductContext (input-quantity only)
add-to-cart, buy-nowstoresynk-productproductContext + storeContext
product-linkstoresynk-productproductContext
show-sale-badgestoresynk-productproductContext + storeContext
klaviyo-back-in-stockstoresynk-productproductContext (back-in-stock form for the selected variant)
show-line-image, show-line-title, show-line-variant, show-line-price, show-line-quantity, show-line-original-price, show-line-discount, show-line-selling-plancart-linecartLineContext (+ storeContext for money)
increase-line-quantity, decrease-line-quantity, remove-cart-linecart-line- (reads .line off nearest cart-line)
change-line-purchase-optioncart-linecartLineContext (in-cart one-time / subscribe toggle for THAT line; not a clone container)
change-line-selling-plancart-linecartLineContext (+ storeContext for money) - in-cart frequency picker; clones selling-plan-option
show-cart-count, show-cart-total, show-cart-subtotal, show-cart-tax, show-cart-duties, show-cart-discount, show-cart-savings, show-discount-code, show-discount-error, checkout-link, apply-discount, remove-discount, cart-note, clear-cartstoresynk-storestoreContext
cart-discount-list, cart-order-discount-liststoresynk-storestoreContext
cart-discountcart-discount-list or cart-order-discount-list- (provides discountContext)
show-discount-amountcart-discountdiscountContext (+ storeContext for money)
open-cart(none - needs store + cart on the page)- (global openCart action)
close-cartstoresynk-cart- (calls .close() on nearest drawer)
change-country, change-languagestoresynk-storestoreContext (Markets pickers; dispatch sf:country-change / sf:language-change up to the store)
locale-valuechange-country or change-language- (styleable; the pill template, engine-populated - template mode only)
show-locale-namelocale-value (within a picker)- (invisible text holder; the country name / language endonym)
show-locale-currencylocale-value (within change-country)- (invisible text holder; the country’s currency, e.g. “EUR €”)
storesynk-collectionstoresynk-storestoreContext (provides collectionContext)
product-list, change-sort, change-price, change-filter, filter-list, active-filter-list, clear-filters, load-more, show-result-countstoresynk-collectioncollectionContext (SSK-110)
filter-groupfilter-list- (styleable; engine-populated per facet)
filter-valuefilter-list or change-filter- (styleable; engine-populated per facet value)
active-filter-itemactive-filter-list- (styleable; the chip template)
show-filter-labelfilter-list (in a filter-group) or change-filter- (invisible; the facet’s name)
show-filter-titlefilter-list / change-filter (in a filter-value) or active-filter-list (chip)- (invisible; the value’s label)
show-filter-countfilter-list or change-filter (in a filter-value)- (invisible; the value’s live count)
show-filter-swatchchange-filter (in a filter-value)- (styleable; engine paints its swatch color/image)
storesynk-bundlestoresynk-product (the page’s product)productContext + storeContext (bundles module; queries the product’s bundles)
bundle-offerstoresynk-bundle- (provides bundleContext; fed via provideBundle())
bundle-member-listbundle-offerbundleContext (attaches a per-clone bundleMemberContext to each member card; feeds each card only the member’s allowed variants)
show-bundle-title, show-bundle-total, show-bundle-original-total, show-bundle-savings, show-bundle-percentagebundle-offerbundleContext (+ storeContext for money)
show-member-quantity, show-member-subtotalbundle-member-list (inside the member-card template)bundleMemberContext (+ storeContext for money)
add-bundle-to-cartbundle-offerbundleContext
storesynk-volume-discountstoresynk-product (the page’s product)productContext + storeContext (volume-discount module; queries the product’s volume discounts)
volume-tier-liststoresynk-volume-discountvolumeDiscountContext (SSK-105; attaches a per-clone volumeTierContext to each tier row)
volume-tiervolume-tier-list- (the radio row; cloned + driven by the list, SSK-106)
show-volume-discount-titlestoresynk-volume-discountvolumeDiscountContext (SSK-105; the widget heading)
show-tier-title, show-tier-label, show-tier-badge, show-tier-price, show-tier-original-price, show-tier-each-pricevolume-tier-list (inside the tier-row template)per-clone volumeTierContext (SSK-105) (+ storeContext for money)
add-volume-to-cartstoresynk-volume-discountvolumeDiscountContext + productContext + storeContext (SSK-105)
storesynk-mix-matchstoresynk-product (the page’s product), or none with handle="…" (standalone builder page)productContext + storeContext (mix-match module; queries the product’s mix-match bundles, or one bundle directly by handle)
mix-match-offerstoresynk-mix-match(provides mixMatchContext; fed via provideLive(), owns the selection)
mix-match-section-listmix-match-offermixMatchContext (SSK-105; attaches a per-clone section context, owns the accordion state)
mix-match-sectionmix-match-section-list(styleable wrapper; the list stamps ss-open/ss-met on it, SSK-106)
toggle-sectionmix-match-section (inside the section template)per-clone section context (SSK-105; APG disclosure header)
mix-match-item-listmix-match-section (inside the section template)per-clone section context + mixMatchContext (SSK-105; the accordion panel; attaches a per-card item context)
show-section-title, show-section-image, show-section-requirement, show-section-count, show-section-progressmix-match-section (inside the section template)per-clone section context (SSK-105)
add-mix-match-item, increase-mix-match-item, decrease-mix-match-item, remove-mix-match-item, show-item-quantitymix-match-item-list (inside the pool-card template)per-card item context + the card’s productContext (SSK-105)
mix-match-selection-listmix-match-offermixMatchContext (SSK-105; attaches a per-clone pick context)
show-pick-image, show-pick-quantitymix-match-selection-list (inside the pick template)per-clone pick context (SSK-105)
show-selection-overflowmix-match-selection-list (after the pick template)mixMatchContext + the list’s max attribute (SSK-105)
show-mix-match-title, show-mix-match-total, show-mix-match-original-total, show-mix-match-savings, show-mix-match-tier-hint, show-mix-match-free-shippingmix-match-offermixMatchContext (SSK-105) (+ storeContext for money)
add-mix-match-to-cartmix-match-offermixMatchContext (SSK-105)
storesynk-addonsstoresynk-product (the page’s product)productContext + storeContext (product-addons module; queries the offers targeting the product)
show-addons-title, show-addons-subtitlestoresynk-addonsaddonsContext (SSK-105; the offer’s heading / subheading)
addon-liststoresynk-addonsaddonsContext (SSK-105; attaches a per-clone row context to each row card)
select-addon, show-addon-price, show-addon-original-priceaddon-list (inside the row-card template)per-clone row context (SSK-105) (+ storeContext for money on the price leaves; select-addon also reads the card’s productContext)
log-in, log-out(a storesynk-store anywhere on the page - SSK-101; not an ancestor)- (global action verbs; drive the store’s single customer session)
account-linkstoresynk-storestoreContext (the account destination; path="…" appends a sub-page)
show-customer-email, show-customer-first-name, show-customer-last-name, show-customer-namestoresynk-storestoreContext (ctx.customer; hidden + [ss-empty] when anonymous)
storesynk-customer-pricingstoresynk-product (the page’s product)productContext + storeContext (customer-pricing widget; finds the rule targeting the product)
show-pricing-prompt, show-pricing-title, show-pricing-percentage, show-pricing-price, show-pricing-original-price, show-pricing-notestoresynk-customer-pricingcustomerPricingContext (SSK-105) (+ storeContext for money on the price leaves)
(member card) storesynk-product inside bundle-member-listbundle-member-list- (provides productContext to the card; a sanctioned storesynk-product nesting - fed via provideProduct(), no handle/product-id)
(pool card) storesynk-product inside mix-match-item-listmix-match-item-list(provides productContext to the card; another sanctioned storesynk-product nesting, fed via provideProduct(), no handle/product-id)
(row card) storesynk-product inside addon-listaddon-list(provides productContext to the card; the third sanctioned storesynk-product nesting, fed via provideProduct(), no handle/product-id)

Imported from the Storesynk skill v0.1.0 (references/component-reference.md). To change this page, change it there.