@lhci/viewer 0.11.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/entry-7NSFO3FC.js +12 -0
- package/dist/chunks/entry-7NSFO3FC.js.map +7 -0
- package/dist/chunks/entry-RBUMRG4S.css +12 -0
- package/dist/chunks/entry-RBUMRG4S.css.map +7 -0
- package/dist/index.html +10 -7
- package/package.json +4 -4
- package/src/ui/components/report-upload-box.css +4 -1
- package/src/ui/components/report-upload-box.jsx +1 -1
- package/src/ui/index.html +2 -2
- package/src/ui/routes/landing/landing.css +44 -6
- package/src/ui/routes/landing/landing.jsx +16 -11
- package/dist/entry.css +0 -12
- package/dist/entry.css.map +0 -7
- package/dist/entry.js +0 -12
- package/dist/entry.js.map +0 -7
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";(()=>{var Z1=Object.create;var be=Object.defineProperty,R1=Object.defineProperties,B1=Object.getOwnPropertyDescriptor,k1=Object.getOwnPropertyDescriptors,V1=Object.getOwnPropertyNames,se=Object.getOwnPropertySymbols,G1=Object.getPrototypeOf,ge=Object.prototype.hasOwnProperty,Ke=Object.prototype.propertyIsEnumerable;var qe=(e,t,r)=>t in e?be(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,L=(e,t)=>{for(var r in t||(t={}))ge.call(t,r)&&qe(e,r,t[r]);if(se)for(var r of se(t))Ke.call(t,r)&&qe(e,r,t[r]);return e},H=(e,t)=>R1(e,k1(t));var Ee=(e,t)=>{var r={};for(var a in e)ge.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(e!=null&&se)for(var a of se(e))t.indexOf(a)<0&&Ke.call(e,a)&&(r[a]=e[a]);return r};var V=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var W1=(e,t,r,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of V1(t))!ge.call(e,i)&&i!==r&&be(e,i,{get:()=>t[i],enumerable:!(a=B1(t,i))||a.enumerable});return e};var X=(e,t,r)=>(r=e!=null?Z1(G1(e)):{},W1(t||!e||!e.__esModule?be(r,"default",{value:e,enumerable:!0}):r,e));var G=(e,t,r)=>new Promise((a,i)=>{var s=c=>{try{f(r.next(c))}catch(u){i(u)}},o=c=>{try{f(r.throw(c))}catch(u){i(u)}},f=c=>c.done?a(c.value):Promise.resolve(c.value).then(s,o);f((r=r.apply(e,t)).next())});var mt=V((m4,er)=>{er.exports="./assets/loading-spinner-N6LEBK7Y.svg"});var vt=V((O4,nr)=>{nr.exports="./assets/favicon-PWXHY3O5.svg"});var Ct=V((V4,ir)=>{ir.exports="./assets/confetti-NE5ZCURM.svg"});var yt=V((G4,sr)=>{sr.exports="./assets/logo-7LKJDYBP.svg"});var q=V((f3,wt)=>{"use strict";function Ze(e,t){if(Array.isArray(e)){if(!Array.isArray(t))return t;for(let r=0;r<Math.max(e.length,t.length);r++)e[r]=r<t.length?Ze(e[r],t[r]):e[r];return e}else if(typeof e=="object"&&e!==null){if(typeof t!="object"||t===null)return t;let r=e,a=t,i=new Set(Object.keys(r)),s=new Set(Object.keys(a));for(let o of new Set([...i,...s]))r[o]=o in a?Ze(r[o],a[o]):r[o];return e}else return t}function xt(e,t){let r=e.replace(/([a-z])([A-Z])/g,"$1-$2");return t&&t.alphanumericOnly&&(r=r.replace(/[^a-z0-9]+/gi,"-").replace(/-+/g,"-").replace(/(^-|-$)/g,"")),r.toLowerCase()}function zt(e,t){let r=new Map;for(let a of e){let i=t(a),s=r.get(i)||[];s.push(a),r.set(i,s)}return r}function dr(e,t){let r,a=()=>{r&&clearTimeout(r),r=void 0},i=(...s)=>{r&&clearTimeout(r),r=setTimeout(()=>e(...s),t)};return i.cancel=a,i}wt.exports={merge:Ze,kebabCase:xt,debounce:dr,range(e,t,r=1){let a=[];for(let i=e;i<t;i+=r)a.push(i);return a},startCase(e){return xt(e).split("-").map(t=>`${t.slice(0,1).toUpperCase()}${t.slice(1)}`).join(" ")},padStart(e,t,r=" "){return e.length>=t?e:`${r.repeat(t)}${e}`.slice(-t)},padEnd(e,t,r=" "){return e.length>=t?e:`${e}${r.repeat(t)}`.slice(0,t)},isEqual(e,t,r=0){if(r>100||typeof e!=typeof t)return!1;if(Number.isNaN(e)&&Number.isNaN(t))return!0;if(typeof e!="object")return e===t;if(e===t)return!0;if(!e||!t)return!1;if(Array.isArray(e))return Array.isArray(t)?e.every((o,f)=>this.isEqual(o,t[f]))&&e.length===t.length:!1;let a=Object.keys(e).sort(),i=Object.keys(t).sort();return a.every(o=>this.isEqual(e[o],t[o],r+1))&&this.isEqual(a,i)},cloneDeep(e){return JSON.parse(JSON.stringify(e))},uniqBy(e,t){let r=new Set,a=[];for(let i of e){let s=t(i);r.has(s)||(r.add(s),a.push(i))}return a},groupBy(e,t){return[...zt(e,t).values()]},groupIntoMap:zt,maxBy(e,t){let r,a=-1/0;for(let i of e){let s=t(i);s>a&&(r=i,a=s)}return r},minBy(e,t){return this.maxBy(e,r=>-t(r))},sortBy(e,t){return e.slice().sort((r,a)=>t(r)-t(a))},pick(e,t){let r={};for(let[a,i]of Object.entries(e)){let s=a;!t.includes(s)||(r[s]=i)}return r},omit(e,t,r={}){let a={};for(let[i,s]of Object.entries(e)){let o=i;t.includes(o)||r.dropUndefined&&s===void 0||(a[o]=s)}return a},shortId(e){return e.replace(/-/g,"").slice(0,12)},pluralize(e,t,r){return r=r||`${e}s`,t===1?e:r},uniqueId:(()=>{let e=1;return()=>e++})()}});var Ht=V((c3,Dt)=>{"use strict";var ee=q(),pr="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin urna nunc, molestie sed hendrerit et, vulputate vitae mauris. Sed tempor vitae risus vel hendrerit. Nulla vestibulum malesuada erat vitae laoreet. Phasellus sodales vehicula dolor, dictum ullamcorper metus aliquam id. Nullam porttitor posuere purus id rhoncus. Sed et mi ligula. Donec imperdiet nulla sit amet justo cursus, id tempus ex accumsan. Maecenas ultricies elit eget lectus posuere vestibulum. Cras vestibulum neque nec justo congue feugiat non id dui. Pellentesque dapibus ac orci sed malesuada. Sed rhoncus vitae lorem eget facilisis. Donec auctor tortor a tortor egestas, vel condimentum lacus auctor.";function Lt(e){return e.startsWith("a11y")?"accessibility":e.startsWith("seo")?"seo":e.startsWith("best-practices")?"best-practices":e.startsWith("pwa")?"pwa":"performance"}function pe(e){if(e==="cumulative-layout-shift"||e==="first-contentful-paint"||e==="first-meaningful-paint"||e==="speed-index"||e==="interactive"||e==="first-cpu-idle"||e==="max-potential-fid")return"metrics";if(e.startsWith("diagnostic-"))return"diagnostics";if(e.startsWith("uses-"))return"load-opportunities";if(e.startsWith("a11y-aria"))return"a11y-aria";if(e.startsWith("a11y"))return"a11y-best-practices";if(e.startsWith("seo"))return"seo-content";if(e.startsWith("best-practices"))return"best-practices";if(e.startsWith("pwa-fast-reliable"))return"pwa-fast-reliable";if(e.startsWith("pwa-installable"))return"pwa-installable";if(e.startsWith("pwa-optimized"))return"pwa-optimized"}function me(e,t){let a=e*.1;return(t.next()-.5)*2*a+e}function mr(e,t,r){let a={},i=pr.split(" ");for(let d of t){let{auditId:p,averageNumericValue:v,averageWastedMs:P,unit:x="items"}=d,z=pe(p);if(typeof v=="number"){let h=me(v,r),w=1-Math.min(1,Math.max((h-1e3)/9e3,0));a[p]={score:w,numericValue:h,scoreDisplayMode:"numeric",displayValue:z==="metrics"?`${(h/1e3).toLocaleString(void 0,{maximumFractionDigits:1})} s`:`${Math.round(h)} ${x}`}}else if(typeof P=="number"){let h=me(P,r),w=1-Math.min(1,Math.max((h-100)/900,0)),D=d.items&&d.items.some(k=>k.averageWastedBytes),T=h*257;a[p]={score:w,scoreDisplayMode:"numeric",displayValue:D?`${(T/1024).toLocaleString(void 0,{maximumFractionDigits:0})} KB`:`${(h/1e3).toLocaleString(void 0,{maximumFractionDigits:1})} s`,details:{type:"opportunity",overallSavingsMs:h,overallSavingsBytes:D?T:void 0,items:[]}}}else{let{passRate:h=1}=d;a[p]={score:r.next()<=h?1:0,scoreDisplayMode:"binary"}}let y={};if(d.items){let h=[];for(let l of d.items){let m=l,{url:D,inclusionRate:T=1}=m,k=Ee(m,["url","inclusionRate"]);if(r.next()>T)continue;let J={};D&&(D.includes("lorempixel")&&(y.thumbnail={key:"url",valueType:"thumbnail"}),y.url={key:"url",valueType:"url",label:"URL"},J.url=new URL(D,e).href);for(let j of Object.keys(k))if(j.startsWith("average")){let ie=j.replace("average","").replace(/^\w/,O1=>O1.toLowerCase()),A1=j.endsWith("Ms")?"timespanMs":"bytes";y[ie]={key:ie,valueType:A1,label:ee.startCase(ie)};let M1=k[j];J[ie]=me(M1,r)}else y[j]={key:j,valueType:"text",label:ee.startCase(j)},J[j]=k[j];h.push(J)}let w=a[p].details||{type:"table"};w.headings=Object.values(y).map(D=>pe(p)==="load-opportunities"?D:H(L({},D),{itemType:D.valueType,text:D.label,valueType:void 0})),w.items=h,a[p].details=w}a[p].title=ee.startCase(p),a[p].description=`Help text for ${ee.startCase(p)}. ${i.slice(0,Math.round(p.length*1.5)).join(" ")}.`}let s={},o=ee.groupBy(Object.entries(a),d=>Lt(d[0]));for(let d of o){let p=Lt(d[0][0]),v=d.reduce((P,x)=>P+(x[1].score||0),0);s[p]={id:p,title:p.toUpperCase(),score:v/d.length,auditRefs:d.map(([P])=>({id:P,weight:1,group:pe(P)}))}}let f=new Date("2019-08-01T12:00:00").getTime(),c=Math.round(r.next()*1e3*60*60*24*7),u=new Date(f+c).toISOString();return{requestedUrl:e,finalUrl:e,categories:s,audits:a,fetchTime:u,lighthouseVersion:"5.2.0",configSettings:{channel:"cli"},categoryGroups:{metrics:{title:"Metrics"},"load-opportunities":{title:"Opportunities"},diagnostics:{title:"Diagnostics"},accessibility:{title:"Accessibility"},seo:{title:"SEO"},"best-practices":{title:"Best Practices"},"pwa-fast-reliable":{title:"PWA Fast & Reliable"},"pwa-installable":{title:"PWA Installable"},"pwa-optimized":{title:"PWA Optimized"}},runWarnings:[],userAgent:"Chrome!",environment:{hostUserAgent:"",networkUserAgent:"",benchmarkIndex:500},timing:{total:1,entries:[]},i18n:{rendererFormattedStrings:{},icuMessagePaths:{}}}}Dt.exports={createLHR:mr,generateNumericValue:me,getGroupForAuditId:pe}});var R=V((d3,Bt)=>{"use strict";var vr=q(),{getGroupForAuditId:Cr}=Ht(),yr=["main-thread-tasks","screenshot-thumbnails","metrics"];function Re(e,t="audit"){if(e===0)return"neutral";let r=e<0;return t==="score"&&(r=e>0),r?"improvement":"regression"}function br(e){switch(e.type){case"error":return"regression";case"score":return Re(K(e).delta,"score");case"numericValue":case"itemCount":case"itemDelta":return Re(K(e).delta,"audit");case"itemAddition":return"regression";case"itemRemoval":return"improvement";default:return"neutral"}}function At(e){if(!e.length)return"no change";if(e.some(r=>r.type==="itemAddition"))return"added";if(e.some(r=>r.type==="itemRemoval"))return"removed";let t=e.filter(r=>r.type==="itemDelta");return t.every(r=>r.compareValue>r.baseValue)?"worse":t.every(r=>r.compareValue<r.baseValue)?"better":t.length?"ambiguous":"no change"}function We(e,t,r){return e.filter(a=>{let i="compareItemIndex"in a?a.compareItemIndex:void 0,s="baseItemIndex"in a?a.baseItemIndex:void 0;return typeof i=="number"?i===t:typeof s=="number"?s===r:!1})}function Be(e,t,r){return At(We(e,t,r))}function Nt(e,t,r){let i=We(e,t,r).filter(Mt);if(!!i.length)return Math.max(...i.map(s=>K(s).delta))}function gr(e){return e.some(t=>t==="regression")?"regression":e.some(t=>t==="neutral")?"neutral":"improvement"}function Mt(e){return["score","numericValue","itemCount","itemDelta"].includes(e.type)}function Ft(e){return typeof e!="number"?"error":e>=.9?"pass":e>=.5?"average":"fail"}function Pr(e,t){return typeof e!="number"?"error":e<=t[0]?"pass":e<=t[1]?"average":"fail"}function hr(e){let t=Mt(e)?K(e).absoluteDelta:0;return e.type==="error"?1e12:e.type==="score"?1e10*t:e.type==="numericValue"?1e8*Math.max(t/1e3,1):e.type==="itemCount"?1e6*t:e.type==="itemAddition"||e.type==="itemRemoval"?1e5:e.type==="itemDelta"?Math.min(Math.max(t/100,1),1e5-1):0}function K(e){let{baseValue:t,compareValue:r}=e,a=r-t,i=Math.abs(a);if(a===0)return{delta:a,absoluteDelta:i,percentDelta:0,percentAbsoluteDelta:0};let s=t?a/t:1,o=Math.abs(s);return{delta:a,absoluteDelta:i,percentDelta:s,percentAbsoluteDelta:o}}function te(e){let{auditId:t,type:r,baseValue:a,compareValue:i,baseItemIndex:s,compareItemIndex:o,itemKey:f}=e;if(r==="itemAddition"){if(typeof o!="number")throw new Error("compareItemIndex is not set");return{auditId:t,type:r,compareItemIndex:o}}if(r==="itemRemoval"){if(typeof s!="number")throw new Error("baseItemIndex is not set");return{auditId:t,type:r,baseItemIndex:s}}if(r==="displayValue")throw new Error("Do not use createAuditDiff for displayValue, just manually create");if(typeof i!="number"||typeof a!="number"||!Number.isFinite(a)||!Number.isFinite(i)||r==="error")return{auditId:t,type:"error",attemptedType:r,baseValue:a||NaN,compareValue:i||NaN};let c={auditId:t,type:"score",baseValue:a,compareValue:i};if(r==="itemDelta"){if(typeof f!="string")throw new Error("itemKey is not set");if(typeof s!="number"&&typeof o!="number")throw new Error("Either baseItemIndex or compareItemIndex must be set");return H(L({},c),{type:"itemDelta",baseItemIndex:s,compareItemIndex:o,itemKey:f})}return H(L({},c),{type:r})}function xr(e,t,r,a){let i=[];for(let s of Object.keys(t.item)){let o=t.item[s],f=r.item[s];typeof o!="number"||typeof f!="number"||!a.some(c=>c.key===s)||i.push(te({auditId:e,type:"itemDelta",itemKey:s,baseItemIndex:t.index,compareItemIndex:r.index,baseValue:o,compareValue:f}))}return i}function Ot(e,t,r){let a=[];for(let i of e){if(i.type!=="itemAddition"&&i.type!=="itemRemoval")continue;let s=i.type==="itemAddition"?r[i.compareItemIndex]:t[i.baseItemIndex];for(let o of Object.keys(s)){let f=i.type==="itemAddition"?0:s[o],c=i.type==="itemAddition"?s[o]:0;if(typeof c!="number"||typeof f!="number")continue;let u=i.type==="itemAddition"?"compareItemIndex":"baseItemIndex",l=i.type==="itemAddition"?i.compareItemIndex:i.baseItemIndex;a.push(te({auditId:i.auditId,type:"itemDelta",itemKey:o,[u]:l,baseValue:f,compareValue:c}))}}return a}function Zt(e){if(e.startsWith("http")&&e.includes("?"))try{let t=new URL(e);t.search="",e=t.href}catch(t){}return e.replace(/www-embed-player-[0-9a-z]+/i,"www-embed-player").replace(/player_ias-[0-9a-z]+/i,"player_ias").replace(/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi,"UUID").replace(/:[0-9]{3,5}\//,":PORT/").replace(/(\.|-)[0-9a-f]{6,8}\.(js|css|woff|html|png|jpeg|jpg|svg)/i,"$1HASH.$2")}function ke(e){if(typeof e!="object"||e===null)return e;if(Array.isArray(e))return e.map(t=>ke(t));{let t=e,a=Object.keys(e).filter(s=>!s.startsWith("_")),i={};for(let s of a)i[s]=ke(t[s]);return i}}function Ve(e){var r,a,i;let t=e.source;return typeof t=="string"?t:t&&t.url?`${t.url}:${t.line}:${t.column}`:typeof e.label=="string"?e.label:typeof e.groupLabel=="string"?e.groupLabel:typeof e.name=="string"?e.name:typeof e.statistic=="string"?e.statistic:e.entity&&typeof e.entity.text=="string"?e.entity.text:typeof((r=e.node)==null?void 0:r.path)=="string"?e.node.path:typeof((a=e.tapTarget)==null?void 0:a.path)=="string"&&typeof((i=e.overlappingTarget)==null?void 0:i.path)=="string"?`${e.tapTarget.path} + ${e.overlappingTarget.path}`:typeof e.url=="string"&&e.url?e.url:typeof e.origin=="string"&&e.origin?e.origin:JSON.stringify(ke(e))}function Rt(e,t){let r=vr.groupIntoMap([...e.map((i,s)=>({item:i,kind:"base",index:s})),...t.map((i,s)=>({item:i,kind:"compare",index:s}))],i=>Zt(Ve(i.item))),a=[];for(let i of r.values()){let s=i.filter(f=>f.kind==="base"),o=i.filter(f=>f.kind==="compare");if(s.length>1||o.length>1){for(let f of i)a.push({[f.kind]:f});continue}a.push({base:s[0],compare:o[0]})}return a}function zr(e,t){let r=["added","worse","ambiguous","removed","better","no change"];return t.map(a=>H(L({},a),{diffs:We(e,a.compare&&a.compare.index,a.base&&a.base.index)})).sort((a,i)=>{let s=a.compare&&a.compare.index,o=a.base&&a.base.index,f=i.compare&&i.compare.index,c=i.base&&i.base.index,u=r.indexOf(Be(e,s,o)),l=r.indexOf(Be(e,f,c)),m=Ve(a.compare&&a.compare.item||a.base&&a.base.item||{}),d=Ve(i.compare&&i.compare.item||i.base&&i.base.item||{}),p=Nt(e,s,o),v=Nt(e,f,c);return u===l?typeof p=="number"&&typeof v=="number"?v-p:m.localeCompare(d):u-l})}function wr(e,t,r,a){let i=[];for(let{base:s,compare:o}of Rt(t,r))if(s&&o)i.push(...xr(e,s,o,a));else if(o)i.push({type:"itemAddition",auditId:e,compareItemIndex:o.index});else if(s)i.push({type:"itemRemoval",auditId:e,baseItemIndex:s.index});else throw new Error("Impossible");return i}function Xt(e){return e.scoreDisplayMode==="notApplicable"?1:e.scoreDisplayMode==="informative"?0:e.score}function Ge(e){return typeof e.numericValue!="number"&&e.details&&typeof e.details.overallSavingsMs=="number"?e.details.overallSavingsMs:e.numericValue}function Tt(e){return e.scoreDisplayMode==="notApplicable"?0:Ge(e)}function jt(e){return e.details?{items:e.details.items||[],headings:e.details.headings||[]}:{items:[],headings:[]}}function Lr(e,t,r={}){let a=e.id||"",{percentAbsoluteDeltaThreshold:i=0}=r,s=[];if(yr.includes(a))return s;(typeof e.score=="number"||typeof t.score=="number")&&s.push(te({auditId:a,type:"score",baseValue:Xt(e),compareValue:Xt(t)})),(typeof Ge(e)=="number"||typeof Ge(t)=="number")&&s.push(te({auditId:a,type:"numericValue",baseValue:Tt(e),compareValue:Tt(t)})),(typeof e.displayValue=="string"||typeof t.displayValue=="string")&&s.push({auditId:a,type:"displayValue",baseValue:e.displayValue||"",compareValue:t.displayValue||""});let o=!1,f=e.details||{},c=t.details||{};if(f.type!=="debugdata"&&f.items||c.type!=="debugdata"&&c.items){o=!0;let{items:d,headings:p}=jt(e),{items:v,headings:P}=jt(t),x=p.concat(P);s.push(te({auditId:a,type:"itemCount",baseValue:d.length,compareValue:v.length})),s.push(...wr(a,d,v,x)),r.synthesizeItemKeyDiffs&&s.push(...Ot(s,d,v))}let u=s.filter(d=>d.type==="error"||d.type==="itemAddition"||d.type==="itemRemoval"?!0:d.type==="score"&&!r.forceAllScoreDiffs?Ft(d.baseValue)!==Ft(d.compareValue):d.type==="displayValue"?d.baseValue!==d.compareValue&&!r.skipDisplayValueDiffs:K(d).percentAbsoluteDelta>i);if(u.length===1&&u[0].type==="displayValue")return[];let l=t.score===1&&e.score===1;return Cr(a)!=="metrics"&&u.every(d=>d.type==="displayValue"||d.type==="numericValue")&&(l||o)?[]:u}Bt.exports={findAuditDiffs:Lr,getDiffSeverity:hr,getDeltaLabel:Re,getDeltaStats:K,getDiffLabel:br,getRowLabel:At,getRowLabelForIndex:Be,getMostSevereDiffLabel:gr,getMetricScoreLevel:Pr,zipBaseAndCompareItems:Rt,synthesizeItemKeyDiffs:Ot,sortZippedBaseAndCompareItems:zr,replaceNondeterministicStrings:Zt}});var Wt=V((D3,Gt)=>{"use strict";function Dr(e){let t=[],r=e.split(/\[([^\]]+?)\]\((https?:\/\/.*?)\)/g);for(;r.length;){let[a,i,s]=r.splice(0,3);a&&t.push({isLink:!1,text:a}),i&&s&&t.push({isLink:!0,text:i,linkHref:s})}return t}Gt.exports={splitMarkdownLink:Dr}});var b,Y1,oe,et,he,ze,J1,A={},we=[],I1=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|^--/i;function W(e,t){for(var r in t)e[r]=t[r];return e}function tt(e){var t=e.parentNode;t&&t.removeChild(e)}function n(e,t,r){var a,i,s,o,f=arguments;if(t=W({},t),arguments.length>3)for(r=[r],a=3;a<arguments.length;a++)r.push(f[a]);if(r!=null&&(t.children=r),e!=null&&e.defaultProps!=null)for(i in e.defaultProps)t[i]===void 0&&(t[i]=e.defaultProps[i]);return o=t.key,(s=t.ref)!=null&&delete t.ref,o!=null&&delete t.key,xe(e,t,o,s)}function xe(e,t,r,a){var i={type:e,props:t,key:r,ref:a,__k:null,__p:null,__b:0,__e:null,l:null,__c:null,constructor:void 0};return b.vnode&&b.vnode(i),i}function C(e){return e.children}function U1(e){if(e==null||typeof e=="boolean")return null;if(typeof e=="string"||typeof e=="number")return xe(null,e,null,null);if(e.__e!=null||e.__c!=null){var t=xe(e.type,e.props,e.key,null);return t.__e=e.__e,t}return e}function M(e,t){this.props=e,this.context=t}function le(e,t){if(t==null)return e.__p?le(e.__p,e.__p.__k.indexOf(e)+1):null;for(var r;t<e.__k.length;t++)if((r=e.__k[t])!=null&&r.__e!=null)return r.__e;return typeof e.type=="function"?le(e):null}function rt(e){var t,r;if((e=e.__p)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((r=e.__k[t])!=null&&r.__e!=null){e.__e=e.__c.base=r.__e;break}return rt(e)}}function Pe(e){(!e.__d&&(e.__d=!0)&&oe.push(e)===1||he!==b.debounceRendering)&&(he=b.debounceRendering,(b.debounceRendering||et)(S1))}function S1(){var e,t,r,a,i,s,o;for(oe.sort(function(f,c){return c.__v.__b-f.__v.__b});e=oe.pop();)e.__d&&(r=void 0,a=void 0,s=(i=(t=e).__v).__e,(o=t.__P)&&(r=[],a=Le(o,i,W({},i),t.__n,o.ownerSVGElement!==void 0,null,r,s==null?le(i):s),at(r,i),a!=s&&rt(i)))}function nt(e,t,r,a,i,s,o,f,c){var u,l,m,d,p,v,P,x=r&&r.__k||we,z=x.length;if(f==A&&(f=s!=null?s[0]:z?le(r,0):null),u=0,t.__k=fe(t.__k,function(y){if(y!=null){if(y.__p=t,y.__b=t.__b+1,(m=x[u])===null||m&&y.key==m.key&&y.type===m.type)x[u]=void 0;else for(l=0;l<z;l++){if((m=x[l])&&y.key==m.key&&y.type===m.type){x[l]=void 0;break}m=null}if(d=Le(e,y,m=m||A,a,i,s,o,f,c),(l=y.ref)&&m.ref!=l&&(P||(P=[])).push(l,y.__c||d,y),d!=null){if(v==null&&(v=d),y.l!=null)d=y.l,y.l=null;else if(s==m||d!=f||d.parentNode==null){e:if(f==null||f.parentNode!==e)e.appendChild(d);else{for(p=f,l=0;(p=p.nextSibling)&&l<z;l+=2)if(p==d)break e;e.insertBefore(d,f)}t.type=="option"&&(e.value="")}f=d.nextSibling,typeof t.type=="function"&&(t.l=d)}}return u++,y}),t.__e=v,s!=null&&typeof t.type!="function")for(u=s.length;u--;)s[u]!=null&&tt(s[u]);for(u=z;u--;)x[u]!=null&&I(x[u],x[u]);if(P)for(u=0;u<P.length;u++)it(P[u],P[++u],P[++u])}function fe(e,t,r){if(r==null&&(r=[]),e==null||typeof e=="boolean")t&&r.push(t(null));else if(Array.isArray(e))for(var a=0;a<e.length;a++)fe(e[a],t,r);else r.push(t?t(U1(e)):e);return r}function q1(e,t,r,a,i){var s;for(s in r)s in t||_e(e,s,null,r[s],a);for(s in t)i&&typeof t[s]!="function"||s==="value"||s==="checked"||r[s]===t[s]||_e(e,s,t[s],r[s],a)}function Qe(e,t,r){t[0]==="-"?e.setProperty(t,r):e[t]=typeof r=="number"&&I1.test(t)===!1?r+"px":r==null?"":r}function _e(e,t,r,a,i){var s,o,f,c,u;if(!((t=i?t==="className"?"class":t:t==="class"?"className":t)==="key"||t==="children"))if(t==="style")if(s=e.style,typeof r=="string")s.cssText=r;else{if(typeof a=="string"&&(s.cssText="",a=null),a)for(o in a)r&&o in r||Qe(s,o,"");if(r)for(f in r)a&&r[f]===a[f]||Qe(s,f,r[f])}else t[0]==="o"&&t[1]==="n"?(c=t!==(t=t.replace(/Capture$/,"")),u=t.toLowerCase(),t=(u in e?u:t).slice(2),r?(a||e.addEventListener(t,$e,c),(e.u||(e.u={}))[t]=r):e.removeEventListener(t,$e,c)):t!=="list"&&t!=="tagName"&&t!=="form"&&!i&&t in e?e[t]=r==null?"":r:typeof r!="function"&&t!=="dangerouslySetInnerHTML"&&(t!==(t=t.replace(/^xlink:?/,""))?r==null||r===!1?e.removeAttributeNS("http://www.w3.org/1999/xlink",t.toLowerCase()):e.setAttributeNS("http://www.w3.org/1999/xlink",t.toLowerCase(),r):r==null||r===!1?e.removeAttribute(t):e.setAttribute(t,r))}function $e(e){return this.u[e.type](b.event?b.event(e):e)}function Le(e,t,r,a,i,s,o,f,c){var u,l,m,d,p,v,P,x,z,y,h=t.type;if(t.constructor!==void 0)return null;(u=b.__b)&&u(t);try{e:if(typeof h=="function"){if(x=t.props,z=(u=h.contextType)&&a[u.__c],y=u?z?z.props.value:u.__p:a,r.__c?P=(l=t.__c=r.__c).__p=l.__E:("prototype"in h&&h.prototype.render?t.__c=l=new h(x,y):(t.__c=l=new M(x,y),l.constructor=h,l.render=E1),z&&z.sub(l),l.props=x,l.state||(l.state={}),l.context=y,l.__n=a,m=l.__d=!0,l.__h=[]),l.__s==null&&(l.__s=l.state),h.getDerivedStateFromProps!=null&&W(l.__s==l.state?l.__s=W({},l.__s):l.__s,h.getDerivedStateFromProps(x,l.__s)),m)h.getDerivedStateFromProps==null&&l.componentWillMount!=null&&l.componentWillMount(),l.componentDidMount!=null&&o.push(l);else{if(h.getDerivedStateFromProps==null&&l.t==null&&l.componentWillReceiveProps!=null&&l.componentWillReceiveProps(x,y),!l.t&&l.shouldComponentUpdate!=null&&l.shouldComponentUpdate(x,l.__s,y)===!1){for(l.props=x,l.state=l.__s,l.__d=!1,l.__v=t,t.__e=r.__e,t.__k=r.__k,u=0;u<t.__k.length;u++)t.__k[u]&&(t.__k[u].__p=t);break e}l.componentWillUpdate!=null&&l.componentWillUpdate(x,l.__s,y)}d=l.props,p=l.state,l.context=y,l.props=x,l.state=l.__s,(u=b.__r)&&u(t),l.__d=!1,l.__v=t,l.__P=e,u=l.render(l.props,l.state,l.context),t.__k=fe(u!=null&&u.type==C&&u.key==null?u.props.children:u),l.getChildContext!=null&&(a=W(W({},a),l.getChildContext())),m||l.getSnapshotBeforeUpdate==null||(v=l.getSnapshotBeforeUpdate(d,p)),nt(e,t,r,a,i,s,o,f,c),l.base=t.__e,u=l.__h,l.__h=[],u.some(function(w){w.call(l)}),m||d==null||l.componentDidUpdate==null||l.componentDidUpdate(d,p,v),P&&(l.__E=l.__p=null),l.t=null}else t.__e=K1(r.__e,t,r,a,i,s,o,c);(u=b.diffed)&&u(t)}catch(w){b.__e(w,t,r)}return t.__e}function at(e,t){for(var r;r=e.pop();)try{r.componentDidMount()}catch(a){b.__e(a,r.__v)}b.__c&&b.__c(t)}function K1(e,t,r,a,i,s,o,f){var c,u,l,m,d,p=r.props,v=t.props;if(i=t.type==="svg"||i,e==null&&s!=null){for(c=0;c<s.length;c++)if((u=s[c])!=null&&(t.type===null?u.nodeType===3:u.localName===t.type)){e=u,s[c]=null;break}}if(e==null){if(t.type===null)return document.createTextNode(v);e=i?document.createElementNS("http://www.w3.org/2000/svg",t.type):document.createElement(t.type),s=null}if(t.type===null)s!=null&&(s[s.indexOf(e)]=null),p!==v&&(e.data=v);else if(t!==r){if(s!=null&&(s=we.slice.call(e.childNodes)),l=(p=r.props||A).dangerouslySetInnerHTML,m=v.dangerouslySetInnerHTML,!f){if(p===A)for(p={},d=0;d<e.attributes.length;d++)p[e.attributes[d].name]=e.attributes[d].value;(m||l)&&(m&&l&&m.__html==l.__html||(e.innerHTML=m&&m.__html||""))}q1(e,v,p,i,f),t.__k=t.props.children,m||nt(e,t,r,a,t.type!=="foreignObject"&&i,s,o,A,f),f||("value"in v&&v.value!==void 0&&v.value!==e.value&&(e.value=v.value==null?"":v.value),"checked"in v&&v.checked!==void 0&&v.checked!==e.checked&&(e.checked=v.checked))}return e}function it(e,t,r){try{typeof e=="function"?e(t):e.current=t}catch(a){b.__e(a,r)}}function I(e,t,r){var a,i,s;if(b.unmount&&b.unmount(e),(a=e.ref)&&it(a,null,t),r||typeof e.type=="function"||(r=(i=e.__e)!=null),e.__e=e.l=null,(a=e.__c)!=null){if(a.componentWillUnmount)try{a.componentWillUnmount()}catch(o){b.__e(o,t)}a.base=a.__P=null}if(a=e.__k)for(s=0;s<a.length;s++)a[s]&&I(a[s],t,r);i!=null&&tt(i)}function E1(e,t,r){return this.constructor(e,r)}function U(e,t,r){var a,i,s;b.__p&&b.__p(e,t),i=(a=r===ze)?null:r&&r.__k||t.__k,e=n(C,null,[e]),s=[],Le(t,a?t.__k=e:(r||t).__k=e,i||A,A,t.ownerSVGElement!==void 0,r&&!a?[r]:i?null:we.slice.call(t.childNodes),s,r||A,a),at(s,e)}function st(e,t){U(e,t,ze)}b={},Y1=function(e){return e!=null&&e.constructor===void 0},M.prototype.setState=function(e,t){var r=this.__s!==this.state&&this.__s||(this.__s=W({},this.state));(typeof e!="function"||(e=e(r,this.props)))&&W(r,e),e!=null&&this.__v&&(this.t=!1,t&&this.__h.push(t),Pe(this))},M.prototype.forceUpdate=function(e){this.__v&&(this.t=!0,e&&this.__h.push(e),Pe(this))},M.prototype.render=C,oe=[],et=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,he=b.debounceRendering,b.__e=function(e,t,r){for(var a;t=t.__p;)if((a=t.__c)&&!a.__p)try{if(a.constructor&&a.constructor.getDerivedStateFromError!=null)a.setState(a.constructor.getDerivedStateFromError(e));else{if(a.componentDidCatch==null)continue;a.componentDidCatch(e)}return Pe(a.__E=a)}catch(i){e=i}throw e},ze=A,J1=0;var ce,O,He=[],ot=b.__r;b.__r=function(e){ot&&ot(e),ce=0,(O=e.__c).__H&&(O.__H.t=Te(O.__H.t))};var lt=b.diffed;b.diffed=function(e){lt&<(e);var t=e.__c;if(t){var r=t.__H;r&&(r.u=(r.u.some(function(a){a.ref&&(a.ref.current=a.createHandle())}),[]),r.i=Te(r.i))}};var ft=b.unmount;function Ne(e){b.__h&&b.__h(O);var t=O.__H||(O.__H={o:[],t:[],i:[],u:[]});return e>=t.o.length&&t.o.push({}),t.o[e]}function N(e){return ct(pt,e)}function ct(e,t,r){var a=Ne(ce++);return a.__c||(a.__c=O,a.v=[r?r(t):pt(void 0,t),function(i){var s=e(a.v[0],i);a.v[0]!==s&&(a.v[0]=s,a.__c.setState({}))}]),a.v}function F(e,t){var r=Ne(ce++);dt(r.m,t)&&(r.v=e,r.m=t,O.__H.t.push(r),ut(O))}function Z(e){return Fe(function(){return{current:e}},[])}function Fe(e,t){var r=Ne(ce++);return dt(r.m,t)?(r.m=t,r.p=e,r.v=e()):r.v}function Xe(e,t){return Fe(function(){return e},t)}b.unmount=function(e){ft&&ft(e);var t=e.__c;if(t){var r=t.__H;r&&r.o.forEach(function(a){return a.l&&a.l()})}};var ut=function(){};function Q1(){He.some(function(e){e.s=!1,e.__P&&(e.__H.t=Te(e.__H.t))}),He=[]}typeof window!="undefined"&&(De=b.requestAnimationFrame,ut=function(e){(!e.s&&(e.s=!0)&&He.push(e)===1||De!==b.requestAnimationFrame)&&(De=b.requestAnimationFrame,(b.requestAnimationFrame||function(t){var r=function(){clearTimeout(a),cancelAnimationFrame(i),setTimeout(t)},a=setTimeout(r,100),i=requestAnimationFrame(r)})(Q1))});var De;function Te(e){return e.forEach(_1),e.forEach($1),[]}function _1(e){e.l&&e.l()}function $1(e){var t=e.v();typeof t=="function"&&(e.l=t)}function dt(e,t){return!e||t.some(function(r,a){return r!==e[a]})}function pt(e,t){return typeof t=="function"?t(e):t}function je(e){var t,r,a="";if(e)if(typeof e=="object")if(e.push)for(t=0;t<e.length;t++)e[t]&&(r=je(e[t]))&&(a&&(a+=" "),a+=r);else for(t in e)e[t]&&(r=je(t))&&(a&&(a+=" "),a+=r);else typeof e!="boolean"&&!e.call&&(a&&(a+=" "),a+=e);return a}function g(){for(var e=0,t,r="";e<arguments.length;)(t=je(arguments[e++]))&&(r&&(r+=" "),r+=t);return r}var tr=mt(),rr=()=>n("img",{src:tr,alt:"Loading spinner"}),Ae=e=>n("div",{className:g("loading-spinner",{"loading-spinner--container":!e.solo})},n(rr,null));var Y=e=>{let{children:t}=e;return n("div",{className:g("paper",e.className)},t)};function ue(e){let t="https://googlechrome.github.io";window.addEventListener("message",function s(o){o.origin===t&&i&&o.data.opened&&(i.postMessage({lhresults:e},t),window.removeEventListener("message",s))});let r=e.fetchTime,a=`${e.lighthouseVersion}-${e.requestedUrl}-${r}`,i=window.open(`${t}/lighthouse/viewer`,a)}var de=e=>{let{children:t,lhr:r}=e,[a,i]=N(!1);return n("span",{className:g("lhr-viewer-link",e.className,{"lhr-viewer-link--loading":a}),onClick:s=>G(void 0,null,function*(){if(s.preventDefault(),s.stopImmediatePropagation(),a)return;if(typeof r=="object")return ue(r);i(!0);let o=yield r();i(!1),ue(o)})},t)};var ar=vt(),Me=e=>{let{lhr:t,label:r="Open Report"}=e;return n(de,{lhr:t},n("div",{className:"lhr-viewer-button",role:"button"},n("img",{src:ar})," ",n("span",null,r)))};var bt=Ct(),$=yt();function Oe(e){if(e.includes("<script>window.__LIGHTHOUSE_JSON__ = ")){let t=e.match(/window\.__LIGHTHOUSE_JSON__ = (.*?});<\/script>/);t&&(e=t[1])}if(e.trim().charAt(0)==="{")try{let t=JSON.parse(e);return t.lighthouseVersion?t:new Error("JSON did not contain a lighthouseVersion")}catch(t){return new Error(`File was not valid JSON (${t.message})`)}return new Error("File was not a valid report")}function gt(e,t){let r=new URL(e.finalUrl),a=new URL(t.finalUrl);return r.hostname!==a.hostname?"hostname":r.pathname!==a.pathname?"pathname":r.search!==a.search?"path":r.pathname.length<5?"timestamp-hostname":"timestamp-pathname"}var or=e=>{let{filename:t,lhr:r}=e.report,a=new URL(r.finalUrl),i=new Date(r.fetchTime).toLocaleString(),s={filename:t,hostname:a.hostname,pathname:a.pathname,path:`${a.pathname}${a.search}`,"timestamp-hostname":`${i} (${a.hostname})`,"timestamp-pathname":`${i} (${a.pathname})`},o=`${a.href} at ${i}`;return n("span",{title:o},s[e.displayType])};function Pt(e,t){let r=t[0].name,a=new FileReader;a.readAsText(t[0],"utf-8"),a.addEventListener("load",()=>{if(typeof a.result!="string"){e.addToast({message:"File was not readable as text!",level:"error"});return}let i=Oe(a.result);if(i instanceof Error){e.addToast({message:`Invalid file: ${i.message}`,level:"error"});return}e.setReport({filename:r,data:a.result,lhr:i})}),a.addEventListener("error",()=>{e.addToast({message:"File was not readable!",level:"error"})})}function lr(e,t,r,a){a.target instanceof HTMLElement&&(a.stopPropagation(),a.preventDefault(),r(!0),t.current=a.target)}function fr(e,t,r,a){a.target===t.current&&(a.stopPropagation(),a.preventDefault(),r(!1),t.current=void 0)}function cr(e,t,r,a){!t.current||(a.stopPropagation(),a.preventDefault())}function ur(e,t,r,a){!t.current||a instanceof DragEvent&&(!a.dataTransfer||(a.stopPropagation(),a.preventDefault(),r(!1),t.current=void 0,Pt(e,a.dataTransfer.files)))}var S=e=>{let[t,r]=N(!1),a=Z(void 0),i=c=>lr(e,a,r,c),s=c=>fr(e,a,r,c),o=c=>cr(e,a,r,c),f=c=>ur(e,a,r,c);return F(()=>{if(e.dragTarget==="document")return document.addEventListener("dragenter",i),document.addEventListener("dragleave",s),document.addEventListener("dragover",o),document.addEventListener("drop",f),()=>{document.removeEventListener("dragenter",i),document.removeEventListener("dragleave",s),document.removeEventListener("dragover",o),document.removeEventListener("drop",f)}},[e.dragTarget,e.addToast,e.setReport,a.current]),n("div",{className:g(`report-upload-box report-upload-box--${e.variant}`,{"report-upload-box--drop":t,"report-upload-box--document-target":e.dragTarget==="document"}),onDragEnter:i,onDragLeave:s,onDragOver:o,onDrop:f},n("div",{className:"report-upload-box__drop-outline"},"Drop your report to upload"),n("span",{className:"report-upload-box__label"},e.variant==="base"?"Base":"Compare"),n("div",{className:"report-upload-box__file"},e.report?n(or,{report:e.report,displayType:e.displayType}):n(C,null)),n("div",{className:"report-upload-box__lhr-link"},e.report&&e.showOpenLhrLink?n(Me,{lhr:e.report.lhr,label:"View Report"}):null),n("div",{className:"report-upload-box__spacer"}),n("label",{className:"report-upload-box__upload"},"Select file",n("input",{type:"file",style:{display:"none"},onChange:c=>{let u=c.target;if(!(u instanceof HTMLInputElement))return;let l=u.files;!l||l.length!==1||Pt(e,l)}})))};var ht=e=>n("div",{className:"landing"},n("div",{className:"landing__background"},n("img",{src:bt,alt:"Lighthouse CI Background Image"})),n(Y,{className:"landing__paper"},n("div",{className:"landing__logos"},n("img",{className:"landing__logo",src:$,alt:"Lighthouse Logo"}),n("img",{className:"landing__logo landing__logo--diff",src:$,alt:""}),n("h1",null,"Lighthouse Report Diff Tool")),n("p",null,"Provide two Lighthouse reports to start comparing!"),n("p",null,n("a",{href:"./?baseReport=https://googlechrome.github.io/lighthouse-ci/packages/server/test/fixtures/lh-5-6-0-verge-a.json&compareReport=https://googlechrome.github.io/lighthouse-ci/packages/server/test/fixtures/lh-5-6-0-verge-b.json"},"View example diff")),n("div",{className:"landing__upload"},n(S,{variant:"base",report:e.baseReport,setReport:e.setBaseReport,addToast:e.addToast,displayType:"filename",dragTarget:e.baseReport?"self":"document"}),n(S,{variant:"compare",report:e.compareReport,setReport:e.setCompareReport,addToast:e.addToast,displayType:"filename",dragTarget:e.baseReport?"document":"self"})),n("p",null,"Above, drag 'n drop your JSON/HTML, or select the files from disk."),n("footer",null,"Powered by ",n("a",{href:"https://github.com/GoogleChrome/lighthouse-ci"},"lighthouse-ci"))));var z1=X(q()),ye=X(R());var kt=e=>{let{options:t,value:r,setValue:a,className:i,title:s,label:o}=e,f=t.some(c=>c.value===r)?t:[...t,{value:r,label:r}];return n("div",{className:g("dropdown",i),style:{position:"relative"},"data-tooltip":s},n("label",null,o?n("span",{className:"dropdown__label"},o):n(C,null),n("select",{onChange:c=>{c.target instanceof HTMLSelectElement&&a(c.target.value)}},f.map(c=>n("option",{key:c.value,value:c.value,selected:c.value===r},c.label)))),n("div",{className:"dropdown__chevron"},n("i",{className:"material-icons"},"arrow_drop_down")))};function Vt(e){let t=Z(void 0);return F(()=>{t.current=e},[e]),t.current}var B=e=>{let t=e.score;return t>=.9?n("i",{className:"lh-score-pass"}):t>=.5?n("i",{className:"lh-score-average"}):n("i",{className:"lh-score-fail"},n("svg",{viewBox:"0 0 120 120",xmlns:"http://www.w3.org/2000/svg"},n("polygon",{points:"10,110 60,10 110,110"})))},E=e=>(e.audit.score||0)>=.9?n("span",{className:"lh-score-word"},"Pass"):n("span",{className:"lh-score-word"},"Fail");var Yt=X(Wt());var Jt=e=>{let t=(0,Yt.splitMarkdownLink)(e.text);return n(C,null,t.map((r,a)=>{if(!r.isLink)return n("span",{key:a},r.text);let i=new URL(r.linkHref);return["https://developers.google.com","https://web.dev"].includes(i.origin)&&(i.searchParams.set("utm_source","lighthouse"),i.searchParams.set("utm_medium","ci")),n("a",{key:a,href:i.href,target:"_blank",rel:"noopener noreferrer"},r.text)}))};var re=()=>n("span",{style:{display:"inline-block",width:4,height:1}});var ne=X(R());var It=e=>{let t=e.type,{compareValue:r,baseValue:a,diff:i}=e,s=r===void 0?a:r;typeof s=="object"&&s.type&&(t=s.type);let o=i?(0,ne.getDiffLabel)(i):"neutral",f=Number.isFinite(a)?a:0,c=Number.isFinite(r)?r:0,u=`Base Value: ${Math.round(f).toLocaleString()}`,l=`Compare Value: ${Math.round(c).toLocaleString()}`,m=`${u}, ${l}`,d=i&&(0,ne.getDeltaStats)(i).percentAbsoluteDelta!==1?` (${((0,ne.getDeltaStats)(i).percentAbsoluteDelta*100).toLocaleString(void 0,{maximumFractionDigits:0})}%)`:"";switch(t){case"bytes":{let p=Math.abs((c-f)/1024);return n("pre",{className:`simple-details--${o}`,"data-tooltip":m},c>=f?"+":"-",p.toLocaleString(void 0,{maximumFractionDigits:Math.abs(p)<1?1:0}),n(re,null),"KB",d)}case"ms":case"timespanMs":{let p=Math.abs(Math.round(c-f));return n("pre",{className:`simple-details--${o}`,"data-tooltip":m},c>=f?"+":"-",p.toLocaleString(),n(re,null),"ms",d)}case"thumbnail":return n("img",{style:{width:48,height:48,objectFit:"cover"},src:s,onError:p=>{let v=p.srcElement;v instanceof HTMLImageElement&&(v.onerror=null,v.src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")}});case"url":{let p=s,v="";try{let P=new URL(s);p=P.pathname,v=P.hostname}catch(P){}return n("span",{title:s},p,v?n("span",{className:"simple-details__url-hostname"},"(",v,")"):"")}case"link":return s.url?n("a",{target:"_blank",rel:"noopener noreferrer",href:s.url},s.text):n("span",null,s.text);case"code":return n("pre",null,s);case"numeric":return n("pre",{className:`simple-details--${o}`},c>=f?"+":"-",Math.abs(c-f).toLocaleString(),d);case"text":return n("span",null,s);case"node":return n("pre",null,s.snippet);case"source-location":{if(!s.url)return n("pre",null,JSON.stringify(s));let{url:p,line:v,column:P}=s;return n("pre",null,p,":",v,":",P)}case"debugdata":return n(C,null);default:{let p=JSON.stringify(e);return n("pre",{"data-tooltip":p},p.slice(0,20))}}};var Q=X(R());function Hr(e){switch(e){case"bytes":case"ms":case"timespanMs":case"numeric":return!0;default:return!1}}var Ut=e=>{let{audit:t,baseAudit:r,diffs:a}=e.pair;if(!t.details)return n(C,null);let{headings:i,items:s}=t.details;if(!i||!s)return n(C,null);let o=r&&r.details&&r.details.headings||[],f=r&&r.details&&r.details.items||[],c=(0,Q.zipBaseAndCompareItems)(f,s),u=(0,Q.sortZippedBaseAndCompareItems)(a,c),l=i.length?i:o,m=l.findIndex(d=>Hr(d.valueType||d.itemType||"unknown"))-1;return m<0&&(m=l.length-1),n("div",{className:"table-details"},n("table",null,n("thead",null,n("tr",null,l.map((d,p)=>{let v=d.valueType||d.itemType||"unknown";return n(C,{key:p},n("th",{className:`table-column--${v}`},d.label||d.text),m===p?n("th",null):null)}))),n("tbody",null,u.map(({base:d,compare:p,diffs:v})=>{if(!(p||d))return null;let x=`${d&&d.index}-${p&&p.index}`,z=(0,Q.getRowLabelForIndex)(a,p&&p.index,d&&d.index);return n("tr",{key:x},l.map((y,h)=>{let w=y.valueType||y.itemType||"unknown",D=v.find(J=>J.type==="itemDelta"&&J.itemKey===y.key),T=y.key&&p&&p.item[y.key],k=y.key&&d&&d.item[y.key];return n(C,{key:h},n("td",{className:`table-column--${w}`},T||k?n(It,{type:w,compareValue:T,baseValue:k,diff:D}):n(C,null)),m===h?n("td",{className:"table-column--row-label"},z==="added"||z==="removed"?z:""):null)}))}))))};var Et=X(R());var St={"first-contentful-paint":[0,1e4],"first-meaningful-paint":[0,1e4],"largest-contentful-paint":[0,15e3],"speed-index":[0,15e3],"first-cpu-idle":[0,15e3],interactive:[0,2e4],"estimated-input-latency":[0,1500],"max-potential-fid":[0,1500],"total-blocking-time":[0,1500],"experimental-interaction-to-next-paint":[0,3500],"cumulative-layout-shift":[0,1],__default__:[0,30*1e3]},qt=(e,t)=>{let r=e&&e.id||"";return(St[r]||St.__default__)[t==="lower"?0:1]},Kt=(e,t)=>{let r=t==="up"?Math.ceil:Math.floor;return e<10?r(e):e<100?r(e/10)*10:e<1e3?r(e/100)*100:e<1e4?r(e/1e3)*1e3:r(e/2500)*2500},Nr=(e,t)=>{if(e&&e.id==="cumulative-layout-shift")return"none";if(t==="metrics"||t==="load-opportunities")return"ms";if(!e)return"none";if(e.details&&e.details.overallSavingsMs)return"ms";let r=e.displayValue||"";return/[0-9,.]+\s(ms|s)$/.test(r)?"ms":/[0-9,.]+\s(KB|MB)$/.test(r)?"bytes":"none"},_=(e,t)=>{let{asDelta:r=!1,withSuffix:a=!1,unit:i="none"}=t,s=Math.round(e),o=0,f="";i==="ms"&&(f="ms",Math.abs(s)>=1e3&&!t.preventSecondsConversion&&(s/=1e3,o=1,f="s")),i==="bytes"&&(f="KB",s/=1024,Math.abs(s)>=500&&(s/=1024,o=1,f="MB")),i==="none"&&(Math.abs(e)<1?(s=e,o=3):Math.abs(s)<10?(s=e,o=1):Math.abs(s)>=50&&(s/=1e3,o=1,f="K"));let c=s.toLocaleString(void 0,{minimumFractionDigits:o,maximumFractionDigits:o}),u=r&&s>=0?"+":"",l=u+c+(a?f:"");return{element:n("span",null,u,c,a?n(C,null,n(re,null),f):""),string:l,length:l.length}},ve=e=>{let{diff:t,audit:r,groupId:a}=e,i=Nr(r,a),s=t.compareValue,o=t.baseValue;if(typeof o!="number"||typeof s!="number")return n("span",null,"No diff available");let f=s-o,c=Math.min(s,o),u=Math.max(s,o),l=e.showAsBigPicture?qt(r,"lower"):Kt(c*.8,"down"),m=e.showAsBigPicture?qt(r,"upper"):Kt(u*1.2,"up"),d=m-l,p=Math.min(Math.max(c,l),m),v=Math.min(Math.max(u,l),m),P=100*(p-l)/d,x=100-100*(v-l)/d,z=(0,Et.getDeltaLabel)(f,"audit"),y=c===s,h=`${_(o,{unit:i,withSuffix:!0}).string} to ${_(s,{withSuffix:!0,unit:i}).string}`;if(e.showAsNarrow)return n("div",{className:g("audit-numeric-diff",`text--${z}`),"data-tooltip":h},_(f,{asDelta:!0,withSuffix:!0,preventSecondsConversion:!0,unit:i}).element);let{element:w,length:D}=_(f,{asDelta:!0,withSuffix:!0,preventSecondsConversion:!0,unit:i}),T=D*10*100/300;return n(C,null,n("div",{className:"audit-numeric-diff"},n("div",{className:"audit-numeric-diff__left-label"},_(l,{unit:i}).element),n("div",{className:"audit-numeric-diff__bar"},n("div",{className:g("audit-numeric-diff__box",{"audit-numeric-diff__box--improvement":z==="improvement","audit-numeric-diff__box--regression":z==="regression"}),style:{left:`${P}%`,right:`${x}%`},"data-tooltip":h},n("div",{className:"audit-numeric-diff__now",style:{left:y?"0%":"100%"}}),n("div",{className:g("audit-numeric-diff__delta-label",{"audit-numeric-diff__delta-label--narrow-left":z==="improvement"&&P<T,"audit-numeric-diff__delta-label--narrow-right":z==="regression"&&x<T}),style:{[y?"right":"left"]:"100%"}},w))),n("div",{className:"audit-numeric-diff__right-label"},_(m,{unit:i}).element)))};var _t=X(q());var ae=X(R());var Fr={"font-display":"font_download","uses-rel-preconnect":"language","user-timings":"timer","bootup-time":"speed","mainthread-work-breakdown":"speed","third-party-summary":"language",deprecations:"error","errors-in-console":"error","font-sizes":"format_size"},Qt=e=>{let t=e.audit.id||"",r=e.groupId||"",a="";return r.includes("opportunities")&&(a="web_asset"),r.includes("a11y")&&(a="code"),t.includes("image")&&(a="photo"),a=Fr[t]||a||"list_alt",n("i",{className:"material-icons"},a)},Xr=e=>n(C,null,n(E,{audit:e.baseAudit}),n("i",{className:`material-icons audit-group__diff-arrow audit-group__diff-arrow--${(0,ae.getDiffLabel)(e.diff)}`},"arrow_forward"),n(E,{audit:e.audit})),Tr=e=>n(C,null,n("span",null,e.diff.baseValue),n("i",{className:`material-icons audit-group__diff-arrow audit-group__diff-arrow--${(0,ae.getDiffLabel)(e.diff)}`},"arrow_forward"),n("span",null,e.diff.compareValue));function jr(e){switch(e){case"added":case"worse":case"ambiguous":return"regression";case"removed":case"better":return"improvement";case"no change":return"neutral"}}function Ar(e){return _t.uniqBy(e.map(t=>({base:"baseItemIndex"in t?t.baseItemIndex:void 0,compare:"compareItemIndex"in t?t.compareItemIndex:void 0})).filter(t=>typeof t.base=="number"||typeof t.compare=="number"),t=>`${t.base}-${t.compare}`)}var Ye=e=>{let{diffs:t,baseAudit:r,groupId:a}=e,i=r.details&&r.details.items||[],o=Ar(t).map(l=>(0,ae.getRowLabelForIndex)(t,l.compare,l.base)).map(jr),f=o.filter(l=>l==="regression").length,c=o.filter(l=>l==="improvement").length,u=n(C,null,n("div",{className:"audit-group__diff-badge-group"},n(Qt,{audit:e.audit,groupId:a}),n("div",{className:"audit-group__diff-badges"},n("span",{className:"audit-group__diff-badge"},i.length))),n("i",{className:`material-icons audit-group__diff-arrow audit-group__diff-arrow--${c>f?"improvement":"regression"}`},"arrow_forward"));return n(C,null,e.showAsNarrow?n(C,null):u,n("div",{className:g("audit-group__diff-badge-group")},n(Qt,{audit:e.audit,groupId:a}),n("div",{className:g("audit-group__diff-badges",{"audit-group__diff-badge-group--multiple":Boolean(f&&c)})},f?n("span",{className:"audit-group__diff-badge audit-group__diff-badge--regression"},f):null,c?n("span",{className:"audit-group__diff-badge audit-group__diff-badge--improvement"},c):null)))},Mr=()=>n("div",{className:"audit-group__error-message","data-tooltip":"Audit did not run in the base report"},n("i",{className:"material-icons"},"error_outline")," Audit Missing"),Or=e=>{let t="An unknown error occurred while trying to compare the audit results.";return e.audit.scoreDisplayMode==="error"?t=`Audit in compare report errored: ${e.audit.errorMessage}`:e.baseAudit.scoreDisplayMode==="error"&&(t=`Audit in base report errored: ${e.baseAudit.errorMessage}`),n("div",{className:"audit-group__error-message","data-tooltip":t},n("i",{className:"material-icons"},"error_outline")," Audit Error")},$t=e=>{let{audit:t,baseAudit:r,diffs:a,group:i}=e.pair,s=n("span",null,"No diff available");if(!r)return n(Mr,null);if(a.find(m=>m.type==="error"))return n(Or,{audit:t,baseAudit:r});let f=a.find(m=>m.type==="numericValue");if(f&&f.type==="numericValue")return n(ve,{diff:f,audit:t,groupId:i.id,showAsBigPicture:e.showAsBigPicture,showAsNarrow:e.showAsNarrow});if(a.some(m=>m.type==="itemAddition"||m.type==="itemRemoval"||m.type==="itemDelta"))return n(Ye,{diffs:a,audit:t,baseAudit:r,groupId:i.id,showAsNarrow:e.showAsNarrow});let u=a.find(m=>m.type==="score");if(u)return n(Xr,{diff:u,audit:t,baseAudit:r});let l=a.find(m=>m.type==="displayValue");return!l||l.type!=="displayValue"?s:n(Tr,{diff:l,audit:t,baseAudit:r})};var e1=X(R());var Zr=e=>{let{audit:t,baseAudit:r}=e.pair;return r?n("div",{className:"audit-detail-pane__audit-details--binary"},n(E,{audit:r}),n("i",{className:`material-icons audit-group__diff-arrow audit-group__diff-arrow--${(0,e1.getDiffLabel)(e.diff)}`},"arrow_forward"),n(E,{audit:t})):null},Rr=e=>{let t=e.pair.audit.scoreDisplayMode==="error"?e.pair.audit:e.pair.baseAudit;return t?n(C,null,n("div",{className:"audit-detail-pane__audit-details-summary"},"Error occurred in the"," ",t===e.pair.baseAudit?"base report:":"compare report:"),n("pre",null,t.errorMessage||"Unknown error")):null},Br=e=>{let{pair:t}=e,r=t.audit.details||{type:"unknown"},a=t.baseAudit&&t.baseAudit.details||{type:"unknown"},i=Boolean((r.items||[]).length||(a.items||[]).length),s,o,f;if(t.audit.errorMessage||t.baseAudit&&t.baseAudit.errorMessage)return n(Rr,{pair:t});(r.type==="table"||r.type==="opportunity")&&i&&(o=n(Ut,{pair:t}),t.baseAudit&&(s=n(Ye,H(L({},t),{baseAudit:t.baseAudit,groupId:t.group.id}))));let c=t.diffs.find(l=>l.type==="numericValue");if(c&&c.type==="numericValue"&&(f=n(ve,{diff:c,audit:t.audit})),o||c)return n(C,null,n("div",{className:"audit-detail-pane__audit-details-summary"},f||s),o);let u=t.diffs.find(l=>l.type==="score");return u&&u.type==="score"?n(Zr,{diff:u,pair:e.pair}):n("pre",null,JSON.stringify(e.pair,null,2))},t1=e=>{let{audit:t}=e.pair;return n("div",{id:`audit-detail-pane-audit--${t.id}`,className:g("audit-detail-pane__audit")},n("div",{className:"audit-detail-pane__score"},n(B,{score:t.score||0})),n("div",{className:"audit-detail-pane__audit-title"},t.title),n("div",{className:"audit-detail-pane__audit-description"},n(Jt,{text:t.description||""})),n("div",{className:"audit-detail-pane__audit-details"},n(Br,{pair:e.pair})))};var r1=e=>{let t=Z(void 0),r=Vt(e.selectedAuditId);return F(()=>{let a=e.selectedAuditId,i=t.current;if(!i||!a||a===r)return;let s=i.querySelector(`#audit-detail-pane-audit--${a}`);!s||!(s instanceof HTMLElement)||i.scrollTo(0,s.offsetTop)},[e.selectedAuditId,r]),n("div",{className:"audit-detail-pane",ref:a=>t.current=a},n("div",{className:"audit-detail-pane__close",onClick:()=>e.setSelectedAuditId(null)},n("i",{className:"material-icons"},"close")),e.pairs.map(a=>{let{audit:i}=a;if(!!i.id)return n(t1,{key:i.id,pair:a})}))};var n1=X(R());var a1=e=>{let t=Math.round(e.score*100),r=e.diff?e.diff.baseValue:e.score,a=Math.round(r*100),i=e.diff?(0,n1.getDiffLabel)(e.diff):"neutral",o=`${Math.max(0,e.score*352-2)} 352`,f=Math.abs(a-t),c=Math.max(0,f/100*352-2),u=`${c} 352`,l=`rotate(${Math.min(t,a)/100*360}deg)`,m=`rotate(${e.score*360}deg)`;return n("div",{className:g("gauge",`gauge--${i}`)},n("div",{className:"gauge-arc"},n("svg",{viewBox:"0 0 120 120"},n("circle",{className:"gauge-arc__arc",transform:"rotate(-90 60 60)",r:"56",cx:"60",cy:"60",style:{strokeDasharray:o}})),n("div",{className:"gauge-arc__delta-wrapper",style:{transform:l,display:c<1?"none":"block"}},n("svg",{viewBox:"0 0 120 120"},n("circle",{className:"gauge-arc__arc",transform:"rotate(-90 60 60)",r:"56",cx:"60",cy:"60",style:{strokeDasharray:u}}))),n("div",{className:"gauge-arc__indicator-wrapper",style:{transform:m}},n("div",{className:"gauge-arc__indicator"}))),n("span",null,t))};var i1=X(q());var s1=e=>n("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",class:`pwa-icon pwa-icon--${e.deltaType}`},n("g",{"fill-rule":"nonzero",fill:"none"},n("circle",{class:"pwa-icon__background",cx:"12",cy:"12",r:"12"}),n("path",{d:"M12 4.3l6.3 2.8v4.2c0 3.88-2.69 7.52-6.3 8.4-3.61-.88-6.3-4.51-6.3-8.4V7.1L12 4.3zm-.56 12.88l3.3-5.79.04-.08c.05-.1.01-.29-.26-.29h-1.96l.56-3.92h-.56L9.3 12.82c0 .03.07-.12-.03.07-.11.2-.12.37.2.37h1.97l-.56 3.92h.56z",fill:"#FFF"}))),o1=e=>n("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",class:`pwa-icon pwa-icon--${e.deltaType}`},n("g",{"fill-rule":"nonzero",fill:"none"},n("circle",{class:"pwa-icon__background",cx:"12",cy:"12",r:"12"}),n("path",{d:"M12 5a7 7 0 1 0 0 14 7 7 0 0 0 0-14zm3.5 7.7h-2.8v2.8h-1.4v-2.8H8.5v-1.4h2.8V8.5h1.4v2.8h2.8v1.4z",fill:"#FFF"}))),l1=e=>n("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",class:`pwa-icon pwa-icon--${e.deltaType}`},n("g",{fill:"none","fill-rule":"evenodd"},n("rect",{class:"pwa-icon__background",width:"24",height:"24",rx:"12"}),n("path",{d:"M5 5h14v14H5z"}),n("path",{fill:"#FFF",d:"M12 15.07l3.6 2.18-.95-4.1 3.18-2.76-4.2-.36L12 6.17l-1.64 3.86-4.2.36 3.2 2.76-.96 4.1z"})));function Ce(e,t,r){return e[r]===t[r]?"neutral":t[r]?"improvement":"regression"}function Je(e){let t=e.categories.pwa,r=i1.groupIntoMap(t.auditRefs,i=>i.group),a=(i=[])=>i.map(s=>e.audits[s.id]).every(s=>s&&s.score===1);return{optimized:a(r.get("pwa-optimized")||[]),installable:a(r.get("pwa-installable")||[]),fastAndReliable:a(r.get("pwa-fast-reliable")||[])}}var f1=e=>{let{status:t}=e,r=t.optimized&&t.installable&&t.fastAndReliable;return n("div",{className:g("pwa-gauge",{"pwa-gauge--all":r,"pwa-gauge--pwa-optimized":!r&&t.optimized,"pwa-gauge--pwa-installable":!r&&t.installable,"pwa-gauge--pwa-fast-reliable":!r&&t.fastAndReliable})},n("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 60 60"},n("defs",null,n("linearGradient",{id:"pwa-gauge__check-circle__gradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%"},n("stop",{"stop-color":"#00C852",offset:"0%"}),n("stop",{"stop-color":"#009688",offset:"100%"})),n("linearGradient",{id:"pwa-gauge__installable__shadow-gradient",x1:"76.056%",x2:"24.111%",y1:"82.995%",y2:"24.735%"},n("stop",{"stop-color":"#A5D6A7",offset:"0%"}),n("stop",{"stop-color":"#80CBC4",offset:"100%"})),n("linearGradient",{id:"pwa-gauge__fast-reliable__shadow-gradient",x1:"76.056%",y1:"82.995%",x2:"25.678%",y2:"26.493%"},n("stop",{"stop-color":"#64B5F6",offset:"0%"}),n("stop",{"stop-color":"#2979FF",offset:"100%"})),n("g",{id:"pwa-gauge__fast-reliable-badge"},n("circle",{fill:"#FFFFFF",cx:"10",cy:"10",r:"10"}),n("path",{fill:"#304FFE",d:"M10 3.58l5.25 2.34v3.5c0 3.23-2.24 6.26-5.25 7-3.01-.74-5.25-3.77-5.25-7v-3.5L10 3.58zm-.47 10.74l2.76-4.83.03-.07c.04-.08 0-.24-.22-.24h-1.64l.47-3.26h-.47l-2.7 4.77c-.02.01.05-.1-.04.05-.09.16-.1.31.18.31h1.63l-.47 3.27h.47z"})),n("g",{id:"pwa-gauge__installable-badge"},n("circle",{fill:"#FFFFFF",cx:"10",cy:"10",r:"10"}),n("path",{fill:"#009688",d:"M10 4.167A5.835 5.835 0 0 0 4.167 10 5.835 5.835 0 0 0 10 15.833 5.835 5.835 0 0 0 15.833 10 5.835 5.835 0 0 0 10 4.167zm2.917 6.416h-2.334v2.334H9.417v-2.334H7.083V9.417h2.334V7.083h1.166v2.334h2.334v1.166z"}))),n("g",{stroke:"none","fill-rule":"nonzero"},n("circle",{class:"pwa-gauge__disc",cx:"30",cy:"30",r:"30"}),n("g",{class:"pwa-gauge__logo"},n("path",{class:"pwa-gauge__logo--secondary-color",d:"M35.66 19.39l.7-1.75h2L37.4 15 38.6 12l3.4 9h-2.51l-.58-1.61z"}),n("path",{class:"pwa-gauge__logo--primary-color",d:"M33.52 21l3.65-9h-2.42l-2.5 5.82L30.5 12h-1.86l-1.9 5.82-1.35-2.65-1.21 3.72L25.4 21h2.38l1.72-5.2 1.64 5.2z"}),n("path",{class:"pwa-gauge__logo--secondary-color","fill-rule":"nonzero",d:"M20.3 17.91h1.48c.45 0 .85-.05 1.2-.15l.39-1.18 1.07-3.3a2.64 2.64 0 0 0-.28-.37c-.55-.6-1.36-.91-2.42-.91H18v9h2.3V17.9zm1.96-3.84c.22.22.33.5.33.87 0 .36-.1.65-.29.87-.2.23-.59.35-1.15.35h-.86v-2.41h.87c.52 0 .89.1 1.1.32z"})),n("rect",{class:"pwa-gauge__component pwa-gauge__na-line",fill:"#FFFFFF",x:"20",y:"32",width:"20",height:"4",rx:"2"}),n("g",{class:"pwa-gauge__component pwa-gauge__fast-reliable-badge",transform:"translate(20, 29)"},n("path",{fill:"url(#pwa-gauge__fast-reliable__shadow-gradient)",d:"M33.63 19.49A30 30 0 0 1 16.2 30.36L3 17.14 17.14 3l16.49 16.49z"}),n("use",{href:"#pwa-gauge__fast-reliable-badge"})),n("g",{class:"pwa-gauge__component pwa-gauge__installable-badge",transform:"translate(20, 29)"},n("path",{fill:"url(#pwa-gauge__installable__shadow-gradient)",d:"M33.629 19.487c-4.272 5.453-10.391 9.39-17.415 10.869L3 17.142 17.142 3 33.63 19.487z"}),n("use",{href:"#pwa-gauge__installable-badge"})),n("g",{class:"pwa-gauge__component pwa-gauge__fast-reliable-installable-badges"},n("g",{transform:"translate(8, 29)"},n("path",{fill:"url(#pwa-gauge__fast-reliable__shadow-gradient)",d:"M16.321 30.463L3 17.143 17.142 3l22.365 22.365A29.864 29.864 0 0 1 22 31c-1.942 0-3.84-.184-5.679-.537z"}),n("use",{href:"#pwa-gauge__fast-reliable-badge"})),n("g",{transform:"translate(32, 29)"},n("path",{fill:"url(#pwa-gauge__installable__shadow-gradient)",d:"M25.982 11.84a30.107 30.107 0 0 1-13.08 15.203L3 17.143 17.142 3l8.84 8.84z"}),n("use",{href:"#pwa-gauge__installable-badge"}))),n("g",{class:"pwa-gauge__component pwa-gauge__check-circle",transform:"translate(18, 28)"},n("circle",{fill:"#FFFFFF",cx:"12",cy:"12",r:"12"}),n("path",{fill:"url(#pwa-gauge__check-circle__gradient)",d:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"})))))};var c1=X(R());var u1=e=>{let t=Math.round((e.diff.compareValue-e.diff.baseValue)*100);return n("div",{className:g("score-delta-badge",`score-delta-badge--${(0,c1.getDiffLabel)(e.diff)}`,e.className)},t<0?t:`+${t}`)};var kr=e=>{let{lhr:t,baseLhr:r,categoryId:a}=e,i=t.categories[a],s=r&&r.categories[a],o=s&&{auditId:"",type:"score",baseValue:s.score,compareValue:i.score};return n("div",{key:a,className:g("lhr-comparison-scores-item")},n(a1,{score:i.score,diff:o}),n("div",{className:"lhr-comparison-scores-item__label"},i.title),o?n(u1,{diff:o,className:"lhr-comparison-scores-item__delta"}):null)},Vr=e=>{let{lhr:t,baseLhr:r,categoryId:a}=e,i=Je(t),s,o="neutral";if(r){let f=Je(r),c={fastAndReliable:Ce(f,i,"fastAndReliable"),installable:Ce(f,i,"installable"),optimized:Ce(f,i,"optimized")},u=Object.values(c).every(m=>m==="neutral"),l=n(C,null,c.fastAndReliable==="neutral"?n(C,null):n(s1,{deltaType:c.fastAndReliable}),c.installable==="neutral"?n(C,null):n(o1,{deltaType:c.installable}),c.optimized==="neutral"?n(C,null):n(l1,{deltaType:c.optimized}));s=n("div",{className:g("lhr-comparison-scores-item__delta")},u?"-":l)}return n("div",{key:a,className:g("lhr-comparison-scores-item","lhr-comparison-scores-item--pwa",`lhr-comparison-scores-item--${o}`)},n(f1,{status:i}),n("div",{className:"lhr-comparison-scores-item__label"},"PWA"),s)},d1=e=>{let{lhr:t,baseLhr:r}=e;if(!t)return null;let a=Object.keys(t.categories),i=r?Object.keys(r.categories):a,s=a.filter(o=>i.includes(o));return n("div",{className:"lhr-comparison-scores"},s.sort((o,f)=>{let c=o==="pwa"?1/0:s.indexOf(o),u=f==="pwa"?1/0:s.indexOf(f);return c-u}).map(o=>o==="pwa"?n(Vr,{lhr:t,baseLhr:r,categoryId:o}):n(kr,{lhr:t,baseLhr:r,categoryId:o})))};var Gr=e=>n("div",{className:"audit-group__big-picture-tabs"},n("span",{className:g("big-picture-tabs__tab",{"big-picture-tabs__tab--selected":e.showAsBigPicture}),onClick:()=>e.setShowAsBigPicture(!0)},"Overview"),n("span",{className:g("big-picture-tabs__tab",{"big-picture-tabs__tab--selected":!e.showAsBigPicture}),onClick:()=>e.setShowAsBigPicture(!1)},"Magnified")),Wr=e=>n(C,null,e.pairs.map(t=>{let{audit:r}=t;return e.group.id!=="metrics"&&(t=H(L({},t),{diffs:t.diffs.filter(a=>a.type!=="numericValue")})),n("div",{key:r.id,className:g("audit-group__audit"),onClick:()=>e.setSelectedAuditId(r.id||null)},n("div",{className:"audit-group__audit-score"},n(B,{score:r.score||0})),n("div",{className:"audit-group__audit-title"},r.title),n("div",{className:"audit-group__audit-diff"},n($t,{pair:t,showAsBigPicture:e.showAsBigPicture,showAsNarrow:e.showAsNarrow})))})),Yr=e=>{let t=e.baseLhr;return!t||!e.expanded?n(C,null):n(C,null,e.pairs.map(r=>{let{audit:a}=r;return n("div",{key:a.id,className:g("audit-group__audit","audit-group__audit--unchanged"),onClick:i=>{i.preventDefault(),i.stopPropagation(),ue(t)}},n("div",{className:"audit-group__audit-score"},n(B,{score:a.score||0})),n("div",{className:"audit-group__audit-title"},a.title),n("div",{className:"audit-group__audit-diff"},"Open Report"))}))},p1=e=>{let{group:t}=e,[r,a]=N(t.id==="metrics"),[i,s]=N(!1);return n(Y,{className:g("audit-group",{"audit-group--expanded":i,"audit-group--unchanged":e.showAsUnchanged})},n("div",{className:"audit-group__header",onClick:()=>s(!i)},n("div",{className:"audit-group__title"},t.title," ",e.showAsUnchanged?`(${e.pairs.length})`:""),n("div",{className:"audit-group__expand-toggle"},n("i",{className:"material-icons"},"chevron_right")),t.id==="metrics"&&!e.showAsNarrow?n(Gr,H(L({},e),{showAsBigPicture:r,setShowAsBigPicture:a})):n(C,null)),n("div",{className:"audit-group__audits"},e.showAsUnchanged?n(Yr,H(L({},e),{expanded:i})):n(Wr,H(L({},e),{showAsBigPicture:r}))))};var m1=()=>n("div",{className:"lhr-comparison-legend"},n(B,{score:0}),n("span",{className:"lhr-comparison-legend__label"},"0-49"),n(B,{score:.5}),n("span",{className:"lhr-comparison-legend__label"},"50-89"),n(B,{score:1}),n("span",{className:"lhr-comparison-legend__label"},"90-100"),n("i",{className:"lhr-comparison-legend__chip lhr-comparison-legend__chip--regression"}),n("span",{className:"lhr-comparison-legend__label"},"Regression"),n("i",{className:"lhr-comparison-legend__chip lhr-comparison-legend__chip--improvement"}),n("span",{className:"lhr-comparison-legend__label"},"Improvement"));function Ur(e){var t=e.parentNode;t&&t.removeChild(e)}var Sr=b.__e;function v1(){this.t=[]}b.__e=function(e,t,r){if(e.then&&r){for(var a,i=t;i=i.__p;)if((a=i.__c)&&a.u)return r&&(t.__e=r.__e,t.__k=r.__k),void a.u(e)}Sr(e,t,r)},(v1.prototype=new M).u=function(e){var t=this;t.t.push(e);var r=function(){t.t[t.t.indexOf(e)]=t.t[t.t.length-1],t.t.pop(),t.t.length==0&&(I(t.props.fallback),t.__v.__e=null,t.__v.__k=t.state.i,t.setState({i:null}))};t.state.i==null&&(t.setState({i:t.__v.__k}),function a(i){for(var s=0;s<i.length;s++){var o=i[s];o!=null&&(typeof o.type!="function"&&o.__e?Ur(o.__e):o.__k&&a(o.__k))}}(t.__v.__k),t.__v.__k=[]),e.then(r,r)},v1.prototype.render=function(e,t){return t.i?e.fallback:e.children};var qr=typeof Symbol!="undefined"&&Symbol.for&&Symbol.for("react.element")||60103;var C1=b.event;b.event=function(e){return C1&&(e=C1(e)),e.persist=function(){},e.nativeEvent=e};var Ue=function(){};function Kr(e){var t=this,r=e.container,a=n(Ue,{context:t.context},e.vnode);return t.l&&t.l!==r&&(t.s.parentNode&&t.l.removeChild(t.s),I(t.v),t.p=!1),e.vnode?t.p?(r.__k=t.__k,U(a,r),t.__k=r.__k):(t.s=document.createTextNode(""),st("",r),r.appendChild(t.s),t.p=!0,t.l=r,U(a,r,t.s),t.__k=this.s.__k):t.p&&(t.s.parentNode&&t.l.removeChild(t.s),I(t.v)),t.v=a,t.componentWillUnmount=function(){t.s.parentNode&&t.l.removeChild(t.s),I(t.v)},null}function g1(e,t){return n(Kr,{vnode:e,container:t})}Ue.prototype.getChildContext=function(){return this.props.context},Ue.prototype.render=function(e){return e.children};function y1(e,t){for(var r in e)if(r!=="__source"&&!(r in t))return!0;for(var a in t)if(a!=="__source"&&e[a]!==t[a])return!0;return!1}var C8=function(e){function t(r){e.call(this,r),this.isPureReactComponent=!0}return e&&(t.__proto__=e),(t.prototype=Object.create(e&&e.prototype)).constructor=t,t.prototype.shouldComponentUpdate=function(r,a){return y1(this.props,r)||y1(this.state,a)},t}(M);function Ie(e,t){e["UNSAFE_"+t]&&!e[t]&&Object.defineProperty(e,t,{configurable:!1,get:function(){return this["UNSAFE_"+t]},set:function(r){this["UNSAFE_"+t]=r}})}M.prototype.isReactComponent={};var b1=b.vnode;b.vnode=function(e){e.$$typeof=qr,function(r){var a=e.type,i=e.props;if(i&&typeof a=="string"){var s={};for(var o in i)/^on(Ani|Tra)/.test(o)&&(i[o.toLowerCase()]=i[o],delete i[o]),s[o.toLowerCase()]=o;if(s.ondoubleclick&&(i.ondblclick=i[s.ondoubleclick],delete i[s.ondoubleclick]),s.onbeforeinput&&(i.onbeforeinput=i[s.onbeforeinput],delete i[s.onbeforeinput]),s.onchange&&(a==="textarea"||a.toLowerCase()==="input"&&!/^fil|che|ra/i.test(i.type))){var f=s.oninput||"oninput";i[f]||(i[f]=i[s.onchange],delete i[s.onchange])}}}();var t=e.type;t&&t.o&&e.ref&&(e.props.ref=e.ref,e.ref=null),typeof t=="function"&&!t.m&&t.prototype&&(Ie(t.prototype,"componentWillMount"),Ie(t.prototype,"componentWillReceiveProps"),Ie(t.prototype,"componentWillUpdate"),t.m=!0),b1&&b1(e)};var P1=e=>{let t=Z(document.getElementById("preact-modal-root")||document.createElement("div"));return F(()=>(t.current.id="preact-modal-root",document.body.appendChild(t.current),()=>document.body.removeChild(t.current)),[]),g1(n("div",{className:"modal-backdrop"},n("div",{className:g("modal",e.className),style:{position:"relative"}},e.children,n("div",{className:"modal__close",onClick:e.onClose},n("i",{className:"material-icons"},"close")))),t.current)};function h1(e){return typeof e=="string"?e:typeof e=="number"?e.toString():typeof e=="undefined"?"Unset":typeof e=="boolean"?e?"Enabled":"Disabled":Array.isArray(e)?e.join(", "):"Unknown"}function x1(e,t){if(!t)return[];let r=[],{benchmarkIndex:a}=e.environment,{benchmarkIndex:i}=t.environment,s=Math.abs(a-i)/Math.min(a,i);s>1.5&&r.push({label:"CPU/Memory Power",base:t.environment.benchmarkIndex.toString(),compare:e.environment.benchmarkIndex.toString(),severity:s>2?"error":"warn"});let o=e.configSettings,f=t.configSettings,c=o.throttling||{},u=o.throttling||{},l=[["Lighthouse Version",t.lighthouseVersion,e.lighthouseVersion],["Storage Reset",f.disableStorageReset,o.disableStorageReset],["Emulated Form Factor",f.emulatedFormFactor,o.emulatedFormFactor],["Throttling Method",f.throttlingMethod,o.throttlingMethod],["CPU Throttling",u.cpuSlowdownMultiplier,c.cpuSlowdownMultiplier],["Network RTT",u.rttMs,c.rttMs],["Network Throughput",u.throughputKbps,c.throughputKbps],["Network RTT",u.requestLatencyMs,c.requestLatencyMs],["Network Throughput (Up)",u.uploadThroughputKbps,c.uploadThroughputKbps],["Network Throughput (Down)",u.downloadThroughputKbps,c.downloadThroughputKbps]];for(let[m,d,p]of l){let v=h1(d),P=h1(p);v!==P&&r.push({label:m,base:v,compare:P,severity:"error"})}return r}var Se=e=>{let{diffs:t}=e;return n("div",{className:g("lhr-comparison-runtime-diff",`lhr-comparison-runtime-diff--${e.variant}`)},n("div",{className:"lhr-comparison__warning"},n("i",{className:"material-icons"},"info"),n("div",null,"Changes of runtime settings or the environment can substantially affect your Lighthouse scores and might be the reason for the differences here.")),n("div",{className:"lhr-comparison-runtime-diff__diffs"},"The following runtime differences were detected:",n("table",null,n("thead",null,n("tr",null,n("th",null),n("th",null,"Base"),n("th",null,"Compare"))),n("tbody",null,t.map(r=>n("tr",{key:r.label},n("td",null,r.label),n("td",null,r.base),n("td",null,r.compare)))))))};function Er(e){let t=a=>new Promise(i=>setTimeout(i,a)),r=a=>G(this,null,function*(){let i=0;for(;!document.querySelector(a)&&i<10;)yield t(500),i++});F(()=>{window.location.hash.length<=1||Promise.resolve().then(()=>G(this,null,function*(){yield r(".lhr-comparison__audit-groups"),e(window.location.hash.slice(1))}))},[])}function Qr(e,t,r){let a=[];for(let[i,s]of Object.entries(e.categories)){let o={title:s.title,description:s.description},f=z1.default.groupBy(s.auditRefs,l=>l.group),c=`unchanged:${i}`,u={id:c,group:{id:c,title:`Unchanged Audits - ${s.title}`},pairs:[],showAsUnchanged:!0};for(let l of f){let m=l[0].group||"",d=e.categoryGroups&&e.categoryGroups[m];if(!d){if(f.length!==1)continue;m=`category:${i}`,d=o}let p=H(L({},d),{id:m}),v=l.map(z=>{let y=H(L({},e.audits[z.id]),{id:z.id}),h=t&&t.audits[y.id||""],w=h?(0,ye.findAuditDiffs)(h,y,H(L({},r),{synthesizeItemKeyDiffs:!0})):[],D=Math.max(...w.map(ye.getDiffSeverity),0);return{audit:y,baseAudit:h,diffs:w,maxSeverity:D,group:p}}).sort((z,y)=>(z.audit.score||0)-(y.audit.score||0)),P=v.filter(z=>!z.baseAudit||z.diffs.length),x=v.filter(z=>z.baseAudit&&!z.diffs.length);P.length&&a.push({id:m,group:p,pairs:P,showAsUnchanged:!1}),x.length&&u.pairs.push(...x)}u.pairs.length&&a.push(u)}return a}var _r=e=>n("div",{className:"lhr-comparison__scores-and-dropdowns"},n("div",{className:"container"},n("div",{className:"lhr-comparison__dropdowns"},e.hookElements.dropdowns,n(kt,{label:"Threshold",value:e.percentAbsoluteDeltaThreshold.toString(),setValue:t=>{e.setPercentAbsoluteDeltaThreshold(Number(t))},options:[{value:"0",label:"0%"},{value:"0.05",label:"5%"},{value:"0.1",label:"10%"},{value:"0.15",label:"15%"},{value:"0.25",label:"25%"}]})),e.selectedAuditId?n(C,null):n(d1,L({},e)))),$r=e=>n("div",{className:"lhr-comparison__audit-groups"},e.auditGroups.map(t=>{if(!!t)return n(p1,{key:t.id,showAsNarrow:e.showAsNarrow,showAsUnchanged:t.showAsUnchanged,pairs:t.pairs,group:t.group,baseLhr:e.baseLhr,selectedAuditId:e.selectedAuditId,setSelectedAuditId:e.setSelectedAuditId})})),w1=e=>{let{lhr:t,baseLhr:r}=e,a="none",[i,s]=N(.05),[o,f]=N(null),[c,u]=N(a);Er(f),F(()=>{window.__LHR__=t,window.__BASE_LHR__=r},[t,r]);let l=x1(t,r),m=l.some(p=>p.severity==="error"),d=Qr(t,r,{percentAbsoluteDeltaThreshold:i});return n(C,null,c==="none"&&m?n(P1,{onClose:()=>u("acknowledged")},n(Se,{diffs:l,variant:"full"})):null,o?n(r1,{selectedAuditId:o,setSelectedAuditId:f,pairs:d.filter(p=>!p.showAsUnchanged).map(p=>p.pairs).reduce((p,v)=>p.concat(v)),baseLhr:r}):n(C,null),n("div",{className:g("lhr-comparison",e.className,{"lhr-comparison--with-audit-selection":!!o})},n(_r,{lhr:t,baseLhr:r,selectedAuditId:o,hookElements:e.hookElements,percentAbsoluteDeltaThreshold:i,setPercentAbsoluteDeltaThreshold:s}),n("div",{className:"container"},e.hookElements.warnings,c!=="closed"&&l.length?n(Y,{className:"position-relative"},n(Se,{diffs:l,variant:"mini"}),n("div",{className:"lhr-comparison-runtime-diff__close",onClick:()=>u("closed")},n("i",{className:"material-icons"},"close"))):null,d.length&&r?n(C,null,o?null:n("div",{className:"lhr-comparison__legend-container"},n(m1,null)),n($r,{showAsNarrow:!!o,auditGroups:d,baseLhr:r,selectedAuditId:o,setSelectedAuditId:f})):e.hookElements.warnings?null:n(Y,{className:"lhr-comparison__warning"},n("i",{className:"material-icons"},"sentiment_satisfied_alt"),n("div",null,"Woah, no differences found! Switch base builds to explore other differences, or"," ",n(de,{className:"lhr-comparison__warning__lhr-link",lhr:e.lhr},"jump straight to the Lighthouse report."))))))};var L1=e=>{let t=gt(e.baseReport.lhr,e.compareReport.lhr);return n("div",{className:"comparison"},n("div",{className:"comparison-header"},n("div",{className:"comparison-header__switcher",onClick:()=>{e.setBaseReport(e.compareReport),e.setCompareReport(e.baseReport)}},n("i",{className:"material-icons"},"swap_horiz")),n("div",{className:"comparison-header__logo"},n("img",{src:$,alt:"Lighthouse Logo",onClick:()=>{e.setBaseReport(void 0),e.setCompareReport(void 0)}})),n("div",{className:"comparison-header__upload"},n(S,{variant:"base",dragTarget:"self",report:e.baseReport,setReport:e.setBaseReport,addToast:e.addToast,displayType:t,showOpenLhrLink:!0}),n(S,{variant:"compare",dragTarget:"self",report:e.compareReport,setReport:e.setCompareReport,addToast:e.addToast,displayType:t,showOpenLhrLink:!0})),n("a",{className:"comparison-header__info",href:"https://github.com/GoogleChrome/lighthouse-ci"},n("i",{className:"material-icons"},"info"))),n("div",{className:"comparison-body"},n(w1,{lhr:e.compareReport.lhr,baseLhr:e.baseReport.lhr,hookElements:{}})))};var D1=e=>{let t=e.setToasts,{message:r,level:a="info"}=e.toast;return F(()=>{let i=setTimeout(()=>t(s=>s.filter(o=>o!==e.toast)),5e3);return()=>clearInterval(i)},[]),n("div",{className:`toast toast--${a}`},r)};var X1=new URLSearchParams(location.search),H1=X1.get("baseReport"),N1=X1.get("compareReport");function F1(e,t){return G(this,null,function*(){let r=new URL(e).pathname.split("/").slice(-1)[0]||"Unknown",i=yield(yield fetch(e)).text(),s=Oe(i);if(s instanceof Error)throw s;t({filename:r,data:i,lhr:s})})}function e4(e,t,r,a){return G(this,null,function*(){if(window.location.hostname==="localhost"){let s=localStorage.getItem("lastBaseReport"),o=localStorage.getItem("lastCompareReport");s&&e(JSON.parse(s)),o&&t(JSON.parse(o))}let i=[H1&&F1(H1,e),N1&&F1(N1,t)].filter(s=>!!s);!i.length||(r(!0),yield Promise.all(i.map(s=>s.catch(o=>{console.error(o),a({message:`Failed loading report from URL: ${o.message}`,level:"error"})}))),r(!1))})}var T1=()=>{let[t,r]=N(!1),[a,i]=N(void 0),[s,o]=N(void 0),[f,c]=N([]),l=Xe(m=>c(d=>[...d,m]),[c]);return F(()=>{e4(i,o,r,l)},[]),F(()=>{a&&localStorage.setItem("lastBaseReport",JSON.stringify(a)),s&&localStorage.setItem("lastCompareReport",JSON.stringify(s))},[a,s]),n("div",{className:"lhci-viewer"},t?n("div",{className:"loading-container"},n(Ae,null)):n(C,null),n("div",{className:"toast-container"},f.map(m=>n(D1,{key:m.message,toast:m,setToasts:c}))),a&&s?n(L1,{baseReport:a,setBaseReport:i,compareReport:s,setCompareReport:o,addToast:l}):n(ht,{baseReport:a,setBaseReport:i,compareReport:s,setCompareReport:o,addToast:l}))};var j1=document.getElementById("preact-root");if(!j1)throw new Error("Missing #preact-root");U(n(T1,null),j1);})();
|
|
2
|
+
/**
|
|
3
|
+
* @license Copyright 2019 Google Inc. All Rights Reserved.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @license Copyright 2020 Google Inc. All Rights Reserved.
|
|
9
|
+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
//# sourceMappingURL=chunks/entry-7NSFO3FC.js.map
|