1import{a as ut}from"./chunk-4GNJ3KVL.js";import{h as _t,l as ht,n as ft}from"./chunk-RXTHBJNJ.js";import{a as mt}from"./chunk-D5GVVTZ5.js";import{a as k}from"./chunk-OZC5JFZK.js";import{a as pt}from"./chunk-JEL6HJ7P.js";import{ca as dt,sa as ct}from"./chunk-YQOD7X2Z.js";import"./chunk-563YFTIG.js";import"./chunk-36JN3LZY.js";import"./chunk-WPHW6CRH.js";import{B as lt,F as st,c as tt,h as et,i as it,l as nt,n as ot,o as at,p as rt}from"./chunk-76O7YCWW.js";import"./chunk-YYIIKC2W.js";import"./chunk-3WYGUSDH.js";import{c as X}from"./chunk-LU7SZU5X.js";import{g as Q,j as Y,t as Z,y as J}from"./chunk-PO2RDVKE.js";import{Ac as b,Bc as g,Ec as D,Fc as K,Gc as U,Ic as j,Jc as F,Pb as p,Rb as m,Tb as h,Tc as I,Ub as f,Vb as u,Vc as G,Wb as C,Xb as o,Xc as q,Yb as i,Za as N,Zb as v,_a as V,db as n,ec as w,jc as E,lc as c,o as R,oa as S,pa as y,pb as T,pc as H,qc as z,rc as A,ub as $,uc as O,wc as W,yc as P,zc as s}from"./chunk-3URBZWPM.js";import{a as M,c as B}from"./chunk-ODN5LVDJ.js";function bt(t,a){if(t&1&&(o(0,"div",3),v(1,"fab-button",16),i()),t&2){let e=c();n(),C("button",e.backToResultsButton)}}function gt(t,a){if(t&1&&(o(0,"div",11)(1,"a",17)(2,"strong"),s(3),i()()()),t&2){let e=a.$implicit;n(),C("href",F("/training-providers/",e.centre.pathAlias),V),n(2),b(e.centre.name)}}function St(t,a){if(t&1&&(o(0,"p"),s(1),I(2,"date"),i()),t&2){let e=c(2).$implicit;n(),g(" ",G(2,1,e.enrolment,"MMMM yyyy")," ")}}function yt(t,a){t&1&&(o(0,"p"),s(1,"Enrolling now"),i())}function Tt(t,a){t&1&&(o(0,"p"),s(1,"Not specified"),i())}function wt(t,a){if(t&1&&(o(0,"div"),p(1,St,3,4,"p"),p(2,yt,2,0,"p"),p(3,Tt,2,0,"p"),i()),t&2){let e=c().$implicit;n(),m(!e.isEnrollingNow&&e.enrolment?1:-1),n(),m(e.isEnrollingNow?2:-1),n(),m(!e.enrolment&&!e.isEnrollingNow?3:-1)}}function Et(t,a){if(t&1&&(o(0,"div"),p(1,wt,4,3,"div"),i()),t&2){let e=a.$implicit,r=c().$implicit;n(),m(e.qualificationId===r.search.qualificationId?1:-1)}}function Ft(t,a){t&1&&(o(0,"div")(1,"p"),s(2,"Not available"),i()())}function It(t,a){if(t&1&&(o(0,"div",12),f(1,Et,2,1,"div",null,h),p(3,Ft,3,0,"div"),i()),t&2){let e=a.$implicit,r=c();n(),u(e.centre.qualifications),n(2),m(r.isAnyIdMatching(e.search.qualificationId,e.centre.qualifications)?-1:3)}}function kt(t,a){if(t&1&&(o(0,"span"),s(1),I(2,"currency"),i()),t&2){let e=c(3).$implicit;n(),g(" to ",q(2,1,e.price[1],"GBP",!0,"1.0-2")," ")}}function Mt(t,a){t&1&&(o(0,"span"),s(1," Not specified "),i())}function Pt(t,a){if(t&1&&(o(0,"p"),s(1),I(2,"currency"),p(3,kt,3,6,"span"),p(4,Mt,2,0,"span"),i()),t&2){let e=c(2).$implicit;n(),g(" ",q(2,3,e.price[0],"GBP","symbol","1.0-2")," "),n(2),m(e.price&&e.price.length===2?3:-1),n(),m(!e.price[0]&&!e.price[1]?4:-1)}}function qt(t,a){t&1&&(o(0,"p"),s(1,"Not specified"),i())}function Lt(t,a){if(t&1&&(o(0,"div"),p(1,Pt,5,8,"p"),p(2,qt,2,0,"p"),i()),t&2){let e=c().$implicit;n(),m(e.price&&e.price.length===2?1:-1),n(),m(!e.price||e.price.length<2?2:-1)}}function Bt(t,a){if(t&1&&(o(0,"div"),p(1,Lt,3,2,"div"),i()),t&2){let e=a.$implicit,r=c().$implicit;n(),m(e.qualificationId===r.search.qualificationId?1:-1)}}function Rt(t,a){t&1&&(o(0,"div")(1,"p"),s(2,"Not available"),i()())}function Nt(t,a){if(t&1&&(o(0,"div",12),f(1,Bt,2,1,"div",null,h),p(3,Rt,3,0,"div"),i()),t&2){let e=a.$implicit,r=c();n(),u(e.centre.qualifications),n(2),m(r.isAnyIdMatching(e.search.qualificationId,e.centre.qualifications)?-1:3)}}function Vt(t,a){if(t&1&&(o(0,"span"),s(1),i()),t&2){let e=c(2).$implicit;n(),b(e.partTimeTeachingHoursPerWeek)}}function $t(t,a){t&1&&(o(0,"span"),s(1," to "),i())}function Ht(t,a){if(t&1&&(o(0,"span"),s(1),i()),t&2){let e=c(2).$implicit;n(),b(e.fullTimeTeachingHoursPerWeek)}}function zt(t,a){t&1&&(o(0,"span"),s(1,"Not specified"),i())}function At(t,a){if(t&1&&(o(0,"div")(1,"p"),p(2,Vt,2,1,"span"),p(3,$t,2,0,"span"),p(4,Ht,2,1,"span"),p(5,zt,2,0,"span"),i()()),t&2){let e=c().$implicit;n(2),m(e.partTimeTeachingHoursPerWeek?2:-1),n(),m(e.partTimeTeachingHoursPerWeek&&e.fullTimeTeachingHoursPerWeek?3:-1),n(),m(e.fullTimeTeachingHoursPerWeek?4:-1),n(),m(!e.partTimeTeachingHoursPerWeek&&!e.fullTimeTeachingHoursPerWeek?5:-1)}}function Ot(t,a){if(t&1&&(o(0,"div"),p(1,At,6,4,"div"),i()),t&2){let e=a.$implicit,r=c().$implicit;n(),m(e.qualificationId===r.search.qualificationId?1:-1)}}function Wt(t,a){t&1&&(o(0,"div")(1,"p"),s(2,"Not available"),i()())}
1function Dt(t,a){if(t&1&&(o(0,"div",12),f(1,Ot,2,1,"div",null,h),p(3,Wt,3,0,"div"),i()),t&2){let e=a.$implicit,r=c();n(),u(e.centre.qualifications),n(2),m(r.isAnyIdMatching(e.search.qualificationId,e.centre.qualifications)?-1:3)}}function Kt(t,a){if(t&1&&(o(0,"div",12)(1,"p"),v(2,"em",18),i()()),t&2){let e=a.$implicit;n(2),C("ngClass",e.centre.isEav?"icon icon-success":"icon icon-cross-small")}}function Ut(t,a){if(t&1&&(o(0,"div",12)(1,"p"),s(2),i()()),t&2){let e=a.$implicit;n(2),b(e.centre.methodOfStudy)}}function jt(t,a){if(t&1&&(o(0,"div",12)(1,"p"),s(2),i()()),t&2){let e=a.$implicit;n(2),b(e.distance.startsWith("NaN")?"":e.distance)}}function Gt(t,a){if(t&1){let e=w();o(0,"div",12)(1,"p")(2,"a",19),E("click",function(l){let d=S(e).$implicit,x=c();return y(x.removeById(d.centre.organisationId,l))}),v(3,"span",20),o(4,"span"),s(5,"Remove"),i()()()()}}function Qt(t,a){if(t&1&&(o(0,"li")(1,"span",25),s(2),i(),o(3,"a",26),s(4),i(),o(5,"p"),s(6),i()()),t&2){let e=a.$implicit,r=a.$index;n(2),b(r+1),n(2),g(" ",e.centre.name," "),n(2),b(e.distance)}}function Yt(t,a){if(t&1){let e=w();o(0,"div")(1,"div",27)(2,"google-map",28),E("mapInitialized",function(l){S(e);let d=c(2);return y(d.onMapReady(l))}),i()()()}if(t&2){let e=c(2);n(2),C("options",e.mapOptions)}}function Zt(t,a){if(t&1&&(o(0,"div")(1,"div",21)(2,"div",22)(3,"ul",23),f(4,Qt,7,3,"li",null,h),i()(),p(6,Yt,3,1,"div"),v(7,"div",24),i()()),t&2){let e=c();n(4),u(e.centresMapped),n(2),m(e.apiLoaded?6:-1)}}function Jt(t,a){t&1&&(o(0,"span",36),s(1," Enter an email address "),i())}function Xt(t,a){if(t&1&&(o(0,"span",36),s(1),i()),t&2){let e=c(3);n(),g(" ",e.UFO.message.email.email_not_valid," ")}}function te(t,a){if(t&1){let e=w();o(0,"div",30)(1,"label",34),s(2,"Send shortlist via email"),i(),o(3,"input",35,0),U("ngModelChange",function(l){S(e);let d=c(2);return K(d.model.pdfRecipient,l)||(d.model.pdfRecipient=l),y(l)}),i(),p(5,Jt,2,0,"span",36),p(6,Xt,2,1,"span",36),i()}if(t&2){let e=O(4),r=c(2);n(3),C("pattern",r.UFO.pattern.email),D("ngModel",r.model.pdfRecipient),n(2),m(e.touched&&e.hasError("required")?5:-1),n(),m(e.touched&&e.hasError("pattern")?6:-1)}}function ee(t,a){if(t&1&&(o(0,"button",32),s(1),i()),t&2){let e=c(2);W("disabled",!e.pdfRecipient.valid||e.isPDFSubmitted),C("disabled",!e.pdfRecipient.valid||e.isPDFSubmitted),n(),g(" ",e.pdfSubmitText," ")}}function ie(t,a){if(t&1&&v(0,"div",37),t&2){let e=c(2);P(F("alert ",e.statusType)),C("innerHTML",e.pdfSendStatustext,N)}}function ne(t,a){if(t&1){let e=w();o(0,"form",29),E("ngSubmit",function(){S(e);let l=c();return y(l.sendPdf(l.model.pdfRecipient))}),p(1,te,7,4,"div",30),o(2,"div")(3,"re-captcha",31),E("resolved",function(l){S(e);let d=c();return y(l&&d.recaptchaSubmit(l))}),i()(),p(4,ee,2,4,"button",32),p(5,ie,1,4,"div",33),i()}if(t&2){let e=c();n(),m(e.isPDFSubmitted?-1:1),n(2),C("siteKey",j(e.recaptchaSiteKey)),n(),m(e.isPDFSubmitted?-1:4),n(),m(e.pdfSendStatustext?5:-1)}}var be=(()=>{let a=class a{get colWidth(){return 12/(this.centresList.length+1)}get centreCount(){return this.centresList.length}constructor(r,l,d,x){this._http=r,this._location=l,this._shortlistService=d,this._searchMapService=x,this.recaptchaSiteKey="",this.backToResultsButton={text:"Back to results",action:{type:"callback",callback:this.goBack.bind(this)},type:"text",aria:"Back to results"},this.UFO=dt,this.centresList=[],this.location={},this.qualificationName={},this.gmapAPI=null,this.displayCaptcha=!0,this.pdfRecipient=new ot(""),this.pdfSubmitText="Submit",this.statusType="alert-success",this.pdfSendStatustext="",this.isPDFSubmitted=!1,this.model={pdfRecipient:""},this.centresMapped=[],this.apiLoaded=!1,this.mapOptions={center:{lat:0,lng:0},zoom:9,scrollwheel:!1,streetViewControl:!1,disableDoubleClickZoom:!0,mapTypeControl:!1},this.recaptchaSiteKey=pt.RECAPTCHA_SITEKEY,this.location=this._shortlistService.getLocation(),this.qualificationName=this._shortlistService.getQualificationName(),this._searchMapService.loadGoogleMapsLibrary().subscribe(_=>{this.apiLoaded=_})}ngOnInit(){this.updateMap()}isAnyIdMatching(r,l){let d=!1;return l.forEach(x=>{x.qualificationId===r&&(d=!0)}),d}removeById(r,l){l.preventDefault(),this.centresList.length==1&&this.goBack(l),this._shortlistService.removeById(r),this.updateMap()}updateMap(){this.centresList=this._shortlistService.getList(),this.centresMapped=[];for(let r in this.centresList)this.centresList[r].centre.methodOfStudy.toLowerCase()==="classroom"&&this.centresMapped.push(this.centresList[r])}onMapReady(r){this.mapOptions={center:{lat:this.location.coordinates.lat,lng:this.location.coordinates.lng},zoom:9,scrollwheel:!1,streetViewControl:!1,disableDoubleClickZoom:!0,mapTypeControl:!1},this._searchMapService.createMap(r,this.centresMapped,!0)}goBack(r){window.history.back()}sendPdf(r){if(!r.length)return!1;this.pdfRecipient=r,this.captchaRef.execute()}recaptchaSubmit(r){let l={Authorization:r};this.submitPdfData(l,this.pdfRecipient)}submitPdfData(r,l){dataLayer.push({event:"emailProviderShortlist"}),this.pdfSubmitText="Submitting...";let d=this.centresList.map(_=>(_.centre.methodOfStudy=_.centre.methodOfStudy.toLowerCase(),_.centre.methodOfStudy==="distance"&&(_.centre.methodOfStudy="online"),_.centre.distance=_.centre.distance||"",_.centre.qualifications=_.centre.qualifications.map(oe=>{var L=oe,{qualificationId:xt}=L,Ct=B(L,["qualificationId"]);return M(M({},{id:xt,enrolment:"",minPrice:0,maxPrice:0,partTimeTeachingHoursPerWeek:0,fullTimeTeachingHoursPerWeek:0}),Ct)}),_)),x={emailTo:l,subject:"Training provider comparison PDF from AAT",pdfContent:{qualificationName:this.qual
1ificationName,listings:d},pdfTemplate:"compareTP",emailTemplate:"default",attachmentName:"Training Provider Comparison"};this._shortlistService.emailPdf(r,x).subscribe(_=>{this.pdfSubmitText="Submitted",this.statusType="alert-success",this.pdfSendStatustext="Thank you. Check your <strong>"+l+"</strong> email for a PDF of your shortlist.",this.model.pdfRecipient=null,this.isPDFSubmitted=!0},_=>{this.pdfSubmitText="Submit",this.statusType="alert-danger",this.pdfSendStatustext="Sorry, please try again."})}resetForm(r){r.reset(),this.pdfSendStatustext=null,this.isPDFSubmitted=!1,this.pdfSubmitText="Submit",this.statusType="alert-success"}handleError(r){let l=r.message?r.message:r.status?"error.status - error.statusText":"Server error";return console.error(l),this.isPDFSubmitted=!1,R(l)}};a.\u0275fac=function(l){return new(l||a)(T(X),T(Q),T(ht),T(_t))},a.\u0275cmp=$({type:a,selectors:[["app-compare"]],viewQuery:function(l,d){if(l&1&&H(k,5),l&2){let x;z(x=A())&&(d.captchaRef=x.first)}},decls:64,vars:9,consts:[["pdfRecipient","ngModel"],[1,"tp-shortlist","container"],[1,"tp-shortlist__header"],[1,"tp-shortlist__button-toolbar"],[1,"tp-shortlist__header--title"],[1,"tp-shortlist__header--gray"],["id","list-anchor",1,"container"],[1,"row","justify-content-end"],[1,"qualification-name"],[1,"row"],[1,"tableTitle"],[1,"col","tp-title"],[1,"col"],[1,"compare-email"],["novalidate","","fab-recaptcha","recaptchaSiteKey"],[1,"tp-shortlist__button-toolbar","tp-shortlist__button-toolbar--footer"],[3,"button"],[3,"href"],[3,"ngClass"],["href","#",1,"remove-btn",3,"click"],[1,"icon","icon-cross-small"],[1,"compare-map","row"],[1,"col-sm-6","order-2","order-md-1"],[1,"compare-map__list"],[1,"clearfix"],[1,"list-numbers"],["href","#","redirectToCentre","['/training-providers/' + item.centre.pathAlias, item.centre]"],[1,"google-map"],["width","100%","height","100%",3,"mapInitialized","options"],["novalidate","","fab-recaptcha","recaptchaSiteKey",3,"ngSubmit"],[1,"form-group"],["size","invisible",3,"resolved","siteKey"],["type","submit",1,"button-primary","button-primary--type-regular","button-primary--size-medium","button-primary--theme-","button-primary--active",3,"disabled"],[3,"class","innerHTML"],["for","pdfRecipient"],["type","email","id","pdfRecipient","name","pdfRecipient","aria-describedby","emailHelp","placeholder","Enter email","required","",1,"form-control",3,"ngModelChange","pattern","ngModel"],[1,"badge","badge-danger"],[3,"innerHTML"]],template:function(l,d){l&1&&(o(0,"div",1)(1,"div",2),p(2,bt,2,1,"div",3),o(3,"h1",4),s(4),i(),o(5,"p",5),s(6,"You can compare up to 3 training providers in your shortlist."),i()(),v(7,"br"),o(8,"div",6)(9,"div",7)(10,"h2",8),s(11),i()()(),o(12,"div")(13,"div",9)(14,"p",10),s(15,"\xA0"),i(),f(16,gt,4,3,"div",11,h),i(),o(18,"div",9)(19,"p",10)(20,"strong"),s(21,"Enrolment date"),i()(),f(22,It,4,1,"div",12,h),i(),o(24,"div",9)(25,"p",10)(26,"strong"),s(27,"Costs"),i()(),f(28,Nt,4,1,"div",12,h),i(),o(30,"div",9)(31,"p",10)(32,"strong"),s(33,"Hours per week"),i()(),f(34,Dt,4,1,"div",12,h),i(),o(36,"div",9)(37,"p",10)(38,"strong"),s(39,"Assessments sat at this location"),i()(),f(40,Kt,3,1,"div",12,h),i(),o(42,"div",9)(43,"p",10)(44,"strong"),s(45,"Method of study"),i()(),f(46,Ut,3,1,"div",12,h),i(),o(48,"div",9)(49,"p",10)(50,"strong"),s(51,"Distance from your location"),i()(),f(52,jt,3,1,"div",12,h),i(),o(54,"div",9),v(55,"p",10),f(56,Gt,6,0,"div",12,h),i()(),o(58,"div"),p(59,Zt,8,1,"div"),o(60,"section",13),p(61,ne,6,5,"form",14),i(),o(62,"div",15),v(63,"fab-button",16),i()()()),l&2&&(n(2),m(d.centresList.length?2:-1),n(2),g("Shortlist (",d.centresList.length,")"),n(7),b(d.qualificationName),n(),P(F("table container table-cols-",d.centreCount)),n(4),u(d.centresList),n(6),u(d.centresList),n(6),u(d.centresList),n(6),u(d.centresList),n(6),u(d.centresList),n(6),u(d.centresList),n(6),u(d.centresList),n(4),u(d.centresList),n(3),m(d.centresMapped.length>0?59:-1),n(2),m(d.centresList.length?61:-1),n(2),C("button",d.backToResultsButton))},dependencies:[ft,Y,rt,tt,et,it,lt,st,at,nt,k,ct,ut,mt,J,Z],styles:[`:root{--aat-ui-grey-25: #bfbfbf;--aat-ui-grey-55: #737373;--aat-slate: #3a5066;--aat-ui-grey-05: #f2f2f2}.tp-shortlist{overflow:hidden;padding-top:30px;position:relative;max-width:90%;margin:0 auto}.tp-shortlist__header{display:inline-block;width:100%;margin-bottom:60px}.tp-shortlist__header__button-toolbar{margin-bottom:60px}.tp-shortlist__header--title{font-size:28;font-weight:100;margin-top:60px}.tp-shortlist__header--gray{color:#000;margin-bottom:0}.tp-shortlist .qualification-name{margin:0;padding:0 0 30px;text-align:center}.tp-shortlist .table{border:1px solid rgb(238.425,238.425,238.425);margin-bottom:30px}.tp-shortlist .table.table-cols-1 .row{grid-template-columns:1fr 1fr}.tp-shortlist .table.table-cols-2 .row{grid-template-columns:1fr 1fr 1fr}.tp-shortlist .table.table-cols-3 .row{grid-template-columns:1fr 1fr 1fr 1fr}.tp-shortlist .table .row{text-align:center;display:grid}.tp-shortlist .table .row p{margin:0;padding:15px 0}.tp-shortlist .table .row .tableTitle{background:#f6f6f6;font-size:18;padding:15px}.tp-shortlist .table .row .tp-title{display:inline-block;padding:15px}.tp-shortlist .table .row .col{border-left:1px solid rgb(238.425,238.425,238.425)}.tp-shortlist .table .row .col::first-child{border:0}.tp-shortlist button{border:none}.tp-shortlist__button-toolbar{position:relative;margin-bottom:15px}.tp-shortlist__button-toolbar a{border:1px solid rgb(238.425,238.425,238.425);color:#000;white-space:nowrap;margin:0 0 15px}.tp-shortlist__button-toolbar a:hover{text-decoration:none}.tp-shortlist__button-toolbar a.btn-primary{background-color:#00ab4e;color:#fff}.tp-shortlist .compare-map{margin-bottom:30px;padding:0}.tp-shortlist .compare-email{border:1px solid rgb(238.425,238.425,238.425);margin-bottom:30px;padding:30px}.tp-shortlist .compare-email>form{display:flex}
1.tp-shortlist .compare-email>form input{border:2px solid #dfe1e5;border-radius:3px;padding:10px;margin:0 10px}.tp-shortlist .compare-email .btn{color:#fff;box-shadow:none}.tp-shortlist .compare-email .btn .disabled{background-color:#00ab4e;border-color:#00ab4e}.tp-shortlist .compare-content__compare-table th.empty{border-style:none}.tp-shortlist .compare-content__compare-table td,.tp-shortlist .compare-content__compare-table th{font-size:12pt;font-weight:300;height:110px;vertical-align:middle;border-width:1px;border-color:#dce6f0;border-style:solid;text-align:center}.tp-shortlist .compare-content__compare-table th.table-header{font-size:18pt}.tp-shortlist .compare-content__compare-table td.course-title{color:#00ab4e;font-weight:600}.tp-shortlist .compare-content__compare-table th.row-header{font-weight:600}.tp-shortlist .compare-content__compare-table .icon-success{font-size:18pt;color:#00ab4e}.tp-shortlist .compare-map .compare-map__list li{padding:15px 0;font-size:13pt;font-weight:600;border-bottom-width:1px;border-bottom-color:#dce6f0;border-bottom-style:solid}.tp-shortlist .compare-map .compare-map__list li:last-child{border-bottom:0}.tp-shortlist .compare-map .compare-map__list li .list-numbers{margin-right:9px;color:#00ab4e}.tp-shortlist .compare-map .compare-map__list li p{font-size:13pt;font-weight:300;padding-left:0}.tp-shortlist .compare-map .compare-map__map{margin-bottom:10px}.tp-shortlist .compare-map #search-map-el{position:relative;padding-bottom:75%;height:0;overflow:hidden}.tp-shortlist .compare-map #search-map-el div{position:absolute;top:0;left:0;width:100%!important;height:100%!important}@media only screen and (max-width: 760px),(min-device-width: 768px) and (max-device-width: 1024px){table,thead,tbody,th,td,tr{display:block}thead tr{position:absolute;top:-9999px;left:-9999px}tr{border:1px solid #dce6f0;text-align:center}td{border:none;border-bottom:1px solid #dce6f0;position:relative}td:before{position:absolute;top:6px;left:6px;width:45%;padding-right:10px;white-space:nowrap}.course-title{display:block;color:#00ab4e;font-weight:500}.course-title:before{content:attr(data-before);float:left;width:50%}.data{text-align:center}}@media only screen and (max-width: 760px) and (max-width: 1024px),only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (max-width: 1024px){.from-medium{display:none}}@media only screen and (max-width: 760px),(min-device-width: 768px) and (max-device-width: 1024px){th.row-header{text-align:center;font-weight:700}}.google-map{width:350px;height:600px}@media (min-width: 768px){.google-map{width:500px;height:500px}} 2`],encapsulation:2});let t=a;return t})();export{be as ShortlistComponent};
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.