@coursebuilder/commerce-next
Version:
Commerce Functionality for Course Builder with Next.js
20 lines (19 loc) • 731 B
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import * as React from 'react';
import RedeemDialog from '../pricing/redeem-dialog';
// CouponValidator is from CommerceProps as `couponFromCode`
export function useCoupon(coupon, product) {
const [validCoupon, setValidCoupon] = React.useState(false);
React.useEffect(() => {
setTimeout(() => {
setValidCoupon(Boolean(coupon && coupon.isValid));
}, 0);
}, [coupon]);
return {
validCoupon,
redeemableCoupon: validCoupon && coupon?.isRedeemable,
RedeemDialogForCoupon: () => {
return coupon ? (_jsx(RedeemDialog, { product: product, open: validCoupon, couponId: coupon.id })) : null;
},
};
}