PageSourceSearch

https://nextthere.com/assets/OtrTripMetrics-8M7zv94c.js

js nextthere.com collected 2026-09-24 19:05:05 UTC 1,542 bytes, 1 lines download raw bytes

1var i=Object.defineProperty;var l=(r,t,a)=>t in r?i(r,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):r[t]=a;var e=(r,t,a)=>l(r,typeof t!="symbol"?t+"":t,a);class s{constructor(){e(this,"onTimeThresholds")}static fromJSON(t){return Object.assign(new s,t)}}class n{constructor(){e(this,"onTime");e(this,"early");e(this,"bitEarly");e(this,"bitLate");e(this,"late");e(this,"veryLate");e(this,"unknown");e(this,"cancelled");e(this,"total");e(this,"config")}static fromJSON(t){const a=Object.assign(new n,t);return a.config=t.config?s.fromJSON(t.config):void 0,a}static get emptyChart(){return n.fromJSON({unknown:1,total:1})}get otrPercentage(){return(this.onTime+this.bitEarly+this.bitLate)/Math.max(1,this.total)*100}get latePercentage(){return(this.late+this.veryLate)/Math.max(1,this.total)*100}get trackedCount(){return this.total-this.unknown-this.cancelled}get trackedPercentage(){return this.trackedCount/Math.max(1,this.total)*100}get textClass(){const t=this.otrPercentage;return this.total==0?"rts-scheduled":t>85?"rts-on-time":t>70?"rts-late-minor":t>50?"rts-late":"rts-cancelled"}getChartData(){return{labels:["On time","Late","Very late","Early","Cancelled","Unknown"],datasets:[{label:"OTR",data:[this.onTime+this.bitEarly+this.bitLate,this.late,this.veryLate,this.early,this.cancelled,this.unknown],backgroundColor:["rgb(22, 163, 74)","rgb(185 28 28)","rgb(255 0 0)","rgb(30 64 175)","rgb(96 96 96)","rgb(192 192 192)"],datalabels:{formatter:(t,a)=>t/this.total>.01?Math.round(100*t/this.total)+"%":""}}]}}}export{n as O};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.