!function (a, b) { module.exports = b(a) }(window, function (a, b) { function c(b, c, d) { a.WeixinJSBridge ? WeixinJSBridge.invoke(b, e(c), function (a) { h(b, a, d) }) : k(b, d) } function d(b, c, d) { a.WeixinJSBridge ? WeixinJSBridge.on(b, function (a) { d && d.trigger && d.trigger(a), h(b, a, c) }) : d ? k(b, d) : k(b, c) } function e(a) { return a = a || {}, a.appId = D.appId, a.verifyAppId = D.appId, a.verifySignType = "sha1", a.verifyTimestamp = D.timestamp + "", a.verifyNonceStr = D.nonceStr, a.verifySignature = D.signature, a } function f(a) { return { timeStamp: a.timestamp + "", nonceStr: a.nonceStr, "package": a["package"], paySign: a.paySign, signType: a.signType || "SHA1" } } function g(a) { return a.postalCode = a.addressPostalCode, delete a.addressPostalCode, a.provinceName = a.proviceFirstStageName, delete a.proviceFirstStageName, a.cityName = a.addressCitySecondStageName, delete a.addressCitySecondStageName, a.countryName = a.addressCountiesThirdStageName, delete a.addressCountiesThirdStageName, a.detailInfo = a.addressDetailInfo, delete a.addressDetailInfo, a } function h(a, b, c) { "openEnterpriseChat" == a && (b.errCode = b.err_code), delete b.err_code, delete b.err_desc, delete b.err_detail; var d = b.errMsg; d || (d = b.err_msg, delete b.err_msg, d = i(a, d), b.errMsg = d), c = c || {}, c._complete && (c._complete(b), delete c._complete), d = b.errMsg || "", D.debug && !c.isInnerInvoke && alert(JSON.stringify(b)); var e = d.indexOf(":"), f = d.substring(e + 1); switch (f) { case"ok": c.success && c.success(b); break; case"cancel": c.cancel && c.cancel(b); break; default: c.fail && c.fail(b) } c.complete && c.complete(b) } function i(a, b) { var c = a, d = q[c]; d && (c = d); var e = "ok"; if (b) { var f = b.indexOf(":"); e = b.substring(f + 1), "confirm" == e && (e = "ok"), "failed" == e && (e = "fail"), -1 != e.indexOf("failed_") && (e = e.substring(7)), -1 != e.indexOf("fail_") && (e = e.substring(5)), e = e.replace(/_/g, " "), e = e.toLowerCase(), ("access denied" == e || "no permission to execute" == e) && (e = "permission denied"), "config" == c && "function not exist" == e && (e = "ok"), "" == e && (e = "fail") } return b = c + ":" + e } function j(a) { if (a) { for (var b = 0, c = a.length; c > b; ++b) { var d = a[b], e = p[d]; e && (a[b] = e) } return a } } function k(a, b) { if (!(!D.debug || b && b.isInnerInvoke)) { var c = q[a]; c && (a = c), b && b._complete && delete b._complete, console.log('"' + a + '",', b || "") } } function l(a) { if (!(v || w || D.debug || "6.0.2" > A || C.systemType < 0)) { var b = new Image; C.appId = D.appId, C.initTime = B.initEndTime - B.initStartTime, C.preVerifyTime = B.preVerifyEndTime - B.preVerifyStartTime, I.getNetworkType({ isInnerInvoke: !0, success: function (a) { C.networkType = a.networkType; var c = "https://open.weixin.qq.com/sdk/report?v=" + C.version + "&o=" + C.isPreVerifyOk + "&s=" + C.systemType + "&c=" + C.clientVersion + "&a=" + C.appId + "&n=" + C.networkType + "&i=" + C.initTime + "&p=" + C.preVerifyTime + "&u=" + C.url; b.src = c } }) } } function m() { return (new Date).getTime() } function n(b) { x && (a.WeixinJSBridge ? b() : r.addEventListener && r.addEventListener("WeixinJSBridgeReady", b, !1)) } function o() { I.invoke || (I.invoke = function (b, c, d) { a.WeixinJSBridge && WeixinJSBridge.invoke(b, e(c), d) }, I.on = function (b, c) { a.WeixinJSBridge && WeixinJSBridge.on(b, c) }) } if (!a.jWeixin) { var p = { config: "preVerifyJSAPI", onMenuShareTimeline: "menu:share:timeline", onMenuShareAppMessage: "menu:share:appmessage", onMenuShareQQ: "menu:share:qq", onMenuShareWeibo: "menu:share:weiboApp", onMenuShareQZone: "menu:share:QZone", previewImage: "imagePreview", getLocation: "geoLocation", openProductSpecificView: "openProductViewWithPid", addCard: "batchAddCard", openCard: "batchViewCard", chooseWXPay: "getBrandWCPayRequest", openEnterpriseRedPacket: "getRecevieBizHongBaoRequest", startSearchBeacons: "startMonitoringBeacons", stopSearchBeacons: "stopMonitoringBeacons", onSearchBeacons: "onBeaconsInRange", consumeAndShareCard: "consumedShareCard", openAddress: "editAddress" }, q = function () { var a = {}; for (var b in p)a[p[b]] = b; return a }(), r = a.document, s = r.title, t = navigator.userAgent.toLowerCase(), u = navigator.platform.toLowerCase(), v = !(!u.match("mac") && !u.match("win")), w = -1 != t.indexOf("wxdebugger"), x = -1 != t.indexOf("micromessenger"), y = -1 != t.indexOf("android"), z = -1 != t.indexOf("iphone") || -1 != t.indexOf("ipad"), A = function () { var a = t.match(/micromessenger\/(\d+\.\d+\.\d+)/) || t.match(/micromessenger\/(\d+\.\d+)/); return a ? a[1] : "" }(), B = {initStartTime: m(), initEndTime: 0, preVerifyStartTime: 0, preVerifyEndTime: 0}, C = { version: 1, appId: "", initTime: 0, preVerifyTime: 0, networkType: "", isPreVerifyOk: 1, systemType: z ? 1 : y ? 2 : -1, clientVersion: A, url: encodeURIComponent(location.href) }, D = {}, E = {_completes: []}, F = {state: 0, data: {}}; n(function () { B.initEndTime = m() }); var G = !1, H = [], I = { config: function (a) { D = a, k("config", a); var b = D.check === !1 ? !1 : !0; n(function () { if (b)c(p.config, {verifyJsApiList: j(D.jsApiList)}, function () { E._complete = function (a) { B.preVerifyEndTime = m(), F.state = 1, F.data = a }, E.success = function (a) { C.isPreVerifyOk = 0 }, E.fail = function (a) { E._fail ? E._fail(a) : F.state = -1 }; var a = E._completes; return a.push(function () { l() }), E.complete = function (b) { for (var c = 0, d = a.length; d > c; ++c)a[c](); E._completes = [] }, E }()), B.preVerifyStartTime = m(); else { F.state = 1; for (var a = E._completes, d = 0, e = a.length; e > d; ++d)a[d](); E._completes = [] } }), D.beta && o() }, ready: function (a) { 0 != F.state ? a() : (E._completes.push(a), !x && D.debug && a()) }, error: function (a) { "6.0.2" > A || (-1 == F.state ? a(F.data) : E._fail = a) }, checkJsApi: function (a) { var b = function (a) { var b = a.checkResult; for (var c in b) { var d = q[c]; d && (b[d] = b[c], delete b[c]) } return a }; c("checkJsApi", {jsApiList: j(a.jsApiList)}, function () { return a._complete = function (a) { if (y) { var c = a.checkResult; c && (a.checkResult = JSON.parse(c)) } a = b(a) }, a }()) }, onMenuShareTimeline: function (a) { d(p.onMenuShareTimeline, { complete: function () { c("shareTimeline", { title: a.title || s, desc: a.title || s, img_url: a.imgUrl || "", link: a.link || location.href, type: a.type || "link", data_url: a.dataUrl || "" }, a) } }, a) }, onMenuShareAppMessage: function (a) { d(p.onMenuShareAppMessage, { complete: function () { c("sendAppMessage", { title: a.title || s, desc: a.desc || "", link: a.link || location.href, img_url: a.imgUrl || "", type: a.type || "link", data_url: a.dataUrl || "" }, a) } }, a) }, onMenuShareQQ: function (a) { d(p.onMenuShareQQ, { complete: function () { c("shareQQ", { title: a.title || s, desc: a.desc || "", img_url: a.imgUrl || "", link: a.link || location.href }, a) } }, a) }, onMenuShareWeibo: function (a) { d(p.onMenuShareWeibo, { complete: function () { c("shareWeiboApp", { title: a.title || s, desc: a.desc || "", img_url: a.imgUrl || "", link: a.link || location.href }, a) } }, a) }, onMenuShareQZone: function (a) { d(p.onMenuShareQZone, { complete: function () { c("shareQZone", { title: a.title || s, desc: a.desc || "", img_url: a.imgUrl || "", link: a.link || location.href }, a) } }, a) }, startRecord: function (a) { c("startRecord", {}, a) }, stopRecord: function (a) { c("stopRecord", {}, a) }, onVoiceRecordEnd: function (a) { d("onVoiceRecordEnd", a) }, playVoice: function (a) { c("playVoice", {localId: a.localId}, a) }, pauseVoice: function (a) { c("pauseVoice", {localId: a.localId}, a) }, stopVoice: function (a) { c("stopVoice", {localId: a.localId}, a) }, onVoicePlayEnd: function (a) { d("onVoicePlayEnd", a) }, uploadVoice: function (a) { c("uploadVoice", {localId: a.localId, isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1}, a) }, downloadVoice: function (a) { c("downloadVoice", {serverId: a.serverId, isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1}, a) }, translateVoice: function (a) { c("translateVoice", {localId: a.localId, isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1}, a) }, chooseImage: function (a) { c("chooseImage", { scene: "1|2", count: a.count || 9, sizeType: a.sizeType || ["original", "compressed"], sourceType: a.sourceType || ["album", "camera"] }, function () { return a._complete = function (a) { if (y) { var b = a.localIds; b && (a.localIds = JSON.parse(b)) } }, a }()) }, getLocation: function (a) { }, previewImage: function (a) { c(p.previewImage, {current: a.current, urls: a.urls}, a) }, uploadImage: function (a) { c("uploadImage", {localId: a.localId, isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1}, a) }, downloadImage: function (a) { c("downloadImage", {serverId: a.serverId, isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1}, a) }, getLocalImgData: function (a) { G === !1 ? (G = !0, c("getLocalImgData", {localId: a.localId}, function () { return a._complete = function (a) { if (G = !1, H.length > 0) { var b = H.shift(); wx.getLocalImgData(b) } }, a }())) : H.push(a) }, getNetworkType: function (a) { var b = function (a) { var b = a.errMsg; a.errMsg = "getNetworkType:ok"; var c = a.subtype; if (delete a.subtype, c)a.networkType = c; else { var d = b.indexOf(":"), e = b.substring(d + 1); switch (e) { case"wifi": case"edge": case"wwan": a.networkType = e; break; default: a.errMsg = "getNetworkType:fail" } } return a }; c("getNetworkType", {}, function () { return a._complete = function (a) { a = b(a) }, a }()) }, openLocation: function (a) { c("openLocation", { latitude: a.latitude, longitude: a.longitude, name: a.name || "", address: a.address || "", scale: a.scale || 28, infoUrl: a.infoUrl || "" }, a) }, getLocation: function (a) { a = a || {}, c(p.getLocation, {type: a.type || "wgs84"}, function () { return a._complete = function (a) { delete a.type }, a }()) }, hideOptionMenu: function (a) { c("hideOptionMenu", {}, a) }, showOptionMenu: function (a) { c("showOptionMenu", {}, a) }, closeWindow: function (a) { a = a || {}, c("closeWindow", {}, a) }, hideMenuItems: function (a) { c("hideMenuItems", {menuList: a.menuList}, a) }, showMenuItems: function (a) { c("showMenuItems", {menuList: a.menuList}, a) }, hideAllNonBaseMenuItem: function (a) { c("hideAllNonBaseMenuItem", {}, a) }, showAllNonBaseMenuItem: function (a) { c("showAllNonBaseMenuItem", {}, a) }, scanQRCode: function (a) { a = a || {}, c("scanQRCode", { needResult: a.needResult || 0, scanType: a.scanType || ["qrCode", "barCode"] }, function () { return a._complete = function (a) { if (z) { var b = a.resultStr; if (b) { var c = JSON.parse(b); a.resultStr = c && c.scan_code && c.scan_code.scan_result } } }, a }()) }, openAddress: function (a) { c(p.openAddress, {}, function () { return a._complete = function (a) { a = g(a) }, a }()) }, openProductSpecificView: function (a) { c(p.openProductSpecificView, {pid: a.productId, view_type: a.viewType || 0, ext_info: a.extInfo}, a) }, addCard: function (a) { for (var b = a.cardList, d = [], e = 0, f = b.length; f > e; ++e) { var g = b[e], h = {card_id: g.cardId, card_ext: g.cardExt}; d.push(h) } c(p.addCard, {card_list: d}, function () { return a._complete = function (a) { var b = a.card_list; if (b) { b = JSON.parse(b); for (var c = 0, d = b.length; d > c; ++c) { var e = b[c]; e.cardId = e.card_id, e.cardExt = e.card_ext, e.isSuccess = e.is_succ ? !0 : !1, delete e.card_id, delete e.card_ext, delete e.is_succ } a.cardList = b, delete a.card_list } }, a }()) }, chooseCard: function (a) { c("chooseCard", { app_id: D.appId, location_id: a.shopId || "", sign_type: a.signType || "SHA1", card_id: a.cardId || "", card_type: a.cardType || "", card_sign: a.cardSign, time_stamp: a.timestamp + "", nonce_str: a.nonceStr }, function () { return a._complete = function (a) { a.cardList = a.choose_card_info, delete a.choose_card_info }, a }()) }, openCard: function (a) { for (var b = a.cardList, d = [], e = 0, f = b.length; f > e; ++e) { var g = b[e], h = {card_id: g.cardId, code: g.code}; d.push(h) } c(p.openCard, {card_list: d}, a) }, consumeAndShareCard: function (a) { c(p.consumeAndShareCard, {consumedCardId: a.cardId, consumedCode: a.code}, a) }, chooseWXPay: function (a) { c(p.chooseWXPay, f(a), a) }, openEnterpriseRedPacket: function (a) { c(p.openEnterpriseRedPacket, f(a), a) }, startSearchBeacons: function (a) { c(p.startSearchBeacons, {ticket: a.ticket}, a) }, stopSearchBeacons: function (a) { c(p.stopSearchBeacons, {}, a) }, onSearchBeacons: function (a) { d(p.onSearchBeacons, a) }, openEnterpriseChat: function (a) { c("openEnterpriseChat", {useridlist: a.userIds, chatname: a.groupName}, a) } }, J = 1, K = {}; return r.addEventListener("error", function (a) { if (!y) { var b = a.target, c = b.tagName, d = b.src; if ("IMG" == c || "VIDEO" == c || "AUDIO" == c || "SOURCE" == c) { var e = -1 != d.indexOf("wxlocalresource://"); if (e) { a.preventDefault(), a.stopPropagation(); var f = b["wx-id"]; if (f || (f = J++, b["wx-id"] = f), K[f])return; K[f] = !0, wx.getLocalImgData({ localId: d, success: function (a) { b.src = a.localData } }) } } } }, !0), r.addEventListener("load", function (a) { if (!y) { var b = a.target, c = b.tagName; b.src; if ("IMG" == c || "VIDEO" == c || "AUDIO" == c || "SOURCE" == c) { var d = b["wx-id"]; d && (K[d] = !1) } } }, !0), b && (a.wx = a.jWeixin = I), I } });