@heimdallr-sdk/fetch
Advanced tools
Comparing version 0.0.3 to 0.0.4
@@ -1,358 +0,2 @@ | ||
var HEIMDALLR_FETCH = (function () { | ||
'use strict'; | ||
var BaseBreadcrumbTypes$1; | ||
(function (BaseBreadcrumbTypes) { | ||
BaseBreadcrumbTypes["VUE"] = "Vue"; | ||
})(BaseBreadcrumbTypes$1 || (BaseBreadcrumbTypes$1 = {})); | ||
var MethodTypes$1; | ||
(function (MethodTypes) { | ||
MethodTypes["GET"] = "GET"; | ||
MethodTypes["POST"] = "POST"; | ||
MethodTypes["PUT"] = "PUT"; | ||
MethodTypes["DELETE"] = "DELETE"; | ||
})(MethodTypes$1 || (MethodTypes$1 = {})); | ||
var EventTypes$1; | ||
(function (EventTypes) { | ||
EventTypes["API"] = "api"; | ||
EventTypes["DOM"] = "dom"; | ||
EventTypes["PERFORMANCE"] = "performance"; | ||
EventTypes["ROUTE"] = "route"; | ||
EventTypes["ERROR"] = "error"; | ||
EventTypes["CONSOLE"] = "console"; | ||
EventTypes["CUSTOMER"] = "customer"; | ||
EventTypes["VUE"] = "vue"; | ||
EventTypes["LIFECYCLE"] = "lifeCycle"; | ||
})(EventTypes$1 || (EventTypes$1 = {})); | ||
var BrowserErrorTypes$1; | ||
(function (BrowserErrorTypes) { | ||
BrowserErrorTypes["CODEERROR"] = "code"; | ||
BrowserErrorTypes["RESOURCEERROR"] = "resource"; | ||
BrowserErrorTypes["UNHANDLEDREJECTION"] = "unhandledrejection"; | ||
BrowserErrorTypes["PAGECRASH"] = "pageCrash"; | ||
})(BrowserErrorTypes$1 || (BrowserErrorTypes$1 = {})); | ||
var DomTypes$1; | ||
(function (DomTypes) { | ||
DomTypes["CLICK"] = "click"; | ||
})(DomTypes$1 || (DomTypes$1 = {})); | ||
var ConsoleTypes$1; | ||
(function (ConsoleTypes) { | ||
ConsoleTypes["LOG"] = "log"; | ||
ConsoleTypes["INFO"] = "info"; | ||
ConsoleTypes["WARN"] = "warn"; | ||
ConsoleTypes["ERROR"] = "error"; | ||
ConsoleTypes["ASSERT"] = "assert"; | ||
})(ConsoleTypes$1 || (ConsoleTypes$1 = {})); | ||
var HttpTypes$1; | ||
(function (HttpTypes) { | ||
HttpTypes["FETCH"] = "fetch"; | ||
HttpTypes["XHR"] = "xhr"; | ||
})(HttpTypes$1 || (HttpTypes$1 = {})); | ||
var PerTypes$1; | ||
(function (PerTypes) { | ||
PerTypes["FMP"] = "fmp"; | ||
PerTypes["FPS"] = "fps"; | ||
PerTypes["BASIC"] = "basic"; | ||
PerTypes["VITALS"] = "vitals"; | ||
PerTypes["RESOURCE"] = "resource"; | ||
})(PerTypes$1 || (PerTypes$1 = {})); | ||
var RouteTypes$1; | ||
(function (RouteTypes) { | ||
RouteTypes["HASH"] = "hash"; | ||
RouteTypes["HISTORY"] = "history"; | ||
})(RouteTypes$1 || (RouteTypes$1 = {})); | ||
var CustomerTypes$1; | ||
(function (CustomerTypes) { | ||
CustomerTypes["CUSTOMER"] = "customer"; | ||
})(CustomerTypes$1 || (CustomerTypes$1 = {})); | ||
var StoreType$1; | ||
(function (StoreType) { | ||
StoreType["LOCAL"] = "local"; | ||
StoreType["SESSION"] = "session"; | ||
StoreType["COOKIE"] = "cookie"; | ||
StoreType["GLOBAL"] = "global"; | ||
})(StoreType$1 || (StoreType$1 = {})); | ||
var BrowserReportType$1; | ||
(function (BrowserReportType) { | ||
BrowserReportType["BEACON"] = "beacon"; | ||
BrowserReportType["IMG"] = "img"; | ||
BrowserReportType["GET"] = "get"; | ||
})(BrowserReportType$1 || (BrowserReportType$1 = {})); | ||
var PageLifeType$1; | ||
(function (PageLifeType) { | ||
PageLifeType["LOAD"] = "enter"; | ||
PageLifeType["UNLOAD"] = "leave"; | ||
})(PageLifeType$1 || (PageLifeType$1 = {})); | ||
var PerformanceFeat$1; | ||
(function (PerformanceFeat) { | ||
PerformanceFeat["BASIC"] = "basic"; | ||
PerformanceFeat["RESOURCE"] = "resource"; | ||
PerformanceFeat["FMP"] = "fmp"; | ||
PerformanceFeat["FPS"] = "fps"; | ||
PerformanceFeat["VITALS"] = "vitals"; | ||
})(PerformanceFeat$1 || (PerformanceFeat$1 = {})); | ||
var BrowserBreadcrumbTypes$1; | ||
(function (BrowserBreadcrumbTypes) { | ||
BrowserBreadcrumbTypes["ROUTE"] = "Route"; | ||
BrowserBreadcrumbTypes["CLICK"] = "UI.Click"; | ||
BrowserBreadcrumbTypes["CONSOLE"] = "Console"; | ||
BrowserBreadcrumbTypes["XHR"] = "Xhr"; | ||
BrowserBreadcrumbTypes["FETCH"] = "Fetch"; | ||
BrowserBreadcrumbTypes["UNHANDLEDREJECTION"] = "Unhandledrejection"; | ||
BrowserBreadcrumbTypes["RESOURCE"] = "Resource"; | ||
BrowserBreadcrumbTypes["CODE_ERROR"] = "CodeError"; | ||
BrowserBreadcrumbTypes["CUSTOMER"] = "Customer"; | ||
BrowserBreadcrumbTypes["FRAMEWORK"] = "Framework"; | ||
BrowserBreadcrumbTypes["LIFECYCLE"] = "LifeCycle"; | ||
BrowserBreadcrumbTypes["CRASH"] = "Crash"; | ||
})(BrowserBreadcrumbTypes$1 || (BrowserBreadcrumbTypes$1 = {})); | ||
const getUrlPath = (url) => { | ||
const path = `${url.replace(/^http(s|):/, "").split("?")[0]}`; | ||
const endIndex = path.length - 1; | ||
return path[endIndex] === "/" ? path.substring(0, endIndex) : path; | ||
}; | ||
function generateUUID() { | ||
let d = new Date().getTime(); | ||
const uuid = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) { | ||
const r = (d + Math.random() * 16) % 16 | 0; | ||
d = Math.floor(d / 16); | ||
return (c == "x" ? r : r & 3 | 8).toString(16); | ||
}); | ||
return uuid; | ||
} | ||
const formatDate = (format = "Y-M-D h:m:s", timestamp = Date.now()) => { | ||
const date = new Date(timestamp); | ||
const dateInfo = { | ||
Y: `${date.getFullYear()}`, | ||
M: `${date.getMonth() + 1}`, | ||
D: `${date.getDate()}`, | ||
h: date.getHours(), | ||
m: date.getMinutes(), | ||
s: date.getSeconds() | ||
}; | ||
const formatNumber = (n) => n > 10 ? n : "0" + n; | ||
const res = format.replace("Y", dateInfo.Y).replace("M", dateInfo.M).replace("D", dateInfo.D).replace("h", formatNumber(dateInfo.h)).replace("m", formatNumber(dateInfo.m)).replace("s", formatNumber(dateInfo.s)); | ||
return res; | ||
}; | ||
function replaceOld(source, name, replacement, isForced) { | ||
if (source === void 0) | ||
return; | ||
if (name in source || isForced) { | ||
const original = source[name]; | ||
const wrapped = replacement(original); | ||
if (typeof wrapped === "function") { | ||
source[name] = wrapped; | ||
} | ||
} | ||
} | ||
var BaseBreadcrumbTypes; | ||
(function (BaseBreadcrumbTypes) { | ||
BaseBreadcrumbTypes["VUE"] = "Vue"; | ||
})(BaseBreadcrumbTypes || (BaseBreadcrumbTypes = {})); | ||
var MethodTypes; | ||
(function (MethodTypes) { | ||
MethodTypes["GET"] = "GET"; | ||
MethodTypes["POST"] = "POST"; | ||
MethodTypes["PUT"] = "PUT"; | ||
MethodTypes["DELETE"] = "DELETE"; | ||
})(MethodTypes || (MethodTypes = {})); | ||
var EventTypes; | ||
(function (EventTypes) { | ||
EventTypes["API"] = "api"; | ||
EventTypes["DOM"] = "dom"; | ||
EventTypes["PERFORMANCE"] = "performance"; | ||
EventTypes["ROUTE"] = "route"; | ||
EventTypes["ERROR"] = "error"; | ||
EventTypes["CONSOLE"] = "console"; | ||
EventTypes["CUSTOMER"] = "customer"; | ||
EventTypes["VUE"] = "vue"; | ||
EventTypes["LIFECYCLE"] = "lifeCycle"; | ||
})(EventTypes || (EventTypes = {})); | ||
var BrowserErrorTypes; | ||
(function (BrowserErrorTypes) { | ||
BrowserErrorTypes["CODEERROR"] = "code"; | ||
BrowserErrorTypes["RESOURCEERROR"] = "resource"; | ||
BrowserErrorTypes["UNHANDLEDREJECTION"] = "unhandledrejection"; | ||
BrowserErrorTypes["PAGECRASH"] = "pageCrash"; | ||
})(BrowserErrorTypes || (BrowserErrorTypes = {})); | ||
var DomTypes; | ||
(function (DomTypes) { | ||
DomTypes["CLICK"] = "click"; | ||
})(DomTypes || (DomTypes = {})); | ||
var ConsoleTypes; | ||
(function (ConsoleTypes) { | ||
ConsoleTypes["LOG"] = "log"; | ||
ConsoleTypes["INFO"] = "info"; | ||
ConsoleTypes["WARN"] = "warn"; | ||
ConsoleTypes["ERROR"] = "error"; | ||
ConsoleTypes["ASSERT"] = "assert"; | ||
})(ConsoleTypes || (ConsoleTypes = {})); | ||
var HttpTypes; | ||
(function (HttpTypes) { | ||
HttpTypes["FETCH"] = "fetch"; | ||
HttpTypes["XHR"] = "xhr"; | ||
})(HttpTypes || (HttpTypes = {})); | ||
var PerTypes; | ||
(function (PerTypes) { | ||
PerTypes["FMP"] = "fmp"; | ||
PerTypes["FPS"] = "fps"; | ||
PerTypes["BASIC"] = "basic"; | ||
PerTypes["VITALS"] = "vitals"; | ||
PerTypes["RESOURCE"] = "resource"; | ||
})(PerTypes || (PerTypes = {})); | ||
var RouteTypes; | ||
(function (RouteTypes) { | ||
RouteTypes["HASH"] = "hash"; | ||
RouteTypes["HISTORY"] = "history"; | ||
})(RouteTypes || (RouteTypes = {})); | ||
var CustomerTypes; | ||
(function (CustomerTypes) { | ||
CustomerTypes["CUSTOMER"] = "customer"; | ||
})(CustomerTypes || (CustomerTypes = {})); | ||
var StoreType; | ||
(function (StoreType) { | ||
StoreType["LOCAL"] = "local"; | ||
StoreType["SESSION"] = "session"; | ||
StoreType["COOKIE"] = "cookie"; | ||
StoreType["GLOBAL"] = "global"; | ||
})(StoreType || (StoreType = {})); | ||
var BrowserReportType; | ||
(function (BrowserReportType) { | ||
BrowserReportType["BEACON"] = "beacon"; | ||
BrowserReportType["IMG"] = "img"; | ||
BrowserReportType["GET"] = "get"; | ||
})(BrowserReportType || (BrowserReportType = {})); | ||
var PageLifeType; | ||
(function (PageLifeType) { | ||
PageLifeType["LOAD"] = "enter"; | ||
PageLifeType["UNLOAD"] = "leave"; | ||
})(PageLifeType || (PageLifeType = {})); | ||
var PerformanceFeat; | ||
(function (PerformanceFeat) { | ||
PerformanceFeat["BASIC"] = "basic"; | ||
PerformanceFeat["RESOURCE"] = "resource"; | ||
PerformanceFeat["FMP"] = "fmp"; | ||
PerformanceFeat["FPS"] = "fps"; | ||
PerformanceFeat["VITALS"] = "vitals"; | ||
})(PerformanceFeat || (PerformanceFeat = {})); | ||
var BrowserBreadcrumbTypes; | ||
(function (BrowserBreadcrumbTypes) { | ||
BrowserBreadcrumbTypes["ROUTE"] = "Route"; | ||
BrowserBreadcrumbTypes["CLICK"] = "UI.Click"; | ||
BrowserBreadcrumbTypes["CONSOLE"] = "Console"; | ||
BrowserBreadcrumbTypes["XHR"] = "Xhr"; | ||
BrowserBreadcrumbTypes["FETCH"] = "Fetch"; | ||
BrowserBreadcrumbTypes["UNHANDLEDREJECTION"] = "Unhandledrejection"; | ||
BrowserBreadcrumbTypes["RESOURCE"] = "Resource"; | ||
BrowserBreadcrumbTypes["CODE_ERROR"] = "CodeError"; | ||
BrowserBreadcrumbTypes["CUSTOMER"] = "Customer"; | ||
BrowserBreadcrumbTypes["FRAMEWORK"] = "Framework"; | ||
BrowserBreadcrumbTypes["LIFECYCLE"] = "LifeCycle"; | ||
BrowserBreadcrumbTypes["CRASH"] = "Crash"; | ||
})(BrowserBreadcrumbTypes || (BrowserBreadcrumbTypes = {})); | ||
var __defProp = Object.defineProperty; | ||
var __defProps = Object.defineProperties; | ||
var __getOwnPropDescs = Object.getOwnPropertyDescriptors; | ||
var __getOwnPropSymbols = Object.getOwnPropertySymbols; | ||
var __hasOwnProp = Object.prototype.hasOwnProperty; | ||
var __propIsEnum = Object.prototype.propertyIsEnumerable; | ||
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; | ||
var __spreadValues = (a, b) => { | ||
for (var prop in b || (b = {})) | ||
if (__hasOwnProp.call(b, prop)) | ||
__defNormalProp(a, prop, b[prop]); | ||
if (__getOwnPropSymbols) | ||
for (var prop of __getOwnPropSymbols(b)) { | ||
if (__propIsEnum.call(b, prop)) | ||
__defNormalProp(a, prop, b[prop]); | ||
} | ||
return a; | ||
}; | ||
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); | ||
const PLUGIN_NAME = "fetchPlugin"; | ||
const fetchPlugin = { | ||
name: PLUGIN_NAME, | ||
monitor(notify) { | ||
const { context } = this; | ||
const { ignoreUrls = [] } = context; | ||
replaceOld(window, HttpTypes$1.FETCH, (originalFetch) => { | ||
return function(url, config = {}) { | ||
const sTime = Date.now(); | ||
const method = config && config.method || MethodTypes$1.GET; | ||
const httpCollect = { | ||
request: { | ||
url, | ||
method, | ||
data: config && config.body | ||
}, | ||
time: sTime, | ||
response: {} | ||
}; | ||
const headers = new Headers(config.headers || {}); | ||
Object.assign(headers, { | ||
setRequestHeader: headers.set | ||
}); | ||
config = __spreadProps(__spreadValues({}, config), { | ||
headers | ||
}); | ||
const isBlock = ignoreUrls.includes(getUrlPath(url)); | ||
return originalFetch.apply(window, [url, config]).then( | ||
(res) => { | ||
const resClone = res.clone(); | ||
const eTime = Date.now(); | ||
httpCollect.elapsedTime = eTime - sTime; | ||
httpCollect.response.status = resClone.status; | ||
resClone.text().then((data) => { | ||
if (isBlock) | ||
return; | ||
httpCollect.response.data = data; | ||
notify(PLUGIN_NAME, httpCollect); | ||
}); | ||
return res; | ||
}, | ||
(err) => { | ||
if (isBlock) | ||
return; | ||
const eTime = Date.now(); | ||
httpCollect.elapsedTime = eTime - sTime; | ||
httpCollect.response.status = 0; | ||
notify(PLUGIN_NAME, httpCollect); | ||
throw err; | ||
} | ||
); | ||
}; | ||
}); | ||
}, | ||
transform(collectedData) { | ||
const id = generateUUID(); | ||
this.breadcrumb.unshift({ | ||
eventId: id, | ||
type: BrowserBreadcrumbTypes$1.FETCH, | ||
data: collectedData | ||
}); | ||
return { | ||
id, | ||
time: formatDate(), | ||
type: EventTypes$1.API, | ||
data: __spreadValues({ | ||
sub_type: HttpTypes$1.FETCH | ||
}, collectedData) | ||
}; | ||
} | ||
}; | ||
return fetchPlugin; | ||
})(); | ||
/* follow me on Github! @LuciferHuang */ | ||
var HEIMDALLR_FETCH=function(){"use strict";var e,t,r,o,n,a,s,c,E,i,O,u,l,R,C,p,S,x,d,h,f,D,T,m,L,I,A,P,b,g,v;(e||(e={})).VUE="Vue",(r=t||(t={})).SESSION="HEIMDALLR_SDK_SESSION_ID",r.APP="HEIMDALLR_SDK_APP_ID",(n=o||(o={})).GET="GET",n.POST="POST",n.PUT="PUT",n.DELETE="DELETE",(s=a||(a={})).API="api",s.DOM="dom",s.PERFORMANCE="performance",s.ROUTE="route",s.ERROR="error",s.CONSOLE="console",s.CUSTOMER="customer",s.VUE="vue",s.LIFECYCLE="lifeCycle",(E=c||(c={})).CODEERROR="code",E.RESOURCEERROR="resource",E.UNHANDLEDREJECTION="unhandledrejection",E.PAGECRASH="pageCrash",(i||(i={})).CLICK="click",(u=O||(O={})).LOG="log",u.INFO="info",u.WARN="warn",u.ERROR="error",u.ASSERT="assert",(R=l||(l={})).FETCH="fetch",R.XHR="xhr",(p=C||(C={})).FMP="fmp",p.FPS="fps",p.BASIC="basic",p.VITALS="vitals",p.RESOURCE="resource",(x=S||(S={})).HASH="hash",x.HISTORY="history",(d||(d={})).CUSTOMER="customer",(f=h||(h={})).LOCAL="local",f.SESSION="session",f.COOKIE="cookie",f.GLOBAL="global",(T=D||(D={})).BEACON="beacon",T.IMG="img",T.GET="get",(L=m||(m={})).LOAD="enter",L.UNLOAD="leave",(A=I||(I={})).MOBILE="mobile",A.PC="pc",(b=P||(P={})).BASIC="basic",b.RESOURCE="resource",b.FMP="fmp",b.FPS="fps",b.VITALS="vitals",(v=g||(g={})).ROUTE="Route",v.CLICK="UI.Click",v.CONSOLE="Console",v.XHR="Xhr",v.FETCH="Fetch",v.UNHANDLEDREJECTION="Unhandledrejection",v.RESOURCE="Resource",v.CODE_ERROR="CodeError",v.CUSTOMER="Customer",v.FRAMEWORK="Framework",v.LIFECYCLE="LifeCycle",v.CRASH="Crash";var H=function(e,t){void 0===e&&(e="Y-M-D h:m:s"),void 0===t&&(t=Date.now());var r=new Date(t),o={Y:"".concat(r.getFullYear()),M:"".concat(r.getMonth()+1),D:"".concat(r.getDate()),h:r.getHours(),m:r.getMinutes(),s:r.getSeconds()},n=function(e){return e>10?e:"0"+e};return e.replace("Y",o.Y).replace("M",o.M).replace("D",o.D).replace("h",n(o.h)).replace("m",n(o.m)).replace("s",n(o.s))};var M=Object.defineProperty,y=Object.defineProperties,U=Object.getOwnPropertyDescriptors,w=Object.getOwnPropertySymbols,F=Object.prototype.hasOwnProperty,N=Object.prototype.propertyIsEnumerable,j=(e,t,r)=>t in e?M(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,_=(e,t)=>{for(var r in t||(t={}))F.call(t,r)&&j(e,r,t[r]);if(w)for(var r of w(t))N.call(t,r)&&j(e,r,t[r]);return e};const G="fetchPlugin";return{name:G,monitor(e){const{context:t}=this,{ignoreUrls:r=[]}=t;!function(e,t,r,o){if(void 0!==e&&(t in e||o)){var n=r(e[t]);"function"==typeof n&&(e[t]=n)}}(window,l.FETCH,(t=>function(n,a={}){const s=Date.now(),c={request:{url:n,method:a&&a.method||o.GET,data:a&&a.body},time:s,response:{}},E=new Headers(a.headers||{});var i;Object.assign(E,{setRequestHeader:E.set}),i=_({},a),a=y(i,U({headers:E}));const O=r.includes(function(e){var t="".concat(e.replace(/^http(s|):/,"").split("?")[0]),r=t.length-1;return"/"===t[r]?t.substring(0,r):t}(n));return t.apply(window,[n,a]).then((t=>{const r=t.clone(),o=Date.now();return c.elapsedTime=o-s,c.response.status=r.status,r.text().then((t=>{O||(c.response.data=t,e(G,c))})),t}),(t=>{if(O)return;const r=Date.now();throw c.elapsedTime=r-s,c.response.status=0,e(G,c),t}))}))},transform(e){const t=(r=(new Date).getTime(),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),("x"==e?t:3&t|8).toString(16)})));var r;return this.breadcrumb.unshift({eventId:t,type:g.FETCH,data:e}),{id:t,time:H(),type:a.API,data:_({sub_type:l.FETCH},e)}}}}(); | ||
//# sourceMappingURL=fetch.iife.js.map |
{ | ||
"name": "@heimdallr-sdk/fetch", | ||
"version": "0.0.3", | ||
"version": "0.0.4", | ||
"description": "A Plugin For Browser SDK", | ||
"license": "MIT", | ||
"author": "LuciferHuang", | ||
"main": "dist/fetch.esm.js", | ||
"main": "dist/fetch.umd.js", | ||
"module": "esm/index.js", | ||
@@ -39,6 +39,6 @@ "types": "esm/index.d.ts", | ||
"dependencies": { | ||
"@heimdallr-sdk/types": "^0.0.2", | ||
"@heimdallr-sdk/utils": "^0.0.2" | ||
"@heimdallr-sdk/types": "^0.0.5", | ||
"@heimdallr-sdk/utils": "^0.0.4" | ||
}, | ||
"gitHead": "e57ec112ba1008d69ad71045e899c0fe1ffb5317" | ||
"gitHead": "9576cceebc0e243a9bd9399ea19e37269cde364e" | ||
} |
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
62848
10
358
+ Added@heimdallr-sdk/types@0.0.5(transitive)
+ Added@heimdallr-sdk/utils@0.0.4(transitive)
- Removed@heimdallr-sdk/types@0.0.2(transitive)
- Removed@heimdallr-sdk/utils@0.0.2(transitive)
Updated@heimdallr-sdk/types@^0.0.5
Updated@heimdallr-sdk/utils@^0.0.4