UNPKG

said-ngx-paypal

Version:
120 lines 8.34 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { Injectable } from '@angular/core'; import { ScriptService } from './script.service'; var PayPalScriptService = /** @class */ (function () { function PayPalScriptService(scriptService) { this.scriptService = scriptService; this.paypalWindowName = 'paypal'; } /** * @param {?} config * @param {?} onReady * @param {?} onError * @return {?} */ PayPalScriptService.prototype.registerPayPalScript = /** * @param {?} config * @param {?} onReady * @param {?} onError * @return {?} */ function (config, onReady, onError) { this.scriptService.registerScript(this.getUrlForConfig(config), this.paypalWindowName, onReady, onError); }; /** * @return {?} */ PayPalScriptService.prototype.destroyPayPalScript = /** * @return {?} */ function () { this.scriptService.cleanup(this.paypalWindowName); }; /** * @private * @param {?} config * @return {?} */ PayPalScriptService.prototype.getUrlForConfig = /** * @private * @param {?} config * @return {?} */ function (config) { /** @type {?} */ var params = [ { name: 'client-id', value: config.clientId } ]; if (config.currency) { params.push({ name: 'currency', value: config.currency }); } if (config.commit) { params.push({ name: 'commit', value: config.commit }); } if (config.extraParams) { params.push.apply(params, tslib_1.__spread(config.extraParams)); } return "https://www.paypal.com/sdk/js" + this.getQueryString(params); }; /** * @private * @param {?} queryParams * @return {?} */ PayPalScriptService.prototype.getQueryString = /** * @private * @param {?} queryParams * @return {?} */ function (queryParams) { /** @type {?} */ var queryString = ''; for (var i = 0; i < queryParams.length; i++) { /** @type {?} */ var queryParam = queryParams[i]; if (i === 0) { queryString += '?'; } else { queryString += '&'; } queryString += queryParam.name + "=" + queryParam.value; } return queryString; }; PayPalScriptService.decorators = [ { type: Injectable } ]; /** @nocollapse */ PayPalScriptService.ctorParameters = function () { return [ { type: ScriptService } ]; }; return PayPalScriptService; }()); export { PayPalScriptService }; if (false) { /** * @type {?} * @private */ PayPalScriptService.prototype.paypalWindowName; /** * @type {?} * @protected */ PayPalScriptService.prototype.scriptService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5cGFsLXNjcmlwdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vc2FpZC1uZ3gtcGF5cGFsLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3BheXBhbC1zY3JpcHQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpEO0lBTUksNkJBQ2MsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFKekIscUJBQWdCLEdBQUcsUUFBUSxDQUFDO0lBTTdDLENBQUM7Ozs7Ozs7SUFFRCxrREFBb0I7Ozs7OztJQUFwQixVQUFxQixNQUF3QixFQUFFLE9BQWlDLEVBQUUsT0FBb0M7UUFDbEgsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdHLENBQUM7Ozs7SUFFRCxpREFBbUI7OztJQUFuQjtRQUNJLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Ozs7OztJQUVPLDZDQUFlOzs7OztJQUF2QixVQUF3QixNQUF3Qjs7WUFDdEMsTUFBTSxHQUFrQjtZQUMxQjtnQkFDSSxJQUFJLEVBQUUsV0FBVztnQkFDakIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxRQUFRO2FBQ3pCO1NBQ0o7UUFFRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDUixJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxRQUFRO2FBQ3pCLENBQUMsQ0FBQztTQUNOO1FBRUQsSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDUixJQUFJLEVBQUUsUUFBUTtnQkFDZCxLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU07YUFDdkIsQ0FBQyxDQUFDO1NBQ047UUFFRCxJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUU7WUFDcEIsTUFBTSxDQUFDLElBQUksT0FBWCxNQUFNLG1CQUFTLE1BQU0sQ0FBQyxXQUFXLEdBQUU7U0FDdEM7UUFFRCxPQUFPLGtDQUFnQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBRyxDQUFDO0lBQ3pFLENBQUM7Ozs7OztJQUVPLDRDQUFjOzs7OztJQUF0QixVQUF1QixXQUEwQjs7WUFDekMsV0FBVyxHQUFHLEVBQUU7UUFFcEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7O2dCQUNuQyxVQUFVLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ1QsV0FBVyxJQUFJLEdBQUcsQ0FBQzthQUN0QjtpQkFBTTtnQkFDSCxXQUFXLElBQUksR0FBRyxDQUFDO2FBQ3RCO1lBRUQsV0FBVyxJQUFPLFVBQVUsQ0FBQyxJQUFJLFNBQUksVUFBVSxDQUFDLEtBQU8sQ0FBQztTQUMzRDtRQUVELE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7O2dCQS9ESixVQUFVOzs7O2dCQUZGLGFBQWE7O0lBa0V0QiwwQkFBQztDQUFBLEFBaEVELElBZ0VDO1NBL0RZLG1CQUFtQjs7Ozs7O0lBRTVCLCtDQUE2Qzs7Ozs7SUFJekMsNENBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSVBheVBhbFVybENvbmZpZywgSVF1ZXJ5UGFyYW0gfSBmcm9tICcuLi9tb2RlbHMvcGF5cGFsLW1vZGVscyc7XHJcbmltcG9ydCB7IFNjcmlwdFNlcnZpY2UgfSBmcm9tICcuL3NjcmlwdC5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFBheVBhbFNjcmlwdFNlcnZpY2Uge1xyXG5cclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGF5cGFsV2luZG93TmFtZSA9ICdwYXlwYWwnO1xyXG5cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgc2NyaXB0U2VydmljZTogU2NyaXB0U2VydmljZSxcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyUGF5UGFsU2NyaXB0KGNvbmZpZzogSVBheVBhbFVybENvbmZpZywgb25SZWFkeTogKHBheVBhbEFwaTogYW55KSA9PiB2b2lkLCBvbkVycm9yOiAoc2NyaXB0U3JjOiBzdHJpbmcpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNjcmlwdFNlcnZpY2UucmVnaXN0ZXJTY3JpcHQodGhpcy5nZXRVcmxGb3JDb25maWcoY29uZmlnKSwgdGhpcy5wYXlwYWxXaW5kb3dOYW1lLCBvblJlYWR5LCBvbkVycm9yKTtcclxuICAgIH1cclxuXHJcbiAgICBkZXN0cm95UGF5UGFsU2NyaXB0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2NyaXB0U2VydmljZS5jbGVhbnVwKHRoaXMucGF5cGFsV2luZG93TmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRVcmxGb3JDb25maWcoY29uZmlnOiBJUGF5UGFsVXJsQ29uZmlnKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBwYXJhbXM6IElRdWVyeVBhcmFtW10gPSBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIG5hbWU6ICdjbGllbnQtaWQnLFxyXG4gICAgICAgICAgICAgICAgdmFsdWU6IGNvbmZpZy5jbGllbnRJZFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgXTtcclxuXHJcbiAgICAgICAgaWYgKGNvbmZpZy5jdXJyZW5jeSkge1xyXG4gICAgICAgICAgICBwYXJhbXMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICBuYW1lOiAnY3VycmVuY3knLFxyXG4gICAgICAgICAgICAgICAgdmFsdWU6IGNvbmZpZy5jdXJyZW5jeVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChjb25maWcuY29tbWl0KSB7XHJcbiAgICAgICAgICAgIHBhcmFtcy5wdXNoKHtcclxuICAgICAgICAgICAgICAgIG5hbWU6ICdjb21taXQnLFxyXG4gICAgICAgICAgICAgICAgdmFsdWU6IGNvbmZpZy5jb21taXRcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoY29uZmlnLmV4dHJhUGFyYW1zKSB7XHJcbiAgICAgICAgICAgIHBhcmFtcy5wdXNoKC4uLmNvbmZpZy5leHRyYVBhcmFtcyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gYGh0dHBzOi8vd3d3LnBheXBhbC5jb20vc2RrL2pzJHt0aGlzLmdldFF1ZXJ5U3RyaW5nKHBhcmFtcyl9YDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldFF1ZXJ5U3RyaW5nKHF1ZXJ5UGFyYW1zOiBJUXVlcnlQYXJhbVtdKTogc3RyaW5nIHtcclxuICAgICAgICBsZXQgcXVlcnlTdHJpbmcgPSAnJztcclxuXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBxdWVyeVBhcmFtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBjb25zdCBxdWVyeVBhcmFtID0gcXVlcnlQYXJhbXNbaV07XHJcbiAgICAgICAgICAgIGlmIChpID09PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeVN0cmluZyArPSAnPyc7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeVN0cmluZyArPSAnJic7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHF1ZXJ5U3RyaW5nICs9IGAke3F1ZXJ5UGFyYW0ubmFtZX09JHtxdWVyeVBhcmFtLnZhbHVlfWA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcXVlcnlTdHJpbmc7XHJcbiAgICB9XHJcbn1cclxuIl19