function onBuyClicked() {
  var supportedInstruments = [
    'https://android.com/pay', 'visa', 'mastercard', 'amex', 'discover',
    'maestro', 'diners', 'jcb', 'unionpay'
  ];

  var details = {
    displayItems: [
      {
        label: 'Original donation amount',
        amount: {currency: 'USD', value: '65.00'}
      },
      {
        label: 'Friends and family discount',
        amount: {currency: 'USD', value: '-10.00'}
      },
      {
        label: 'Free worldwide shipping',
        amount: {currency: 'USD', value: '0.00'}
      },
      {
        label: 'Donation',
        amount: {currency: 'USD', value: '55.00'}
      }
    ],
    shippingOptions: [{
      id: 'freeShippingOption',
      label: 'Free worldwide shipping',
      amount: {currency: 'USD', value: '0.00'}
    }]
  };

  var options = {requestShipping: true};

  var schemeData = {
    'https://android.com/pay': {
      'gateway': 'stripe',
      'stripe:publishableKey': 'pk_test_VKUbaXb3LHE7GdxyOBMNwXqa',
      'stripe:version': '2015-10-16 (latest)'
    }
  };

  if (!window.PaymentRequest) {
    error('PaymentRequest API is not supported.');
    return;
  }

  try {
    var request =
        new PaymentRequest(supportedInstruments, details, options, schemeData);
    request.show()
        .then(instrumentResponse => {
          window.setTimeout(() => {
            instrumentResponse.complete(true)
                .then(() => {
                  done(
                      'Thank you!', request.shippingAddress,
                      request.shippingOption, instrumentResponse.methodName,
                      instrumentResponse.details);
                })
                .catch(err => { error(err.message); });
          }, 2000);
        })
        .catch(err => { error(err.message); });

  } catch (e) {
    error('Developer mistake: \'' + e.message + '\'');
  }
}

@@ -1,29 +1,227 @@
-function onBuyClicked() %7B
+/* global done:false */%0A/* global error:false */%0A/* global PaymentRequest:false */%0A%0A/**%0A * Launches payment request that provides free shipping worldwide.%0A */%0Afunction onBuyClicked() %7B  // eslint-disable-line no-unused-vars
 %0A  v
@@ -743,33 +743,24 @@
   %7D,%0A      %7B
-%0A        
 label: 'Dona
@@ -765,24 +765,16 @@
 nation',
-%0A       
  amount:
@@ -807,23 +807,16 @@
 '55.00'%7D
-%0A      
 %7D%0A    %5D,
@@ -1850,32 +1850,50 @@
  .catch(err =%3E %7B
+%0A                 
  error(err.messa
@@ -1892,24 +1892,40 @@
 rr.message);
+%0A               
  %7D);%0A       
@@ -1971,16 +1971,26 @@
 err =%3E %7B
+%0A         
  error(e
@@ -2005,14 +2005,21 @@
 ge);
+%0A       
  %7D);%0A
-%0A
   %7D 

Fix eslint warnings #2