@commercelayer/react-components
Version:
The Official Commerce Layer React Components
2 lines • 3.17 kB
JavaScript
"use client";
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.Errors=Errors;const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=tslib_1.__importDefault(require("../utils/Parent")),GiftCardContext_1=tslib_1.__importDefault(require("../../context/GiftCardContext")),OrderContext_1=tslib_1.__importDefault(require("../../context/OrderContext")),AddressContext_1=tslib_1.__importDefault(require("../../context/AddressContext")),getAllErrors_1=tslib_1.__importDefault(require("../utils/getAllErrors")),LineItemContext_1=tslib_1.__importDefault(require("../../context/LineItemContext")),LineItemChildrenContext_1=tslib_1.__importDefault(require("../../context/LineItemChildrenContext")),CustomerContext_1=tslib_1.__importDefault(require("../../context/CustomerContext")),PaymentMethodContext_1=tslib_1.__importDefault(require("../../context/PaymentMethodContext")),PaymentMethodChildrenContext_1=tslib_1.__importDefault(require("../../context/PaymentMethodChildrenContext")),ShipmentContext_1=tslib_1.__importDefault(require("../../context/ShipmentContext")),InStockSubscriptionContext_1=tslib_1.__importDefault(require("../../context/InStockSubscriptionContext"));function Errors(props){const{children,messages=[],resource,field}=props,p=tslib_1.__rest(props,["children","messages","resource","field"]),{payment}=(0,react_1.useContext)(PaymentMethodChildrenContext_1.default),{errors:orderErrors}=(0,react_1.useContext)(OrderContext_1.default),{errors:giftCardErrors}=(0,react_1.useContext)(GiftCardContext_1.default),{errors:lineItemErrors}=(0,react_1.useContext)(LineItemContext_1.default),{errors:addressErrors}=(0,react_1.useContext)(AddressContext_1.default),{errors:customerErrors}=(0,react_1.useContext)(CustomerContext_1.default),{errors:shipmentErrors}=(0,react_1.useContext)(ShipmentContext_1.default),{errors:inStockSubscriptionErrors}=(0,react_1.useContext)(InStockSubscriptionContext_1.default),{errors:paymentMethodErrors,currentPaymentMethodType,currentPaymentMethodId}=(0,react_1.useContext)(PaymentMethodContext_1.default),{lineItem}=(0,react_1.useContext)(LineItemChildrenContext_1.default),allErrors=(0,react_1.useMemo)(()=>[...giftCardErrors||[],...orderErrors||[],...lineItemErrors||[],...customerErrors||[],...shipmentErrors||[],...inStockSubscriptionErrors||[],...paymentMethodErrors?.filter(v=>v.field===currentPaymentMethodType&&payment?.id===currentPaymentMethodId)||[]],[giftCardErrors,orderErrors,lineItemErrors,customerErrors,shipmentErrors,inStockSubscriptionErrors,paymentMethodErrors]).filter((v,k,a)=>{var _a;return v?.code!==((_a=a[k-1])===null||_a===void 0?void 0:_a.code)}),addressesErrors=(0,react_1.useMemo)(()=>[...addressErrors||[]],[addressErrors]),msgErrors=(0,getAllErrors_1.default)({allErrors:[...allErrors,...addressesErrors],field,messages,props:p,lineItem,resource,returnHtml:!children}),parentProps=Object.assign({messages,resource,field,errors:msgErrors},p);return children?(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},parentProps,{children})):(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:msgErrors})}exports.default=Errors;