| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 [JavaPackage="org.chromium.mojom.payments"] | 5 [JavaPackage="org.chromium.mojom.payments"] |
| 6 module blink.mojom; | 6 module blink.mojom; |
| 7 | 7 |
| 8 // The shipping address that the browser process provides to the renderer | 8 // The shipping address that the browser process provides to the renderer |
| 9 // process. Built either by the browser or a payment app. | 9 // process. Built either by the browser or a payment app. |
| 10 struct ShippingAddress { | 10 struct ShippingAddress { |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 CurrencyAmount amount; | 72 CurrencyAmount amount; |
| 73 }; | 73 }; |
| 74 | 74 |
| 75 struct ShippingOption { | 75 struct ShippingOption { |
| 76 string id; | 76 string id; |
| 77 string label; | 77 string label; |
| 78 CurrencyAmount amount; | 78 CurrencyAmount amount; |
| 79 }; | 79 }; |
| 80 | 80 |
| 81 struct PaymentDetails { | 81 struct PaymentDetails { |
| 82 array<PaymentItem> items; | 82 array<PaymentItem> display_items; |
| 83 array<ShippingOption> shipping_options; | 83 array<ShippingOption> shipping_options; |
| 84 }; | 84 }; |
| 85 | 85 |
| 86 struct PaymentOptions { | 86 struct PaymentOptions { |
| 87 bool request_shipping; | 87 bool request_shipping; |
| 88 }; | 88 }; |
| 89 | 89 |
| 90 interface PaymentRequest { | 90 interface PaymentRequest { |
| 91 SetClient(PaymentRequestClient client); | 91 SetClient(PaymentRequestClient client); |
| 92 Show(array<string> supported_methods, | 92 Show(array<string> supported_methods, |
| 93 PaymentDetails details, | 93 PaymentDetails details, |
| 94 PaymentOptions options, | 94 PaymentOptions options, |
| 95 // A JSON string built by the renderer from a JavaScript object that the | 95 // A JSON string built by the renderer from a JavaScript object that the |
| 96 // merchant website provides. The renderer uses | 96 // merchant website provides. The renderer uses |
| 97 // blink::JSONObject::toJSONString() to generate this string. The browser | 97 // blink::JSONObject::toJSONString() to generate this string. The browser |
| 98 // parses the string via base::JSONParser and passes a part of the JSON | 98 // parses the string via base::JSONParser and passes a part of the JSON |
| 99 // object to the payment app, for example Android Pay. There's no one | 99 // object to the payment app, for example Android Pay. There's no one |
| 100 // format for this object, so richer types cannot be used. A simple | 100 // format for this object, so richer types cannot be used. A simple |
| 101 // example: | 101 // example: |
| 102 // | 102 // |
| 103 // {"https://android.com/pay": {"gateway": "stripe"}} | 103 // {"https://android.com/pay": {"gateway": "stripe"}} |
| 104 string stringified_data); | 104 string stringified_data); |
| 105 UpdateWith(PaymentDetails details); | 105 UpdateWith(PaymentDetails details); |
| 106 Abort(); | 106 Abort(); |
| 107 Complete(bool success); | 107 Complete(bool success); |
| 108 }; | 108 }; |
| OLD | NEW |