Skip to main content

Interface: ProductTabsProps

Defined in: components/ProductTabs.tsx:27

Properties

className?

optional className?: string

Defined in: components/ProductTabs.tsx:145

Extra CSS class applied to the root element.


descriptionCollapsed?

optional descriptionCollapsed?: boolean

Defined in: components/ProductTabs.tsx:66

When true, the description is initially collapsed to descriptionMaxLength characters. A "Read more" / "Read less" toggle is shown. Passed as collapsed to ProductDescription. Defaults to false.


descriptionMaxLength?

optional descriptionMaxLength?: number

Defined in: components/ProductTabs.tsx:72

Maximum number of characters shown when the description is collapsed. Passed as maxLength to ProductDescription. Defaults to 0 (no truncation).


downloadsLabels?

optional downloadsLabels?: Record<string, string>

Defined in: components/ProductTabs.tsx:131

Override UI strings for the Downloads section. Available keys: title, download Passed as labels to ProductDownloads.


graphqlClient?

optional graphqlClient?: GraphQLClient

Defined in: components/ProductTabs.tsx:80

Initialised Propeller SDK GraphQL client. Passed to ProductSpecifications for internal attribute fetching.


labels?

optional labels?: Record<string, string>

Defined in: components/ProductTabs.tsx:57

Override the tab button labels. Available keys: description, specifications, downloads, videos


language?

optional language?: string

Defined in: components/ProductTabs.tsx:51

Language code passed to all sub-components. Defaults to 'NL'.


product

product: Product

Defined in: components/ProductTabs.tsx:29

Product for which to display the information.


productDescriptionComponent?

optional productDescriptionComponent?: ComponentType<ProductDescriptionProps>

Defined in: components/ProductTabs.tsx:150


productDownloadsComponent?

optional productDownloadsComponent?: ComponentType<ProductDownloadsProps>

Defined in: components/ProductTabs.tsx:152


productId?

optional productId?: number

Defined in: components/ProductTabs.tsx:86

Product ID to fetch attributes for. Passed to ProductSpecifications for internal attribute fetching.


productSpecificationsComponent?

optional productSpecificationsComponent?: ComponentType<ProductSpecificationsProps>

Defined in: components/ProductTabs.tsx:151


productVideosComponent?

optional productVideosComponent?: ComponentType<ProductVideosProps>

Defined in: components/ProductTabs.tsx:153


showDescription?

optional showDescription?: boolean

Defined in: components/ProductTabs.tsx:34

If true, displays the Description tab. Defaults to true.


showDownloads?

optional showDownloads?: boolean

Defined in: components/ProductTabs.tsx:40

If true, displays the Downloads tab. Defaults to true.


showSpecifications?

optional showSpecifications?: boolean

Defined in: components/ProductTabs.tsx:37

If true, displays the Specifications tab. Defaults to true.


showVideos?

optional showVideos?: boolean

Defined in: components/ProductTabs.tsx:43

If true, displays the Videos tab. Defaults to true.


specificationsAfterSpecs?

optional specificationsAfterSpecs?: (ctx) => ReactNode

Defined in: components/ProductTabs.tsx:122

Render arbitrary content at the end of the specifications section (after the attribute rows). Passed as afterSpecs to ProductSpecifications.

Parameters

ctx
layout

"table" | "list"

Returns

ReactNode


specificationsBeforeSpecs?

optional specificationsBeforeSpecs?: (ctx) => ReactNode

Defined in: components/ProductTabs.tsx:116

Render arbitrary content at the start of the specifications section (before the attribute rows) — e.g. a labelled "Unit of measure" row. Passed as beforeSpecs to ProductSpecifications; receives the active layout so the consumer can return a <tr> (table) or block (list).

Parameters

ctx
layout

"table" | "list"

Returns

ReactNode


specificationsGrouping?

optional specificationsGrouping?: boolean

Defined in: components/ProductTabs.tsx:101

When true, groups specifications by their group field with a heading per section. When false or omitted, displays a flat ungrouped table. Default: false. Passed as grouping to ProductSpecifications.


specificationsLayout?

optional specificationsLayout?: string

Defined in: components/ProductTabs.tsx:94

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


specificationsPackageDescription?

optional specificationsPackageDescription?: string

Defined in: components/ProductTabs.tsx:108

Extra package-description string rendered in the specifications section (e.g. contents / packaging notes). Passed as packageDescription to ProductSpecifications.


videosLabels?

optional videosLabels?: Record&lt;string, string>

Defined in: components/ProductTabs.tsx:140

Override UI strings for the Videos section. Available key: title Passed as labels to ProductVideos.