@commercelayer/react-components
Version:
The Official Commerce Layer React Components
2 lines • 1.17 kB
JavaScript
"use client";
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.BaseOrderPrice=BaseOrderPrice;const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),OrderContext_1=tslib_1.__importDefault(require("../../context/OrderContext")),getAmount_1=tslib_1.__importDefault(require("../../utils/getAmount")),Parent_1=tslib_1.__importDefault(require("./Parent")),react_1=require("react"),isEmpty_1=tslib_1.__importDefault(require("lodash/isEmpty"));function BaseOrderPrice(props){const{format="formatted",base,type,children,...p}=props,{order}=(0,react_1.useContext)(OrderContext_1.default),[price,setPrice]=(0,react_1.useState)(""),[cents,setCents]=(0,react_1.useState)(0);(0,react_1.useEffect)(()=>{const p2=(0,getAmount_1.default)({base,type,format,obj:order||{}}),c=(0,getAmount_1.default)({base,type,format:"cents",obj:order||{}});return setPrice(p2),setCents(c),()=>{(0,isEmpty_1.default)(order)&&setPrice("")}},[order]);const parentProps={priceCents:cents,price,...p};return children?(0,jsx_runtime_1.jsx)(Parent_1.default,{...parentProps,children}):(0,jsx_runtime_1.jsx)("span",{...p,children:price})}exports.default=BaseOrderPrice;