Interface: ProductBundlesProps
Defined in: components/ProductBundles.tsx:18
Properties
afterBundleAddToCart?
optionalafterBundleAddToCart?: (cart,bundle?) =>void
Defined in: components/ProductBundles.tsx:134
Callback triggered after adding the bundle to cart.
Parameters
cart
Cart
bundle?
Bundle
Returns
void
beforeBundleAddToCart?
optionalbeforeBundleAddToCart?: (bundleId,quantity) =>boolean
Defined in: components/ProductBundles.tsx:126
Callback triggered before adding the bundle to cart.
Parameters
bundleId
string
quantity
number
Returns
boolean
cartId?
optionalcartId?:string
Defined in: components/ProductBundles.tsx:59
Cart ID — required when onAddToCart is not provided
className?
optionalclassName?:string
Defined in: components/ProductBundles.tsx:137
Extra CSS class applied to the root wrapper element.
companyId?
optionalcompanyId?:number
Defined in: components/ProductBundles.tsx:56
Active company ID from the company switcher. Overrides user's default company for cart creation and lookup. * If not provided, the user's default company is used.
configuration?
optionalconfiguration?:any
Defined in: components/ProductBundles.tsx:85
Additional configuration object passed through to the component.
createCart?
optionalcreateCart?:boolean
Defined in: components/ProductBundles.tsx:71
If true a new cart is created if no cart ID is provided. Defaults to false.
graphqlClient?
optionalgraphqlClient?:GraphQLClient
Defined in: components/ProductBundles.tsx:22
GraphQL client instance used to fetch bundle data. Resolved from PropellerProvider when omitted.
includeTax?
optionalincludeTax?:boolean
Defined in: components/ProductBundles.tsx:39
When true, net price (incl. tax) is the leading price.
Note: in the Propeller SDK price.gross = excl. VAT, price.net = incl. VAT.
labels?
optionallabels?:Record<string,string>
Defined in: components/ProductBundles.tsx:101
Override any UI string. Available keys: title, condition_ALL, condition_EP, leaderItem, youSave, adding, addToCart, loginToSeePrices, addedToCart, modalTitle, continueShopping, proceedToCheckout, noCartId
language?
optionallanguage?:string
Defined in: components/ProductBundles.tsx:28
Language code used for content (e.g. 'NL', 'EN'). Resolved from PropellerProvider when omitted.
layout?
optionallayout?:"compact"|"vertical"|"horizontal"
Defined in: components/ProductBundles.tsx:93
Layout variant for the bundle display.
- 'vertical' — stacked layout
- 'horizontal' — side-by-side (default)
- 'compact' — condensed, hides individual items
onAddBundleToCart?
optionalonAddBundleToCart?: (bundleId,quantity) =>void
Defined in: components/ProductBundles.tsx:129
Called when the user clicks "Add bundle to cart". Receives bundleId and quantity (always 1).
Parameters
bundleId
string
quantity
number
Returns
void
onCartCreated?
optionalonCartCreated?: (cart) =>void
Defined in: components/ProductBundles.tsx:65
Callback to handle a new cart being created. WARNING: If not provided the component create new carts on every add-to-cart.
Parameters
cart
Cart
Returns
void
onProceedToCheckout?
optionalonProceedToCheckout?: () =>void
Defined in: components/ProductBundles.tsx:119
Callback fired when the "Proceed to checkout" modal button is clicked
Returns
void
portalMode?
optionalportalMode?:string
Defined in: components/ProductBundles.tsx:48
Controls portal visibility mode. 'semi-closed' — prices and add-to-cart are hidden for anonymous users. Defaults to 'open'.
productId
productId:
number
Defined in: components/ProductBundles.tsx:25
ID of the product whose bundles should be fetched.
showIndividualItems?
optionalshowIndividualItems?:boolean
Defined in: components/ProductBundles.tsx:82
When true, the individual bundle items are listed inside each bundle card. Defaults to true.
showLoginPrompt?
optionalshowLoginPrompt?:boolean
Defined in: components/ProductBundles.tsx:107
Show the "log in to see prices" prompt when prices are hidden. Defaults to true; pass false to render nothing in its place.
showModal?
optionalshowModal?:boolean
Defined in: components/ProductBundles.tsx:116
When true a modal popup is shown after a successful add-to-cart with buttons to continue shopping or proceed to checkout. Defaults to false (only a brief inline toast is shown).
stockValidation?
optionalstockValidation?:boolean
Defined in: components/ProductBundles.tsx:76
When true, stock availability is validated before adding to cart.
taxZone
taxZone:
string
Defined in: components/ProductBundles.tsx:31
Tax zone code used for pricing (e.g. 'NL').
user?
optionaluser?:Contact|Customer|null
Defined in: components/ProductBundles.tsx:51
Authenticated user — used for semi-closed visibility check.