mirror of
https://github.com/danielsogl/awesome-cordova-plugins.git
synced 2025-02-21 00:23:00 +08:00
feat(stripe): add stripe plugin (#913)
* feat(stripe): add stripe plugin * add stripe to index * add param doc
This commit is contained in:
parent
f10f152d2c
commit
0ec46b03b5
@ -100,6 +100,7 @@ import { SQLite } from './plugins/sqlite';
|
||||
import { StatusBar } from './plugins/statusbar';
|
||||
import { Stepcounter } from './plugins/stepcounter';
|
||||
import { StreamingMedia } from './plugins/streaming-media';
|
||||
import { Stripe } from './plugins/stripe';
|
||||
import { ThreeDeeTouch } from './plugins/3dtouch';
|
||||
import { Toast } from './plugins/toast';
|
||||
import { TouchID } from './plugins/touchid';
|
||||
@ -211,6 +212,7 @@ export * from './plugins/sqlite';
|
||||
export * from './plugins/statusbar';
|
||||
export * from './plugins/stepcounter';
|
||||
export * from './plugins/streaming-media';
|
||||
export * from './plugins/stripe';
|
||||
export * from './plugins/text-to-speech';
|
||||
export * from './plugins/themeable-browser';
|
||||
export * from './plugins/toast';
|
||||
@ -321,6 +323,7 @@ window['IonicNative'] = {
|
||||
StatusBar,
|
||||
Stepcounter,
|
||||
StreamingMedia,
|
||||
Stripe,
|
||||
ThreeDeeTouch,
|
||||
Toast,
|
||||
TouchID,
|
||||
|
105
src/plugins/stripe.ts
Normal file
105
src/plugins/stripe.ts
Normal file
@ -0,0 +1,105 @@
|
||||
import {Plugin, Cordova} from './plugin';
|
||||
|
||||
export interface StripeCardTokenParams {
|
||||
/**
|
||||
* Card number
|
||||
*/
|
||||
number: string;
|
||||
/**
|
||||
* Expiry month
|
||||
*/
|
||||
expMonth: number;
|
||||
/**
|
||||
* Expiry year
|
||||
*/
|
||||
expYear: number;
|
||||
/**
|
||||
* CVC / CVV
|
||||
*/
|
||||
cvc?: string;
|
||||
/**
|
||||
* Cardholder name
|
||||
*/
|
||||
name?: string;
|
||||
/**
|
||||
* Address line 1
|
||||
*/
|
||||
address_line1?: string;
|
||||
/**
|
||||
* Address line 2
|
||||
*/
|
||||
address_line2?: string;
|
||||
/**
|
||||
* City
|
||||
*/
|
||||
address_city?: string;
|
||||
/**
|
||||
* State / Province
|
||||
*/
|
||||
address_state?: string;
|
||||
/**
|
||||
* Country
|
||||
*/
|
||||
address_country?: string;
|
||||
/**
|
||||
* Postal code / ZIP Code
|
||||
*/
|
||||
postal_code?: string;
|
||||
/**
|
||||
* 3-letter ISO code for currency
|
||||
*/
|
||||
currency?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @name Stripe
|
||||
* @description
|
||||
* A plugin that allows you to use Stripe's Native SDKs for Android and iOS.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* import { Stripe } from 'ionic-native';
|
||||
*
|
||||
* Stripe.setPublishableKey('my_publishable_key');
|
||||
*
|
||||
* let card = {
|
||||
* number: '4242424242424242',
|
||||
* expMonth: 12,
|
||||
* expYear: 2020,
|
||||
* cvc: 220
|
||||
* };
|
||||
*
|
||||
* Stripe.createToken(card)
|
||||
* .then(token => console.log(token))
|
||||
* .catch(error => console.error(error));
|
||||
*
|
||||
* ```
|
||||
*
|
||||
* @interfaces
|
||||
* StripeCardTokenParams
|
||||
*/
|
||||
@Plugin({
|
||||
pluginName: 'Stripe',
|
||||
plugin: 'cordova-plugin-stripe',
|
||||
pluginRef: 'cordova.plugins.stripe',
|
||||
repo: 'https://github.com/zyramedia/cordova-plugin-stripe'
|
||||
})
|
||||
export class Stripe {
|
||||
|
||||
/**
|
||||
* Set publishable key
|
||||
* @param publishableKey {string} Publishable key
|
||||
* @return {Promise<void>}
|
||||
*/
|
||||
@Cordova()
|
||||
static setPublishableKey(publishableKey: string): Promise<void> { return; }
|
||||
|
||||
/**
|
||||
* Create Credit Card Token
|
||||
* @param params {StripeCardTokenParams} Credit card information
|
||||
* @return {Promise<string>} returns a promise that resolves with the token, or reject with an error
|
||||
*/
|
||||
@Cordova()
|
||||
static createCardToken(params: StripeCardTokenParams): Promise<string> { return; }
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user