Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@ued2345/octopus-util

Package Overview
Dependencies
Maintainers
3
Versions
25
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ued2345/octopus-util - npm Package Compare versions

Comparing version 1.1.6-5 to 1.1.6-6

src/monitor/catchPerformance.ts

2

dist/octopus-util.min.js

@@ -1,1 +0,1 @@

!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.OcUtil=t():e.OcUtil=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t,n){"use strict";t.__esModule=!0,t.default=function(){var e=navigator.userAgent;return{trident:e.indexOf("Trident")>-1,presto:e.indexOf("Presto")>-1,webKit:e.indexOf("AppleWebKit")>-1,gecko:e.indexOf("Gecko")>-1&&-1===e.indexOf("KHTML"),mobile:!!e.match(/AppleWebKit.*Mobile.*/)||e.indexOf("Mobile")>-1,ios:!!e.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),android:e.indexOf("Android")>-1||e.indexOf("Linux")>-1,iPhone:e.indexOf("iPhone")>-1,iPad:e.indexOf("iPad")>-1,webApp:-1===e.indexOf("Safari"),weixin:e.indexOf("MicroMessenger")>-1,qq:null!==e.match(/\sQQ/i)}}},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e,t,n){var r=new Date;r.setTime(r.getTime()+24*n*60*60*1e3);var o="expires="+r.toUTCString();document.cookie=e+"="+t+";path=/;;"+o}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var o=r(n(0)),i=r(n(3)),u=r(n(4)),c=r(n(6)),a=r(n(1)),s=r(n(7)),l=r(n(8)),f=r(n(11));e.exports.default=e.exports={getBrowser:o.default,getInApp:i.default,JsBridge:u.default,getCookie:c.default,setCookie:a.default,delCookie:s.default,VuePlugin:l.default,CatchError:f.default}},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){return!!(navigator.userAgent.indexOf(e)>-1)}},function(e,t,n){"use strict";var r,o=(r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),i=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var u=new(function(e){function t(){return e.call(this)||this}return o(t,e),t.prototype.callHandler=function(t,n){e.prototype.init.call(this,(function(e){e.callHandler("jsCallJavaAllInOne",t,n)}))},t.prototype.registerHandler=function(t,n){e.prototype.init.call(this,(function(e){e.registerHandler(t,n)}))},t}(i(n(5)).default));u.first(),t.default={callHandler:u.callHandler,registerHandler:u.registerHandler}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var o=r(n(0)).default(),i=function(){function e(){this.isIOS=o.ios}return e.prototype.init=function(e){if(this.isIOS){if(window.WebViewJavascriptBridge)return e(window.WebViewJavascriptBridge);if(window.WVJBCallbacks)return window.WVJBCallbacks.push(e);window.WVJBCallbacks=[e];var t=document.createElement("iframe");t.style.display="none",t.src="wvjbscheme://__BRIDGE_LOADED__",document.documentElement.appendChild(t),setTimeout((function(){document.documentElement.removeChild(t)}),0)}else window.WebViewJavascriptBridge?e(window.WebViewJavascriptBridge):document.addEventListener("WebViewJavascriptBridgeReady",(function(){e(window.WebViewJavascriptBridge)}),!1)},e.prototype.first=function(){this.isIOS||this.init((function(e){e.init((function(e,t){t()}))}))},e}();t.default=i},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){for(var t=document.cookie.replace(/\s/g,"").split(";"),n=0;n<t.length;n++){var r=t[n].split("=");if(r[0]==e)return decodeURIComponent(r[1])}return""}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var o=r(n(1));t.default=function(e){o.default(e,"",-1)}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var i=o(n(9));t.default={install:function(e,t){Object.keys(i.default).forEach((function(n){"object"===r(i.default[n])?e.directive(n,i.default[n]):"function"==typeof i.default[n]&&e.directive(n,new i.default[n](t[n]))}))}}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var o=r(n(10));t.default={bang:o.default}},function(e,t,n){"use strict";var r,o=function(){return(o=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};t.__esModule=!0,function(e){e.Exposure="exposure",e.Click="click",e.Mounted="mounted"}(r||(r={}));var i=function(e){var t=this;this.inserted=function(e,n,o,i){var u,c,a;switch(n.arg){case r.Exposure:new Promise((function(n,r){"IMG"===e.tagName?(e.onload=function(){var r=e.getAttribute("data-src"),o=e.getAttribute("src");((r?r===o:o)||t.config.imgErrExposure)&&n(!0)},e.onerror=function(e){t.config.imgErrExposure?n(!0):r(e)}):n(!0)})).then((function(r){r&&IntersectionObserver&&(e.observer=new IntersectionObserver((function(r){r[0].intersectionRatio>=.95&&(t.callback(e,n,o,i),t.config.exposureMulti||e.observer.unobserve(e))}),{root:null,threshold:[.95]}),e.observer.observe(e))})).catch((function(e){console.error(e)}));break;case r.Click:var s=(u=t.callback,c=(c=t.config.clickThrottleInterval)||2e3,function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this,r=+new Date;a&&r-a>0&&r-a<c||(a=r,u.apply(n,e))});e.bangClickCb=function(){s(e,n,o,i)},e.addEventListener("click",e.bangClickCb);break;case r.Mounted:t.callback(e,n,o,i);break;default:t.callback(e,n,o,i)}},this.unbind=function(e,n){switch(n.arg){case r.Exposure:t.config.exposureMulti&&e.observer&&e.observer.unobserve(e);case r.Click:e.removeEventListener("click",e.bangClickCb)}},this.config=o(o({},this.DefaultConfig),e),this.callback=this.config.cb};t.default=i},function(e,t,n){"use strict";var r,o,i=function(){return(i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};t.__esModule=!0,function(e){e[e.ERROR=1]="ERROR",e[e.WARNING=2]="WARNING",e[e.INFO=3]="INFO"}(r||(r={})),function(e){e.SCRIP="ERROR_SCRIPT",e.LINK="ERROR_STYLE",e.IMG="ERROR_IMAGE",e.AUDIO="ERROR_AUDIO",e.VIDEO="ERROR_VIDEO"}(o||(o={}));var u=function(){function e(e,t){this.DefaultConfig={isReportNow:!1,delay:3e3,random:1,repeatNum:3,reportUnhandledRejection:!0,reportFun:function(){}},this.config=i(i({},this.DefaultConfig),t),this.reportFun=this.config.reportFun,this.errorList=[],this.Vue=e,this.errorMap={}}return e.getInstance=function(e,t){return this.instance instanceof this||(this.instance=new this(e,t),this.instance.registerError()),this.instance},e.prototype.registerError=function(){var e=this;try{var t=window.onerror;window.onerror=function(){for(var n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];var i=n[0],u=n[1],c=n[2],a=n[3],s=n[4],l=i;s&&s.stack&&(l=e.runStackMsgFun(s)),e.errorList.push({type:"ERROR_RUNTIME",level:r.ERROR,message:l,url:u,col:a,row:c}),e.reportErrorFun(),t&&t.apply(window,n)}}catch(e){console.log(e)}try{window.addEventListener("error",(function(t){var n=t.target||t.srcElement;n!==window&&n.nodeName&&o[n.nodeName.toUpperCase()]&&(e.errorList.push({type:o[n.nodeName.toUpperCase()],level:r.ERROR,message:n.baseURI+"@"+(n.src||n.href),url:n.src||n.href}),e.reportErrorFun())}),!0)}catch(e){console.log(e)}e.Vue.config.errorHandler=function(t,n,o){var i,u=t&&t.msg?t.msg:t;t&&t.stack&&(i=e.runStackVueFun(t)),e.errorList.push({type:"ERROR_VUE",level:r.ERROR,message:o+"@"+u,col:Number(i.col),row:Number(i.row),url:i.url||location.href}),e.reportErrorFun()},e.config.reportUnhandledRejection&&window.addEventListener("unhandledrejection",(function(t){console.log(t),console.log("\n",t.reason);var n=e.runStackMsgFun(t.reason);e.errorList.push({type:"ERROR_REJECT",level:r.WARNING,message:n,url:location.href}),e.reportErrorFun()}))},e.prototype.runStackMsgFun=function(e){var t=e.stack.replace(/\n/gi,"").split(/\bat\b/).slice(0,9).join("@").replace(/\?[^:]+/gi,""),n=e.toString();return t.indexOf(n)<0&&(t=n+"@"+t),t},e.prototype.runStackVueFun=function(e){var t="",n=1,r=1,o=e.stack.match(/https?:\/\/[^\n]+/),i=o?o[0]:"",u=/https?:\/\/(\S)*\.js/;u.test(i)&&(t=i.match(u)[0]);var c=i.match(/:(\d+):(\d+)/);return c&&c.length>=3&&(n=c[1],r=c[2]),{url:t,col:Number(n),row:Number(r)}},e.prototype.isRepeatFun=function(e){var t=e.message;return(this.errorMap[t]=(parseInt(this.errorMap[t],10)||0)+1)>this.config.repeatNum},e.prototype.reportErrorFun=function(){var e=this;Math.random()>=this.config.random||setTimeout((function(){for(var t=function(){var t=e.errorList.pop();if(t.message=(t.message+""||"").substr(0,500),e.isRepeatFun(t))return"continue";e.config.isReportNow?e.reportFun(t):setTimeout((function(){e.reportFun(t)}),e.config.delay*e.errorList.length)};e.errorList.length;)t()}),this.config.delay)},e}();t.default=u}])}));
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.OcUtil=t():e.OcUtil=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t,n){"use strict";t.__esModule=!0,t.default=function(){var e=navigator.userAgent;return{trident:e.indexOf("Trident")>-1,presto:e.indexOf("Presto")>-1,webKit:e.indexOf("AppleWebKit")>-1,gecko:e.indexOf("Gecko")>-1&&-1===e.indexOf("KHTML"),mobile:!!e.match(/AppleWebKit.*Mobile.*/)||e.indexOf("Mobile")>-1,ios:!!e.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),android:e.indexOf("Android")>-1||e.indexOf("Linux")>-1,iPhone:e.indexOf("iPhone")>-1,iPad:e.indexOf("iPad")>-1,webApp:-1===e.indexOf("Safari"),weixin:e.indexOf("MicroMessenger")>-1,qq:null!==e.match(/\sQQ/i)}}},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e,t,n){var r=new Date;r.setTime(r.getTime()+24*n*60*60*1e3);var i="expires="+r.toUTCString();document.cookie=e+"="+t+";path=/;;"+i}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var i=r(n(0)),o=r(n(3)),a=r(n(4)),s=r(n(6)),u=r(n(1)),c=r(n(7)),f=r(n(8)),d=r(n(11)),l=r(n(12));e.exports.default=e.exports={getBrowser:i.default,getInApp:o.default,JsBridge:a.default,getCookie:s.default,setCookie:u.default,delCookie:c.default,VuePlugin:f.default,CatchError:d.default,CatchPerformance:l.default}},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){return!!(navigator.userAgent.indexOf(e)>-1)}},function(e,t,n){"use strict";var r,i=(r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var a=new(function(e){function t(){return e.call(this)||this}return i(t,e),t.prototype.callHandler=function(t,n){e.prototype.init.call(this,(function(e){e.callHandler("jsCallJavaAllInOne",t,n)}))},t.prototype.registerHandler=function(t,n){e.prototype.init.call(this,(function(e){e.registerHandler(t,n)}))},t}(o(n(5)).default));a.first(),t.default={callHandler:a.callHandler,registerHandler:a.registerHandler}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var i=r(n(0)).default(),o=function(){function e(){this.isIOS=i.ios}return e.prototype.init=function(e){if(this.isIOS){if(window.WebViewJavascriptBridge)return e(window.WebViewJavascriptBridge);if(window.WVJBCallbacks)return window.WVJBCallbacks.push(e);window.WVJBCallbacks=[e];var t=document.createElement("iframe");t.style.display="none",t.src="wvjbscheme://__BRIDGE_LOADED__",document.documentElement.appendChild(t),setTimeout((function(){document.documentElement.removeChild(t)}),0)}else window.WebViewJavascriptBridge?e(window.WebViewJavascriptBridge):document.addEventListener("WebViewJavascriptBridgeReady",(function(){e(window.WebViewJavascriptBridge)}),!1)},e.prototype.first=function(){this.isIOS||this.init((function(e){e.init((function(e,t){t()}))}))},e}();t.default=o},function(e,t,n){"use strict";t.__esModule=!0,t.default=function(e){for(var t=document.cookie.replace(/\s/g,"").split(";"),n=0;n<t.length;n++){var r=t[n].split("=");if(r[0]==e)return decodeURIComponent(r[1])}return""}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var i=r(n(1));t.default=function(e){i.default(e,"",-1)}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var o=i(n(9));t.default={install:function(e,t){Object.keys(o.default).forEach((function(n){"object"===r(o.default[n])?e.directive(n,o.default[n]):"function"==typeof o.default[n]&&e.directive(n,new o.default[n](t[n]))}))}}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};t.__esModule=!0;var i=r(n(10));t.default={bang:i.default}},function(e,t,n){"use strict";var r,i=function(){return(i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};t.__esModule=!0,function(e){e.Exposure="exposure",e.Click="click",e.Mounted="mounted"}(r||(r={}));var o=function(e){var t=this;this.inserted=function(e,n,i,o){var a,s,u;switch(n.arg){case r.Exposure:new Promise((function(n,r){"IMG"===e.tagName?(e.onload=function(){var r=e.getAttribute("data-src"),i=e.getAttribute("src");((r?r===i:i)||t.config.imgErrExposure)&&n(!0)},e.onerror=function(e){t.config.imgErrExposure?n(!0):r(e)}):n(!0)})).then((function(r){r&&IntersectionObserver&&(e.observer=new IntersectionObserver((function(r){r[0].intersectionRatio>=.95&&(t.callback(e,n,i,o),t.config.exposureMulti||e.observer.unobserve(e))}),{root:null,threshold:[.95]}),e.observer.observe(e))})).catch((function(e){console.error(e)}));break;case r.Click:var c=(a=t.callback,s=(s=t.config.clickThrottleInterval)||2e3,function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this,r=+new Date;u&&r-u>0&&r-u<s||(u=r,a.apply(n,e))});e.bangClickCb=function(){c(e,n,i,o)},e.addEventListener("click",e.bangClickCb);break;case r.Mounted:t.callback(e,n,i,o);break;default:t.callback(e,n,i,o)}},this.unbind=function(e,n){switch(n.arg){case r.Exposure:t.config.exposureMulti&&e.observer&&e.observer.unobserve(e);case r.Click:e.removeEventListener("click",e.bangClickCb)}},this.config=i(i({},this.DefaultConfig),e),this.callback=this.config.cb};t.default=o},function(e,t,n){"use strict";var r,i,o=function(){return(o=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};t.__esModule=!0,function(e){e[e.ERROR=1]="ERROR",e[e.WARNING=2]="WARNING",e[e.INFO=3]="INFO"}(r||(r={})),function(e){e.SCRIP="ERROR_LOAD_SCRIPT",e.LINK="ERROR_LOAD_STYLE",e.IMG="ERROR_LOAD_IMAGE",e.AUDIO="ERROR_LOAD_AUDIO",e.VIDEO="ERROR_LOAD_VIDEO"}(i||(i={}));var a=function(){function e(e,t){this.DefaultConfig={isReportNow:!1,delay:3e3,random:1,repeatNum:3,reportUnhandledRejection:!0,reportFun:function(){}},this.config=o(o({},this.DefaultConfig),t),this.reportFun=this.config.reportFun,this.errorList=[],this.Vue=e,this.errorMap={}}return e.getInstance=function(e,t){return this.instance instanceof this||(this.instance=new this(e,t),this.instance.registerError()),this.instance},e.prototype.registerError=function(){var e=this;try{var t=window.onerror;window.onerror=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var o=n[0],a=n[1],s=n[2],u=n[3],c=n[4],f=o;c&&c.stack&&(f=e.runStackMsgFun(c)),e.errorList.push({type:"ERROR_RUNTIME",level:r.ERROR,message:f,url:a,col:u,row:s}),e.reportErrorFun(),t&&t.apply(window,n)}}catch(e){console.log(e)}try{window.addEventListener("error",(function(t){var n=t.target||t.srcElement;n!==window&&n.nodeName&&i[n.nodeName.toUpperCase()]&&(e.errorList.push({type:i[n.nodeName.toUpperCase()],level:r.ERROR,message:n.baseURI+"@"+(n.src||n.href),url:n.src||n.href}),e.reportErrorFun())}),!0)}catch(e){console.log(e)}e.Vue&&(e.Vue.config.errorHandler=function(t,n,i){var o,a=t&&t.msg?t.msg:t;t&&t.stack&&(o=e.runStackVueFun(t)),e.errorList.push({type:"ERROR_VUE",level:r.ERROR,message:i+"@"+a,col:Number(o.col),row:Number(o.row),url:o.url||location.href}),e.reportErrorFun()}),e.config.reportUnhandledRejection&&window.addEventListener("unhandledrejection",(function(t){var n=e.runStackMsgFun(t.reason);e.errorList.push({type:"ERROR_REJECT",level:r.WARNING,message:n,url:location.href}),e.reportErrorFun()}))},e.prototype.runStackMsgFun=function(e){var t=e.stack.replace(/\n/gi,"").split(/\bat\b/).slice(0,9).join("@").replace(/\?[^:]+/gi,""),n=e.toString();return t.indexOf(n)<0&&(t=n+"@"+t),t},e.prototype.runStackVueFun=function(e){var t="",n=1,r=1,i=e.stack.match(/https?:\/\/[^\n]+/),o=i?i[0]:"",a=/https?:\/\/(\S)*\.js/;a.test(o)&&(t=o.match(a)[0]);var s=o.match(/:(\d+):(\d+)/);return s&&s.length>=3&&(n=s[1],r=s[2]),{url:t,col:Number(n),row:Number(r)}},e.prototype.isRepeatFun=function(e){var t=e.message;return(this.errorMap[t]=(parseInt(this.errorMap[t],10)||0)+1)>this.config.repeatNum},e.prototype.reportErrorFun=function(){var e=this;Math.random()>=this.config.random||setTimeout((function(){for(var t=function(){var t=e.errorList.pop();if(t.message=(t.message+""||"").substr(0,500),e.isRepeatFun(t))return"continue";e.config.isReportNow?e.reportFun(t):setTimeout((function(){e.reportFun(t)}),e.config.delay*e.errorList.length)};e.errorList.length;)t()}),this.config.delay)},e}();t.default=a},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}t.__esModule=!0;var i=function(){function e(e){var t=this;void 0===e&&(e={}),this.config={paintTiming:!0,navigationTiming:!0,networkInformation:!0,resourceTiming:!0,random:1,dataConsumption:!0},this.d=document,this.w=window,this.wp=window.performance,this.wn=window.navigator,this.logList=[],this.isHidden=!1,this.perfResourceTiming={beacon:0,link:0,fetch:0,img:0,other:0,script:0,total:0,xmlhttprequest:0},this.didVisibilityChange=function(){t.d.hidden&&(t.isHidden=t.d.hidden)},this.config=Object.assign({},this.config,e),this.isPerformanceSupport()&&this.onVisibilityChange()}return e.getInstance=function(e){return this.instance instanceof this||(this.instance=new this(e),this.instance.registerOnLoad()),this.instance},e.prototype.registerOnLoad=function(){var e=this;window.addEventListener("load",(function(){setTimeout((function(){e.isPerformanceObserver()&&(e.config.paintTiming&&e.initFirstPaint(),(e.config.resourceTiming||e.config.dataConsumption)&&e.initResourceTiming()),e.config.navigationTiming&&e.logData("navigationTiming",e.getNavigationTiming()),e.config.networkInformation&&e.logData("networkInformation",e.getNetworkInformation())}))}))},e.prototype.initFirstPaint=function(){var e=this;this.performanceObserver("paint",(function(t){e.logData("paintTiming",e.performanceObserverCb(t))}))},e.prototype.initResourceTiming=function(){var e=this;this.performanceObserver("resource",(function(t){e.logData("resourceTiming",e.performanceObserverResourceCb(t))}))},e.prototype.performanceObserverCb=function(e){var t=[];return e.forEach((function(e){t.push({name:e.name,value:e.startTime})})),t},e.prototype.performanceObserverResourceCb=function(e){var t=this,n=[];return e.forEach((function(e){if(n.push({type:e.initiatorType,name:e.name,value:e.duration}),t.config.dataConsumption&&e.decodedBodySize&&e.initiatorType){var r=e.decodedBodySize/1e3;t.perfResourceTiming[e.initiatorType]+=r,t.perfResourceTiming.total+=r}})),{resourceTiming:n,dataConsumption:this.config.dataConsumption?this.perfResourceTiming:null}},e.prototype.getNavigationTiming=function(){if(!this.isPerformanceSupport())return{};var e="function"==typeof this.w.PerformanceNavigationTiming?performance.getEntriesByType("navigation")[0]:this.wp.timing;return e?{redirectTime:e.redirectEnd-e.redirectStart,dnsCatchTime:e.domainLookupStart-e.fetchStart,dnsTime:e.domainLookupEnd-e.domainLookupStart,ttfbTime:e.responseStart-e.domainLookupStart,unloadTime:e.unloadEventEnd-e.unloadEventStart,tcpTime:e.connectEnd-e.connectStart,reqTime:e.responseEnd-e.requestStart,domTreeTime:e.domInteractive-e.responseEnd,domAnalyzeTime:e.domComplete-e.domInteractive,blankTime:e.domInteractive-e.fetchStart,domReadyTime:e.domContentLoadedEventEnd-e.fetchStart,loadTime:e.loadEventEnd-e.fetchStart}:{}},e.prototype.getNetworkInformation=function(){if("connection"in this.wn){var e=this.wn.connection;return"object"!==r(e)?{}:{downlink:e.downlink,effectiveType:e.effectiveType,rtt:e.rtt,saveData:!!e.saveData}}return{}},e.prototype.performanceObserver=function(e,t){return this.perfObserver=new PerformanceObserver((function(e){var n=e.getEntries();t(n)})),this.perfObserver.observe({type:e,buffered:!0}),this.perfObserver},e.prototype.logData=function(e,t){this.logList=[],this.logList.push({name:e,data:t}),this.reportFun()},e.prototype.reportFun=function(){this.isHidden||Math.random()>=this.config.random||this.config.reportFun(this.logList)},e.prototype.onVisibilityChange=function(){void 0!==this.d.hidden&&this.d.addEventListener("visibilitychange",this.didVisibilityChange)},e.prototype.isPerformanceSupport=function(){return this.wp&&!!this.wp.getEntriesByType&&!!this.wp.now},e.prototype.isPerformanceObserver=function(){return"PerformanceObserver"in this.w},e}();t.default=i}])}));
{
"name": "@ued2345/octopus-util",
"version": "1.1.6-5",
"version": "1.1.6-6",
"description": "ued2345 utils",

@@ -5,0 +5,0 @@ "main": "dist/octopus-util.min.js",

@@ -27,2 +27,3 @@ ### 技术选型

│ ├── monitor
│ │ │── catchPerformance.ts // 性能监控上报
│ │ └── catchError.ts // 错误收集上报

@@ -79,2 +80,3 @@ │ ├── vue-plugin

CatchError, // 错误收集
CatchPerformance // 性能监控
}

