function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
var __setPubTime = function __setPubTime(svrTime, oriCreateTime, createTime, dom) { var oriTimestamp = oriCreateTime * 1; var dateObj = new Date(oriTimestamp * 1000); var padStart = function padStart(v) { return "0".concat(v).slice(-2); }; var year = dateObj.getFullYear(); var month = padStart(dateObj.getMonth() + 1); var date = padStart(dateObj.getDate()); var hour = padStart(dateObj.getHours()); var minute = padStart(dateObj.getMinutes()); var timeString = "".concat(hour, ":").concat(minute); var dateString = "".concat(year, "年").concat(month, "月").concat(date, "日"); var showDate = "".concat(dateString, " ").concat(timeString);
if (dom) { dom.innerText = showDate; } }; if (!window.__second_open__) { var svrDate = '1744004903'; var oriCreateTime = '1742541846'; var createTime = '2025-03-21 15:24'; __setPubTime(svrDate, oriCreateTime, createTime, document.getElementById('publish_time')); window.__setPubTime = __setPubTime; }
var ua = navigator.userAgent.toLowerCase(); var re = new RegExp("msie ([0-9]+[.0-9]*)"); var version; if (re.exec(ua) != null) { version = parseInt(RegExp.$1); } var isIE = false; if (typeof version != 'undefined' && version >= 6 && version 16) break; outerWidth += parseFloat(parent_style.paddingLeft) + parseFloat(parent_style.paddingRight) + parseFloat(parent_style.marginLeft) + parseFloat(parent_style.marginRight) + parseFloat(parent_style.borderLeftWidth) + parseFloat(parent_style.borderRightWidth); parent = parent.parentNode; } return parent_width; } var getOuterW = function (dom) { var style = getComputedStyle(dom), w = 0; if (!!style) { w = parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth); } return w; }; var getOuterH = function (dom) { var style = getComputedStyle(dom), h = 0; if (!!style) { h = parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth); } return h; }; var insertAfter = function (dom, afterDom) { var _p = afterDom.parentNode; if (!_p) { return; } if (_p.lastChild === afterDom) { _p.appendChild(dom); } else { _p.insertBefore(dom, afterDom.nextSibling); } }; var getQuery = function (name, url) {
var u = arguments[1] || window.location.search, reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"), r = u.substr(u.indexOf("?") + 1).match(reg); return r != null ? r[2] : ""; };
function setImgSize(item, widthNum, widthUnit, ratio, breakParentWidth) { setTimeout(function () { var img_padding_border = getOuterW(item) || 0; var img_padding_border_top_bottom = getOuterH(item) || 0;
(function () { var iframe = document.getElementsByTagName('iframe'); for (var i = 0, il = iframe.length; i < il; i++) { if (window.__second_open__ && iframe[i].getAttribute('__sec_open_place_holder__')) { continue; } var a = iframe[i]; var src_ = a.getAttribute('src') || a.getAttribute('data-src') || "";
var vid = getQuery("vid", src_) || a.getAttribute('data-mpvid'); if (!vid) { continue; } vid = vid.replace(/^[suFEFFxA0]+|[suFEFFxA0]+$/g, "");//清除前后空格 a.removeAttribute('src'); a.style.display = "none"; var obj = window.__getVideoWh(a), videoPlaceHolderSpan = document.createElement('span');
var mid = "2247490975" || "" || ""; var biz = "MzkxNTU3MzUyMg==" || ""; var sessionid = "" || "svr_d0f5ecac83d"; var idx = "1" || ""; var hitInfos = [ ];
(function setHitStyle(parentNode, copyIframe, index, vid) { var ret = (hitInfos || []).find(function (info) { return info.video_id === vid; } ); if (!ret) return; var ori = ret.ori_status; var hit_biz_headimg = ret.hit_biz_headimg + '/64'; var hit_nickname = ret.hit_nickname; var hit_username = ret.hit_username; var sourceBiz = ret.hit_bizuin;
var selfUserName = "gh_f209c70302c3";
if (ori === 2 && selfUserName !== hit_username) { var videoBar = document.createElement('div'); var videoBarHtml = '
(function () { if (window.__zoom != 1) { if (!window.__second_open__) { document.getElementById('page-content').style.zoom = window.__zoom; var a = document.getElementById('activity-name'); var b = document.getElementById('meta_content'); if (!!a) { a.style.zoom = 1 / window.__zoom; } if (!!b) { b.style.zoom = 1 / window.__zoom; } } var images = document.getElementsByTagName('img'); for (var i = 0, il = images.length; i < il; i++) { if (window.__second_open__ && images[i].getAttribute('__sec_open_place_holder__')) { continue; } images[i].style.zoom = 1 / window.__zoom; } var iframe = document.getElementsByTagName('iframe'); for (var i = 0, il = iframe.length; i < il; i++) { if (window.__second_open__ && iframe[i].getAttribute('__sec_open_place_holder__')) { continue; } var a = iframe[i]; a.style.zoom = 1 / window.__zoom; var src_ = a.getAttribute('data-src') || ""; if (!/^http(s)*://v.qq.com/iframe/(preview|player).html?/.test(src_) && !/^http(s)*://mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl/.test(src_) ) { continue; } var ratio = a.getAttribute("_ratio"); var vid = a.getAttribute("_vid"); a.removeAttribute("_ratio"); a.removeAttribute("_vid"); var vw = a.offsetWidth - (getOuterW(a) || 0); var vh = vw / ratio; var h = vh + (getOuterH(a) || 0) a.style.cssText += "height: " + h + "px !important;" a.setAttribute("height", h); if (/^http(s)*://v.qq.com/iframe/(preview|player).html?/.test(src_)) { a.setAttribute("data-src", location.protocol + "//v.qq.com/iframe/player.html?vid=" + vid + "&width=" + vw + "&height=" + vh + "&auto=0"); } a.style.display = "none"; var parent = a.parentNode; if (!parent) { continue; } for (var j = 0, jl = parent.children.length; j = 0 && child.getAttribute("data-vid") == vid) { child.style.cssText += "height: " + h + "px !important;"; child.style.display = ""; } } } } })(); })(); var anchor_tree_msg = '';
(function () { 'use strict';
var _Speed = {}; var _userDefine; var _imgurl = 'https://badjs.weixinbridge.com/frontend/reportspeed?'; function saveSpeeds$1(obj) { if (!obj.pid || !obj.speeds) { return -1; } if (!Array.isArray(obj.speeds)) { obj.speeds = [obj.speeds]; } if (obj.user_define) { _userDefine = obj.user_define; } var pid_uin_rid = _conbinUPRid(obj); for (var i = 0; i 20 && os.time >= 0) _setSidTime(pid_uin_rid, os.sid, os.time); } } function send$1() { _doFunc(function () { setTimeout(function () { for (var item in _Speed) { _get({ pid_uin_rid: item, speeds: _Speed[item], user_define: _userDefine }, _imgurl); } _Speed = {}; }, 100); }); } function setFirstViewTime(obj) { _doFunc(function () { if (!obj.pid || !obj.time) return -1; var pid_uin_rid = _conbinUPRid(obj); _setSidTime(pid_uin_rid, 9, obj.time); }); } function setBasicTime$1(obj) { _doFunc(function () { var pid_uin_rid = _conbinUPRid(obj); if (!_Speed[pid_uin_rid]) _Speed[pid_uin_rid] = []; var performance = window.performance || window.msPerformance || window.webkitPerformance || {}; if (!!performance && !!performance.timing) { var timing = performance.timing || {}; _setSidTime(pid_uin_rid, 1, timing.domainLookupEnd - timing.domainLookupStart); _setSidTime(pid_uin_rid, 2, location.protocol == "https:" && timing.secureConnectionStart != 0 ? timing.connectEnd - timing.secureConnectionStart : 0); _setSidTime(pid_uin_rid, 3, timing.connectEnd - timing.connectStart); _setSidTime(pid_uin_rid, 4, timing.responseStart - timing.requestStart); _setSidTime(pid_uin_rid, 5, timing.responseEnd - timing.responseStart); _setSidTime(pid_uin_rid, 6, timing.domContentLoadedEventStart - timing.domLoading); _setSidTime(pid_uin_rid, 7, timing.domComplete == 0 ? 0 : timing.domComplete - timing.domLoading); _setSidTime(pid_uin_rid, 8, timing.loadEventEnd == 0 ? 0 : timing.loadEventEnd - timing.loadEventStart); (function (_Speed) { setTimeout(function () { if (timing.loadEventEnd) { _setSidTime(pid_uin_rid, 7, timing.domComplete == 0 ? 0 : timing.domComplete - timing.domLoading); _setSidTime(pid_uin_rid, 8, timing.loadEventEnd == 0 ? 0 : timing.loadEventEnd - timing.loadEventStart); } }, 0); })(); if (!_Speed[pid_uin_rid][9]) _setSidTime(pid_uin_rid, 9, timing.domContentLoadedEventStart - timing.navigationStart); _setSidTime(pid_uin_rid, 10, timing.redirectEnd - timing.redirectStart); _setSidTime(pid_uin_rid, 11, timing.domainLookupStart - timing.fetchStart); _setSidTime(pid_uin_rid, 12, timing.domLoading - timing.responseStart); } }); } function _setSidTime(pid_uin_rid, sid, time) { _Speed[pid_uin_rid] = _Speed[pid_uin_rid] || []; _Speed[pid_uin_rid][sid] = _Speed[pid_uin_rid][sid] || []; if (time < 0) return; if (sid < 21) _Speed[pid_uin_rid][sid][0] = time;else _Speed[pid_uin_rid][sid].push(time); } function _conbinUPRid(obj) { if (!obj || !obj.pid) { console && console.error('Must provide a pid'); return ''; } return "".concat(obj.pid, "_").concat(obj.uin || 0, "_").concat(obj.rid || 0); } function _get(obj, url) { var apur = obj.pid_uin_rid.split('_'); var spur = ''; if (apur.length == 3) { spur = "pid=".concat(apur[0], "&uin=").concat(apur[1], "&rid=").concat(apur[2]); } else { console && console.error('pid,uin,rid, invalid args'); return; } if (obj.user_define) { spur += "&user_define=".concat(obj.user_define); } var url1 = "".concat(url + spur, "&speeds="); var url2 = ''; var urlarr = []; for (var i = 1; i < obj.speeds.length; i++) { if (obj.speeds[i]) { for (var j = 0; j < obj.speeds[i].length; j++) { var s = "".concat(i, "_").concat(obj.speeds[i][j]); if (url1.length + url2.length + s.length < 1024) { url2 = "".concat(url2 + s, ";"); } else { if (url2.length) urlarr.push(url1 + url2.substring(0, url2.length - 1)); url2 = "".concat(s, ";"); } } if (i == obj.speeds.length - 1) { urlarr.push(url1 + url2.substring(0, url2.length - 1)); } } } for (var _i = 0; _i < urlarr.length; _i++) { new Image().src = urlarr[_i]; } } var cblist = []; function _doFunc(fnc) { if (document.readyState == "complete") { fnc(); } else { cblist.push(fnc); } } window.addEventListener('load', onLoad, false); function onLoad() { for (var i = 0; i < cblist.length; i++) { cblist[i](); } cblist = []; } var wxgsdk = { saveSpeeds: saveSpeeds$1, send: send$1, setFirstViewTime: setFirstViewTime, setBasicTime: setBasicTime$1 };
var reportLogs = []; var reportExtraLogs = []; var sendUrl = '/mp/jsmonitor?'; var monitor = {}; monitor._reportOptions = { idkey: {} }; function ObjWithoutProperty(source, exclude) { if (source === null) return {}; var target = {}; var sourceKeys = Object.keys(source); for (var i = 0; i = 0) continue; target[key] = source[key]; } return target; } function formatDataToString(data) { var reportData = []; for (var key in data) { if (Object.prototype.hasOwnProperty.call(data, key)) { reportData.push(key + '=' + encodeURIComponent(data[key])); } } return reportData.join('&'); } monitor.getReportData = function (opt) { opt = opt || {}; var idkey = monitor._reportOptions.idkey || {}; var key = null; var reportData = {}; var nextKey; try { for (key in idkey) { if (Object.prototype.hasOwnProperty.call(idkey, key) && idkey[key]) { reportLogs.push(key + '_' + idkey[key]); } } } catch (e) { return false; } if (reportLogs.length === 0) { return false; } if (reportExtraLogs.length) { reportData.lc = reportExtraLogs.length; reportExtraLogs.forEach(function (extraLog, index) { reportData["log".concat(index)] = extraLog; }); } try { var reportOptions = monitor._reportOptions; if (reportOptions !== null && reportOptions !== undefined) { for (nextKey in reportOptions) { if (Object.prototype.hasOwnProperty.call(reportOptions, nextKey)) { reportData[nextKey] = reportOptions[nextKey]; } } } } catch (e) { reportData = {}; } reportData.idkey = reportLogs.join(';'); reportData.t = Math.random(); if (opt.remove !== false) { reportLogs = []; reportExtraLogs = []; monitor._reportOptions = { idkey: {} }; } return reportData; }; monitor.setLogs = function (opt) { var id = opt.id; var key = opt.key; var value = opt.value; var extraLog = opt.log; var others = ObjWithoutProperty(opt, ['id', 'key', 'value', 'log']); var idkey = monitor._reportOptions.idkey || {}; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; if (extraLog) { reportExtraLogs.push(extraLog); } try { if (others !== null && others !== undefined) { for (var otherKey in others) { if (Object.prototype.hasOwnProperty.call(others, otherKey)) { monitor._reportOptions[otherKey] = others[otherKey]; } } } } catch (e) { console.log(e); } return monitor; }; monitor.setAvg = function (id, key, value) { var idkey = monitor._reportOptions.idkey || {}; var param1 = id + '_' + key; var param2 = id + '_' + (key - 1); if (idkey[param1]) { idkey[param1] += value; } else { idkey[param1] = value; } if (idkey[param2]) { idkey[param2] += 1; } else { idkey[param2] = 1; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.setSum = function (id, key) { var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; var idkey = monitor._reportOptions.idkey; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.send = function (async, ajax, origin) { if (async !== false) { async = true; } var data = monitor.getReportData(); origin = origin || ''; if (!data) { return; } if (!!ajax && ajax instanceof Function) { ajax({ url: origin + sendUrl, type: 'POST', mayAbort: true, data: data, async: async, timeout: 2000 }); } else { new Image().src = origin + '/mp/jsmonitor?' + formatDataToString(data) + ''; } }; if (typeof window !== 'undefined' && window.__monitor) { monitor = window.__monitor; } else { typeof window !== 'undefined' && (window.__monitor = monitor); } var monitor$1 = monitor;
function _typeof(obj) { "@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
var logList = []; var log = function log(msg) { logList.push(msg); }; var printLog = function printLog() { for (var i = 0, len = logList.length; i < len; ++i) { console.log("[RespType]".concat(logList[i])); } }; var isArray = function isArray(val) { return Object.prototype.toString.call(val) === '[object Array]'; }; var getValueType = function getValueType(value) { if (isArray(value)) { return 'array'; } return _typeof(value); }; var parseRtDesc = function parseRtDesc(rtDesc, k) { var type = 'mix'; var isRequired = false; var key = k; if (k) { var requireKeyWord = '_R'; var pos = k.indexOf(requireKeyWord); var len = k.length - requireKeyWord.length; isRequired = pos !== -1 && pos === len; key = isRequired ? k.substring(0, len) : k; } if (typeof rtDesc === 'string') { type = rtDesc; } else if (isArray(rtDesc)) { type = 'array'; } else if (_typeof(rtDesc) === 'object') { type = 'object'; } return { key: key, type: type, isRequired: isRequired }; }; var checkForArrayRtDesc = function checkForArrayRtDesc(arr, rtDescs) { if (!isArray(arr)) { return false; } for (var i = 0, len = arr.length; i = o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var ua = navigator.userAgent; var is_ios = /(iPhone|iPad|iPod|iOS)/i.test(ua); var is_wp = /WindowssPhone/i.test(ua); var is_android = /(Android)/i.test(ua); var is_wechat = /MicroMessenger/([d.]+)/i.test(ua); var is_mac = /macsos/i.test(ua) && !is_ios; var is_windows = /windowssnt/i.test(ua) && !is_wp; var is_mpapp = /MPAPP/([d.]+)/i.test(ua); var is_ipad = /iPad/i.test(ua); var is_windows_wechat = /WindowsWechat/i.test(ua); var is_mac_wechat = /MacWechat/i.test(ua) || /wechat.*mac os/i.test(ua); var is_prefetch = is_wechat && window.WeixinPrefecherJSBridge; var is_donut_app = /SAAASDK/i.test(ua); var is_harmony = /OpenHarmony|ArkWeb/i.test(ua); var is_in_miniProgram = is_android && /miniprogram/.test(ua.toLowerCase()) || window.__wxjs_environment == 'miniprogram'; var is_wx_work = /wxwork/i.test(ua); function getUrlParams() { var vars = location.search.substring(1).split('&'); var params = {}; var _iterator = _createForOfIteratorHelper(vars), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var ele = _step.value; var pair = ele.split('='); var key = decodeURIComponent(pair[0]); if (typeof params[key] === 'undefined') { params[key] = decodeURIComponent(pair[1]); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } return params; } function get() { var reg = /MicroMessenger/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMac() { var reg = /MacWechat/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMacOS() { var reg = /Mac OS X ([d_]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1].replace(/_/g, '.'); } return false; } function getWindows() { var reg = /WindowsWechat(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getWxWork() { var reg = /wxwork/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMpApp() { var appVersion = [2, 4, 5]; var match = navigator.userAgent.match(/MPAPP/(d+(.d+)*)/); if (match) { appVersion = match[1].split('.').map(function (v) { return Number(v); }); } return appVersion.join('.'); } function getUnifiedPcVer() { var versionInfo = navigator.userAgent.match(/UnifiedPCw+Wechat(0xfw{2}(w+?)w{2})/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(0, 1)); var subVersion = getVersionNumber(version.slice(1, 2)); var subVersion2 = getVersionNumber(version.slice(2, 3)); return [mainVersion, subVersion, subVersion2].join('.'); } } function getVersionNumber(hexStr) { return Number(Number("0x".concat(hexStr)).toString(10)); } function getWindowsVersionFormat() { var versionInfo = navigator.userAgent.match(/WindowsWechat(0x(w+?))/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(1, 2)); var subVersion = getVersionNumber(version.slice(2, 4)); var subVersion2 = getVersionNumber(version.slice(4, 6)); return [mainVersion, subVersion, subVersion2].join('.'); } return false; } function getInner() { var reg = /MicroMessenger/[d.]+(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1] && ret[1] != null) { return ret[1]; } if (!ret && /MicroMessenger/[d.]+/i.test(ua)) { var urlParams = getUrlParams(); if (urlParams.version) { return urlParams.version; } } return false; } var opfunc = { 'cp-1': function cp1(a, b) { return a b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2]; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1]; if (Linux) Device.os.Linux = true; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() < 6) { Device.os.hasTouch = false; } if (Device.browser.WeChat && Device.browser.version = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; Device.os.unifiedPC = ua.match(/UnifiedPC/); delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger/((d+).(d+)).(d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() < 10) { return false; } return true; } function isLockdownMode() { if (!Device.os.ios || Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp < 0) return vi ".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); }
var doc$1 = {}; var isAcrossOrigin$1 = false; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } function invoke(methodName, args, callback) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { invoke(methodName, args, callback); }); return; } ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); }); } function call(methodName) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { call(methodName); }); return; } ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); } function on(eventName, callback) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { on(eventName, callback); }); return; } ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove };
function parseUrl(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl(url); var query_str = ret.query_str; var args_arr = []; if (_typeof(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); }
function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[wd]+:[/\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || mmversion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery('enterid')) { obj.enterid = getQuery('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { resolve(getQuery(name, url)); }); } else { resolve(getQuery(name, url)); } }); } var Url = { parseUrl: parseUrl, join: join, addParam: addParam, addWxfrom: addWxfrom, getQuery: getQuery, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl, removeParam: removeParam };
function _log(level, msg) { if (level === 'log') { level = 'info'; msg = "[WechatFe]".concat(msg); } else { var prefix = "__wap__".concat(window.__second_open__ ? ' (sec)' : ''); msg = "".concat(prefix, " ").concat(msg, " location:[").concat(location.href, "]"); } msg += new Error().stack; if (mmversion.isMpapp) { invoke$1('WNNativeCallbackLog', msg); } else if (mmversion.isWechat) { if (mmversion.isAndroid) { console.warn('[system]', "[MicroMsg.JsApiLog][".concat(level, "] jslog : ").concat(msg)); } else if (mmversion.isIOS) { JSAPI.invoke('writeLog', { level: level, msg: msg }); } else { JSAPI.invoke('log', { level: level, msg: msg }); } } } var Log = { info: function info() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } _log('info', args.join(' ')); }, warn: function warn() { for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } _log('warn', args.join(' ')); }, error: function error() { for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { args[_key3] = arguments[_key3]; } _log('error', args.join(' ')); }, debug: function debug() { for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { args[_key4] = arguments[_key4]; } _log('debug', args.join(' ')); }, log: function log() { for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 ', '>', '<', '<', '¥', '¥', '&', '&', '<', '', '>'];
var replaceReverse = ['&', '&', '¥', '¥', '<', '', '>', ' ', ' ', '"', '"', ''', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i ', '>', '<', '<', '&', '&'];
var replaceReverse = ['&', '&', '<', '', '>', '"', '"', ''', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i < target.length; i += 2) { str = str.replace(new RegExp(target[i], 'g'), target[i + 1]); } return str; }; var htmlEncode = function htmlEncode(str) { return html(str, true); }; var htmlDecode = function htmlDecode(str) { return html(str, false); }; var htmlEncodeLite = function htmlEncodeLite(str) { return htmlLite(str, true); }; var htmlDecodeLite = function htmlDecodeLite(str) { return htmlLite(str, false); }; String.prototype.html = function (encode) { return html(this.toString(), encode); }; String.prototype.htmlEncode = function () { return htmlEncode(this.toString()); }; String.prototype.htmlDecode = function () { return htmlDecode(this.toString()); }; String.prototype.htmlLite = function (encode) { return htmlLite(this.toString(), encode); }; String.prototype.htmlEncodeLite = function () { return htmlEncodeLite(this.toString()); }; String.prototype.htmlDecodeLite = function () { return htmlDecodeLite(this.toString()); };
var _a; var METHOD_ENUM = { GET: 0, POST: 1 }; var __moon_report = window.__moon_report || function () {}; var MOON_AJAX_SUCCESS_OFFSET = 3; var MOON_AJAX_NETWORK_OFFSET = 4; var MOON_AJAX_ERROR_OFFSET = 5; var MOON_AJAX_TIMEOUT_OFFSET = 6; var MOON_AJAX_COMPLETE_OFFSET = 7; var LENGTH_LIMIT = 4096; var doc; var isAcrossOrigin = false; try { doc = (_a = window.top) === null || _a === void 0 ? void 0 : _a.window.document; } catch (e) { isAcrossOrigin = true; } function networkStartLog(item) { var _a, _b, _c; console.log('[system]', " [response ".concat(item.requestType, "]"), item.response, item); if (((_a = window.vConsole) === null || _a === void 0 ? void 0 : _a.network) && item.id !== '__system_log__') { try { return (_c = (_b = window.vConsole.network).update) === null || _c === void 0 ? void 0 : _c.call(_b, item.id, Object.assign({}, item, { readyState: 4 })); } catch (err) {} } } function reqType(obj, path) { return obj.url.indexOf(path) > -1 && obj.url.indexOf('action=') === -1 && (!obj.data || !obj.data.action); } function reportRtError(type, id, key, content) { var log = ''; var prefix = type === 'rt' ? 'rtCheckError' : 'Ajax Length Limit'; if (content === null || content === void 0 ? void 0 : content.length) { var loglen = 1000; var len = content.length; var lc = Math.ceil(len / loglen); log = ["&lc=".concat(lc)]; for (var i = 0; i = '1800282f' || mmversion.isAndroid && mmversion.getInner() >= '28002234' || mmversion.isWindowsWechat && mmversion.cpVersion('3.9.5', 1, true, 'windows') || mmversion.isMacWechat && mmversion.cpVersion('3.8.4', 1, true, 'mac'))) { try { return findAjaxScopeByConfig(ajaxUrl, window.__ajaxTransferConfig); } catch (err) {
} } } function setXhrHeader(xhr, type, opt) { if (opt.contentType) { xhr.setRequestHeader('Content-Type', opt.contentType); } else if (type === 'POST') { xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); } if (!opt.noXRequestedWidthHeader) { xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); } } function Ajax(obj) { if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } var ajaxScope = getAjaxScope(obj.url); var type = (obj.type || 'GET').toUpperCase(); var timer; var url; if (obj.notJoinUrl) { url = obj.url; } else { url = Url.joinUrl(obj.url); } if (obj.f === 'html') { url = url.replace('&f=json', ''); } var data = null; if (_typeof(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var beginTs; var beforeReq = function beforeReq() { if (reqType(obj, '/mp/getappmsgext')) { window.startGetAppmsgExtTime = Date.now(); Log.log('start get appmsgext, url: ', obj.url); } if (reqType(obj, '/mp/getappmsgad')) { window.startGetAppmsgAdTime = Date.now(); Log.log('start get appmsgad, url: ', obj.url); } beginTs = Date.now(); }; var beforeResp = function beforeResp(xhr) { if (reqType(obj, '/mp/getappmsgext')) { window.receiveGetAppmsgExt = "".concat(xhr.status, "|").concat(Date.now()); Log.log("receive appmsgext response, status: ".concat(xhr.status)); } if (reqType(obj, '/mp/getappmsgad')) { window.receiveGetAppmsgAd = "".concat(xhr.status, "|").concat(Date.now()); Log.log("receive appmsgad response, status: ".concat(xhr.status)); } if (Math.random() < 0.01 && window.WX_BJ_REPORT && window.WX_BJ_REPORT.BadJs) { try { var key = ajaxScope ? 'transfer' : 'xhr'; var interval = 250; var time = Date.now() - beginTs; var range = Math.floor(time / interval) * interval; var pathname = new URL(obj.url, location.href).pathname || ''; window.WX_BJ_REPORT.BadJs.report("".concat(key, "_perf:").concat(pathname), JSON.stringify({ status: xhr.status, time: "[".concat(range, "-").concat(range + interval, ")") }), { mid: 'mmbizwap:ajaxtransfer', view: 'wap_business' }); } catch (err) {} } }; var handleRespSucc = function handleRespSucc(xhr) { var _a; try { var responseText = xhr.responseText; var resp = responseText; if (obj.dataType === 'json') { try { if (JSON && JSON.parse) { resp = JSON.parse(resp); } else { resp = eval("(".concat(resp, ")")); monitor$1.setSum(523105, 127, 1).send(); } var rtId = obj.rtId; var rtKey = obj.rtKey || 0; var rtDesc = obj.rtDesc; if (rtId && rtDesc && RespTypes && !RespTypes.check(resp, rtDesc)) { reportRt(+rtId, +rtKey, "".concat(RespTypes.getMsg(), "[detail]").concat(responseText, ";").concat(obj.url)); } if (resp && resp.base_resp && ((_a = resp.base_resp) === null || _a === void 0 ? void 0 : _a.ret) !== 0 && typeof window.WX_BJ_REPORT !== 'undefined' && window.WX_BJ_REPORT.BadJs && Math.random() = 200 && retryStatus -1; var respJsonFlag = res.jsapi_resp.resp_json; status = retFlag && respJsonFlag ? 200 : 400; result = res.jsapi_resp.resp_json; } catch (err) { console.error(err); } } else { status = res && res.errCode * 1 === 0 && typeof res.result === 'string' && res.result ? 200 : 400; result = res.result; } if (status >= 200 && status -1 && retryStatus >= 200 && retryStatus = 200 && status LENGTH_LIMIT) { reportAjaxLength(27613, 17, "ajax get limit[length: ".concat(url.length, "]").concat(url.substring(0, 1024))); } if (data && data.length > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.length, "]").concat(data.substring(0, 1024))); } } catch (e) { } } catch (e) { obj.error && obj.error(xhr, { type: 3, error: e, status: 0 }); } beforeReq(); return xhr; } function AjaxWx(obj) { obj.url += obj.url.indexOf('?') === -1 ? '?fasttmplajax=1' : '&fasttmplajax=1'; if (getAjaxScope(obj.url)) { Ajax(obj); return; } if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } if (!/^(http://|https://|//)/.test(obj.url)) { obj.url = "https://mp.weixin.qq.com/".concat(obj.url.replace(/^//, '')); } else if (/^///.test(obj.url)) { obj.url = "https:".concat(obj.url); } if (obj.f !== 'html' && (obj.url.indexOf('?f=json') === -1 || obj.url.indexOf('&f=json') === -1)) { obj.url += '&f=json'; } if (!obj.notJoinUrl && obj.f !== 'html') { obj.url = Url.joinUrl(obj.url); } var data = null; if (_typeof(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var header = { Cookie: document.cookie, referer: location.href }; var reqLogItem = networkStartLog({ method: obj.type || 'GET', url: obj.url, postData: obj.data || {}, requestHeader: header, requestType: 'jsapi' }); var retryTime = 1; var jsapiRequest = function jsapiRequest(obj, data) { return JSAPI.invoke('request', { url: obj.url, method: obj.type, data: data, header: header }, function (res) { var _a; if (res.err_msg.indexOf(':ok') > -1) { if (reqType(obj, '/mp/getappmsgext')) { window.receiveGetAppmsgExt = "".concat(res.statusCode, "|").concat(Date.now()); } if (reqType(obj, '/mp/getappmsgad')) { window.receiveGetAppmsgAd = "".concat(res.statusCode, "|").concat(Date.now()); } if (retryTime === 1) { obj.received && obj.received(null); } var resData = {}; if (res.data) { try { if (obj.dataType === 'json') { resData = JSON.parse(res.data); } else { resData = res.data; } if (resData && resData.base_resp && ((_a = resData.base_resp) === null || _a === void 0 ? void 0 : _a.ret) !== 0 && typeof window.WX_BJ_REPORT !== 'undefined' && window.WX_BJ_REPORT.BadJs && Math.random() < 0.001) { var reportUrl = obj.url; if (obj.url.indexOf('?') !== -1) { reportUrl = obj.url.substring(0, obj.url.indexOf('?')); if (Url.getQuery('action', obj.url)) { reportUrl = "".concat(reportUrl, "?action=").concat(Url.getQuery('action', obj.url)); } } if (!((reportUrl === '/mp/getappmsgext' || reportUrl === '/mp/getappmsgad') && typeof resData.base_resp.ret === 'undefined')) { window.WX_BJ_REPORT.BadJs.report(reportUrl, "ret=".concat(resData.base_resp.ret), { mid: window.PAGE_MID, view: 'wap_retcode' }); } } } catch (e) { console.error(e); obj.error && obj.error(null, { type: 1, error: e, status: res.statusCode }); obj.complete && obj.complete(); reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); return; } } var tmpResData = {}; try { tmpResData = JSON.parse(res.data); } catch (e) {} if (tmpResData && tmpResData.base_resp && tmpResData.base_resp.ret === -3 && retryTime '27000600')) { var _retryTime = retryTime++; JSAPI.invoke('updatePageAuth', {}, function (res) { console.log('[skeleton] updatePageAuth', res); monitor$1.setSum(112287, 3, 1); if (res && res.err_msg && res.err_msg.indexOf(':ok') > -1) { window.top.pass_ticket = encodeURIComponent(Url.getQuery('pass_ticket', res.fullUrl).html(false).replace(/s/g, '+')); if (obj.pass_ticket) { obj.pass_ticket = window.top.pass_ticket; } console.warn('[skeleton] updatePageAuth resetTopbar'); var supportNewTopBar = mmversion.isIOS && mmversion.gtVersion('7.0.10', true); var showBottomBar = !!window.is_login; if (window.top.item_show_type === '0' && supportNewTopBar) { var _top = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop || 0; setCurrentMpInfo(_top > 40 && !showBottomBar); } try { obj.url = Url.addParam(obj.url, 'retry', _retryTime, true); } catch (err) { console.error(err); } jsapiRequest(obj, data); monitor$1.setSum(112287, 4, 1); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); if (mmversion.isIOS) { monitor$1.setSum(112287, 35, 1); } else { monitor$1.setSum(112287, 36, 1); } reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } }); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } } else if (res.err_msg.indexOf('no permission') > -1 || !mmversion.isOnlyWechat) { Ajax(obj); if (res.err_msg.indexOf('no permission') > -1) { console.warn('[JSAPI Request] No permission'); monitor$1.setSum(112287, 31, 1); } reqLogItem.status = 302; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } else { obj.error && obj.error(null, { type: 3, error: res, status: 0 }); obj.complete && obj.complete(); monitor$1.setSum(112287, 32, 1); var sample = 0.001; if (Math.random() < sample) { var msg = "request: ".concat(JSON.stringify(obj.type), " ").concat(JSON.stringify(obj.url), " ;;;; cookie: ").concat(JSON.stringify(document.cookie), " ;;;; data: ").concat(JSON.stringify(data), " ;;;; resp: ").concat(JSON.stringify(res)); if (window.WX_BJ_REPORT && window.WX_BJ_REPORT.BadJs) { window.WX_BJ_REPORT.BadJs.report('ajax_wx_request_error', msg, { mid: 'mmbizwap:Monitor' }); } } reqLogItem.status = 400; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } }); }; if (reqType(obj, '/mp/getappmsgext')) { window.startGetAppmsgExtTime = Date.now(); } if (reqType(obj, '/mp/getappmsgad')) { window.startGetAppmsgAdTime = Date.now(); } return jsapiRequest(obj, data); } var ajax = function ajax(obj) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { ajax(obj); }); return; } if (!mmversion.isWxWork && (window.__second_open__ || !isAcrossOrigin && top.window.__second_open__) && window.__is_page_auth_return__) { return AjaxWx(obj); } return Ajax(obj); };
var timer = null; var jsmonitorReport = { setSum: function setSum(id, key, value) { throw new Error('Function not implemented.'); }, setAvg: function setAvg(id, key, value) { throw new Error('Function not implemented.'); }, setLogs: function setLogs(opt) { throw new Error('Function not implemented.'); }, send: function send(async) { throw new Error('Function not implemented.'); } }; window.__monitor_unload_has_done__ = false; jsmonitorReport.setSum = function (id, key, value) { monitor$1.setSum(id, key, value); return jsmonitorReport; }; jsmonitorReport.setAvg = function (id, key, value) { monitor$1.setAvg(id, key, value); return jsmonitorReport; }; jsmonitorReport.setLogs = function (opt) { monitor$1.setLogs(opt); return jsmonitorReport; }; jsmonitorReport.send = function (async) { if (async !== false) { async = true; } monitor$1.send(async, ajax); return jsmonitorReport; }; function reportInterval(fn, delay) { timer = window.setTimeout(function () { fn(); reportInterval(fn, delay); }, delay); } reportInterval(function () { jsmonitorReport.send(); }, 1 * 1000); window.addEventListener('unload', function () { if (window.__monitor_report_has_done__) return; window.__ajaxtest = '2'; if (timer) { window.clearTimeout(timer); timer = null; } jsmonitorReport.send(false); window.__monitor_unload_has_done__ = true; }, false); if (window.__jsmonitorReport) { jsmonitorReport = window.__jsmonitorReport; } else { window.__jsmonitorReport = jsmonitorReport; } var jsmonitorReport$1 = jsmonitorReport;
function saveSpeeds(opt) { var sample = 0.001; if (typeof opt.sample === 'number') { sample = opt.sample; } var rand = Math.random(); if (rand < sample) { wxgsdk.saveSpeeds(opt); } } function setBasicTime(opt) { var sample = opt.sample || 0.001; var rand = Math.random(); if (rand < sample) { wxgsdk.setBasicTime(opt); } } function send() { wxgsdk.send(); } function jsmonitor(opt) { opt = opt || []; if (!Array.isArray(opt)) { var item = opt; opt = []; opt.push(item); } for (var i = 0; i arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i 1 && arguments[1] !== undefined ? arguments[1] : blockEleTagName; if (!element || element.nodeType !== 1) { return false; } for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : 'className'; var AttrList = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : exceptEleClassName; for (var i = 0; i -1) { return true; } } return false; } var removeChildMedia = function removeChildMedia(element) { var parentNode = element.parentNode; element.parentNode.removeChild(element); if (parentNode.children && parentNode.children.length) { return false; } return true; };
var getParaList = function getParaList(element, _ref) { var _ref$getNestedStructu = _ref.getNestedStructure, getNestedStructure = _refgetNestedStructu, _ref$removeIgoreEle = _ref.removeIgoreEle, removeIgoreEle = _refremoveIgoreEle; var paraList = function getParaListWithIndex(ele, getNested) { var childNodes = ele.children; if (!childNodes) return []; if (!childNodes.length) { return childNodes; } var child; var paragraphList = []; for (var i = 0; i 0) { var item = queue.pop(); var nodeType = item.nodeType, tagName = item.tagName; if (item.dataset && item.dataset.index) { paraIndex = +item.dataset.index; } if (withinSelectRange && !achiveSelectRangeEnd) { if (nodeType === 3) { result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); } if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); } } if (item === $startNode) { if (nodeType === 3) { try { item.splitText(startOffset); } catch (e) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'getNodes startNode', startOffset: startOffset, endOffset: endOffset } }); } var $startTextNode = item.nextSibling; result.push({ startTextNode, type: NODE_TYPE.text, idx: paraIndex }); } else if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); } else { result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); } withinSelectRange = true; } if (item === $endNode || achiveSelectRangeEnd) { if (!achiveSelectRangeEnd) { achiveSelectRangeEnd = true; } if (item === $endNode) result.pop(); if (nodeType === 3) { try { item.splitText(endOffset); } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'getSplitTextNode endNode', startOffset: startOffset, endOffset: endOffset } }); } } result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); break; } else if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); break; } else { var _children = item.childNodes; for (var i = _children.length - 1; i >= 0; i--) { queue.push(_children[i]); } } } var children = item.childNodes; for (var _i = children.length - 1; _i >= 0; _i--) { queue.push(children[_i]); } } return result; };
var getSelectedNodes = function getSelectedNodes(range) { var start = range.start, end = range.end; var node, startOffset = start.offset; var node, endOffset = end.offset; if (endNode && $startNode instanceof Text) { return getSplitTextNode($startNode, startOffset, endOffset, start.paraIndex); } return getNodesByDFS(range); };
var checkTextNode = function checkTextNode($node) { return $node && (node.innerText); }; var connectSiblingText = function connectSiblingText(prev, next, target) { var $delete = target === prev ? next : prev;
if (!checkTextNode(prev) || !checkTextNode(next)) { return $delete; } var text = (prev.nodeValue || prev.innerText) + (next.nodeValue || next.innerText); target.nodeValue = text; target.parentNode.removeChild($delete); return target; };
var getTextNodeByOffset = function getTextNodeByOffset($parentNode, offset) { var queue = []; var curOffset = 0; var startOffset = 0; var $curNode; queue.push($parentNode); while (queue.length > 0) { $curNode = queue.pop(); if ($curNode.nodeType === 3) { startOffset = offset - curOffset; curOffset += $curNode.textContent.length; if (curOffset >= offset) { break; } } var children = $curNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return { parentNode, curNode, offset: startOffset }; };
function getBlockOffset(_ref2) { var blockNode, node; if ($blockNode === null) { return null; } var queue = []; var offset = 0; queue.push($blockNode); while (queue.length > 0) { var item = queue.pop(); if (item.nodeType === 3 && item.nodeValue !== $node.nodeValue) { offset += item.textContent.length; } else if (item.nodeType === 1) { offset += 1; if (item === $node) break; } else if (item.nodeValue === $node.nodeValue) { offset += item.textContent.length; break; } var children = item.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return offset; }
var getDomMeta = function getDomMeta(selection) { selection.$node; var parentNode; var parentIndex = Number($parentNode.dataset.index); var offset = getBlockOffset($parentNode); return { parentIndex: parentIndex, fromParentoffset: offset }; }; function nodeToSelection($node) { var $blockNode = getBlockNode($node); var paraIndex = +$blockNode.dataset.index; var offset = 0; var item = { blockNode, node, paraIndex: paraIndex, offset: offset }; var id = uuid(); return { start: item, end: item, id: id }; }
var getSelection = function getSelection() { var selection = window.getSelection(); if (selection.anchorNode === null) { return null; } var selectionRange = selection.getRangeAt(0); if (!selectionRange || !selection.toString()) { return null; } var startContainer = selectionRange.startContainer, endContainer = selectionRange.endContainer, commonAncestorContainer = selectionRange.commonAncestorContainer, startOffset = selectionRange.startOffset, endOffset = selectionRange.endOffset; var $startBlockNode = getBlockNode(startContainer); var $endBlockNode = getBlockNode(endContainer); var startIndex = startBlockNode.dataset.index; var endIndex = endBlockNode.dataset.index; var start = { startBlockNode, $node: startContainer, offset: startOffset, paraIndex: Number(startIndex) }; var end = { endBlockNode, $node: endContainer, offset: endOffset, paraIndex: Number(endIndex) }; var $container = typeof commonAncestorContainer === 'string' ? commonAncestorContainer.parentNode : commonAncestorContainer; var id = uuid(); return { start: start, end: end, container, id: id }; };
var transferTextToElement = function transferTextToElement($node, id) { if (!$node) return null; if ($node.nodeType === 3) { var $wrap = document.createElement(WRAP_TAG); $wrap.setAttribute('data-splitid', id); $wrap.appendChild($node.cloneNode(false)); if ($node.parentNode) { $node.parentNode.replaceChild(node); } return $wrap; } return $node; };
var serialize = function serialize(selectionRange) { var start = selectionRange.start, end = selectionRange.end, id = selectionRange.id; var startParaOffset = getBlockOffset(start); var endParaOffset = start.node ? end.offset - start.offset + startParaOffset : getBlockOffset(end); var meta = { id: id, start: { para_offset: startParaOffset, para_index: start.paraIndex }, end: { para_offset: endParaOffset, para_index: end.paraIndex } }; return meta; }; var mapMetaToLocal = function mapMetaToLocal(paraList) { return function (meta) { var paraOffset = meta.para_offset, paraIndex = meta.para_index; var $blockNode = paraList[paraIndex]; var queue = []; var curOffset = 0; var offset = 0; var $curNode; queue.push($blockNode); while (queue.length > 0) { $curNode = queue.pop(); if ($curNode.nodeType === 3) { offset = paraOffset - curOffset; curOffset += $curNode.textContent.length; if (curOffset >= paraOffset) { break; } } if ($curNode.nodeType === 1) { offset = paraOffset - curOffset; curOffset += 1; if (curOffset >= paraOffset) { break; } } var children = $curNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return { blockNode, curNode, offset: offset, paraIndex: paraIndex }; }; };
var deSerialize = function deSerialize(meta, paraList, $container) { var desparaList = mapMetaToLocal(paraList); return { start: desparaList(meta.start), end: desparaList(meta.end), id: meta.id, container }; }; function getTextNode($node) { if (node.nodeType === 3) { return $node; } return $node.childNodes[0]; } var resetRange = function resetRange(selectionRange) { window.getSelection().removeAllRanges(); var selection = window.getSelection(); var range = document.createRange(); var $startnode = getTextNode(TEMP_NODES.start); var $endnode = getTextNode(TEMP_NODES.end); range.setStart($startnode, selectionRange.start.offset); range.setEnd($endnode, selectionRange.end.offset); selection.addRange(range); }; var getNodeIndex = function getNodeIndex(node) { var queue = []; var index = 0; queue.push($block); while (queue.length > 0) { var $item = queue.pop(); if (node) break; index++; var children = $item.children; for (var i = 0; i 0) { var $item = queue.pop(); if (cursor === index) { item; break; } cursor++; var children = $item.children; for (var i = 0; i < children.length; i++) { queue.push(children[i]); } } return $result; }; var hasClass = function hasClass(cls, className) { if (cls && typeof cls === 'string' && cls.indexOf(className) !== -1) { return true; } return false; }; var inWhiteList = function inWhiteList(classAttr) { var classWhiteList = 'rich_pages,blockquote_info,blockquote_biz,blockquote_other,blockquote_article,js_jump_icon,h5_image_link,js_banner_container,js_list_container,js_cover,js_tx_video_container,js_product_err_container,js_product_loop_content,js_product_container,img_loading,list-paddingleft-1,list-paddingleft-2,list-paddingleft-3,selectTdClass,noBorderTable,ue-table-interlace-color-single,ue-table-interlace-color-double,__bg_gif,weapp_image_link,js_img_loading,wx_video_context,db,wx_video_thumb_primary,wx_video_play_btn,wx_video_mask,qqmusic_area,tc,tips_global,unsupport_tips,qqmusic_wrp,appmsg_card_context,appmsg_card_active,wx_tap_card,js_wx_tap_highlight,wx_tap_link,qqmusic_bd,play_area,icon_qqmusic_switch,pic_qqmusic_default,qqmusic_thumb,access_area,qqmusic_songname,qqmusic_singername,qqmusic_source,js_audio_frame,share_audio_context,flex_context,pages_reset,share_audio_switch,icon_share_audio_switch,share_audio_info,flex_bd,share_audio_title,share_audio_tips,share_audio_progress_wrp,share_audio_progress,share_audio_progress_inner,share_audio_progress_buffer,share_audio_progress_loading,share_audio_progress_loading_inner,share_audio_progress_handle,share_audio_desc,share_audio_length_current,share_audio_length_total,video_iframe,vote_iframe,js_editor_vote_card,res_iframe,card_iframe,js_editor_card,weapp_display_element,js_weapp_display_element,weapp_card,app_context,weapp_card_bd,weapp_card_profile,radius_avatar,weapp_card_avatar,weapp_card_nickname,weapp_card_info,weapp_card_title,weapp_card_thumb_wrp,weapp_card_ft,weapp_card_logo,js_pay_btn,pay,pay__mask,wx_video_loading,js_redpacketcover,js_uneditable,js_uneditablemouseover,js_editor_qqmusic,js_img_placeholder,js_editor_audio,ct_geography_loc_tip,js_poi_entry,js_mention_entry,product_text_link'.split(','); var qaClassPrefix = 'qa__'; var classWhiteListReg = [new RegExp('^weui'), new RegExp('^appmsg'), new RegExp('^audio'), new RegExp('^music'), new RegExp('^cps_inner'), new RegExp('^bizsvr_'), new RegExp('^code-snippet'), new RegExp('^' + qaClassPrefix), new RegExp('^wx-edui-'), new RegExp('^wx_'), new RegExp('^wx-'), new RegExp('^custom_select_card_') ]; if (!classAttr) return null; var classList = classAttr.split(/s+/); var newClassList = []; for (var i = 0, len = classList.length; i < len; ++i) { var className = classList[i]; if (className && classWhiteList.indexOf(className) !== -1) { newClassList.push(className); } else { for (var j = 0, jl = classWhiteListReg.length; j 1 && arguments[1] !== undefined ? arguments[1] : ''; var root = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document.body; if (!node || node === root) return selector; var id = node.getAttribute('id'); var className = node.getAttribute('class'); var tagName = node.tagName.toLowerCase(); var currentSelector = null; if (id && !hasClass(className, 'articlepart-selector-area_choice-button_wrap')) return selector ? "#".concat(id, ">").concat(selector) : "#".concat(id); var whiteClassName = inWhiteList(className); if (whiteClassName) { currentSelector = whiteClassName; } else if (hasClass(className, 'js_choice-img')) { currentSelector = '.js_choice-img'; } else if (hasClass(className, 'articlepart-selector-area_choice')) { currentSelector = node.dataset.splitid ? '' : tagName; } else { currentSelector = tagName; } return getNodeSelector(node.parentNode, [currentSelector, selector].filter(function (item) { return !!item; }).join('>'), root); }; var getNodeSelectorWrap = function getNodeSelectorWrap(node, root) { var selector = getNodeSelector(node, '', root); var collect = []; try { collect = root.querySelectorAll(selector); } catch (error) { console.log('get node selector wrap err', error); } var len = collect.length; var index = null; for (var i = 0; i .js_choice-img>', '>') + "|".concat(len, " ").concat(index || 0); return newSelector; };
var serializeToC = function serializeToC(nodes) { return ( nodes.map(function (item) { var node, type = item.type, idx = item.idx; var index = 0; var data = null; var meta = ''; var blockItem = getBlockNode($node); if (type === NODE_TYPE.text) { var nodeIndex = getNodeIndex(blockItem, $node.parentNode); if (node.data) { index = nodeIndex; data = $node.data; meta = node.previousSibling.data; } } else if (type === NODE_TYPE.img) { var imgs = blockItem.getElementsByTagName('img'); data = $node.src; index = Array.prototype.slice.call(imgs).slice(0).indexOf($node); } return { data: data, index: index, idx: idx, type: type, meta: meta }; }).filter(function (item) { return item.index > -1 && !!item.data; }) ); } ; var serializeToC2 = function serializeToC2(nodes, $container) { var root = $container || document.getElementById('js_content'); return nodes.map(function (item) { var node, type = item.type, idx = item.idx; var selector = null; var data = null; var meta = ''; if (type === NODE_TYPE.text) { if (node.data) { selector = getNodeSelectorWrap($node.parentNode, root); data = $node.data; meta = node.previousSibling.data; } } else if (type === NODE_TYPE.img) { selector = getNodeSelectorWrap($node, root); data = $node.src; } return { data: data, idx: idx, type: type, meta: meta, selector: selector }; }).filter(function (item) { return !!item.selector && !!item.data; }); }; function setProperty(el, name, value, priority) { if (!!el.style.setProperty) { priority = priority || null; el.style.setProperty(name, value, priority); } else if (typeof el.style.cssText !== 'undefined') { priority = priority ? '!' + priority : ''; el.style.cssText += ';' + name + ':' + value + priority + ';'; } }
function hasImgNode($el) { if (!$el) return false; var nodeType = $el.nodeType, tagName = $el.tagName; if (nodeType === 3) { return false; } if (tagName === IMG_TAG) { return true; } return false; } function getContent(tree) { return tree.reduce(function (acc, cur, idx) { if (idx === 0) { if (cur.type === NODE_TYPE.text) { acc.text.push(cur.data); } else if (cur.type === NODE_TYPE.img) { acc.pic.push(cur.data); } return acc; } if (cur.type === NODE_TYPE.text) { if (tree[idx - 1].type === NODE_TYPE.text) { var text = acc.text.pop(); text += cur.data; acc.text.push(text); } else { acc.text.push(cur.data); } return acc; } if (cur.type === NODE_TYPE.img) { acc.pic.push(cur.data); } return acc; }, { audio: [], pic: [], video: [], text: [] }); } function saveNode($node, key) { TEMP_NODES[key] = $node; }
function serializeNode(wrap) { var range = nodeToSelection($node); var anchorTree = serializeToC2([{ node, type: NODE_TYPE.img, idx: range.start.paraIndex }], $wrap); var anchorMeta = serialize(range); var anchorBrief = getContent(anchorTree); return { meta: { anchorTree: anchorTree, anchorMeta: anchorMeta, anchorBrief: anchorBrief }, range: range }; } function findChildIndex(parent, offset) { var childNodes = parent.childNodes; var realOffset = offset; var $node = null; var i = 0; for (i = 0; i realOffset) { break; } else { realOffset -= len; } } } return { node, cursor: realOffset }; }
var qs = function qs(selector, el) { return (el || document).querySelector(selector); };
var uin = ''; var key = ''; var pass_ticket = ''; var new_appmsg = 1; var item_show_type = "0"; var real_item_show_type = "0"; var can_see_complaint = "0"; var tid = ""; var aid = ""; var clientversion = ""; var appuin = "MzkxNTU3MzUyMg==" || ""; var voiceid = ""; var create_time = "1742541846" * 1;
var source = ""; var ascene = ""; var subscene = ""; var sessionid = "" || "svr_d0f5ecac83d"; var abtest_cookie = "";
var finder_biz_enter_id = "" * 1;
var scene = 75;
var itemidx = "" || "1"; var appmsg_token = "" || ""; var _copyright_stat = "1"; var _ori_article_type = "";
var is_follow = ""; var nickname = htmlDecode("运维李哥不背锅"); var appmsg_type = "9"; var ct = "1742541846"; var user_name = "gh_f209c70302c3"; var fakeid = ""; var version = ""; var is_limit_user = "0"; var cps_article_data = ""; var round_head_img = "http://mmbiz.qpic.cn/sz_mmbiz_png/86HCic5IM7OeibSzcEbeqaUrxia0tvY7Z2ke5icbddhicBydJgs08bFnlOtjcpzZDDUIYAJvHuK3md3BfYYVhjeUhRg/0?wx_fmt=png"; var profile_signature = "专注于各种运维技术,分享Linux基础知识,服务器,数据库,云原生等相关技术,各种进阶知识等着你,助你成为技术达人!"; var profile_signature_new = ""; var hd_head_img = "http://wx.qlogo.cn/mmhead/QAm7hEbaujTrNmxkia8oafITfwEqRch48q0iczZzFLFwDdibkh0dDUoq5DSMd9dgiaANC5uXXwK6mKo/0" || ""; var ori_head_img_url = "http://wx.qlogo.cn/mmhead/QAm7hEbaujTrNmxkia8oafITfwEqRch48q0iczZzFLFwDdibkh0dDUoq5DSMd9dgiaANC5uXXwK6mKo/132"; var msg_title = 'MySQL 主从集群 + mycat双节点 + Keepalived 读写分离高可用方案'.html(false); var msg_desc = htmlDecode(""); var msg_cdn_url = "https://mmbiz.qpic.cn/sz_mmbiz_jpg/86HCic5IM7OfX3e3QauzRIvWhqFsI9y2iaiajjeK5icRGZS4p6dGlBU7AeqbJRv5UHSiayvZaNHyibkA9QWD2Gmia5Kaw/0?wx_fmt=jpeg"; var cdn_url_1_1 = "https://mmbiz.qpic.cn/sz_mmbiz_jpg/86HCic5IM7OfX3e3QauzRIvWhqFsI9y2iaIc7220dsW7RcT8MAiaS7JQ61SUUicTvRNiczLiauw7zcsGic0qyicpV4MqWg/0?wx_fmt=jpeg"; var cdn_url_235_1 = "https://mmbiz.qpic.cn/sz_mmbiz_jpg/86HCic5IM7OfX3e3QauzRIvWhqFsI9y2iaiajjeK5icRGZS4p6dGlBU7AeqbJRv5UHSiayvZaNHyibkA9QWD2Gmia5Kaw/0?wx_fmt=jpeg"; var msg_link = "http://mp.weixin.qq.com/s?__biz=MzkxNTU3MzUyMg==&mid=2247490975&idx=1&sn=bfe4925b5b0995fe3a794591fcd87f5b&chksm=c0b9241cba038e5157ecaf125b5b311f0586b54d807b24ad7efbf9e856059054036111bb0071#rd"; var user_uin = "" * 1; var msg_source_url = ''; var img_format = 'jpeg'; var srcid = ''; var req_id = '0713agYtq9Psmw66LTsRnrax'; var networkType; var appmsgid = "" || '' || '2247490975'; var comment_id = '3908245084721823754' || '0'; var mp_comment_id = "" || "" * 1; var comment_enabled = "" * 1; var open_fansmsg = "0" * 1; var is_https_res = ("" * 1) && (location.protocol == "https:"); var msg_daily_idx = "1" || ""; var profileReportInfo = "" || "";
var devicetype = ""; var source_encode_biz = ""; var source_username = ""; var reprint_ticket = ""; var source_mid = ""; var source_idx = ""; var source_biz = ""; var author = "尼古拉斯李"; var author_id = "ofMoI44XWMe8y-6NzSZEcqyTLYQE"; var author_cancel = "" * 1 || 0; var reward_wording = "支持李哥,永不背锅"; var extra_comment_id = '3908245096197439494' || '0'; var reward_author_head = "https://mmbiz.qlogo.cn/sz_mmbiz_jpg/gGD7Zwu0AreuaLbKPYggPT9w9IZZ3anrvklSMicSlrPWatphUf4c9njiaxibwsiaMloicyibUlFzOvxC4dCbGdtGlzgg/0?wx_fmt=jpeg"; var reward_can_whisper = "" * 1 || 0; var reward_total_count = "" * 1 || 0;
var pay_fee = "" * 1; var pay_timestamp = ""; var need_pay = "" * 1; var is_pay_subscribe = "0" * 1;
var need_report_cost = "0" * 1; var use_tx_video_player = "0" * 1; var appmsg_fe_filter = "contenteditable";
var friend_read_source = "" || ""; var friend_read_version = "" || ""; var friend_read_class_id = "" || "";
var is_only_read = "1" * 1; var read_num = "" * 1; var read_num_new = '' * 1; var show_read_new = '' * 1; var like_num = "" * 1; var liked = "" == 'true' ? true : false; var is_temp_url = "" ? 1 : 0; var tempkey = ""; var send_time = ""; var icon_emotion_switch = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/emotion/icon_emotion_switch751543.svg"; var icon_emotion_switch_active = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/emotion/icon_emotion_switch_active751543.svg"; var icon_emotion_switch_primary = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/emotion/icon_emotion_switch_primary751543.svg"; var icon_emotion_switch_active_primary = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/emotion/icon_emotion_switch_active_primary751543.svg"; var icon_loading_white = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/common/icon_loading_white751543.gif"; var icon_audio_unread = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/audio/icon_audio_unread751543.png"; var icon_qqmusic_default = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/audio/icon_qqmusic_default751543.png"; var icon_qqmusic_source = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/audio/icon_qqmusic_source751543.svg"; var icon_kugou_source = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/audio/icon_kugou_source751543.png";
var topic_default_img = '//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/pic/pic_book_thumb751543.png'; var comment_edit_icon = '//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/common/icon_edit751543.png'; var comment_loading_img = '//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/icon/common/icon_loading_white751543.gif'; var comment_c2c_not_support_img = '//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/pic/pic_discuss_more751543.png'; var line_info = { }; var can_feedback = '' * 1;
var yqj_info = { };
var frontend_exp_list = [ ]; var tts_is_ban = '' * 1 || 0; var tts_is_show = '' * 1 || 0; var tts_heard_person_cnt = '' * 1 || 0;
var can_use_star = '' * 1 || 0;;
var star_person_cnt = '' * 1 || 0;
var voice_in_appmsg = { }; var voiceList = {}; voiceList={"voice_in_appmsg":[]} var reprint_style = '' * 1; var reprint_type = '' * 1; var wxa_img_alert = "" != 'false';
var weapp_sn_arr_json = "" || "";
var videoPageInfos = [ ]; window.__videoPageInfos = videoPageInfos; if ([1, 2].indexOf('0' * 1) !== -1) { var pageInfoList = []; for(var i = 0; i 0) { currentSvrStyleType = parseInt(styleType); } else if (!isNaN(parseInt(canUseAutoTypeSetting))) { currentSvrStyleType = parseInt(canUseAutoTypeSetting); } else { currentSvrStyleType = 0; }
if (typeof WeixinJSBridge === 'undefined') { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', onWeixinJsBridgeReady, false); } else if (document.attachEvent) { document.attachEvent('WeixinJSBridgeReady', onWeixinJsBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onWeixinJsBridgeReady); } } else { onWeixinJsBridgeReady(); } }
var __INLINE_SCRIPT__ = (function () { 'use strict';
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var ua = navigator.userAgent; var is_ios = /(iPhone|iPad|iPod|iOS)/i.test(ua); var is_wp = /WindowssPhone/i.test(ua); var is_android = /(Android)/i.test(ua); var is_wechat = /MicroMessenger/([d.]+)/i.test(ua); var is_mac = /macsos/i.test(ua) && !is_ios; var is_windows = /windowssnt/i.test(ua) && !is_wp; var is_mpapp = /MPAPP/([d.]+)/i.test(ua); var is_ipad = /iPad/i.test(ua); var is_windows_wechat = /WindowsWechat/i.test(ua); var is_mac_wechat = /MacWechat/i.test(ua) || /wechat.*mac os/i.test(ua); var is_prefetch = is_wechat && window.WeixinPrefecherJSBridge; var is_donut_app = /SAAASDK/i.test(ua); var is_harmony = /OpenHarmony|ArkWeb/i.test(ua); var is_in_miniProgram = is_android && /miniprogram/.test(ua.toLowerCase()) || window.__wxjs_environment == 'miniprogram'; var is_wx_work = /wxwork/i.test(ua); function getUrlParams() { var vars = location.search.substring(1).split('&'); var params = {}; var _iterator = _createForOfIteratorHelper(vars), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var ele = _step.value; var pair = ele.split('='); var key = decodeURIComponent(pair[0]); if (typeof params[key] === 'undefined') { params[key] = decodeURIComponent(pair[1]); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } return params; } function get() { var reg = /MicroMessenger/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMac() { var reg = /MacWechat/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMacOS() { var reg = /Mac OS X ([d_]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1].replace(/_/g, '.'); } return false; } function getWindows() { var reg = /WindowsWechat(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getWxWork() { var reg = /wxwork/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMpApp() { var appVersion = [2, 4, 5]; var match = navigator.userAgent.match(/MPAPP/(d+(.d+)*)/); if (match) { appVersion = match[1].split('.').map(function (v) { return Number(v); }); } return appVersion.join('.'); } function getUnifiedPcVer() { var versionInfo = navigator.userAgent.match(/UnifiedPCw+Wechat(0xfw{2}(w+?)w{2})/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(0, 1)); var subVersion = getVersionNumber(version.slice(1, 2)); var subVersion2 = getVersionNumber(version.slice(2, 3)); return [mainVersion, subVersion, subVersion2].join('.'); } } function getVersionNumber(hexStr) { return Number(Number("0x".concat(hexStr)).toString(10)); } function getWindowsVersionFormat() { var versionInfo = navigator.userAgent.match(/WindowsWechat(0x(w+?))/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(1, 2)); var subVersion = getVersionNumber(version.slice(2, 4)); var subVersion2 = getVersionNumber(version.slice(4, 6)); return [mainVersion, subVersion, subVersion2].join('.'); } return false; } function getInner() { var reg = /MicroMessenger/[d.]+(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1] && ret[1] != null) { return ret[1]; } if (!ret && /MicroMessenger/[d.]+/i.test(ua)) { var urlParams = getUrlParams(); if (urlParams.version) { return urlParams.version; } } return false; } var opfunc = { 'cp-1': function cp1(a, b) { return a b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) <= 79) { is_google_play = true; } } ({ get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app });
if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; }
var doc = {}; try { doc = top.window.document; } catch (e) { } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } var setImmersiveMode = function setImmersiveMode(itemShowType) { var envStr = window.__wxWebEnv && typeof window.__wxWebEnv.getEnv === 'function' && window.__wxWebEnv.getEnv(); if (!envStr) return; var envObj = {}; if (!envStr) return; try { envObj = JSON.parse(envStr); } catch (err) { console.info(err); } var immersiveListMode = envObj.immersiveListMode || 0; window.__immersiveListMode = Number(immersiveListMode) === 1 ? 1 : 0; window.__test_immersive_list = 0; if (window.__test_immersive_list) { window.__immersiveListMode = 1; } var wxExpandArticleEle = document.getElementById('wx_expand_article'); document.getElementById('js_article'); var bottomLoadingTip = document.getElementById('js_network_msg_wrp'); if (!itemShowType && itemShowType !== 0) { itemShowType = window.item_show_type; } itemShowType = Number(itemShowType);
if (window.__immersiveListMode) { try { var immersiveSafeBottom = localStorage.getItem('__immersivefeed_safe_bottom__'); if (immersiveSafeBottom) { document.documentElement.style.setProperty('--immersive-safe-bottom', immersiveSafeBottom); } } catch (error) { console.log(error); } if (wxExpandArticleEle) { wxExpandArticleEle.style.display = 'block'; } if (bottomLoadingTip) { bottomLoadingTip.style.display = 'none'; } if (itemShowType === 10 || itemShowType === 7) { document.body.classList.add('ellapse_short_content'); } else { document.body.classList.add('ellapse_stream_article'); } if (itemShowType === 0) { document.body.classList.add('article_extensive_background'); } else { document.body.classList.add('media_content_extensive_background'); } var interactionPlaceholderEle = document.getElementById('js_interaction_placeholder'); if (interactionPlaceholderEle) { interactionPlaceholderEle.style.display = 'block'; } } }; if (!window.__second_open__) { setImmersiveMode(); }
function _typeof(obj) { "@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var ua = navigator.userAgent; var is_ios = /(iPhone|iPad|iPod|iOS)/i.test(ua); var is_wp = /WindowssPhone/i.test(ua); var is_android = /(Android)/i.test(ua); var is_wechat = /MicroMessenger/([d.]+)/i.test(ua); var is_mac = /macsos/i.test(ua) && !is_ios; var is_windows = /windowssnt/i.test(ua) && !is_wp; var is_mpapp = /MPAPP/([d.]+)/i.test(ua); var is_ipad = /iPad/i.test(ua); var is_windows_wechat = /WindowsWechat/i.test(ua); var is_mac_wechat = /MacWechat/i.test(ua) || /wechat.*mac os/i.test(ua); var is_prefetch = is_wechat && window.WeixinPrefecherJSBridge; var is_donut_app = /SAAASDK/i.test(ua); var is_harmony = /OpenHarmony|ArkWeb/i.test(ua); var is_in_miniProgram = is_android && /miniprogram/.test(ua.toLowerCase()) || window.__wxjs_environment == 'miniprogram'; var is_wx_work = /wxwork/i.test(ua); function getUrlParams() { var vars = location.search.substring(1).split('&'); var params = {}; var _iterator = _createForOfIteratorHelper(vars), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var ele = _step.value; var pair = ele.split('='); var key = decodeURIComponent(pair[0]); if (typeof params[key] === 'undefined') { params[key] = decodeURIComponent(pair[1]); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } return params; } function get() { var reg = /MicroMessenger/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMac() { var reg = /MacWechat/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMacOS() { var reg = /Mac OS X ([d_]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1].replace(/_/g, '.'); } return false; } function getWindows() { var reg = /WindowsWechat(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getWxWork() { var reg = /wxwork/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMpApp() { var appVersion = [2, 4, 5]; var match = navigator.userAgent.match(/MPAPP/(d+(.d+)*)/); if (match) { appVersion = match[1].split('.').map(function (v) { return Number(v); }); } return appVersion.join('.'); } function getUnifiedPcVer() { var versionInfo = navigator.userAgent.match(/UnifiedPCw+Wechat(0xfw{2}(w+?)w{2})/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(0, 1)); var subVersion = getVersionNumber(version.slice(1, 2)); var subVersion2 = getVersionNumber(version.slice(2, 3)); return [mainVersion, subVersion, subVersion2].join('.'); } } function getVersionNumber(hexStr) { return Number(Number("0x".concat(hexStr)).toString(10)); } function getWindowsVersionFormat() { var versionInfo = navigator.userAgent.match(/WindowsWechat(0x(w+?))/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(1, 2)); var subVersion = getVersionNumber(version.slice(2, 4)); var subVersion2 = getVersionNumber(version.slice(4, 6)); return [mainVersion, subVersion, subVersion2].join('.'); } return false; } function getInner() { var reg = /MicroMessenger/[d.]+(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1] && ret[1] != null) { return ret[1]; } if (!ret && /MicroMessenger/[d.]+/i.test(ua)) { var urlParams = getUrlParams(); if (urlParams.version) { return urlParams.version; } } return false; } var opfunc = { 'cp-1': function cp1(a, b) { return a b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) <= 79) { is_google_play = true; } } ({ get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app });
if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; }
var doc = {}; var isAcrossOrigin = false; var __moon_report = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc = top.window.document; } catch (e) { isAcrossOrigin = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc.addEventListener) { doc.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc.attachEvent) { doc.attachEvent('WeixinJSBridgeReady', bridgeReady); doc.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } function invoke(methodName, args, callback) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { invoke(methodName, args, callback); }); return; } ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); }); } function call(methodName) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { call(methodName); }); return; } ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); } function on(eventName, callback) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { on(eventName, callback); }); return; } ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove };
function initBodyStyle() { window.scrollTo({ top: 0, behavior: 'smooth' }); setTimeout(function () { document.body.scrollTop = document.documentElement.scrollTop = 0; document.body.style.overflow = 'hidden'; }, 100); } var setRowImmersiveMode = function setRowImmersiveMode(itemShowType) { var envStr = window.__wxWebEnv && typeof window.__wxWebEnv.getEnv === 'function' && window.__wxWebEnv.getEnv(); if (!envStr) return; var envObj = {}; try { envObj = JSON.parse(envStr); } catch (err) { console.info(err); } var immersiveListMode = envObj.immersiveListMode || 0; window.__immersiveListMode = Number(immersiveListMode) === 1 ? 1 : 0; window.__rowImmersiveStream = Number(immersiveListMode) === 2 ? 1 : 0; console.log("iiiiiiimmersiveListMode", immersiveListMode, window.__immersiveListMode, window.__rowImmersiveStream); window.__test_row_immersive_list = 0; if (window.__test_row_immersive_list) { window.__rowImmersiveStream = 1; } if (window.__rowImmersiveStream) { initBodyStyle(); var rowImmersiveStreamWrap = document.getElementById('js_row_immersive_stream_wrap'); if (rowImmersiveStreamWrap) { rowImmersiveStreamWrap.style.display = 'block'; } var bottomBar = document.getElementById('js_article_bottom_bar'); if (bottomBar) { bottomBar.classList.add('row_immersive_bottom_bar'); } var immersiveStreamMask = document.getElementById('js_row_immersive_stream_mask'); var enterBigWebview = function enterBigWebview() { immersiveStreamMask.style.display = 'none'; document.body.style.overflow = 'auto'; if (bottomBar) { bottomBar.classList.add('row_immersive_bigview_bottom_bar'); } }; var exitBigWebview = function exitBigWebview() { initBodyStyle(); immersiveStreamMask.style.display = 'block'; if (bottomBar) { bottomBar.classList.remove('row_immersive_bigview_bottom_bar'); } }; immersiveStreamMask.addEventListener('click', function (e) { e.preventDefault(); e.stopPropagation(); JSAPI.invoke('handleImmersiveStream', { action: 'enterFullArticle', params: { enterTime: Date.now() } }, function (res) { console.log("[immersive] handleImmersiveStream:", res); if (res && res.err_msg && res.err_msg.includes('ok')) { enterBigWebview(); } if (window.__test_row_immersive_list) { setTimeout(function () { console.log("xxxxx ok"); enterBigWebview(); }, 2000); } }); }); JSAPI.on('immersiveStreamExposeArticle', function (res) { console.log("[immersive] immersiveStreamExposeArticle", res); }); JSAPI.on('immersiveStreamExitFullArticle', function (res) { console.log("[immersive] immersiveStreamExitFullArticle", res); exitBigWebview(); }); JSAPI.on('immersiveStreamEnterFullArticle', function (res) { console.log("[immersive] immersiveStreamEnterFullArticle", res); enterBigWebview(); }); JSAPI.on('immersiveStreamSlideOutArticle', function (res) { console.log("[immersive] immersiveStreamSlideOutArticle", res); exitBigWebview(); }); } }; if (!window.__second_open__) { setRowImmersiveMode(); }
function _typeof(obj) { "@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$1(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var ua = navigator.userAgent; var is_ios = /(iPhone|iPad|iPod|iOS)/i.test(ua); var is_wp = /WindowssPhone/i.test(ua); var is_android = /(Android)/i.test(ua); var is_wechat = /MicroMessenger/([d.]+)/i.test(ua); var is_mac = /macsos/i.test(ua) && !is_ios; var is_windows = /windowssnt/i.test(ua) && !is_wp; var is_mpapp = /MPAPP/([d.]+)/i.test(ua); var is_ipad = /iPad/i.test(ua); var is_windows_wechat = /WindowsWechat/i.test(ua); var is_mac_wechat = /MacWechat/i.test(ua) || /wechat.*mac os/i.test(ua); var is_prefetch = is_wechat && window.WeixinPrefecherJSBridge; var is_donut_app = /SAAASDK/i.test(ua); var is_harmony = /OpenHarmony|ArkWeb/i.test(ua); var is_in_miniProgram = is_android && /miniprogram/.test(ua.toLowerCase()) || window.__wxjs_environment == 'miniprogram'; var is_wx_work = /wxwork/i.test(ua); function getUrlParams() { var vars = location.search.substring(1).split('&'); var params = {}; var _iterator = _createForOfIteratorHelper(vars), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var ele = _step.value; var pair = ele.split('='); var key = decodeURIComponent(pair[0]); if (typeof params[key] === 'undefined') { params[key] = decodeURIComponent(pair[1]); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } return params; } function get() { var reg = /MicroMessenger/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMac() { var reg = /MacWechat/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMacOS() { var reg = /Mac OS X ([d_]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1].replace(/_/g, '.'); } return false; } function getWindows() { var reg = /WindowsWechat(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getWxWork() { var reg = /wxwork/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMpApp() { var appVersion = [2, 4, 5]; var match = navigator.userAgent.match(/MPAPP/(d+(.d+)*)/); if (match) { appVersion = match[1].split('.').map(function (v) { return Number(v); }); } return appVersion.join('.'); } function getUnifiedPcVer() { var versionInfo = navigator.userAgent.match(/UnifiedPCw+Wechat(0xfw{2}(w+?)w{2})/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(0, 1)); var subVersion = getVersionNumber(version.slice(1, 2)); var subVersion2 = getVersionNumber(version.slice(2, 3)); return [mainVersion, subVersion, subVersion2].join('.'); } } function getVersionNumber(hexStr) { return Number(Number("0x".concat(hexStr)).toString(10)); } function getWindowsVersionFormat() { var versionInfo = navigator.userAgent.match(/WindowsWechat(0x(w+?))/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(1, 2)); var subVersion = getVersionNumber(version.slice(2, 4)); var subVersion2 = getVersionNumber(version.slice(4, 6)); return [mainVersion, subVersion, subVersion2].join('.'); } return false; } function getInner$1() { var reg = /MicroMessenger/[d.]+(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1] && ret[1] != null) { return ret[1]; } if (!ret && /MicroMessenger/[d.]+/i.test(ua)) { var urlParams = getUrlParams(); if (urlParams.version) { return urlParams.version; } } return false; } var opfunc = { 'cp-1': function cp1(a, b) { return a b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) ".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); }
var doc$1 = {}; var isAcrossOrigin$1 = false; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } function invoke(methodName, args, callback) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { invoke(methodName, args, callback); }); return; } ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); }); } function call(methodName) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { call(methodName); }); return; } ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); } function on(eventName, callback) { if (window.__second_open_wait_a8key__ && window.__second_open_wait_a8key_task__) { window.__second_open_wait_a8key_task__.push(function () { on(eventName, callback); }); return; } ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove };
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var ua = navigator.userAgent; var is_ios = /(iPhone|iPad|iPod|iOS)/i.test(ua); var is_wp = /WindowssPhone/i.test(ua); var is_android = /(Android)/i.test(ua); var is_wechat = /MicroMessenger/([d.]+)/i.test(ua); var is_mac = /macsos/i.test(ua) && !is_ios; var is_windows = /windowssnt/i.test(ua) && !is_wp; var is_mpapp = /MPAPP/([d.]+)/i.test(ua); var is_ipad = /iPad/i.test(ua); var is_windows_wechat = /WindowsWechat/i.test(ua); var is_mac_wechat = /MacWechat/i.test(ua) || /wechat.*mac os/i.test(ua); var is_prefetch = is_wechat && window.WeixinPrefecherJSBridge; var is_donut_app = /SAAASDK/i.test(ua); var is_harmony = /OpenHarmony|ArkWeb/i.test(ua); var is_in_miniProgram = is_android && /miniprogram/.test(ua.toLowerCase()) || window.__wxjs_environment == 'miniprogram'; var is_wx_work = /wxwork/i.test(ua); function getUrlParams() { var vars = location.search.substring(1).split('&'); var params = {}; var _iterator = _createForOfIteratorHelper(vars), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var ele = _step.value; var pair = ele.split('='); var key = decodeURIComponent(pair[0]); if (typeof params[key] === 'undefined') { params[key] = decodeURIComponent(pair[1]); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } return params; } function get() { var reg = /MicroMessenger/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMac() { var reg = /MacWechat/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMacOS() { var reg = /Mac OS X ([d_]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1].replace(/_/g, '.'); } return false; } function getWindows() { var reg = /WindowsWechat(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getWxWork() { var reg = /wxwork/([d.]+)/i; var ret = ua.match(reg); if (ret && ret[1]) { return ret[1]; } return false; } function getMpApp() { var appVersion = [2, 4, 5]; var match = navigator.userAgent.match(/MPAPP/(d+(.d+)*)/); if (match) { appVersion = match[1].split('.').map(function (v) { return Number(v); }); } return appVersion.join('.'); } function getUnifiedPcVer() { var versionInfo = navigator.userAgent.match(/UnifiedPCw+Wechat(0xfw{2}(w+?)w{2})/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(0, 1)); var subVersion = getVersionNumber(version.slice(1, 2)); var subVersion2 = getVersionNumber(version.slice(2, 3)); return [mainVersion, subVersion, subVersion2].join('.'); } } function getVersionNumber(hexStr) { return Number(Number("0x".concat(hexStr)).toString(10)); } function getWindowsVersionFormat() { var versionInfo = navigator.userAgent.match(/WindowsWechat(0x(w+?))/); if (versionInfo && versionInfo.length === 2) { var version = versionInfo[1]; var mainVersion = getVersionNumber(version.slice(1, 2)); var subVersion = getVersionNumber(version.slice(2, 4)); var subVersion2 = getVersionNumber(version.slice(4, 6)); return [mainVersion, subVersion, subVersion2].join('.'); } return false; } function getInner() { var reg = /MicroMessenger/[d.]+(0x(.+?))/i; var ret = ua.match(reg); if (ret && ret[1] && ret[1] != null) { return ret[1]; } if (!ret && /MicroMessenger/[d.]+/i.test(ua)) { var urlParams = getUrlParams(); if (urlParams.version) { return urlParams.version; } } return false; } var opfunc = { 'cp-1': function cp1(a, b) { return a b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) <= 79) { is_google_play = true; } } var mmversion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app };
function _typeof(obj) { "@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
var prefix = '__WXLS__'; var localStorage$1 = window.localStorage || { getItem: function getItem() {}, setItem: function setItem() {}, removeItem: function removeItem() {}, key: function key() {}, clear: function clear() { var _a, _b; (_b = (_a = window.localStorage) === null || _a === void 0 ? void 0 : _a.clear) === null || _b === void 0 ? void 0 : _b.call(_a); }, length: 0 }; var evictionPolicies = { noeviction: function noeviction(data) { return data; }, 'allkeys-random': function allkeysRandom(data, size) { var keys = Object.keys(data); var memCnt = 0; while (memCnt < size) { var len = keys.length; var randomKeyIdx = Math.floor(Math.random() * len); var randomKey = keys[randomKeyIdx]; memCnt += JSON.stringify(data[randomKey]).length; delete data[randomKey]; keys = Object.keys(data); } return data; }, 'volatile-ttl': function volatileTtl(data, size) { var keys = Object.keys(data); keys = keys.sort(function (key1, key2) { var d1 = data[key1]; var d2 = data[key2]; if (d1.exp d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage$1.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); }
var key = 'stream_last_read_pos'; new LS(key); var interactionStatusLS = new LS('bottom_interaction_status'); function getInteractionStatus(opt) { var biz = opt.biz || window.biz; var sn = opt.sn || window.sn; var mid = opt.mid || window.mid; var idx = opt.idx || window.idx; var interactionStatusKey = [biz, sn, mid, idx].join('_'); var interactionStatusInfo = interactionStatusLS.get(interactionStatusKey); if (Object.prototype.toString.call(interactionStatusInfo) !== '[object Object]') { interactionStatusInfo = {}; } return interactionStatusInfo; }
var __setBarData = function __setBarData(appmsgBarData, cgiData) { if (!appmsgBarData) { return; } function formatReadNum(value) { var unit = '万'; if (window.LANG === 'en') { unit = 'k'; } var result = ''; if (parseInt(value, 10) > 100000) { result = 10 + unit + '+'; } else if (parseInt(value, 10) > 10000 && parseInt(value, 10) <= 100000) { var num = '' + parseInt(value, 10) / 10000; var dotIndex = num.indexOf('.'); if (dotIndex === -1) { result = num + unit; } else { result = num.substr(0, dotIndex) + '.' + num.charAt(dotIndex + 1) + unit; } } else if (parseInt(value, 10) === 0) { result = ''; } else { result = value || ''; } return result; } try { var bottomBarSafeBottomKey = '__bottom_bar_safe_bottom__'; var bottomBarSafeBottom = localStorage.getItem(bottomBarSafeBottomKey); if (bottomBarSafeBottom) { document.documentElement.style.setProperty('--immersive-safe-bottom', bottomBarSafeBottom); } var barOldlikeBtn = document.getElementById('js_bar_oldlike_btn'); var barShareBtn = document.getElementById('js_bar_share_btn'); var barLikeBtn = document.getElementById('js_bar_like_btn'); var barCommentBtn = document.getElementById('js_bar_comment_btn'); var barCollectBtn = document.getElementById('js_bar_collect_btn'); var barSubscribeBtn = document.getElementById('js_bar_subscribe_btn'); var oldLikeEl = barOldlikeBtn && barOldlikeBtn.parentElement; var likeEl = barLikeBtn && barLikeBtn.parentElement; var interactionStatus = getInteractionStatus({ biz: cgiData.biz, mid: cgiData.mid, sn: cgiData.sn, idx: cgiData.idx }); if (interactionStatus.is_my_old_like) { oldLikeEl && oldLikeEl.classList.add('praised'); } if (interactionStatus.is_my_like) { likeEl && (appmsgBarData.show_friend_seen === 2 ? likeEl.classList.add('love_btn_loved') : likeEl.classList.add('like_btn_liked')); } var old_like_count = interactionStatus.old_like_count * 1 ? Math.max(interactionStatus.old_like_count * 1, appmsgBarData.old_like_count) : appmsgBarData.old_like_count || 0; var share_count = interactionStatus.share_count * 1 ? Math.max(interactionStatus.share_count * 1, appmsgBarData.share_count) : appmsgBarData.share_count || 0; var like_count = interactionStatus.like_count * 1 ? Math.max(interactionStatus.like_count * 1, appmsgBarData.like_count) : appmsgBarData.like_count || 0; var comment_count = appmsgBarData.comment_count || 0; var collect_count = appmsgBarData.collect_count || 0; if (old_like_count && barOldlikeBtn) { barOldlikeBtn.innerText = formatReadNum(old_like_count); } if (share_count && barShareBtn) { barShareBtn.innerText = formatReadNum(share_count); } if (like_count && barLikeBtn) { barLikeBtn.innerText = formatReadNum(like_count); } if (comment_count && barCommentBtn) { barCommentBtn.innerText = formatReadNum(comment_count); } if (collect_count && barCollectBtn) { barCollectBtn.innerText = formatReadNum(collect_count); } if (mmversion.isInMiniProgram) { if (barShareBtn) { barShareBtn.style.display = 'none'; } if (barLikeBtn) { barLikeBtn.style.display = 'none'; } }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _typeof(obj) { "@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } function DomFilter (cgiOptData) { return function (Plugin) { var isMMVersionSetted = false; var contentDom = document.getElementById('js_content'); var classWhiteList = contentStyle.classWhiteList, classWhiteListReg = contentStyle.classWhiteListReg; var removeClassByWhiteList = function removeClassByWhiteList(node) { var classAttr = node.getAttribute('class'); if (classAttr) { var classList = classAttr.split(/s+/); var newClassList = []; for (var i = 0, len = classList.length; i < len; ++i) { var className = classList[i]; if (className && classWhiteList.indexOf(className) != -1) { newClassList.push(className); } else { for (var j = 0, jl = classWhiteListReg.length; j < jl; j++) { if (classWhiteListReg[j].test(className)) { newClassList.push(className); break; } } } } node.setAttribute('class', newClassList.join(' ')); } }; var langBlackList = ['zh-cn', 'en-us']; var removeLangByBlackList = function removeLangByBlackList(node) { var langAttr = node.getAttribute('lang'); if (langAttr) { var lang = langAttr.toLowerCase(); for (var i = 0; i '10') { if (el.getAttribute('begin') !== 'click' && el.getAttribute('end') !== 'click') { el.setAttribute('repeatCount', 'undefined'); el.setAttribute('attributeName', 'undefined'); new Image().src = 'https://mp.weixin.qq.com/mp/jsmonitor?idkey=306525_1_1'; } } } if (el.tagName === 'OL') {
function _typeof(obj) { "@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray$1(arr); }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
})({});var __INLINE_SCRIPT__ = (function (exports) { 'use strict'; function setProfileName() { var ua = window.navigator.userAgent; if (/wxwork/i.test(ua)) { var profileName = document.getElementById('js_name'); var authorName = document.getElementById('js_author_name'); var accountNames = document.getElementsByClassName('account_nickname_inner'); if (profileName) { profileName.classList.add('tips_global_primary'); } if (authorName) { authorName.classList.add('tips_global_primary'); } if (accountNames && accountNames.length) { accountNames[0].classList.add('tips_global_primary'); } } } if (!window.__second_open__) { setProfileName(); }
function _typeof(obj) { "@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
var prefix = '__WXLS__'; var localStorage = window.localStorage || { getItem: function getItem() {}, setItem: function setItem() {}, removeItem: function removeItem() {}, key: function key() {}, clear: function clear() { var _a, _b; (_b = (_a = window.localStorage) === null || _a === void 0 ? void 0 : _a.clear) === null || _b === void 0 ? void 0 : _b.call(_a); }, length: 0 }; var evictionPolicies = { noeviction: function noeviction(data) { return data; }, 'allkeys-random': function allkeysRandom(data, size) { var keys = Object.keys(data); var memCnt = 0; while (memCnt < size) { var len = keys.length; var randomKeyIdx = Math.floor(Math.random() * len); var randomKey = keys[randomKeyIdx]; memCnt += JSON.stringify(data[randomKey]).length; delete data[randomKey]; keys = Object.keys(data); } return data; }, 'volatile-ttl': function volatileTtl(data, size) { var keys = Object.keys(data); keys = keys.sort(function (key1, key2) { var d1 = data[key1]; var d2 = data[key2]; if (d1.exp d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); }
var key = 'stream_last_read_pos'; new LS(key); var interactionStatusLS = new LS('bottom_interaction_status'); function getInteractionStatus(opt) { var biz = opt.biz || window.biz; var sn = opt.sn || window.sn; var mid = opt.mid || window.mid; var idx = opt.idx || window.idx; var interactionStatusKey = [biz, sn, mid, idx].join('_'); var interactionStatusInfo = interactionStatusLS.get(interactionStatusKey); if (Object.prototype.toString.call(interactionStatusInfo) !== '[object Object]') { interactionStatusInfo = {}; } return interactionStatusInfo; }
var formatReadNum = function formatReadNum(value) { var result = ''; var unit = window.LANG === 'en' ? 'k' : '万'; if (parseInt(value, 10) > 100000) { result = 10 + unit + '+'; } else if (parseInt(value, 10) > 10000 && parseInt(value, 10) 9 ? month : '0' + month) + '月' + "".concat(day > 9 ? day : '0' + day) + '日'; }; var __setPageContentBottomData = function __setPageContentBottomData(cgiData) { if (!cgiData) return; try { var tempReadNum = document.getElementById('js_btm_temp_read_num'); var tempModifyTime = document.getElementById('js_btm_temp_modify_time'); var interactionStatus = getInteractionStatus({ biz: cgiData.biz, mid: cgiData.mid, sn: cgiData.sn, idx: cgiData.idx }); var readNum = interactionStatus.read_num * 1 ? Math.max(interactionStatus.read_num * 1, cgiData.read_num) : cgiData.read_num || 0; if (readNum && tempReadNum) { tempReadNum.innerText = formatReadNum(readNum); } if (cgiData.modify_time && tempModifyTime) { tempModifyTime.innerText = formatTime(cgiData.modify_time); } } catch (error) { console.log(error); } }; if (!window.__second_open__) { var cgiData = { modify_time: '' * 1, read_num: '' * 1, idx: '1' , biz: 'MzkxNTU3MzUyMg==' , mid: '2247490975' , sn: 'bfe4925b5b0995fe3a794591fcd87f5b' }; __setPageContentBottomData(cgiData); window.__setPageContentBottomData = __setPageContentBottomData; }