{"version":3,"sources":["node_modules/browser-pack/_prelude.js","src/agreement.js","src/callbacks.js","src/channels/alipay_lite.js","src/channels/alipay_pc_direct.js","src/channels/alipay_qr.js","src/channels/alipay_wap.js","src/channels/bfb_wap.js","src/channels/cb_alipay_pc_direct.js","src/channels/cb_alipay_wap.js","src/channels/cb_wx_pub.js","src/channels/ccb_qr.js","src/channels/cmb_pc_qr.js","src/channels/cmb_wallet.js","src/channels/commons/redirect_base.js","src/channels/cp_b2b.js","src/channels/extras/ap.js","src/channels/isv_wap.js","src/channels/jdpay_wap.js","src/channels/paypal.js","src/channels/qpay_pub.js","src/channels/upacp_pc.js","src/channels/upacp_wap.js","src/channels/wx_lite.js","src/channels/wx_wap.js","src/channels/yeepay_wap.js","src/collection.js","src/init.js","src/libs/md5.js","src/main.js","src/mods.js","src/payment_elements.js","src/stash.js","src/testmode.js","src/utils.js","src/version.js"],"names":["f","exports","module","define","amd","window","global","self","this","pingpp","e","t","n","r","s","o","u","a","require","i","Error","code","l","call","length","1","hasOwn","hasOwnProperty","callbacks","utils","signAgreement","agreement","agreementObj","JSON","parse","err","innerAgreementCallback","error","object","credential","channel","urlToOpen","setTimeout","redirectTo","payment_elements","userCallback","undefined","urlReturnCallback","urlReturnChannels","userAgreementCallback","innerCallback","result","clear","msg","extra","triggerUrlReturnCallback","url","shouldReturnUrlByCallback","indexOf","PINGPP_NOTIFY_URL_BASE","handleCharge","charge","trade_no","callpay","alipayLiteEnabled","my","tradePay","tradeNO","alipay_lite","complete","res","resultCode","console","log","runTestMode","path","id","httpRequest","success","data","fail","ALIPAY_PC_DIRECT_URL","baseURL","channel_url","service","_input_charset","query","stringifyData","transaction_no","ready","callback","AlipayJSBridge","document","addEventListener","mods","ALIPAY_WAP_URL_OLD","ALIPAY_WAP_URL","targetURL","ap","getExtraModule","inWeixin","pay","stash","fields","k","jsApiParameters","wx_jssdk","jssdkEnabled","WeixinJSBridge","eventCallback","jsApiCall","attachEvent","invoke","err_msg","confirm","request","status","redirectBase","formSubmit","CMB_WALLET_URL","request_url","ChannelUrl","channelVersion","CP_B2B_URL","b","PADCHAR","ALPHA","makeDOMException","DOMException","INVALID_CHARACTER_ERR","d","c","number","name","description","toString","message","getbyte64","charAt","decode","h","g","j","push","String","fromCharCode","join","getbyte","charCodeAt","encode","arguments","SyntaxError","encodeURIComponent","APURL","location","href","decodeURIComponent","pay_channel","inAlipay","JDPAY_WAP_URL_OLD","JDPAY_H5_URL","JDPAY_PC_URL","channelUrl","SRC_URL","ID","tokenId","token_id","loadUrlJs","mqq","QQVersion","tenpay","retmsg","UPACP_PC_URL","UPACP_WAP_URL","wxLiteEnabled","wx","requestPayment","wx_lite","appId","errMsg","err_code","err_desc","YEEPAY_WAP_URL","YEEPAY_WAP_TEST_URL","mode","md5","collection","seperator","limit","report_url","timeout","getParam","str","param","reg","RegExp","substr","match","unescape","getUserAgent","navigator","userAgent","getHost","host","store","obj","localStorage","_this","reportData","app_id","ch_id","type","user_agent","time","Date","getTime","puid","reportStr","statsToSave","getItem","setItem","send","pppOneStats","split","origin","token","removeItem","X-Pingpp-Report-Token","report","inWxLite","dc","init","documentReady","inAlipayLite","initPuid","randomString","getElementById","iframe","createElement","src","style","display","body","appendChild","safe_add","x","y","lsw","bit_rol","num","cnt","md5_cmn","q","md5_ff","md5_gg","md5_hh","md5_ii","binl_md5","len","olda","oldb","oldc","oldd","binl2rstr","input","output","rstr2binl","rstr_md5","rstr_hmac_md5","key","hash","bkey","ipad","opad","concat","rstr2hex","str2rstr_utf8","raw_md5","hex_md5","raw_hmac_md5","hex_hmac_md5","string","raw","version","v","PingppSDK","prototype","testmode","createPayment","chargeJSON","signature","debug","app","channelModule","getChannelModule","livemode","setAPURL","setUrlReturnCallback","channels","Array","isArray","alipay_pc_direct","alipay_qr","alipay_wap","bfb_wap","cb_alipay_pc_direct","cb_alipay_wap","cb_wx_pub","ccb_qr","cmb_pc_qr","cmb_wallet","cp_b2b","isv_wap","jdpay_wap","paypal","qpay_pub","upacp_b2b","upacp_pc","upacp_wap","wx_pub","wx_wap","yeepay_wap","extras","or_id","order_no","time_expire","charge_or_order","merchant_order_no","charge_essentials","charges","PINGPP_MOCK_URL","params","scheme","orderNo","timeExpire","stringify","urlencode","method","requestData","successCallback","errorCallback","headers","XMLHttpRequest","xhr","toUpperCase","open","setRequestHeader","onreadystatechange","readyState","responseText","onerror","form","setAttribute","hiddenField","submit","chars","maxPos","Math","floor","random","toLowerCase","miniProgram","fn","sid","jsurl","nodeHead","getElementsByTagName","nodeScript","async","onload"],"mappings":"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","file":"pingpp.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o= 200 && status < 400 && data == 'success') {\n callbacks.innerCallback('success');\n } else {\n var extra = 'http_code:' + status + ';response:' + data;\n callbacks.innerCallback('fail',\n callbacks.error('testmode_notify_fail', extra));\n }\n },\n function() {\n callbacks.innerCallback('fail', callbacks.error('network_err'));\n });\n }\n }\n};\n","var redirectBase = require('./commons/redirect_base');\n\nmodule.exports = {\n\n handleCharge: function(charge) {\n redirectBase.handleCharge(charge);\n }\n};\n","var utils = require('../utils');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n\n handleCharge: function(charge) {\n var channel = charge.channel;\n var credential = charge.credential[channel];\n var baseURL;\n if (hasOwn.call(credential, 'channel_url')) {\n baseURL = credential.channel_url;\n delete credential.channel_url;\n }\n\n utils.formSubmit(baseURL, 'post', credential);\n }\n};\n","var utils = require('../utils');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n\n CMB_WALLET_URL:\n 'https://netpay.cmbchina.com/netpayment/BaseHttp.dll?MB_EUserPay',\n\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n var request_url = this.CMB_WALLET_URL;\n if (hasOwn.call(credential, 'ChannelUrl')) {\n request_url = credential.ChannelUrl;\n delete credential.ChannelUrl;\n }\n\n if (hasOwn.call(credential, 'channelVersion')) {\n delete credential.channelVersion;\n }\n\n utils.formSubmit(request_url, 'post', credential);\n }\n};\n","var utils = require('../../utils');\nvar callbacks = require('../../callbacks');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n var targetURL;\n if (typeof credential === 'string') {\n targetURL = credential;\n } else if (hasOwn.call(credential, 'url')) {\n targetURL = credential.url;\n } else {\n callbacks.innerCallback('fail', callbacks.error('invalid_credential',\n 'credential format is incorrect'));\n return;\n }\n utils.redirectTo(targetURL, charge.channel);\n }\n};\n","var utils = require('../utils');\n\nmodule.exports = {\n\n CP_B2B_URL: 'https://payment.chinapay.com/CTITS/service/rest/page/nref/000000000017/0/0/0/0/0',\n\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n utils.formSubmit(this.CP_B2B_URL, 'post', credential);\n }\n};\n","var stash = require('../../stash');\nvar hasOwn = {}.hasOwnProperty;\n\n(function() {\n var b = {};\n var a = {};\n a.PADCHAR = '=';\n a.ALPHA = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n a.makeDOMException = function() {\n try {\n return new DOMException(DOMException.INVALID_CHARACTER_ERR);\n } catch (d) {\n var c = new Error('DOM Exception 5');\n c.code = c.number = 5;\n c.name = c.description = 'INVALID_CHARACTER_ERR';\n c.toString = function() {\n return 'Error: ' + c.name + ': ' + c.message;\n };\n return c;\n }\n };\n a.getbyte64 = function(e, d) {\n var c = a.ALPHA.indexOf(e.charAt(d));\n if (c === -1) {\n throw a.makeDOMException();\n }\n return c;\n };\n a.decode = function(f) {\n f = '' + f;\n var j = a.getbyte64;\n var h, e, g;\n var d = f.length;\n if (d === 0) {\n return f;\n }\n if (d % 4 !== 0) {\n throw a.makeDOMException();\n }\n h = 0;\n if (f.charAt(d - 1) === a.PADCHAR) {\n h = 1;\n if (f.charAt(d - 2) === a.PADCHAR) {\n h = 2;\n }\n d -= 4;\n }\n var c = [];\n for (e = 0; e < d; e += 4) {\n g = (j(f, e) << 18) |\n (j(f, e + 1) << 12) |\n (j(f, e + 2) << 6) |\n j(f, e + 3);\n c.push(String.fromCharCode(g >> 16, (g >> 8) & 255, g & 255));\n }\n switch (h) {\n case 1:\n g = (j(f, e) << 18) | (j(f, e + 1) << 12) | (j(f, e + 2) << 6);\n c.push(String.fromCharCode(g >> 16, (g >> 8) & 255));\n break;\n case 2:\n g = (j(f, e) << 18) | (j(f, e + 1) << 12);\n c.push(String.fromCharCode(g >> 16));\n break;\n }\n return c.join('');\n };\n a.getbyte = function(e, d) {\n var c = e.charCodeAt(d);\n if (c > 255) {\n throw a.makeDOMException();\n }\n return c;\n };\n a.encode = function(f) {\n if (arguments.length !== 1) {\n throw new SyntaxError('Not enough arguments');\n }\n var g = a.PADCHAR;\n var h = a.ALPHA;\n var k = a.getbyte;\n var e, j;\n var c = [];\n f = '' + f;\n var d = f.length - f.length % 3;\n if (f.length === 0) {\n return f;\n }\n for (e = 0; e < d; e += 3) {\n j = (k(f, e) << 16) | (k(f, e + 1) << 8) | k(f, e + 2);\n c.push(h.charAt(j >> 18));\n c.push(h.charAt((j >> 12) & 63));\n c.push(h.charAt((j >> 6) & 63));\n c.push(h.charAt(j & 63));\n }\n switch (f.length - d) {\n case 1:\n j = k(f, e) << 16;\n c.push(h.charAt(j >> 18) + h.charAt((j >> 12) & 63) + g + g);\n break;\n case 2:\n j = (k(f, e) << 16) | (k(f, e + 1) << 8);\n c.push(h.charAt(j >> 18) +\n h.charAt((j >> 12) & 63) +\n h.charAt((j >> 6) & 63) + g);\n break;\n }\n return c.join('');\n };\n b.url = 'pay.htm';\n b.pay = function(d) {\n var c = encodeURIComponent(a.encode(d));\n if (hasOwn.call(stash, 'APURL')) {\n b.url = stash.APURL;\n }\n location.href = b.url + '?goto=' + c;\n };\n b.decode = function(c) {\n return a.decode(decodeURIComponent(c));\n };\n\n module.exports = b;\n})();\n","var redirectBase = require('./commons/redirect_base');\nvar callbacks = require('../callbacks');\nvar utils = require('../utils');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n handleCharge: function (charge) {\n var extra = charge.extra;\n if (hasOwn.call(extra, 'pay_channel')) {\n var pay_channel = extra.pay_channel;\n if (pay_channel === 'wx' && !utils.inWeixin()) {\n callbacks.innerCallback('fail',\n callbacks.error('Not in the WeChat browser'));\n return;\n } else if (pay_channel === 'alipay' && !utils.inAlipay()) {\n callbacks.innerCallback('fail',\n callbacks.error('Not in the Alipay browser'));\n return;\n }\n } else {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_charge', 'charge 格式不正确'));\n return;\n }\n redirectBase.handleCharge(charge);\n }\n};\n","var utils = require('../utils');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n\n JDPAY_WAP_URL_OLD: 'https://m.jdpay.com/wepay/web/pay',\n JDPAY_H5_URL: 'https://h5pay.jd.com/jdpay/saveOrder',\n JDPAY_PC_URL: 'https://wepay.jd.com/jdpay/saveOrder',\n\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n var request_url = this.JDPAY_H5_URL;\n if (hasOwn.call(credential, 'channelUrl')) {\n request_url = credential.channelUrl;\n delete credential.channelUrl;\n } else if (hasOwn.call(credential, 'merchantRemark')) {\n request_url = this.JDPAY_WAP_URL_OLD;\n }\n utils.formSubmit(request_url, 'post', credential);\n }\n};\n","var utils = require('../utils');\n\nmodule.exports = {\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n utils.redirectTo(credential, charge.channel);\n }\n};\n","var callbacks = require('../callbacks');\nvar utils = require('../utils');\nvar stash = require('../stash');\nvar hasOwn = {}.hasOwnProperty;\n\n/*global mqq*/\nmodule.exports = {\n SRC_URL: 'https://open.mobile.qq.com/sdk/qqapi.js?_bid=152',\n ID: 'mqq_api',\n\n handleCharge: function (charge) {\n var credential = charge.credential[charge.channel];\n\n if (!hasOwn.call(credential, 'token_id')) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_credential', 'missing_token_id'));\n return;\n }\n stash.tokenId = credential.token_id;\n utils.loadUrlJs(this.ID, this.SRC_URL, this.callpay);\n },\n\n callpay: function () {\n if (typeof mqq != 'undefined') {\n if (mqq.QQVersion == 0) {\n callbacks.innerCallback('fail',\n callbacks.error('Not in the QQ client'));\n delete stash.tokenId;\n return;\n }\n mqq.tenpay.pay({\n tokenId: stash.tokenId\n }, function (result) {\n if (result.resultCode == 0) {\n callbacks.innerCallback('success');\n } else {\n callbacks.innerCallback('fail',\n callbacks.error(result.retmsg));\n }\n });\n } else {\n callbacks.innerCallback('fail',\n callbacks.error('network_err'));\n }\n delete stash.tokenId;\n }\n};","var utils = require('../utils');\n\nmodule.exports = {\n\n UPACP_PC_URL: 'https://gateway.95516.com/gateway/api/frontTransReq.do',\n\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n utils.formSubmit(this.UPACP_PC_URL, 'post', credential);\n }\n};\n","var utils = require('../utils');\n\nmodule.exports = {\n\n UPACP_WAP_URL: 'https://gateway.95516.com/gateway/api/frontTransReq.do',\n\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n utils.formSubmit(this.UPACP_WAP_URL, 'post', credential);\n }\n};\n","/**\n * Created by yulitao on 2016/12/29.\n */\nvar stash = require('../stash');\nvar callbacks = require('../callbacks');\nvar hasOwn = {}.hasOwnProperty;\n/*global wx*/\nmodule.exports = {\n\n PINGPP_NOTIFY_URL_BASE: 'https://notify.pingxx.com/notify',\n\n handleCharge: function (charge) {\n var credential = charge.credential[charge.channel];\n var fields = [\n 'appId', 'timeStamp', 'nonceStr', 'package', 'signType', 'paySign'\n ];\n for (var k = 0; k < fields.length; k++) {\n if (!hasOwn.call(credential, fields[k])) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_credential', 'missing_field_' + fields[k]));\n return;\n }\n }\n stash.jsApiParameters = credential;\n this.callpay();\n },\n\n wxLiteEnabled: function () {\n return typeof wx !== 'undefined' && wx.requestPayment;\n },\n\n //微信小程序支付\n callpay: function () {\n if (!this.wxLiteEnabled()) {\n console.log('请在微信小程序中打开');\n return;\n }\n var wx_lite = stash.jsApiParameters;\n delete wx_lite.appId;\n wx_lite.complete = function (res) {\n //支付成功\n if (res.errMsg === 'requestPayment:ok') {\n callbacks.innerCallback('success');\n }\n //取消支付\n if (res.errMsg === 'requestPayment:cancel'\n || res.errMsg === 'requestPayment:fail cancel') {\n callbacks.innerCallback('cancel', callbacks.error('用户取消支付'));\n }\n //支付验证签名失败\n if (res.err_code !== 'undefined' && res.err_desc !== 'undefined') {\n callbacks.innerCallback('fail', callbacks.error(res.err_desc, res));\n }\n };\n wx.requestPayment(wx_lite);\n },\n\n runTestMode: function (charge) {\n var path = '/charges/' + charge.id;\n wx.request({\n url: this.PINGPP_NOTIFY_URL_BASE + path + '?livemode=false',\n success: function(res) {\n if (res.data == 'success') {\n callbacks.innerCallback('success');\n } else {\n callbacks.innerCallback('fail',\n callbacks.error('testmode_notify_fail'));\n }\n },\n fail:function() {\n callbacks.innerCallback('fail', callbacks.error('network_err'));\n }\n });\n }\n};\n","var utils = require('../utils');\nvar callbacks = require('../callbacks');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n\n handleCharge: function(charge) {\n var credential = charge.credential[charge.channel];\n if (typeof credential === 'string') {\n utils.redirectTo(credential, charge.channel);\n } else if (typeof credential === 'object'\n && hasOwn.call(credential, 'url')\n ) {\n utils.redirectTo(credential.url, charge.channel);\n } else {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_credential', 'credential 格式不正确'));\n }\n }\n};\n","var utils = require('../utils');\nvar callbacks = require('../callbacks');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n\n YEEPAY_WAP_URL: 'https://ok.yeepay.com/paymobile/api/pay/request',\n YEEPAY_WAP_TEST_URL: 'http://mobiletest.yeepay.com/paymobile/api/pay/request',\n\n handleCharge: function(charge) {\n var channel = charge.channel;\n var credential = charge.credential[channel];\n var fields = ['merchantaccount', 'encryptkey', 'data'];\n for (var k = 0; k < fields.length; k++) {\n if (!hasOwn.call(credential, fields[k])) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_credential', 'missing_field_' + fields[k]));\n return;\n }\n }\n var baseURL;\n if (hasOwn.call(credential, 'mode') && credential.mode == 'test') {\n baseURL = this.YEEPAY_WAP_TEST_URL;\n } else {\n baseURL = this.YEEPAY_WAP_URL;\n }\n utils.redirectTo(baseURL + '?' +\n utils.stringifyData(credential, channel, true), charge.channel);\n }\n};\n","var utils = require('./utils');\nvar stash = require('./stash');\nvar md5 = require('./libs/md5');\n\nvar collection = {\n seperator: '###',\n limit: 1,\n report_url: 'https://statistics.pingxx.com/one_stats',\n timeout: 100\n};\nvar getParam = function(str, param) {\n var reg = new RegExp('(^|&)' + param + '=([^&]*)(&|$)', 'i');\n var r = str.substr(0).match(reg);\n if (r !== null) return unescape(r[2]);\n return null;\n};\nvar getUserAgent = function() {\n return navigator.userAgent;\n};\nvar getHost = function() {\n return window.location.host;\n};\n\ncollection.store = function(obj) {\n if (typeof localStorage === 'undefined' || localStorage === null) return;\n var _this = this;\n var reportData = {};\n reportData.app_id = obj.app_id || stash.app_id || 'app_not_defined';\n reportData.ch_id = obj.ch_id || '';\n reportData.channel = obj.channel || '';\n reportData.type = obj.type || '';\n reportData.user_agent = getUserAgent();\n reportData.host = getHost();\n reportData.time = new Date().getTime();\n reportData.puid = stash.puid;\n\n var reportStr = 'app_id=' + reportData.app_id +\n '&channel=' + reportData.channel + '&ch_id=' + reportData.ch_id +\n '&host=' + reportData.host + '&time=' + reportData.time +\n '&type=' + reportData.type + '&user_agent=' + reportData.user_agent +\n '&puid=' + reportData.puid;\n\n var statsToSave = reportStr;\n if (localStorage.getItem('PPP_ONE_STATS') !== null &&\n localStorage.getItem('PPP_ONE_STATS').length !== 0\n ) {\n statsToSave = localStorage.getItem('PPP_ONE_STATS') +\n _this.seperator + reportStr;\n }\n try {\n localStorage.setItem('PPP_ONE_STATS', statsToSave);\n } catch (e) {\n /* empty */\n }\n};\n\ncollection.send = function() {\n if (typeof localStorage === 'undefined' || localStorage === null) return;\n var _this = this;\n var pppOneStats = localStorage.getItem('PPP_ONE_STATS');\n if (pppOneStats === null ||\n pppOneStats.split(_this.seperator).length < _this.limit) {\n return;\n }\n try {\n var data = [];\n var origin = pppOneStats.split(_this.seperator);\n var token = md5(origin.join('&'));\n\n for (var i = 0; i < origin.length; i++) {\n data.push({\n app_id: getParam(origin[i], 'app_id'),\n channel: getParam(origin[i], 'channel'),\n ch_id: getParam(origin[i], 'ch_id'),\n host: getParam(origin[i], 'host'),\n time: getParam(origin[i], 'time'),\n type: getParam(origin[i], 'type'),\n user_agent: getParam(origin[i], 'user_agent'),\n puid: getParam(origin[i], 'puid')\n });\n }\n\n utils.request(_this.report_url, 'POST', data, function(data, status) {\n if (status == 200) {\n localStorage.removeItem('PPP_ONE_STATS');\n }\n }, undefined, {\n 'X-Pingpp-Report-Token': token\n });\n } catch (e) {\n /* empty */\n }\n};\n\ncollection.report = function(obj) {\n var _this = this;\n _this.store(obj);\n setTimeout(function(){\n (!utils.inWxLite()) && _this.send();\n }, _this.timeout);\n};\n\nmodule.exports = collection;\n","var stash = require('./stash');\nvar utils = require('./utils');\nvar dc = require('./collection');\n\nmodule.exports = {\n SRC_URL: 'https://cookie.pingxx.com',\n\n init: function() {\n var self = this;\n utils.documentReady(function(){\n try {\n (!(utils.inWxLite() || utils.inAlipayLite())) && self.initPuid();\n } catch (e){/* empty */}\n });\n },\n\n initPuid: function() {\n if (typeof window === 'undefined' || typeof localStorage === 'undefined'\n || localStorage === null) {\n return;\n }\n var puid = localStorage.getItem('pingpp_uid');\n if (puid === null) {\n puid = utils.randomString();\n try {\n localStorage.setItem('pingpp_uid', puid);\n } catch (e) {\n /* empty */\n }\n }\n stash.puid = puid;\n if (!document.getElementById('p_analyse_iframe')) {\n var iframe;\n try {\n iframe = document.createElement('iframe');\n }catch(e){\n iframe = document.createElement('');\n }\n iframe.id = 'p_analyse_iframe';\n iframe.src = this.SRC_URL + '/?puid=' + puid;\n iframe.style.display = 'none';\n document.body.appendChild(iframe);\n }\n setTimeout(function() {\n dc.send();\n }, 0);\n }\n};\n","/*\n * JavaScript MD5\n * https://github.com/blueimp/JavaScript-MD5\n *\n * Copyright 2011, Sebastian Tschan\n * https://blueimp.net\n *\n * Licensed under the MIT license:\n * http://www.opensource.org/licenses/MIT\n *\n * Based on\n * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message\n * Digest Algorithm, as defined in RFC 1321.\n * Version 2.2 Copyright (C) Paul Johnston 1999 - 2009\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n * Distributed under the BSD License\n * See http://pajhome.org.uk/crypt/md5 for more info.\n */\n\n/* global unescape, module */\n\n(function () {\n /*\n * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n * to work around bugs in some JS interpreters.\n */\n function safe_add (x, y) {\n var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n return (msw << 16) | (lsw & 0xFFFF);\n }\n\n /*\n * Bitwise rotate a 32-bit number to the left.\n */\n function bit_rol (num, cnt) {\n return (num << cnt) | (num >>> (32 - cnt));\n }\n\n /*\n * These functions implement the four basic operations the algorithm uses.\n */\n function md5_cmn (q, a, b, x, s, t) {\n return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b);\n }\n function md5_ff (a, b, c, d, x, s, t) {\n return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);\n }\n function md5_gg (a, b, c, d, x, s, t) {\n return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);\n }\n function md5_hh (a, b, c, d, x, s, t) {\n return md5_cmn(b ^ c ^ d, a, b, x, s, t);\n }\n function md5_ii (a, b, c, d, x, s, t) {\n return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);\n }\n\n /*\n * Calculate the MD5 of an array of little-endian words, and a bit length.\n */\n function binl_md5 (x, len) {\n /* append padding */\n x[len >> 5] |= 0x80 << (len % 32);\n x[(((len + 64) >>> 9) << 4) + 14] = len;\n\n var i;\n var olda;\n var oldb;\n var oldc;\n var oldd;\n var a = 1732584193;\n var b = -271733879;\n var c = -1732584194;\n var d = 271733878;\n\n for (i = 0; i < x.length; i += 16) {\n olda = a;\n oldb = b;\n oldc = c;\n oldd = d;\n\n a = md5_ff(a, b, c, d, x[i], 7, -680876936);\n d = md5_ff(d, a, b, c, x[i + 1], 12, -389564586);\n c = md5_ff(c, d, a, b, x[i + 2], 17, 606105819);\n b = md5_ff(b, c, d, a, x[i + 3], 22, -1044525330);\n a = md5_ff(a, b, c, d, x[i + 4], 7, -176418897);\n d = md5_ff(d, a, b, c, x[i + 5], 12, 1200080426);\n c = md5_ff(c, d, a, b, x[i + 6], 17, -1473231341);\n b = md5_ff(b, c, d, a, x[i + 7], 22, -45705983);\n a = md5_ff(a, b, c, d, x[i + 8], 7, 1770035416);\n d = md5_ff(d, a, b, c, x[i + 9], 12, -1958414417);\n c = md5_ff(c, d, a, b, x[i + 10], 17, -42063);\n b = md5_ff(b, c, d, a, x[i + 11], 22, -1990404162);\n a = md5_ff(a, b, c, d, x[i + 12], 7, 1804603682);\n d = md5_ff(d, a, b, c, x[i + 13], 12, -40341101);\n c = md5_ff(c, d, a, b, x[i + 14], 17, -1502002290);\n b = md5_ff(b, c, d, a, x[i + 15], 22, 1236535329);\n\n a = md5_gg(a, b, c, d, x[i + 1], 5, -165796510);\n d = md5_gg(d, a, b, c, x[i + 6], 9, -1069501632);\n c = md5_gg(c, d, a, b, x[i + 11], 14, 643717713);\n b = md5_gg(b, c, d, a, x[i], 20, -373897302);\n a = md5_gg(a, b, c, d, x[i + 5], 5, -701558691);\n d = md5_gg(d, a, b, c, x[i + 10], 9, 38016083);\n c = md5_gg(c, d, a, b, x[i + 15], 14, -660478335);\n b = md5_gg(b, c, d, a, x[i + 4], 20, -405537848);\n a = md5_gg(a, b, c, d, x[i + 9], 5, 568446438);\n d = md5_gg(d, a, b, c, x[i + 14], 9, -1019803690);\n c = md5_gg(c, d, a, b, x[i + 3], 14, -187363961);\n b = md5_gg(b, c, d, a, x[i + 8], 20, 1163531501);\n a = md5_gg(a, b, c, d, x[i + 13], 5, -1444681467);\n d = md5_gg(d, a, b, c, x[i + 2], 9, -51403784);\n c = md5_gg(c, d, a, b, x[i + 7], 14, 1735328473);\n b = md5_gg(b, c, d, a, x[i + 12], 20, -1926607734);\n\n a = md5_hh(a, b, c, d, x[i + 5], 4, -378558);\n d = md5_hh(d, a, b, c, x[i + 8], 11, -2022574463);\n c = md5_hh(c, d, a, b, x[i + 11], 16, 1839030562);\n b = md5_hh(b, c, d, a, x[i + 14], 23, -35309556);\n a = md5_hh(a, b, c, d, x[i + 1], 4, -1530992060);\n d = md5_hh(d, a, b, c, x[i + 4], 11, 1272893353);\n c = md5_hh(c, d, a, b, x[i + 7], 16, -155497632);\n b = md5_hh(b, c, d, a, x[i + 10], 23, -1094730640);\n a = md5_hh(a, b, c, d, x[i + 13], 4, 681279174);\n d = md5_hh(d, a, b, c, x[i], 11, -358537222);\n c = md5_hh(c, d, a, b, x[i + 3], 16, -722521979);\n b = md5_hh(b, c, d, a, x[i + 6], 23, 76029189);\n a = md5_hh(a, b, c, d, x[i + 9], 4, -640364487);\n d = md5_hh(d, a, b, c, x[i + 12], 11, -421815835);\n c = md5_hh(c, d, a, b, x[i + 15], 16, 530742520);\n b = md5_hh(b, c, d, a, x[i + 2], 23, -995338651);\n\n a = md5_ii(a, b, c, d, x[i], 6, -198630844);\n d = md5_ii(d, a, b, c, x[i + 7], 10, 1126891415);\n c = md5_ii(c, d, a, b, x[i + 14], 15, -1416354905);\n b = md5_ii(b, c, d, a, x[i + 5], 21, -57434055);\n a = md5_ii(a, b, c, d, x[i + 12], 6, 1700485571);\n d = md5_ii(d, a, b, c, x[i + 3], 10, -1894986606);\n c = md5_ii(c, d, a, b, x[i + 10], 15, -1051523);\n b = md5_ii(b, c, d, a, x[i + 1], 21, -2054922799);\n a = md5_ii(a, b, c, d, x[i + 8], 6, 1873313359);\n d = md5_ii(d, a, b, c, x[i + 15], 10, -30611744);\n c = md5_ii(c, d, a, b, x[i + 6], 15, -1560198380);\n b = md5_ii(b, c, d, a, x[i + 13], 21, 1309151649);\n a = md5_ii(a, b, c, d, x[i + 4], 6, -145523070);\n d = md5_ii(d, a, b, c, x[i + 11], 10, -1120210379);\n c = md5_ii(c, d, a, b, x[i + 2], 15, 718787259);\n b = md5_ii(b, c, d, a, x[i + 9], 21, -343485551);\n\n a = safe_add(a, olda);\n b = safe_add(b, oldb);\n c = safe_add(c, oldc);\n d = safe_add(d, oldd);\n }\n return [a, b, c, d];\n }\n\n /*\n * Convert an array of little-endian words to a string\n */\n function binl2rstr (input) {\n var i;\n var output = '';\n for (i = 0; i < input.length * 32; i += 8) {\n output += String.fromCharCode((input[i >> 5] >>> (i % 32)) & 0xFF);\n }\n return output;\n }\n\n /*\n * Convert a raw string to an array of little-endian words\n * Characters >255 have their high-byte silently ignored.\n */\n function rstr2binl (input) {\n var i;\n var output = [];\n output[(input.length >> 2) - 1] = undefined;\n for (i = 0; i < output.length; i += 1) {\n output[i] = 0;\n }\n for (i = 0; i < input.length * 8; i += 8) {\n output[i >> 5] |= (input.charCodeAt(i / 8) & 0xFF) << (i % 32);\n }\n return output;\n }\n\n /*\n * Calculate the MD5 of a raw string\n */\n function rstr_md5 (s) {\n return binl2rstr(binl_md5(rstr2binl(s), s.length * 8));\n }\n\n /*\n * Calculate the HMAC-MD5, of a key and some data (raw strings)\n */\n function rstr_hmac_md5 (key, data) {\n var i;\n var bkey = rstr2binl(key);\n var ipad = [];\n var opad = [];\n var hash;\n ipad[15] = opad[15] = undefined;\n if (bkey.length > 16) {\n bkey = binl_md5(bkey, key.length * 8);\n }\n for (i = 0; i < 16; i += 1) {\n ipad[i] = bkey[i] ^ 0x36363636;\n opad[i] = bkey[i] ^ 0x5C5C5C5C;\n }\n hash = binl_md5(ipad.concat(rstr2binl(data)), 512 + data.length * 8);\n return binl2rstr(binl_md5(opad.concat(hash), 512 + 128));\n }\n\n /*\n * Convert a raw string to a hex string\n */\n function rstr2hex (input) {\n var hex_tab = '0123456789abcdef';\n var output = '';\n var x;\n var i;\n for (i = 0; i < input.length; i += 1) {\n x = input.charCodeAt(i);\n output += hex_tab.charAt((x >>> 4) & 0x0F) +\n hex_tab.charAt(x & 0x0F);\n }\n return output;\n }\n\n /*\n * Encode a string as utf-8\n */\n function str2rstr_utf8 (input) {\n return unescape(encodeURIComponent(input));\n }\n\n /*\n * Take string arguments and return either raw or hex encoded strings\n */\n function raw_md5 (s) {\n return rstr_md5(str2rstr_utf8(s));\n }\n function hex_md5 (s) {\n return rstr2hex(raw_md5(s));\n }\n function raw_hmac_md5 (k, d) {\n return rstr_hmac_md5(str2rstr_utf8(k), str2rstr_utf8(d));\n }\n function hex_hmac_md5 (k, d) {\n return rstr2hex(raw_hmac_md5(k, d));\n }\n\n function md5 (string, key, raw) {\n if (!key) {\n if (!raw) {\n return hex_md5(string);\n }\n return raw_md5(string);\n }\n if (!raw) {\n return hex_hmac_md5(key, string);\n }\n return raw_hmac_md5(key, string);\n }\n\n module.exports = md5;\n}());\n","var version = require('./version').v;\nvar hasOwn = {}.hasOwnProperty;\n\nvar PingppSDK = function () {\n require('./init').init();\n};\n\nPingppSDK.prototype.version = version;\n\nmodule.exports = new PingppSDK();\n\nvar testmode = require('./testmode');\nvar callbacks = require('./callbacks');\nvar mods = require('./mods');\nvar stash = require('./stash');\nvar dc = require('./collection');\nvar payment_elements = require('./payment_elements');\n\nPingppSDK.prototype.createPayment = function (\n chargeJSON, callback, signature, debug\n) {\n if (typeof callback === 'function') {\n callbacks.userCallback = callback;\n }\n\n payment_elements.init(chargeJSON);\n\n if (!hasOwn.call(payment_elements, 'id')) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_charge', 'no_charge_id'));\n return;\n }\n if (!hasOwn.call(payment_elements, 'channel')) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_charge', 'no_channel'));\n return;\n }\n\n if (hasOwn.call(payment_elements, 'app')) {\n if (typeof payment_elements.app === 'string') {\n stash.app_id = payment_elements.app;\n } else if (typeof payment_elements.app === 'object' &&\n typeof payment_elements.app.id === 'string') {\n stash.app_id = payment_elements.app.id;\n }\n }\n dc.report({\n type: stash.type || 'pure_sdk_click',\n channel: payment_elements.channel,\n ch_id: payment_elements.id\n });\n var channel = payment_elements.channel;\n if (!hasOwn.call(payment_elements, 'credential')) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_charge', 'no_credential'));\n return;\n }\n if (!payment_elements.credential) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_credential', 'credential_is_undefined'));\n return;\n }\n if (!hasOwn.call(payment_elements.credential, channel)) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_credential', 'credential_is_incorrect'));\n return;\n }\n if (!hasOwn.call(payment_elements, 'livemode')) {\n callbacks.innerCallback('fail',\n callbacks.error('invalid_charge', 'no_livemode_field'));\n return;\n }\n var channelModule = mods.getChannelModule(channel);\n if (typeof channelModule === 'undefined') {\n console.error('channel module \"' + channel + '\" is undefined');\n callbacks.innerCallback('fail',\n callbacks.error('invalid_channel',\n 'channel module \"' + channel + '\" is undefined')\n );\n return;\n }\n if (payment_elements.livemode === false) {\n if (hasOwn.call(channelModule, 'runTestMode')) {\n channelModule.runTestMode(payment_elements);\n } else {\n testmode.runTestMode(payment_elements);\n }\n return;\n }\n\n if (typeof signature != 'undefined') {\n stash.signature = signature;\n }\n if (typeof debug == 'boolean') {\n stash.debug = debug;\n }\n channelModule.handleCharge(payment_elements);\n};\n\nPingppSDK.prototype.setAPURL = function (url) {\n stash.APURL = url;\n};\n\nPingppSDK.prototype.setUrlReturnCallback = function (callback, channels) {\n if (typeof callback === 'function') {\n callbacks.urlReturnCallback = callback;\n } else {\n throw 'callback need to be a function';\n }\n\n if (typeof channels !== 'undefined') {\n if (Array.isArray(channels)) {\n callbacks.urlReturnChannels = channels;\n } else {\n throw 'channels need to be an array';\n }\n }\n};\n\nPingppSDK.prototype.signAgreement = function (agreement, callback) {\n if (typeof callback === 'function') {\n callbacks.userAgreementCallback = callback;\n }\n\n var module = mods.getExtraModule('agreement');\n if (typeof module === 'undefined') {\n console.error('module \"agreement\" is undefined');\n callbacks.innerCallback('fail',\n callbacks.error('invalid_module',\n 'module \"agreement\" is undefined')\n );\n return false;\n }\n\n return module.signAgreement(agreement);\n};\n","var hasOwn = {}.hasOwnProperty;\nvar mods = {};\nmodule.exports = mods;\n\nmods.channels = {\n alipay_lite: require('./channels/alipay_lite'),\n alipay_pc_direct: require('./channels/alipay_pc_direct'),\n alipay_qr: require('./channels/alipay_qr'),\n alipay_wap: require('./channels/alipay_wap'),\n bfb_wap: require('./channels/bfb_wap'),\n cb_alipay_pc_direct: require('./channels/cb_alipay_pc_direct'),\n cb_alipay_wap: require('./channels/cb_alipay_wap'),\n cb_wx_pub: require('./channels/cb_wx_pub'),\n ccb_qr: require('./channels/ccb_qr'),\n cmb_pc_qr: require('./channels/cmb_pc_qr'),\n cmb_wallet: require('./channels/cmb_wallet'),\n cp_b2b: require('./channels/cp_b2b'),\n isv_wap: require('./channels/isv_wap'),\n jdpay_wap: require('./channels/jdpay_wap'),\n paypal: require('./channels/paypal'),\n qpay_pub: require('./channels/qpay_pub'),\n upacp_b2b: require('./channels/upacp_b2b'),\n upacp_pc: require('./channels/upacp_pc'),\n upacp_wap: require('./channels/upacp_wap'),\n wx_lite: require('./channels/wx_lite'),\n wx_pub: require('./channels/wx_pub'),\n wx_wap: require('./channels/wx_wap'),\n yeepay_wap: require('./channels/yeepay_wap')\n};\n\nmods.extras = {\n ap: require('./channels/extras/ap'),\n agreement: require('./agreement')\n};\n\nmods.getChannelModule = function(channel) {\n if (hasOwn.call(mods.channels, channel)) {\n return mods.channels[channel];\n }\n return undefined;\n};\n\nmods.getExtraModule = function(name) {\n if (hasOwn.call(mods.extras, name)) {\n return mods.extras[name];\n }\n return undefined;\n};\n","/**\n * Created by dong on 2016/12/30.\n */\n\nvar callbacks = require('./callbacks');\nvar hasOwn = {}.hasOwnProperty;\n\nmodule.exports = {\n id: null,\n or_id: null,\n channel: null,\n app: null,\n credential: {},\n extra: null,\n livemode: null,\n order_no: null,\n time_expire: null,\n\n init: function (charge_or_order) {\n var charge;\n if (typeof charge_or_order === 'string') {\n try {\n charge = JSON.parse(charge_or_order);\n } catch (err) {\n callbacks.innerCallback('fail',\n callbacks.error('json_decode_fail', err));\n return;\n }\n } else {\n charge = charge_or_order;\n }\n\n if (typeof charge === 'undefined') {\n callbacks.innerCallback('fail', callbacks.error('json_decode_fail'));\n return;\n }\n\n if (hasOwn.call(charge, 'object') && charge.object == 'order') {\n charge.or_id = charge.id;\n charge.order_no = charge.merchant_order_no;\n var charge_essentials = charge.charge_essentials;\n charge.channel = charge_essentials.channel;\n charge.credential = charge_essentials.credential;\n charge.extra = charge_essentials.extra;\n if(hasOwn.call(charge, 'charge') && charge.charge != null) {\n charge.id = charge.charge;\n } else if(hasOwn.call(charge_essentials, 'id')\n && charge_essentials.id != null) {\n charge.id = charge_essentials.id;\n } else if(hasOwn.call(charge, 'charges')) {\n for(var i = 0; i < charge.charges.data.length; i++){\n if(charge.charges.data[i].channel === charge_essentials.channel) {\n charge.id = charge.charges.data[i].id;\n break;\n }\n }\n }\n } else if(hasOwn.call(charge, 'object') && charge.object == 'recharge') {\n charge = charge.charge;\n }\n\n for (var key in this) {\n if (hasOwn.call(charge, key)) {\n this[key] = charge[key];\n }\n }\n return this;\n },\n\n clear: function () {\n for (var key in this) {\n if (typeof this[key] !== 'function') {\n this[key] = null;\n }\n }\n }\n};","module.exports = {\n};\n","var utils = require('./utils');\nvar hasOwn = {}.hasOwnProperty;\nmodule.exports = {\n PINGPP_MOCK_URL: 'http://sissi.pingxx.com/mock.php',\n\n runTestMode: function (charge) {\n var params = {\n 'ch_id': charge.id,\n 'scheme': 'http',\n 'channel': charge.channel\n };\n\n if (hasOwn.call(charge, 'order_no')) {\n params.order_no = charge.order_no;\n } else if (hasOwn.call(charge, 'orderNo')) {\n params.order_no = charge.orderNo;\n }\n if (hasOwn.call(charge, 'time_expire')) {\n params.time_expire = charge.time_expire;\n } else if (hasOwn.call(charge, 'timeExpire')) {\n params.time_expire = charge.timeExpire;\n }\n if (hasOwn.call(charge, 'extra')) {\n params.extra = encodeURIComponent(JSON.stringify(charge.extra));\n }\n utils.redirectTo(\n this.PINGPP_MOCK_URL + '?' + utils.stringifyData(params),\n charge.channel\n );\n }\n};\n","var callbacks = require('./callbacks');\nvar hasOwn = {}.hasOwnProperty;\n\nvar utils = module.exports = {\n\n /**\n * 对象转换成 query string\n * @param object data 待转对象\n * @param string channel 渠道\n * @param boolean urlencode 是否需要 urlencode\n *\n * @return string query string\n */\n stringifyData: function (data, channel, urlencode) {\n if (typeof urlencode == 'undefined') {\n urlencode = false;\n }\n var output = [];\n for (var i in data) {\n if (!hasOwn.call(data, i) || typeof data[i] === 'function') {\n continue;\n }\n if (channel == 'bfb_wap' && i == 'url') {\n continue;\n }\n if (channel == 'yeepay_wap' && i == 'mode') {\n continue;\n }\n if (i == 'channel_url') {\n continue;\n }\n output.push(i + '=' +\n (urlencode ? encodeURIComponent(data[i]) : data[i]));\n }\n return output.join('&');\n },\n\n /**\n * 网络请求\n * @param string url\n * @param string method 请求方式, POST, GET ...\n * @param object requestData 请求数据\n * @param function successCallback 成功回调 (data, statusCode, xhr)\n * @param function errorCallback 错误回调 (xhr, statusCode, error)\n */\n request: function (url, method, requestData,\n successCallback, errorCallback, headers) {\n if (typeof XMLHttpRequest === 'undefined') {\n console.log('Function XMLHttpRequest is undefined.');\n return;\n }\n var xhr = new XMLHttpRequest();\n if (typeof xhr.timeout !== 'undefined') {\n xhr.timeout = 6000;\n }\n method = method.toUpperCase();\n\n if (method === 'GET' && typeof requestData === 'object' && requestData) {\n url += '?' + utils.stringifyData(requestData, '', true);\n }\n xhr.open(method, url, true);\n if (typeof headers !== 'undefined') {\n for (var k in headers) {\n if (hasOwn.call(headers, k)) {\n xhr.setRequestHeader(k, headers[k]);\n }\n }\n }\n if (method === 'POST') {\n xhr.setRequestHeader('Content-type', 'application/json; charset=utf-8');\n xhr.send(JSON.stringify(requestData));\n } else {\n xhr.send();\n }\n if (typeof successCallback == 'undefined') {\n successCallback = function () {};\n }\n if (typeof errorCallback == 'undefined') {\n errorCallback = function () {};\n }\n xhr.onreadystatechange = function () {\n if (xhr.readyState == 4) {\n successCallback(xhr.responseText, xhr.status, xhr);\n }\n };\n xhr.onerror = function (e) {\n errorCallback(xhr, 0, e);\n };\n },\n\n /**\n * 表单提交\n * @param string url\n * @param string method 请求方式, POST, GET ...\n * @param object params 请求数据\n */\n formSubmit: function (url, method, params) {\n if (typeof window === 'undefined') {\n console.log('Not a browser, form submit url: ' + url);\n return;\n }\n var form = document.createElement('form');\n form.setAttribute('method', method);\n form.setAttribute('action', url);\n\n for (var key in params) {\n if (hasOwn.call(params, key)) {\n var hiddenField = document.createElement('input');\n hiddenField.setAttribute('type', 'hidden');\n hiddenField.setAttribute('name', key);\n hiddenField.setAttribute('value', params[key]);\n form.appendChild(hiddenField);\n }\n }\n\n document.body.appendChild(form);\n form.submit();\n },\n\n randomString: function (length) {\n if (typeof length == 'undefined') {\n length = 32;\n }\n var chars =\n 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n var maxPos = chars.length;\n var str = '';\n for (var i = 0; i < length; i++) {\n str += chars.charAt(Math.floor(Math.random() * maxPos));\n }\n\n return str;\n },\n\n redirectTo: function (url, channel) {\n if (callbacks.shouldReturnUrlByCallback(channel)) {\n callbacks.triggerUrlReturnCallback(null, url);\n return;\n }\n if (typeof window === 'undefined') {\n console.log('Not a browser, redirect url: ' + url);\n return;\n }\n window.location.href = url;\n },\n\n inWeixin: function () {\n if (typeof navigator === 'undefined') {\n return false;\n }\n var ua = navigator.userAgent.toLowerCase();\n return ua.indexOf('micromessenger') !== -1;\n },\n\n inAlipay: function () {\n if (typeof navigator === 'undefined') {\n return false;\n }\n var ua = navigator.userAgent.toLowerCase();\n return ua.indexOf('alipayclient') !== -1;\n },\n\n /*global wx*/\n inWxLite: function() {\n if(typeof wx === 'undefined') {\n return false;\n }\n \n return wx.miniProgram || wx.requestPayment;\n },\n\n /*global my*/\n inAlipayLite: function() {\n if(typeof my === 'undefined') {\n return false;\n }\n\n return my.tradePay;\n },\n\n documentReady: function (fn) {\n if (typeof document === 'undefined') {\n fn();\n return;\n }\n if (document.readyState != 'loading') {\n fn();\n } else {\n document.addEventListener('DOMContentLoaded', fn);\n }\n },\n\n loadUrlJs: function (sid, jsurl, callback) {\n var nodeHead = document.getElementsByTagName('head')[0];\n var nodeScript = null;\n if (document.getElementById(sid) == null) {\n nodeScript = document.createElement('script');\n nodeScript.setAttribute('type', 'text/javascript');\n nodeScript.setAttribute('src', jsurl);\n nodeScript.setAttribute('id', sid);\n nodeScript.async = true;\n if (callback != null) {\n nodeScript.onload = nodeScript.onreadystatechange = function () {\n if (nodeScript.ready) {\n return false;\n }\n\n if (!nodeScript.readyState || nodeScript.readyState == 'loaded'\n || nodeScript.readyState == 'complete') {\n nodeScript.ready = true;\n callback();\n }\n };\n }\n nodeHead.appendChild(nodeScript);\n } else {\n if (callback != null) {\n callback();\n }\n }\n }\n};\n","module.exports = {\n v: '2.2.11'\n};\n"]}