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 |