Skip to main content

Interface: QuickOrderProps

Defined in: components/QuickOrder.tsx:81

Properties

afterAddToCart?

optional afterAddToCart?: (cart) => void

Defined in: components/QuickOrder.tsx:151

Fires after a successful add — receives the resulting cart.

Parameters

cart

Cart

Returns

void


applyOrderlists?

optional applyOrderlists?: boolean

Defined in: components/QuickOrder.tsx:117

Set false to ignore orderlistIds. Defaults to true when ids are given.


className?

optional className?: string

Defined in: components/QuickOrder.tsx:155

Override base container styles.


companyId?

optional companyId?: number

Defined in: components/QuickOrder.tsx:87

Active company id — scopes cart + pricing for B2B users.


configuration?

optional configuration?: object

Defined in: components/QuickOrder.tsx:98

Image filters forwarded to the typeahead + cart queries so results carry thumbnails. Pass the app's imageSearchFiltersGrid / imageVariantFiltersSmall (the same values the SearchBar uses) — without them the API returns no image variants and the dropdown shows no product images.

anonymousUserId?

optional anonymousUserId?: number

The channel's anonymous user, seeded by the host. Scopes logged-out listings exactly like the SSR seed does.

baseCategoryId?

optional baseCategoryId?: number

Catalog root the code search is scoped to. Required: without it the typeahead and the upload resolve nothing, since searching outside a category ignores orderlist scoping and would surface products the user has no access to.

imageSearchFiltersGrid?

optional imageSearchFiltersGrid?: MediaImageProductSearchInput

imageVariantFiltersSmall?

optional imageVariantFiltersSmall?: TransformationsInput


currency?

optional currency?: string

Defined in: components/QuickOrder.tsx:91

Currency symbol/code shown next to prices. Defaults to '€'.


debounceMs?

optional debounceMs?: number

Defined in: components/QuickOrder.tsx:123

Typeahead debounce in ms. Defaults to 300.


formatPrice?

optional formatPrice?: (price) => string

Defined in: components/QuickOrder.tsx:147

Format a price. Defaults to the shared formatPrice helper.

Parameters

price

number

Returns

string


graphqlClient?

optional graphqlClient?: GraphQLClient

Defined in: components/QuickOrder.tsx:85

GraphQL client. Resolved from PropellerProvider when omitted.


initialRows?

optional initialRows?: number

Defined in: components/QuickOrder.tsx:119

Number of blank rows to start with. Defaults to 5.


labels?

optional labels?: object

Defined in: components/QuickOrder.tsx:158

Localization label overrides.

adding?

optional adding?: string

addRow?

optional addRow?: string

addToCart?

optional addToCart?: string

alreadyInList?

optional alreadyInList?: string

colCode?

optional colCode?: string

colName?

optional colName?: string

colPrice?

optional colPrice?: string

colQuantity?

optional colQuantity?: string

colTotal?

optional colTotal?: string

downloadTemplate?

optional downloadTemplate?: string

missingCodes?

optional missingCodes?: string

noItems?

optional noItems?: string

noResults?

optional noResults?: string

remove?

optional remove?: string

selectFile?

optional selectFile?: string

title?

optional title?: string

upload?

optional upload?: string

uploadHint?

optional uploadHint?: string

uploadTitle?

optional uploadTitle?: string


language?

optional language?: string

Defined in: components/QuickOrder.tsx:89

Language for search/cart queries. Defaults to 'NL'.


maxUploadBytes?

optional maxUploadBytes?: number

Defined in: components/QuickOrder.tsx:142

Max upload file size in bytes. Defaults to 2 MB.


maxUploadRows?

optional maxUploadRows?: number

Defined in: components/QuickOrder.tsx:144

Max rows accepted from an upload. Defaults to 500.


onCartCreated?

optional onCartCreated?: (cart) => void

Defined in: components/QuickOrder.tsx:149

Fires when the bulk add creates a fresh cart — persist the cart id.

Parameters

cart

Cart

Returns

void


onMissingCodes?

optional onMissingCodes?: (codes) => void

Defined in: components/QuickOrder.tsx:153

Fires when some uploaded/entered codes could not be resolved.

Parameters

codes

string[]

Returns

void


onTemplateDownload?

optional onTemplateDownload?: () => void

Defined in: components/QuickOrder.tsx:140

Called when the template link is clicked. Navigation is untouched — this is a notification, not a handler: a buyer fetching the template is a quick-order intent signal that otherwise leaves no trace at all.

Returns

void


orderlistIds?

optional orderlistIds?: number[]

Defined in: components/QuickOrder.tsx:115

Orderlist (contract) ids to scope the catalogue by.


parseSpreadsheet?

optional parseSpreadsheet?: (file) => Promise<QuickOrderUploadLine[]>

Defined in: components/QuickOrder.tsx:131

Optional spreadsheet parser. When supplied, the XLSX upload panel is shown; the app parses the file (e.g. via SheetJS) and returns code+quantity lines. Kept as a prop so the package stays free of a heavy xlsx dependency — the app owns the parser and loads it only on this page.

Parameters

file

File

Returns

Promise<QuickOrderUploadLine[]>


searchThreshold?

optional searchThreshold?: number

Defined in: components/QuickOrder.tsx:121

Minimum characters before the typeahead fires. Defaults to 3.


taxZone?

optional taxZone?: string

Defined in: components/QuickOrder.tsx:113

Tax zone for price calculation. Defaults to 'NL'.


templateUrl?

optional templateUrl?: string

Defined in: components/QuickOrder.tsx:133

URL to a downloadable XLSX template (shown next to the upload control).


user?

optional user?: Contact | Customer | null

Defined in: components/QuickOrder.tsx:83

The authenticated user. Resolved from PropellerProvider when omitted.