From b5f1fd1a206dfdfe72b70b98467c8fd33bcb817a Mon Sep 17 00:00:00 2001 From: Dave Brudner Date: Fri, 17 Jan 2020 12:39:41 -0600 Subject: [PATCH] Updates demo for useCheckoutPricing#adjustments --- demo/src/checkout-pricing.js | 78 ++++++++++++++++++++++++------------ 1 file changed, 53 insertions(+), 25 deletions(-) diff --git a/demo/src/checkout-pricing.js b/demo/src/checkout-pricing.js index fd52358..aa566c2 100644 --- a/demo/src/checkout-pricing.js +++ b/demo/src/checkout-pricing.js @@ -14,44 +14,72 @@ export function CheckoutPricing () { function CheckoutPricingForm () { const [recurlyError, setRecurlyError] = useState(null); const [plan, setPlan] = useState(''); - const [quantity, setQuantity] = useState(''); + const [planQuantity, setPlanQuantity] = useState(''); + const [itemCode, setItemCode] = useState(''); + const [itemQuantity, setItemQuantity] = useState(''); const [{ price, loading }, setPricing] = useCheckoutPricing({}, setRecurlyError); function updatePlan (e) { const plan = e.target.value; setRecurlyError(null); setPlan(plan); - setPricing(prev => ({ ...prev, subscriptions: [{ plan, quantity }] })); + setPricing(prev => ({ ...prev, subscriptions: [{ plan, quantity: planQuantity }] })); }; - function updateQuantity (e) { - const quantity = e.target.value; + function updatePlanQuantity (e) { + const planQuantity = e.target.value; setRecurlyError(null); - setQuantity(() => quantity); - setPricing(prev => ({ ...prev, subscriptions: [{ plan, quantity }] })); + setPlanQuantity(planQuantity); + setPricing(prev => ({ ...prev, subscriptions: [{ plan, quantity: planQuantity }] })); }; + function handleSubmit(e) { + e.preventDefault(); + setPricing({ + subscriptions: [{ plan, quantity: planQuantity }], + adjustments: [{ itemCode, quantity: itemQuantity }], + }); + } + return (
-
- - -
-
- {recurlyError ? {recurlyError.message} : ''} - {price && price.now && !recurlyError ? Subtotal: ${price.now.subtotal} : ''} -
+
+
+ + +
+ setItemCode(e.target.value)} + placeholder="Item code" + /> + setItemQuantity(e.target.value)} + placeholder="Quantity" + min="0" + /> +
+
+
+ {recurlyError ? {recurlyError.message} : ''} + {price && price.now && !recurlyError ? Subtotal: ${price.now.subtotal} : ''} +
+ +
); };