ngx-niubiz
Version:
Pasarela de pago Niubiz.
1 lines • 18 kB
Source Map (JSON)
{"version":3,"file":"ngx-niubiz.mjs","sources":["../../../projects/ngx-niubiz/src/lib/models/payment.models.ts","../../../projects/ngx-niubiz/src/lib/ngx-niubiz.service.ts","../../../projects/ngx-niubiz/src/lib/services/script-loader.service.ts","../../../projects/ngx-niubiz/src/lib/ngx-niubiz.component.ts","../../../projects/ngx-niubiz/src/public-api.ts","../../../projects/ngx-niubiz/src/ngx-niubiz.ts"],"sourcesContent":["export class Payment {\n constructor(\n public amount: number,\n public callback: string,\n ) { }\n\n}\n\nexport interface WebPay {\n merchantId: number;\n channel: string;\n amount: number;\n ip: string;\n dataMap?: DataMap;\n}\n\nexport interface DataMap {\n cardholderCity: string;\n cardholderCountry: string;\n cardholderAddress: string;\n cardholderPostalCode: string;\n cardholderState: string;\n cardholderPhoneNumber: string;\n}\n\nexport interface TokenSession {\n sessionKey: string;\n expirationTime: number;\n}\n\nexport interface Authorization {\n channel: string,\n order: Order,\n}\n\nexport interface Order {\n tokenId: string,\n purchaseNumber: string,\n amount: number,\n currency: string\n}","import { HttpClient, HttpHeaders, HttpResponse } from '@angular/common/http';\nimport { Inject, Injectable } from '@angular/core';\nimport { catchError, lastValueFrom, map, Observable, of, switchMap } from 'rxjs';\nimport axios, { AxiosResponse } from 'axios';\nimport { DataMap, WebPay, Authorization, Order } from './models/payment.models';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NgxNiubizService {\n\n authorization: string = '';\n developerMode: boolean = true;\n\n constructor(\n private _http: HttpClient,\n ) { }\n\n getIp(): Promise<Observable<any>> {\n const apiUrl = 'https://api.ipify.org?format=json';\n return lastValueFrom(this._http.get<any>(apiUrl));\n }\n\n getToken(\n url: string, \n webpay: WebPay,\n authorization: string = '',\n developerMode: Boolean = true\n ): Promise<AxiosResponse<any>> {\n\n this.authorization = authorization;\n\n var headers = new axios.AxiosHeaders({\n 'Content-Type': 'application/json'\n });\n\n if(authorization != ''){\n headers.setAuthorization(authorization, true);\n }\n \n return axios.post(url, webpay, {\n headers: headers, \n }).then(response => {\n if (developerMode) {\n console.log('Token Session: ', response);\n }\n return response;\n }).catch(\n error => {\n return error\n }\n );\n }\n\n getAuthorization(\n config: any,\n params: any\n ): Promise<AxiosResponse<any>> {\n\n console.log(config);\n console.log(params);\n\n var headers = new axios.AxiosHeaders({\n 'Content-Type': 'application/json'\n });\n\n if(this.authorization != ''){\n headers.setAuthorization(this.authorization, true);\n }\n\n var webpay: Authorization = {\n channel: params.channel,\n order: {\n tokenId: params.token,\n purchaseNumber: config.purchasenumber,\n amount: config.amount,\n currency: 'PEN'\n }\n };\n \n return axios.post(config.action, webpay, {\n headers: headers, \n }).then(response => {\n if (this.developerMode) {\n console.log('Authorization : ', response);\n }\n return response;\n }).catch(\n error => {\n return error\n }\n );\n }\n\n private handleError<T>(operation = 'operation', result?: T) {\n return (error: any): Observable<T> => {\n console.error(`${operation} failed: ${error.message}`);\n return of(result as T);\n };\n }\n\n}\n","import { EventEmitter, Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { catchError, Observable } from 'rxjs';\nimport { NgxNiubizService } from '../ngx-niubiz.service';\n\ndeclare global {\n interface Window {\n VisanetCheckout: any;\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ScriptLoaderService {\n \n constructor(\n private niubizService: NgxNiubizService,\n @Inject(DOCUMENT) private document: Document,\n ) { \n }\n\n loadScript( developerMode: boolean = true ): Promise<void> {\n\n const apiNiubizPRD = 'https://static-content.vnforapps.com/v2/js/checkout.js';\n const apiNiubizTest = 'https://static-content-qas.vnforapps.com/v2/js/checkout.js?qa=true';\n\n return new Promise((resolve, reject) => {\n const script = this.document.createElement('script');\n script.src = developerMode ? apiNiubizTest : apiNiubizPRD;\n script.onload = () => resolve();\n script.onerror = () => reject(new Error(`Failed to load script ${developerMode ? apiNiubizTest: apiNiubizPRD}`));\n this.document.head.appendChild(script);\n });\n }\n\n async initializeCheckout(config: any, onSuccess: EventEmitter<void>, onFailed: EventEmitter<void> ,developerMode: boolean = true) {\n try {\n \n await this.loadScript(developerMode).catch(error => catchError(error));\n if (typeof window.VisanetCheckout !== 'undefined') {\n window.VisanetCheckout.configure(config);\n window.VisanetCheckout.open();\n window.VisanetCheckout.configuration.complete = (params: any) => this.procesar(config, params, onSuccess, onFailed);\n } else {\n console.error('El script de Visanet no se ha cargado correctamente');\n }\n } catch (error) {\n console.error('Error al cargar el script de Visanet:', error);\n }\n\n return Promise.resolve();\n }\n\n procesar(config: any, params: any, onSuccess: EventEmitter<void>, onFailed: EventEmitter<void> ) {\n this.niubizService.getAuthorization(config,params).then(\n async response => {\n console.log('Authorization: ', response);\n if(response.data.isSuccess) {\n onSuccess.emit();\n } else {\n onFailed.emit();\n }\n \n }\n );\n }\n}","import { Component, EventEmitter, Inject, Input, OnInit, Output } from '@angular/core';\n\nimport { DataMap, WebPay } from './models/payment.models';\nimport { map, Subscription, switchMap } from 'rxjs';\nimport axios from 'axios';\nimport { ScriptLoaderService } from './services/script-loader.service';\nimport { HttpClientModule } from '@angular/common/http';\nimport { NgxNiubizService } from './ngx-niubiz.service';\n\n@Component({\n selector: 'ngx-niubiz',\n standalone: true,\n imports: [\n HttpClientModule\n ],\n providers: [\n NgxNiubizService,\n ScriptLoaderService,\n ],\n template: `\n `,\n styles: ``\n})\nexport class NgxNiubizComponent implements OnInit {\n\n\n tokenSession!: Subscription;\n\n\n @Input() urlToken!: string;\n @Input() urlAuthorization!: string;\n @Input() authentication: string = '';\n @Input() channel: string = 'web';\n @Input() merchantId!: number;\n @Input() amount!: number;\n @Input() dataMap?: DataMap;\n @Input() developerMode: boolean = false;\n @Input() purchasenumber!: string;\n @Input() expirationminutes: string = '20';\n @Input() urltimeouturl: string = 'about:blank';\n @Input() merchantlogo: string = 'img/comercio.png';\n @Input() formbuttoncolor: string = '#000000';\n @Input() redirect_url!: string;\n @Output() onSuccess = new EventEmitter<void>();\n @Output() onFailed = new EventEmitter<void>();\n\n webpay!: WebPay;\n sessionToken: string = '';\n\n constructor(\n private scriptLoader: ScriptLoaderService,\n private niubizService: NgxNiubizService\n ) { }\n\n ngOnInit(): void {\n\n this.niubizService.getIp().then(\n (data: any) => {\n if (data.ip != null) {\n this.webpay = {\n 'merchantId': this.merchantId,\n 'channel': this.channel,\n 'amount': this.amount,\n 'ip': data.ip,\n 'dataMap': this.dataMap,\n }\n\n this.niubizService.getToken(\n this.urlToken, \n this.webpay, \n this.authentication, \n this.developerMode\n ).then(\n async response => {\n if (this.developerMode) {\n console.log('Token Session: ', response);\n }\n if (response.status == 200) {\n var scriptInit = {\n sessiontoken: response.data?.data?.sessionKey,\n channel: 'web',\n merchantid: this.merchantId,\n purchasenumber: this.purchasenumber,\n amount: this.amount,\n expirationminutes: this.expirationminutes,\n timeouturl: this.redirect_url,\n merchantlogo: this.merchantlogo,\n formbuttoncolor: this.formbuttoncolor,\n action: this.urlAuthorization,\n complete: function (params: any) {\n alert(JSON.stringify(params));\n }\n };\n await this.scriptLoader.initializeCheckout(scriptInit, this.onSuccess, this.onFailed ,this.developerMode);\n }\n }\n )\n }\n }\n );\n }\n\n}\n","/*\n * Public API Surface of ngx-niubiz\n */\n\n// export * from './lib/ngx-niubiz.service';\nexport * from './lib/models/payment.models'\nexport * from './lib/ngx-niubiz.component';\nexport * from './lib/models/payment.models'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.ScriptLoaderService","i2.NgxNiubizService"],"mappings":"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"}