UNPKG

@stencil/core

Version:

A Compiler for Web Components and Progressive Web Apps

1 lines • 8.59 kB
var __awaiter=this&&this.__awaiter||function(e,t,i,a){return new(i||(i=Promise))(function(r,n){function s(e){try{l(a.next(e))}catch(e){n(e)}}function o(e){try{l(a["throw"](e))}catch(e){n(e)}}function l(e){e.done?r(e.value):new i(function(t){t(e.value)}).then(s,o)}l((a=a.apply(e,t||[])).next())})};var __generator=this&&this.__generator||function(e,t){var i={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},a,r,n,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(e){return function(t){return l([e,t])}}function l(s){if(a)throw new TypeError("Generator is already executing.");while(i)try{if(a=1,r&&(n=s[0]&2?r["return"]:s[0]?r["throw"]||((n=r["return"])&&n.call(r),0):r.next)&&!(n=n.call(r,s[1])).done)return n;if(r=0,n)s=[s[0]&2,n.value];switch(s[0]){case 0:case 1:n=s;break;case 4:i.label++;return{value:s[1],done:false};case 5:i.label++;r=s[1];s=[0];continue;case 7:s=i.ops.pop();i.trys.pop();continue;default:if(!(n=i.trys,n=n.length>0&&n[n.length-1])&&(s[0]===6||s[0]===2)){i=0;continue}if(s[0]===3&&(!n||s[1]>n[0]&&s[1]<n[3])){i.label=s[1];break}if(s[0]===6&&i.label<n[1]){i.label=n[1];n=s;break}if(n&&i.label<n[2]){i.label=n[2];i.ops.push(s);break}if(n[2])i.ops.pop();i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e];r=0}finally{a=n=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};System.register(["./p-459b95cc.system.js","./p-aebfa108.system.js"],function(e){"use strict";var t,i,a,r,n;return{setters:[function(e){t=e.r;i=e.d;a=e.h;r=e.g},function(e){n=e.s}],execute:function(){var s=o;function o(e,t,i,a,r,n){if(!n)n={};var s=n.threshold===undefined?.1:n.threshold;var o=35215*s*s,h=0;for(var u=0;u<r;u++){for(var f=0;f<a;f++){var p=(u*a+f)*4;var v=c(e,t,p,p);if(v>o){if(!n.includeAA&&(l(e,f,u,a,r,t)||l(t,f,u,a,r,e))){if(i)m(i,p,255,255,0)}else{if(i)m(i,p,255,0,0);h++}}else if(i){var y=d(g(e,p),.1);m(i,p,y,y,y)}}}return h}function l(e,t,i,a,r,n){var s=Math.max(t-1,0),o=Math.max(i-1,0),h=Math.min(t+1,a-1),u=Math.min(i+1,r-1),f=(i*a+t)*4,d=0,m=0,g=0,p=0,v=0,y,b,w,A;for(var I=s;I<=h;I++){for(var S=o;S<=u;S++){if(I===t&&S===i)continue;var _=c(e,e,f,(S*a+I)*4,true);if(_===0)d++;else if(_<0)g++;else if(_>0)m++;if(d>2)return false;if(!n)continue;if(_<p){p=_;y=I;b=S}if(_>v){v=_;w=I;A=S}}}if(!n)return true;if(g===0||m===0)return false;return!l(e,y,b,a,r)&&!l(n,y,b,a,r)||!l(e,w,A,a,r)&&!l(n,w,A,a,r)}function c(e,t,i,a,r){var n=e[i+3]/255,s=t[a+3]/255,o=d(e[i+0],n),l=d(e[i+1],n),c=d(e[i+2],n),m=d(t[a+0],s),g=d(t[a+1],s),p=d(t[a+2],s),v=h(o,l,c)-h(m,g,p);if(r)return v;var y=u(o,l,c)-u(m,g,p),b=f(o,l,c)-f(m,g,p);return.5053*v*v+.299*y*y+.1957*b*b}function h(e,t,i){return e*.29889531+t*.58662247+i*.11448223}function u(e,t,i){return e*.59597799-t*.2741761-i*.32180189}function f(e,t,i){return e*.21147017-t*.52261711+i*.31114694}function d(e,t){return 255+(e-255)*t}function m(e,t,i,a,r){e[t+0]=i;e[t+1]=a;e[t+2]=r;e[t+3]=255}function g(e,t){var i=e[t+3]/255,a=d(e[t+0],i),r=d(e[t+1],i),n=d(e[t+2],i);return h(a,r,n)}function p(e,t,i,a,r,n){var o=-1;try{var l=document.createElement("canvas");l.width=a;l.height=r;var c=document.createElement("canvas");c.width=a;c.height=r;var h=l.getContext("2d");h.drawImage(e,0,0);var u=c.getContext("2d");u.drawImage(t,0,0);var f=document.createElement("canvas");var d=f.getContext("2d");d.drawImage(e,0,0);d.getImageData(0,0,a,r);var m=h.getImageData(0,0,a,r).data;var g=u.getImageData(0,0,a,r).data;var p=i.getContext("2d");var v=p.createImageData(a,l.height);o=s(m,g,v.data,a,r,{threshold:n});p.putImageData(v,0,0)}catch(e){console.error(e)}return o}function v(e,t,i){if(b.has(t)){i(b.get(t));return}if(y.has(t)){var a=y.get(t);a.push(i);return}y.set(t,[i]);var r=document.createElement("script");r.src=e+"screenshot_"+t+".js";document.head.appendChild(r)}window.loadScreenshot=function(e,t){var i=y.get(e);if(i){i.forEach(function(e){return e(t)});y.delete(e)}b.set(e,t)};var y=new Map;var b=new Map;var w=function(){function e(e){t(this,e);this.imageASrc=null;this.imageBSrc=null;this.imageAClass="is-loading";this.imageBClass="is-loading";this.canvasClass="is-loading";this.imagesLoaded=new Set;this.isImageALoaded=false;this.isImageBLoaded=false;this.isMismatchInitialized=false;this.hasCalculatedMismatch=false;this.compareLoaded=i(this,"compareLoaded",7)}e.prototype.componentWillLoad=function(){this.loadScreenshots()};e.prototype.componentWillUpdate=function(){this.loadScreenshots()};e.prototype.loadScreenshots=function(){var e=this;if(!this.show||!this.diff.hasIntersected){return}if(this.diff.identical){this.imageASrc=this.imagesUrl+this.diff.imageA;this.isImageALoaded=true;this.imageAClass="has-loaded";this.imageBSrc=this.imagesUrl+this.diff.imageB;this.isImageBLoaded=true;this.imageBClass="has-loaded";return}if(this.isMismatchInitialized){return}this.isMismatchInitialized=true;if(this.jsonpUrl!=null){if(this.diff.imageA!=null){v(this.jsonpUrl,this.diff.imageA,function(t){e.imageASrc=t})}if(this.diff.imageB!=null){v(this.jsonpUrl,this.diff.imageB,function(t){e.imageBSrc=t})}}else{this.imageASrc=this.imagesUrl+this.diff.imageA;this.imageBSrc=this.imagesUrl+this.diff.imageB}};e.prototype.compareImages=function(){return __awaiter(this,void 0,void 0,function(){var e,t;return __generator(this,function(i){switch(i.label){case 0:e=this.diff;if(!this.isImageALoaded||!this.isImageBLoaded||this.hasCalculatedMismatch||!e.comparable){return[2]}this.hasCalculatedMismatch=true;t=e;return[4,p(this.imageA,this.imageB,this.canvas,Math.round(e.width*e.deviceScaleFactor),Math.round(e.height*e.deviceScaleFactor),e.threshold)];case 1:t.mismatchedPixels=i.sent();this.canvasClass="has-loaded";n(e.imageA,e.imageB,e.mismatchedPixels,e.threshold);this.compareLoaded.emit(e);return[2]}})})};e.prototype.render=function(){var e=this;var t=this.diff;var i={width:t.width+"px",height:t.height+"px"};return[a("compare-cell",null,t.imageA!=null?a("a",{href:this.imagesUrl+t.imageA,target:"_blank"},a("img",{src:this.imageASrc,class:this.imageAClass,style:i,onLoad:this.diff.identical?null:function(){e.isImageALoaded=true;e.imageAClass="has-loaded";e.compareImages()},ref:function(t){return e.imageA=t}})):a("img",{style:i,class:"is-loading"})),a("compare-cell",null,t.imageB!=null?a("a",{href:this.imagesUrl+t.imageB,target:"_blank"},a("img",{src:this.imageBSrc,class:this.imageBClass,style:i,onLoad:this.diff.identical?null:function(){e.isImageBLoaded=true;e.imageBClass="has-loaded";e.compareImages()},ref:function(t){return e.imageB=t}})):a("img",{style:i,class:"is-loading"})),a("compare-cell",null,this.diff.identical?a("img",{style:i,src:this.imageASrc}):a("canvas",{width:Math.round(t.width*t.deviceScaleFactor),height:Math.round(t.height*t.deviceScaleFactor),class:this.canvasClass,style:i,hidden:!t.comparable,ref:function(t){return e.canvas=t}})),a("compare-cell",null,a("compare-analysis",{aId:this.aId,bId:this.bId,mismatchedPixels:this.diff.mismatchedPixels,diff:this.diff}))]};Object.defineProperty(e.prototype,"elm",{get:function(){return r(this)},enumerable:true,configurable:true});Object.defineProperty(e,"style",{get:function(){return"compare-row canvas,compare-row img{display:block;-webkit-box-shadow:var(--screenshot-box-shadow);box-shadow:var(--screenshot-box-shadow);border-radius:var(--screenshot-border-radius)}compare-row a{display:block}.is-loading{visibility:hidden}"},enumerable:true,configurable:true});return e}();e("compare_row",w);var A=function(){function e(e){t(this,e)}e.prototype.render=function(){if(!this.a||!this.b||!this.diffs){return}var e=0;this.diffs.forEach(function(t){if(t.width>e){e=t.width}});e=e-6;var t={width:e+"px"};return[a("th-cell",null,a("div",{style:t},a("a",{href:this.a.url,target:"_blank"},this.a.message))),a("th-cell",null,a("div",{style:t},a("a",{href:this.b.url,target:"_blank"},this.b.message))),a("th-cell",null,a("div",{style:t},a("a",{href:"https://github.com/ionic-team/ionic/compare/"+this.a.id+"..."+this.b.id,target:"_blank"},"Compare: ",this.a.id," - ",this.b.id))),a("th-cell",{class:"analysis"},a("div",null,"Analysis"))]};Object.defineProperty(e,"style",{get:function(){return":host{display:-ms-flexbox;display:flex}th-cell{display:block;-ms-flex:1;flex:1;font-weight:500;font-size:12px}th-cell div{padding-left:12px;padding-right:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}th-cell a{color:var(--font-color);text-decoration:none}th-cell a:hover{color:var(--analysis-data-color);text-decoration:underline}.analysis div{width:262px}"},enumerable:true,configurable:true});return e}();e("compare_thead",A)}}});