mirror of
https://github.com/danielsogl/awesome-cordova-plugins.git
synced 2025-01-31 18:49:43 +08:00
fix(paypal): problems with selection of PayPal environment (#662)
* Fixed bugs with selection of environment and added missing prepareToRender function * Updated PayPal usage example
This commit is contained in:
parent
7d1686ef93
commit
3dd6a92ccf
@ -6,15 +6,47 @@ import { Plugin, Cordova } from './plugin';
|
|||||||
*
|
*
|
||||||
* @usage
|
* @usage
|
||||||
* ```
|
* ```
|
||||||
* import {PayPal} from 'ionic-native';
|
* import {PayPal, PayPalPayment, PayPalConfiguration} from "ionic-native";
|
||||||
*
|
*
|
||||||
* PayPal.init({
|
* PayPal.init({
|
||||||
* "PayPalEnvironmentProduction": "YOUR_PRODUCTION_CLIENT_ID",
|
* "PayPalEnvironmentProduction": "YOUR_PRODUCTION_CLIENT_ID",
|
||||||
"PayPalEnvironmentSandbox": "YOUR_SANDBOX_CLIENT_ID"
|
* "PayPalEnvironmentSandbox": "YOUR_SANDBOX_CLIENT_ID"
|
||||||
})
|
* }).then(() => {
|
||||||
* .then(onSuccess)
|
* // Environments: PayPalEnvironmentNoNetwork, PayPalEnvironmentSandbox, PayPalEnvironmentProduction
|
||||||
* .catch(onError);
|
* PayPal.prepareToRender('PayPalEnvironmentSandbox', new PayPalConfiguration({
|
||||||
|
* // Only needed if you get an "Internal Service Error" after PayPal login!
|
||||||
|
* //payPalShippingAddressOption: 2 // PayPalShippingAddressOptionPayPal
|
||||||
|
* })).then(() => {
|
||||||
|
* let payment = new PayPalPayment('3.33', 'USD', 'Description', 'sale');
|
||||||
|
* PayPal.renderSinglePaymentUI(payment).then(() => {
|
||||||
|
* // Successfully paid
|
||||||
*
|
*
|
||||||
|
* // Example sandbox response
|
||||||
|
* //
|
||||||
|
* // {
|
||||||
|
* // "client": {
|
||||||
|
* // "environment": "sandbox",
|
||||||
|
* // "product_name": "PayPal iOS SDK",
|
||||||
|
* // "paypal_sdk_version": "2.16.0",
|
||||||
|
* // "platform": "iOS"
|
||||||
|
* // },
|
||||||
|
* // "response_type": "payment",
|
||||||
|
* // "response": {
|
||||||
|
* // "id": "PAY-1AB23456CD789012EF34GHIJ",
|
||||||
|
* // "state": "approved",
|
||||||
|
* // "create_time": "2016-10-03T13:33:33Z",
|
||||||
|
* // "intent": "sale"
|
||||||
|
* // }
|
||||||
|
* // }
|
||||||
|
* }, () => {
|
||||||
|
* // Error or render dialog closed without being successful
|
||||||
|
* });
|
||||||
|
* }, () => {
|
||||||
|
* // Error in configuration
|
||||||
|
* });
|
||||||
|
* }, () => {
|
||||||
|
* // Error in initialization, maybe PayPal isn't supported or something else
|
||||||
|
* });
|
||||||
* ```
|
* ```
|
||||||
* @interfaces
|
* @interfaces
|
||||||
* PayPalEnvironment
|
* PayPalEnvironment
|
||||||
@ -31,23 +63,33 @@ import { Plugin, Cordova } from './plugin';
|
|||||||
repo: 'https://github.com/paypal/PayPal-Cordova-Plugin'
|
repo: 'https://github.com/paypal/PayPal-Cordova-Plugin'
|
||||||
})
|
})
|
||||||
export class PayPal {
|
export class PayPal {
|
||||||
|
/**
|
||||||
|
* Retrieve the version of the PayPal iOS SDK library. Useful when contacting support.
|
||||||
|
*/
|
||||||
|
@Cordova()
|
||||||
|
static version(): Promise<string> {return; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* You must preconnect to PayPal to prepare the device for processing payments.
|
* You must preconnect to PayPal to prepare the device for processing payments.
|
||||||
* This improves the user experience, by making the presentation of the
|
* This improves the user experience, by making the presentation of the
|
||||||
* UI faster. The preconnect is valid for a limited time, so
|
* UI faster. The preconnect is valid for a limited time, so
|
||||||
* the recommended time to preconnect is on page load.
|
* the recommended time to preconnect is on page load.
|
||||||
*
|
*
|
||||||
* @param {String} environment available options are "PayPalEnvironmentNoNetwork", "PayPalEnvironmentProduction" and "PayPalEnvironmentSandbox"
|
* @param {PayPalEnvironment} clientIdsForEnvironments: set of client ids for environments
|
||||||
* @param {PayPalConfiguration} configuration For Future Payments merchantName, merchantPrivacyPolicyURL and merchantUserAgreementURL must be set be set
|
|
||||||
*/
|
*/
|
||||||
@Cordova()
|
@Cordova()
|
||||||
static init(environment: PayPalEnvironment, configuration?: PayPalConfiguration): Promise<any> {return; }
|
static init(clientIdsForEnvironments: PayPalEnvironment): Promise<any> {return; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retreive the version of PayPal iOS SDK Library.
|
* You must preconnect to PayPal to prepare the device for processing payments.
|
||||||
*/
|
* This improves the user experience, by making the presentation of the UI faster.
|
||||||
|
* The preconnect is valid for a limited time, so the recommended time to preconnect is on page load.
|
||||||
|
*
|
||||||
|
* @param {String} environment: available options are "PayPalEnvironmentNoNetwork", "PayPalEnvironmentProduction" and "PayPalEnvironmentSandbox"
|
||||||
|
* @param {PayPalConfiguration} configuration: PayPalConfiguration object, for Future Payments merchantName, merchantPrivacyPolicyURL and merchantUserAgreementURL must be set be set
|
||||||
|
**/
|
||||||
@Cordova()
|
@Cordova()
|
||||||
static version(): Promise<string> {return; }
|
static prepareToRender(environment: string, configuration: PayPalConfiguration): Promise<any> {return; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Start PayPal UI to collect payment from the user.
|
* Start PayPal UI to collect payment from the user.
|
||||||
@ -85,7 +127,6 @@ export class PayPal {
|
|||||||
**/
|
**/
|
||||||
@Cordova()
|
@Cordova()
|
||||||
static renderProfileSharingUI(scopes: string[]): Promise<any> {return; }
|
static renderProfileSharingUI(scopes: string[]): Promise<any> {return; }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface PayPalEnvironment {
|
export interface PayPalEnvironment {
|
||||||
|
Loading…
Reference in New Issue
Block a user