Skip to main content

Interface: ProductSpecificationsProps

Defined in: components/ProductSpecifications.tsx:29

Properties​

afterSpecs?​

optional afterSpecs?: (ctx) => ReactNode

Defined in: components/ProductSpecifications.tsx:89

Render arbitrary content at the END of the specifications, after the fetched attribute rows. Same layout contract as beforeSpecs. In grouped mode it renders once, below the last group.

Parameters​

ctx​
layout​

"table" | "list"

Returns​

ReactNode


attributes?​

optional attributes?: AttributeResult[]

Defined in: components/ProductSpecifications.tsx:45

Pre-fetched attribute result items used as fallback when productId is not provided. When productId is provided the component fetches its own data and this prop is ignored.


beforeSpecs?​

optional beforeSpecs?: (ctx) => ReactNode

Defined in: components/ProductSpecifications.tsx:82

Render arbitrary content at the START of the specifications, before the fetched attribute rows. Receives the active layout so the consumer can return markup that fits the container:

  • 'table' → return one or more <tr> (injected inside <tbody>), e.g. a labelled "Unit of measure" row.
  • 'list' → return block element(s) (injected inside the list stack). In grouped mode it renders once, above the first group. Return null/undefined to render nothing.

Parameters​

ctx​
layout​

"table" | "list"

Returns​

ReactNode


className?​

optional className?: string

Defined in: components/ProductSpecifications.tsx:92

Extra CSS class applied to the root element.


graphqlClient?​

optional graphqlClient?: GraphQLClient

Defined in: components/ProductSpecifications.tsx:34

Initialised Propeller SDK GraphQL client. Required when productId is set — used to fetch public attributes.


grouping?​

optional grouping?: boolean

Defined in: components/ProductSpecifications.tsx:64

When true, groups attributes by their group field with a heading per section. When false or omitted, displays a flat ungrouped table/list. Default: false.


language?​

optional language?: string

Defined in: components/ProductSpecifications.tsx:51

Language code used to resolve localised attribute labels. Defaults to 'NL'.


layout?​

optional layout?: string

Defined in: components/ProductSpecifications.tsx:58

Display layout for the specifications. 'table' — two-column table (name | value). Default. 'list' — vertical label + value stacked rows.


packageDescription?​

optional packageDescription?: string

Defined in: components/ProductSpecifications.tsx:70

Optional package-description string (e.g. contents / packaging notes), rendered above the attribute table. Omitted when empty.


productId?​

optional productId?: number

Defined in: components/ProductSpecifications.tsx:39

Product ID to fetch attributes for.