!function(){"use strict";var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},e(t,r)};function t(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}var r=function(){return r=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=3)return t[2]}catch(e){ke(e)}};function Ge(e){return!e||!He(e)}var De,Ue=function(e){if(!e)return m;try{var t=e;if("string"==typeof e&&"querySelector"in document&&(t=document.querySelector(e)),t&&t instanceof HTMLElement){var r=t.innerText||t.textContent;if(!r&&t instanceof HTMLInputElement&&(r=t.value),r)return n=r.trim(),void 0===i&&(i=50),i<4&&(i=4),n.length>i?n.substr(0,i-3)+"...":n}}catch(e){ke(e)}var n,i;return m},Ke=function(e){if(""!==e.id)return'//*[@id="'+e.id+'"]';if(e===document.body)return"/HTML/BODY";for(var t=0,r=e.parentNode.childNodes,n=0;n0?2===o.length?typeof o[1]==$e?this[o[0]]=o[1].call(this,s):this[o[0]]=o[1]:3===o.length?typeof o[1]!==$e||o[1].exec&&o[1].test?this[o[0]]=s?s.replace(o[1],o[2]):void 0:this[o[0]]=s?o[1].call(this,s,o[2]):void 0:4===o.length&&(this[o[0]]=s?o[3].call(this,s.replace(o[1],o[2])):void 0):this[o]=s||void 0;c+=2}},Lt=function(e,t){for(var r in t)if(typeof t[r]===Ze&&t[r].length>0){for(var n=0;n255?Ht(e,255):e,this},this.setUA(r),this};Bt.VERSION="1.0.2",Bt.BROWSER=Et([rt,ot,"major"]),Bt.CPU=Et([at]),Bt.DEVICE=Et([tt,it,nt,st,ct,ut,pt,lt,dt]),Bt.ENGINE=Bt.OS=Et([rt,ot]);var Gt,Dt=function(){function e(e){this.metadata=function(e){var t=window.localStorage.getItem(o),r=window.localStorage.getItem(a),n=window.sessionStorage.getItem(s);r||(t?(r=t,window.localStorage.removeItem(o)):r=Ye(),window.localStorage.setItem(a,r)),n||(n=Ye(),window.sessionStorage.setItem(s,n));var i={browser:{name:m,version:m},os:{name:m,version:m},device:{type:m,vendor:m,model:m},engine:{name:m}};try{i=new Bt(e).getResult()}catch(e){ke(e)}var c=(i.browser.version||m).split("."),p=c.length>1?c[0]+"."+c[1]:c[0],u={browserType:i.browser.name||m,browserVersion:p,browserFullVersion:i.browser.version||m,osType:i.os.name||m,osVersion:i.os.version||m,deviceType:!i.device.type||i.device.type!==ae&&i.device.type!==se?oe:i.device.type,deviceVendor:i.device.vendor||m,deviceModel:i.device.model||m,engine:i.engine.name||m,language:window.navigator.browserLanguage||window.navigator.language||m,networkType:m,resolution:m,userAgent:e,deviceId:r,sessionId:n,appKey:"",appName:"",appVersion:"",agentVersion:""},l=window.devicePixelRatio||1,d=window.screen.width,h=window.screen.height;return u.resolution=u.deviceType===oe?d.toFixed(0)+"*"+h.toFixed(0):(d*l).toFixed(0)+"*"+(h*l).toFixed(0),u}(window.navigator.userAgent),this.configCenter=e}return e.initBrowserMetadataCache=function(t){return this.instance||(this.instance=new e(t)),this.instance},e.prototype.getMetadata=function(){var e=window.navigator.connection;e&&e.effectiveType&&(this.metadata.networkType=e.effectiveType);var t=this.configCenter.agentConfig,n=t.appKey,i=t.appVersion,o=t.agentVersion;return this.metadata=r(r({},this.metadata),{appKey:n,appVersion:i,agentVersion:o,appName:this.configCenter.appConfig.appName}),this.metadata},e}(),Ut=function(){function e(e){this.pageInfo={rootPageId:void 0,parentPageId:void 0,pageId:void 0,pageUrl:void 0,pageType:void 0,pageName:void 0,timestamp:void 0,sourcePageUrl:void 0},this.pageTransactions={},this.configCenter=e,this.refreshPageInfo(D)}return e.initPageInfoCache=function(t){return this.instance||(this.instance=new e(t)),this.instance},e.prototype.getPageInfo=function(){return this.pageInfo.pageName=window.document.title,r({},this.pageInfo)},e.prototype.getPageTransactions=function(){return this.pageTransactions},e.prototype.refreshPageInfo=function(e){void 0===e&&(e=U),this.pageInfo={rootPageId:"",parentPageId:"",pageId:Ye(),pageUrl:window.location.href,pageType:e,pageName:window.document.title,timestamp:(new Date).getTime(),sourcePageUrl:document.referrer},this.pageTransactions={};try{var t=this.configCenter.agentConfig.primaryInfoTrackOpts.filter((function(e){return e.trackPos===ve})),r=this.configCenter.agentConfig.primaryInfoTrackOpts.filter((function(e){return e.trackPos===me}));if(t.length)for(var n=Fe(this.pageInfo.pageUrl),i=0,o=t;i0?ze(l.substr(d+1)):{});for(var a=0,s=r;a0){for(var e=[],t=0,r=this.agentConfig.traceForbiddenOrigins;t":"string"==typeof n.message?(e.message=r+n.message,e.stacktrace=n.stack?n.stack:null):"object"!=typeof n&&(e.message=r+n),e},n.prototype.processJSError=function(e,t){var r=t.message,n=t.error,i="",o="";return n&&(i=n.name,o=n.stack),i||r&&(i=r.split(":")[0]),e.errorUrl=t.filename||e.errorUrl,e.errorSourceType="javascript",e.errorSourceSubType="javascript",e.message=r,e.errorType=i||"Script error",e.stacktrace=o,e.lineno=t.lineno,e.colno=t.colno,e},n.prototype.processResourceLoadError=function(e,t){var r=t.target;if(r&&r!==window){var n=void 0;if(r.src&&"string"==typeof r.src&&0===r.src.indexOf("http")?n=r.src:r.href&&"string"==typeof r.href&&0===r.href.indexOf("http")&&(n=r.href),!n)return;return e.errorUrl=n,e.errorSourceType="resource",e.errorSourceSubType="resource",e.errorType="Resource load error.",e.message="Load "+e.errorUrl+" failed.",e}},n}(Vt),Jt=function(e){function n(){var t=e.call(this,O,Yt,Xt)||this;return t.paintRecord={},t}return t(n,e),n.prototype.addCollectHook=function(e){this.observePaint(),this.processPagePerformanceData(),this.hookStateAPI()},n.prototype.removeCollectHook=function(){},n.prototype.handleCollectEvent=function(e){var t,n;return e.pageInfo.pageType===D&&(e.timestamp=window.performance.timing.navigationStart,this.supplyLoadMetric(e)),e.transactions=r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions()),window.performance.memory&&(e.maxHeap=window.performance.memory.jsHeapSizeLimit,e.totalHeap=window.performance.memory.totalJSHeapSize,e.usedHeap=window.performance.memory.usedJSHeapSize),e},n.prototype.supplyLoadMetric=function(e){this.paintRecord&&(this.paintRecord.fp&&(e.firstPaint=this.paintRecord.fp-e.timestamp),this.paintRecord.fcp&&(e.firstContentfulPaint=this.paintRecord.fcp-e.timestamp),this.paintRecord.fmp&&(e.firstMeaningfulPaint=this.paintRecord.fmp-e.timestamp),this.paintRecord={});var t=window.performance.timing;if("getEntriesByType"in window.performance&&"function"==typeof window.performance.getEntriesByType&&"PerformanceNavigationTiming"in window){var r=window.performance.getEntriesByType($);r.length>0&&r[0]instanceof PerformanceNavigationTiming&&(t=r[0])}if(t instanceof PerformanceTiming){for(var n=0,i=te;n0&&(t.paintRecord.fcp||(t.paintRecord.fcp=i),o>r&&(t.paintRecord.fmp=i,r=o))}})),null===(e=this.mutationObserver)||void 0===e||e.observe(document,{attributes:!1,childList:!0,subtree:!0})}},n.prototype.removeObserver=function(){this.mutationObserver&&this.mutationObserver.disconnect(),this.mutationObserver=void 0},n}(Vt),Zt="undefined"!=typeof window;function er(e,t){void 0===t&&(t=window.location.href);try{var r=Ne(t),n=Ne(e);return r.origin===n.origin}catch(e){ke(e)}return!1}function tr(e){var t=Ne(e).origin,r=Kt.instance,n=r.agentConfig,i=(r.appConfig,r.authorityState,n.globalTrace),o=n.traceCrossOrigin,a=n.traceForbiddenOrigins;return!!i&&(!!er(t)||!!o&&!(a&&a.length>0&&Oe(a,t)>-1))}var rr=function(e){var t=[];try{if(Ge(e))return t;for(var r=He(e).split(","),n=0,i=r;n0?s-e.startTime:s)}for(var a in ie)o[a]=e[ie[a]];return o},n.prototype.handleResources=function(e){for(var t=this,r=0,n=window.performance.getEntriesByType("resource");r=2&&(e[f]=e[f]||{},e[f][r[0]]=r[1])}catch(e){ke(e)}return t.nativeXHRSetHeader.apply(e,r)}})),this.nativeXHRSend=cr(this.XMLHttpRequestPrototype,"send",(function(){return function(e,n){if(!e[h]&&!t.configCenter.isAuthStateFailed())try{t.initInstanceState(e);var i=t.initReportMetric(e);t.prepareRequestHeaders(e,i),t.addEventListeners(r,e),t.collectRequestTrans(e,i,n[0])}catch(e){ke(e)}return t.nativeXHRSend.apply(e,n)}}))},i.prototype.removeCollectHook=function(){this.collectXHRData=!1},i.prototype.handleCollectEvent=function(e){return e},i.prototype.initInstanceState=function(e){e.__wg_xhr_reported__=!1,e[pr]=this.requestLocalCache.historyHandleDone,e.__wg_xhr_metric__=void 0},i.prototype.initReportMetric=function(e){var t,n,i,o=e.__wg_xhr_args__,a=o[0],s=o[1],c=o[2],p=Ne(s),u={timestamp:(new Date).getTime(),requestId:Ye(),spanId:Ve(),requestUrl:p.href,requestType:"xhr",status:0,statusText:"",localCache:!1,method:(a||Q).toUpperCase(),requestAsync:!(!1===c),timeout:e.timeout,bodySize:0,transactions:r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions()),stacktrace:this.captureStackTrace(),requestStep:1,requestStart:0,networkElapse:-1,pageInfo:this.configCenter.pageInfoCache.getPageInfo(),operationId:null===(i=window.event)||void 0===i?void 0:i.__WGBP_opt_id__};return e.__wg_xhr_metric__=u,this.enableRequestLocalCache&&e[pr]&&this.requestLocalCache.insertOrUpdateData(u),u},i.prototype.captureStackTrace=function(){var e="";if("Error"in window&&"function"==typeof window.Error)try{throw new Error(v)}catch(r){var t=r.stack;t&&(e=n(["XMLHttpRequest"," at XMLHttpRequest.proto.send ([native code])"],t.split("\n").slice(4)).join("\n"))}return e},i.prototype.prepareRequestHeaders=function(e,t){var r;tr(t.requestUrl)&&t.requestId?(e.setRequestHeader(this.configCenter.agentConfig.traceHeadersPrefix+p,Qe(t.requestId,t.spanId,(null===(r=this.configCenter.transactionCache)||void 0===r?void 0:r.isTraceSample())?"1":"0")),e.setRequestHeader(this.configCenter.agentConfig.traceHeadersPrefix+u,"appKey="+this.configCenter.agentConfig.appKey),e[w]=!0):e[w]=!1},i.prototype.processServerTiming=function(e,t){if(e.getAllResponseHeaders&&"function"==typeof e.getAllResponseHeaders)try{var r=function(e){var t={};if(Ge(e))return t;for(var r=0,n=He(e).split(/[\r\n]+/);r>> "+window.location.href+"\n WebGate-Browser-Probe V"+t,!1),n(e)):(ke(e.message),i()):(ke("WebGate browser probe inject error, please check your config or network."),i())}};var s=Ee(Le.stringify([e,t]),!0);o.send(s)}catch(e){ke("WebGate browser probe inject error, cause: "+e.message),i()}}(t.appKey,t.agentVersion,t.serverAddr,(function(t){e.setAppConfig(t),e.updateAuthState(z)}),(function(){e.updateAuthState(F)}))}var Cr=window.WGBrowserProbe;Cr||(window.WGBrowserProbe=Cr={initFlag:!1,deviceSupport:!0,context:{},init:function(e){if(this.deviceSupport=!!(Zt&&window.performance&&window.performance.timing&&window.localStorage&&window.sessionStorage&&window.XMLHttpRequest),this.deviceSupport){if(this.initFlag)return void _e("WebGate browser probe has already been injected.");this.initFlag=!0,!function(e){return!(!e.appKey||!e.serverAddr||(null!==e.appVersion&&void 0!==e.appVersion&&(e.appVersion=He(e.appVersion),Boolean(e.appVersion)||(e.appVersion=m)),0))}(e)?ke("Init config valid fail, please check your config."):(Kt.startConfigCenter(e),br(),t=new zt,r=new Ft,jt.push(t),jt.push(r),Gt||(Gt=new Wt),function(){mr.push(new gr);for(var e=0,t=Kt.instance.agentConfig.collectItems;e200||e.indexOf(":")>=0||e.indexOf(";")>=0||t.length>200||t.indexOf(":")>=0||t.indexOf(";")>=0?ke("Tag key or value must be less than 200 characters and cannot contain ':' and ';'"):null===(r=Kt.instance.transactionCache)||void 0===r||r.addTransaction(e,t)):ke("Tag key or value can not be null!"):ke("Tag key or value must be string!"):_e("WebGate browser probe not init yet, please call init first."):_e("Current device is not support, please update your browser.")},removeTag:function(e,t){var r;this.deviceSupport?this.initFlag?"string"==typeof e&&""!==He(e)?(e=He(e),null==t||"string"==typeof t?("string"==typeof t&&(t=He(t)),null===(r=Kt.instance.transactionCache)||void 0===r||r.removeTransaction(e,t)):ke("Value must be one of null, undefined or string!")):ke("Tag key can not be null and must be string!"):_e("WebGate browser probe not init yet, please call init first."):_e("Current device is not support, please update your browser.")}})}();try{var WGBrowserProbe=window.WGBrowserProbe||window.WebGateRUM;WGBrowserProbe&&WGBrowserProbe.init({"appKey":"759c8ffa-28b1-404a-8b2b-cd63c6fd5d17","appVersion":"1.0.0","collectItems":["METADATA","HISTORY","REQUEST","RESOURCE","ERROR"],"serverAddr":"http://dachuang.cufe.edu.cn/wg-browser-collector","globalTrace":true,"traceCrossOrigin":false,"ajaxCache":false,"limitUserReport":false,"fixedSimpleUsers":[],"traceForbiddenOrigins":[],"autoTrackUser":"","userTrackKey":"","traceHeadersPrefix":"webgate-","primaryInfoTrackOpts":[]});}catch(e){}