Interface: ProductTabsProps
Defined in: components/ProductTabs.tsx:27
Properties
className?
optionalclassName?:string
Defined in: components/ProductTabs.tsx:145
Extra CSS class applied to the root element.
descriptionCollapsed?
optionaldescriptionCollapsed?: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?
optionaldescriptionMaxLength?: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?
optionaldownloadsLabels?: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?
optionalgraphqlClient?:GraphQLClient
Defined in: components/ProductTabs.tsx:80
Initialised Propeller SDK GraphQL client. Passed to ProductSpecifications for internal attribute fetching.
labels?
optionallabels?:Record<string,string>
Defined in: components/ProductTabs.tsx:57
Override the tab button labels. Available keys: description, specifications, downloads, videos
language?
optionallanguage?: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?
optionalproductDescriptionComponent?:ComponentType<ProductDescriptionProps>
Defined in: components/ProductTabs.tsx:150
productDownloadsComponent?
optionalproductDownloadsComponent?:ComponentType<ProductDownloadsProps>
Defined in: components/ProductTabs.tsx:152
productId?
optionalproductId?:number
Defined in: components/ProductTabs.tsx:86
Product ID to fetch attributes for. Passed to ProductSpecifications for internal attribute fetching.
productSpecificationsComponent?
optionalproductSpecificationsComponent?:ComponentType<ProductSpecificationsProps>
Defined in: components/ProductTabs.tsx:151
productVideosComponent?
optionalproductVideosComponent?:ComponentType<ProductVideosProps>
Defined in: components/ProductTabs.tsx:153
showDescription?
optionalshowDescription?:boolean
Defined in: components/ProductTabs.tsx:34
If true, displays the Description tab. Defaults to true.
showDownloads?
optionalshowDownloads?:boolean
Defined in: components/ProductTabs.tsx:40
If true, displays the Downloads tab. Defaults to true.
showSpecifications?
optionalshowSpecifications?:boolean
Defined in: components/ProductTabs.tsx:37
If true, displays the Specifications tab. Defaults to true.
showVideos?
optionalshowVideos?:boolean
Defined in: components/ProductTabs.tsx:43
If true, displays the Videos tab. Defaults to true.
specificationsAfterSpecs?
optionalspecificationsAfterSpecs?: (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?
optionalspecificationsBeforeSpecs?: (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?
optionalspecificationsGrouping?: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?
optionalspecificationsLayout?: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?
optionalspecificationsPackageDescription?: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?
optionalvideosLabels?:Record<string,string>
Defined in: components/ProductTabs.tsx:140
Override UI strings for the Videos section.
Available key: title
Passed as labels to ProductVideos.