Files
2025-06-27 17:42:38 +08:00

703 lines
31 KiB
JavaScript

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