@cloudpayments/checkout
Version:
24 lines (18 loc) • 708 B
text/typescript
import { LoadCheckout, loadScript } from '../common/common'
import { CheckoutSettings, Checkout } from '../interfaces';
let checkoutPromise: LoadCheckout;
export function loadCheckout(checkoutSettings: CheckoutSettings, checkoutFullUrl?: string): Promise<Checkout> {
checkoutPromise = loadScript(checkoutFullUrl);
return new Promise<Checkout>((resolve, reject) => {
checkoutPromise.catch((err: Error) => {
reject(err);
});
checkoutPromise.then(checkout => {
if (checkout === null) {
reject("Failed to load checkout");
} else {
resolve(new checkout(checkoutSettings));
}
});
})
}