app-change-payment-method.js (799B)
1 self.addEventListener('canmakepayment', (event) => { 2 event.respondWith(true); 3 }); 4 5 async function responder(event) { 6 const methodName = event.methodData[0].supportedMethods; 7 if (!event.changePaymentMethod) { 8 return { 9 methodName, 10 details: { 11 changePaymentMethodReturned: 12 'The changePaymentMethod() method is not implemented.', 13 }, 14 }; 15 } 16 let changePaymentMethodReturned; 17 try { 18 const response = await event.changePaymentMethod(methodName, { 19 country: 'US', 20 }); 21 changePaymentMethodReturned = response; 22 } catch (err) { 23 changePaymentMethodReturned = err.message; 24 } 25 return {methodName, details: {changePaymentMethodReturned}}; 26 } 27 28 self.addEventListener('paymentrequest', (event) => { 29 event.respondWith(responder(event)); 30 });