ngx-paypal-with-intent
Version:
Paypal integration for Angular 6, 7 and beyond
69 lines (68 loc) • 2.21 kB
TypeScript
import { AfterViewInit, ElementRef, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { PayPalConfig } from '../models/paypal-models';
export declare class NgxPaypalComponent implements OnChanges, AfterViewInit, OnDestroy {
/**
* Configuration for paypal.
*/
config: PayPalConfig;
/**
* Indicates if global configuration (provided via 'forRoot') is used
*/
useGlobalConfig: boolean;
/**
* Container for paypal script
*/
paypalScriptElem: ElementRef;
/**
* Used for indicating delayed rendered if container is not yet ready in DOM
*/
private registerPayPalScriptWhenContainerIsReady;
/**
* Holds current container element
*/
private _payPalButtonContainerElem?;
payPalButtonContainerElem: ElementRef;
/**
* Polling interval if paypal script is pending
*/
private readonly defaultPollInterval;
/**
* Polling will stop after polling reaches this number
*/
private readonly maximumPollWaitTime;
/**
* Name of the global variable where paypal is stored
*/
private readonly paypalWindowName;
/**
* Name of the global variable indicating that script was initiated (added to page)
*/
private readonly paypalWindowScriptInitiated;
/**
* PayPal integration script url
*/
private readonly paypalScriptUrl;
/**
* Id of the element where PayPal button will be rendered
*/
payPalButtonContainerId?: string;
private readonly payPalButtonContainerIdPrefix;
private readonly ngUnsubscribe;
constructor();
ngOnChanges(changes: SimpleChanges): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
private initPayPal;
private getPseudoUniqueNumber;
/**
* Used when there are multiple paypal components on the same page beacuse only 1 of them
* may register paypal script. The other has to be polling until paypal is available or component destroyed
*/
private pollUntilScriptAvailable;
private addPayPalScriptToPage;
private handleScriptRegistering;
private setupScript;
private getClient;
private getFunding;
private mapFundingType;
}