@commercelayer/react-components
Version:
The Official Commerce Layer React Components
2 lines • 1.27 kB
JavaScript
"use client";
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.LineItemOptions=LineItemOptions;const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),LineItemChildrenContext_1=tslib_1.__importDefault(require("../../context/LineItemChildrenContext")),LineItemOptionChildrenContext_1=tslib_1.__importDefault(require("../../context/LineItemOptionChildrenContext"));function LineItemOptions(props){const{skuOptionId,title,children,showName=!0,showAll,className,titleTagElement="h6",titleClassName,...p}=props,{lineItem}=(0,react_1.useContext)(LineItemChildrenContext_1.default),lineItemOptions=lineItem!=null?lineItem?.line_item_options||[]:[],TitleTagElement=titleTagElement,options=lineItemOptions.filter(o=>showAll?!0:o.skuOption().id===skuOptionId).map((o,k)=>{const showTitle=showName?(0,jsx_runtime_1.jsx)(TitleTagElement,{className:titleClassName,children:title||o.name}):null,valueProps={lineItemOption:o,showAll};return(0,jsx_runtime_1.jsxs)("div",{className,...p,children:[showTitle,(0,jsx_runtime_1.jsx)(LineItemOptionChildrenContext_1.default.Provider,{value:valueProps,children})]},k)});return(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:options})}exports.default=LineItemOptions;