@@ -95,3 +97,3 @@ ```

```
* webpack
* webpackregisterError
```javascript

@@ -153,2 +155,104 @@ import OcUtil from '@ued2345/octopus-util'

#### 性能监控
> * Navigation Timing API
> * Resource Timing API
> * NetWork Information API
> * Paint Timing API
### vue项目接入
```typescript
import {CatchPerformance} from "@ued2345/octopus-util";
CatchPerformance.getInstance({
reportFun: (data) => { // 性能上报方法
console.log('sssss:', data)
}
})
// CatchPerformance.getInstatnce(opts)
interface opts {
paintTiming?: boolean; // 渲染时间点信息
navigationTiming?: boolean; // 客户端收集性能数据
resourceTiming?: boolean; // 资源信息
networkInformation?: boolean; // 网络信息
dataConsumption?: boolean; // 是否统计资源大小
random?: number; // 抽样上报(0-1)1全量
reportFun?: (data) => void; // 上报函数
}
// reportFun: (data: Data) => void
type EventType =
| "navigationTiming"
| "networkInformation"
| "resourceTiming"
| "paintTiming"
type Data = {name: EventType, data: any[]}[]
```
* Navigation Timing API
```typescript
interface PerfumeNavigationTiming {
redirectTime?: number; // 重定向时间
dnsCatchTime?: number; // dns缓存时间
dnsTime?: number; // dns查询耗时
ttfbTime?: number; // 读取第一个字节的时间
unloadTime?: number; // 卸载页面耗时
tcpTime?: number; // tcp链接耗时
reqTime?: number; // request请求耗时
domTreeTime?: number, // 创建dom树
domAnalyzeTime?: number; // 解析dom树耗时
blankTime?: number; // 白屏时间
domReadyTime?: number; // domReadyTime耗时
loadTime?: number; // onload耗时
}
return {
name: 'navigationTiming',
data: <PerfumeNavigationTiming>Object
}
```
* Resource Timing API
```typescript
type PerformanceEntryInitiatorType =
| 'beacon' // 源于 sendBeacon 方法
| 'link'
| 'fetch' // 来源于 fetch 方法
| 'img'
| 'other'
| 'script'
| 'xmlhttprequest';
return {
name: 'resourceTiming',
data: {
resourceTiming: <PerformanceEntryInitiatorType>[],
dataConsumption: this.config.dataConsumption ? <PerformanceEntryInitiatorType>Object : null
},
}
```
* NetWork Information API
```typescript
type EffectiveConnectionType = '2g' | '3g' | '4g' | 'slow-2g';
interface PerfumeNetworkInformation {
downlink?: number; // 下行速度/带宽 Mb/s为单位的有效带宽
effectiveType?: EffectiveConnectionType; // 有效网络连接类型
onchange?: () => void; // 监听网络变化
rtt?: number; // 估算的往返时间
saveData?: boolean; // 打开/请求数据保护模式
}
return {
name: 'networkInformation',
data: <PerfumeNetworkInformation>Object
}
```
* Paint Timing API
```typescript
let startTime: number
return {
name: 'paintTiming',
data: [{
name: 'first-paint',
value: startTime,
}, {
name: 'first-contentful-paint',
value: startTime
}]
}
```
### vue相关工具

@@ -155,0 +259,0 @@ ##### 埋点工具

@@ -12,2 +12,3 @@ /**

import CatchError from "./monitor/catchError";
import CatchPerformance from "./monitor/catchPerformance";

@@ -22,3 +23,4 @@ module.exports.default = module.exports = {

VuePlugin, // vue工具(内含insert方法)
CatchError,
CatchError, // 错误收集
CatchPerformance // 性能监控
};
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc