OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 The Chromium Authors. All rights reserved. | 2 * Copyright 2016 The Chromium Authors. All rights reserved. |
3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
5 */ | 5 */ |
6 | 6 |
7 /* global PaymentRequest:false */ | 7 /* global PaymentRequest:false */ |
8 /* global toDictionary:false */ | 8 /* global toDictionary:false */ |
9 | 9 |
10 /** | 10 /** |
11 * Launches the PaymentRequest UI that offers free shipping worldwide. | 11 * Launches the PaymentRequest UI that offers free shipping worldwide. |
12 */ | 12 */ |
13 function buy() { // eslint-disable-line no-unused-vars | 13 function buy() { // eslint-disable-line no-unused-vars |
14 try { | 14 try { |
15 var request = new PaymentRequest( | 15 var request = new PaymentRequest( |
16 ['visa'], { | 16 ['visa'], { |
17 displayItems: [{ | 17 total: {label: 'Total', amount: {currency: 'USD', value: '5.00'}}, |
18 id: 'total', | |
19 label: 'Total', | |
20 amount: {currency: 'USD', value: '5.00'} | |
21 }], | |
22 shippingOptions: [{ | 18 shippingOptions: [{ |
23 id: 'freeShippingOption', | 19 id: 'freeShippingOption', |
24 label: 'Free global shipping', | 20 label: 'Free global shipping', |
25 amount: {currency: 'USD', value: '0'} | 21 amount: {currency: 'USD', value: '0'} |
26 }] | 22 }] |
27 }, | 23 }, |
28 {requestShipping: true}); | 24 {requestShipping: true}); |
29 request.show() | 25 request.show() |
30 .then(function(resp) { | 26 .then(function(resp) { |
31 resp.complete(true) | 27 resp.complete(true) |
32 .then(function() { | 28 .then(function() { |
33 print( | 29 print( |
34 request.shippingOption + '<br>' + | 30 request.shippingOption + '<br>' + |
35 JSON.stringify( | 31 JSON.stringify( |
36 toDictionary(request.shippingAddress), undefined, 2) + | 32 toDictionary(request.shippingAddress), undefined, 2) + |
37 '<br>' + resp.methodName + '<br>' + | 33 '<br>' + resp.methodName + '<br>' + |
38 JSON.stringify(resp.details, undefined, 2)); | 34 JSON.stringify(resp.details, undefined, 2)); |
39 }) | 35 }) |
40 .catch(function(error) { | 36 .catch(function(error) { |
41 print(error.message); | 37 print(error.message); |
42 }); | 38 }); |
43 }) | 39 }) |
44 .catch(function(error) { | 40 .catch(function(error) { |
45 print(error.message); | 41 print(error.message); |
46 }); | 42 }); |
47 } catch (error) { | 43 } catch (error) { |
48 print(error.message); | 44 print(error.message); |
49 } | 45 } |
50 } | 46 } |
OLD | NEW |