-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdebuggap.js
More file actions
2 lines (2 loc) · 43.8 KB
/
debuggap.js
File metadata and controls
2 lines (2 loc) · 43.8 KB
1
2
!function(){function e(e){this.url="http://"+e.host+":"+(parseInt(e.port)+1)+"/scriptSocket",this.readyState=0,this._dg11();var t=this;window.onbeforeunload=function(){try{t._dg12()}catch(e){}}}function t(e){function t(e){var t=e.split(",");return t}function o(e,o){var n=null;if(e.matches(o.selectorText)){for(var r=t(o.selectorText),i=o.selectorText,a=0;a<r.length;a++)if(e.matches(r[a])){i=r[a];break}n={css:o.cssText,selectors:o.selectorText,selector:i}}return n}function n(e){var t=document.styleSheets,n=[];e.matches=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector;for(var r,i,a=0,s=t.length;s>a;a++)if(r=t[a].cssRules||t[a].rules,i=t[a].media&&t[a].media.mediaText,i&&"all"!=i||(i=""),r&&(!i||window.matchMedia(i).matches))for(var d,l=t[a].href||location.pathname+location.search,c={},p=0,g=r.length;g>p;p++)try{if(d=r[p],1==d.type)c=o(e,d),c&&(c.href=l,c.sheetIndex=a,c.cssRuleIndex=[p],i&&(c.mediaText='media="'+i+'"'),n.push(c));else if(4==d.type){var u=d.media&&d.media.mediaText||"";if(u&&window.matchMedia(u).matches){var h=d.cssRules||d.rules;if(h)for(var f=0,b=h.length;b>f;f++)c=o(e,h[f]),c&&(c.href=l,c.sheetIndex=a,c.cssRuleIndex=[p,f],c.mediaText="@media "+u,n.push(c))}}else 3==d.type}catch(v){}return n}function r(e){var t=e.getAttribute("style");return t?t:""}return{_class:n(e),_style:r(e)}}function o(e,t){t?i.socketBuffer.unshift(e):i.socketBuffer.push(e),s.socketReady()&&i.socketSendStop&&(i.socketSendStop=0,i._js_p14())}debuggap={version:"4.4.0"};var n=function(e,t){return t=t?t:document,t.querySelector(e)},r=function(e,t){return t=t?t:document,t.querySelectorAll(e)},i=debuggap;i.css3Prefix="-webkit-",i.selfClosing={img:1,hr:1,br:1,area:1,base:1,basefont:1,input:1,link:1,meta:1,command:1,embed:1,keygen:1,wbr:1,param:1,source:1,track:1,col:1},i.browser="webkit",/MSIE|\.NET|IEMobile/i.test(navigator.userAgent)&&(i.browser="ie"),i.size=function(){return{width:document.documentElement.clientWidth,height:document.documentElement.clientHeight}},i.extend=function(){var e,t=arguments[0]||{},o=1,n=arguments.length,r=!1;for(t.constructor==Boolean&&(r=t,t=arguments[1]||{},o=2),"object"!=typeof t&&"function"!=typeof t&&(t={}),1==n&&(t=this,o=0);n>o;o++)if(null!=(e=arguments[o]))for(var i in e)t!==e[i]&&(r&&e[i]&&"object"==typeof e[i]&&t[i]&&!e[i].nodeType?t[i]=psoft.extend(r,t[i],e[i]):void 0!=e[i]&&(t[i]=e[i]));return t},i.inherit=function(e){for(var t in e)s[t]&&!function(t){var o=s[t];s[t]=function(){o.apply(this,arguments),e[t].apply(this,arguments)}}(t)},i.css=function(e,t,o,n){if("object"!=typeof t){var r=getComputedStyle(e,null);return r.getPropertyValue(t)}e.length||(e=[e]);for(var i=0;i<e.length;i++){var a=e[i];for(var s in t)s in a.style?a.style[s]=t[s]:(str=";"+s+":"+t[s],a.style.cssText+=str)}if(o){var a=function(){o(e)};setTimeout(a,n)}},i.classes={add:function(e,t){var o=e.className;this.have(e,t)||(o=o?o+" "+t:t.toString(),e.setAttribute("class",o))},remove:function(e,t){if(t){var o=e.className;o=o.replace(t,"").replace(/^\s+|\s+$/g,""),e.setAttribute("class",o)}else e.className=""},have:function(e,t){var o=new RegExp("\\b"+t+"\\b"),n=e.className;return o.exec(n)}},i.scale=function(e){var t;(t=n("#debuggapScale"))&&t.parentNode.removeChild(t),e?a.scaleColor=e:e=a.scaleColor;var o=[["top, transparent 4px, "+e+" 5px","10px 5px","100%","10px"],["top, transparent 24px, "+e+" 25px","20px 25px","100%","20px"],["left, transparent 4px, "+e+" 5px","5px 10px","10px","100%"],["left, transparent 24px, "+e+" 25px","25px 20px","20px","100%"]];t=document.createElement("div"),t.id="debuggapScale",i.classes.add(t,"dg-scale");for(var r=0;4>r;r++){var s=document.createElement("div"),d=o[r],l="background:"+i.css3Prefix+"linear-gradient("+d[0]+");background-size:"+d[1]+";height:"+d[2]+";width:"+d[3];l+=";position:absolute;left:0px;top:0px;z-index:999;",s.setAttribute("style",l),t.appendChild(s)}n("#debuggapRoot").appendChild(t)},i.conf={scaleColor:"#cccccc",lineColor:"#cc6600"};var a={};i.draw={_dg0:function(e){var t=document.createElement("li");if(t.className="dg-node",8==e.nodeType){var o=e.nodeValue;return o=o.replace(/\</g,"<").replace(/\>/g,">"),t.innerHTML='<pre class="pre"><span class="com"><!--'+o+"--></span></pre>",t}if(3==e.nodeType)return t.innerHTML='<pre class="pre">'+e.nodeValue+"</pre>",t;if(10==e.nodeType)return t.style.color="#ccc",t.innerHTML="<!DOCTYPE "+e.name+" "+e.publicId+" "+e.systemId+">",t;for(var n=e.tagName.toLowerCase(),r='<span class="tag"><'+n+"</span>",a=e.attributes,s=null,d=0;d<a.length;d++)r+=' <span class="attr">'+a[d].name+'=</span><span class="val">"'+a[d].value+'"</span>';if(i.selfClosing[n])r+='<span class="tag">/></span>';else{if(r+='<span class="tag">></span>',e.childNodes.length){r+="...",s=document.createElement("span"),s.className="dg-right";var l=document.createElement("span");l.className="dg-tap"}r+='<span class="tag"></'+n+"></span>"}return t.innerHTML=r,s&&(t.appendChild(s),t.appendChild(l)),t},_dg1:function(e){for(var t=e.parentNode,o=[],n=e;;){for(var r=[],a=i.filterChildNodes(t,[1,3,8]),s=0;s<a.length;s++)"dg-child"!=a[s].className&&r.push(a[s]);for(var d=0;d<r.length&&r[d]!=n;d++);if(o.unshift(d),"ul"==t.tagName.toLowerCase()&&"debuggapTree"==t.id)break;n=t.parentNode;do n=n.previousSibling;while(1!=n.nodeType);t=n.parentNode}return o},_dg2:function(e){var t,o=document,n=i.filterChildNodes(o,[1,3,8,10]);do{for(var r=[],a=0;a<n.length;a++)"debuggapRoot"!=n[a].id&&r.push(n[a]);var s=e.shift();t=r[s],n=i.filterChildNodes(t,[1,3,8,10])}while(e.length);return t},doAction:function(e){if(i.classes.have(e,"dg-rotate")){this.del(e)}else{this.add(e.parentNode)}delete e},add:function(e){var t=e.innerHTML;t=t.replace(/\.\.\.(.*?)<\/span>/,""),e.innerHTML=t;var o=this._dg1(e),r=this._dg2(o),a=i.filterChildNodes(r,[1,3,8]),s=document.createElement("li");s.className="dg-child";for(var d=document.createElement("ul"),l=0;l<a.length;l++)"debuggapRoot"!=a[l].id&&d.appendChild(this._dg0(a[l]));s.appendChild(d);var c=document.createElement("li");c.className="dg-child",c.innerHTML='<span class="tag"></'+r.tagName.toLowerCase()+"></span>",e.parentNode.insertBefore(c,e.nextSibling),e.parentNode.insertBefore(s,c);var p=n(".dg-right",e);return i.classes.add(p,"dg-rotate"),e},del:function(e){var t=e.parentNode,o=t.innerHTML,r=o.match(/<(.+?)<\/span>/)[1];o=o.replace(/><\/span>/,'></span>...<span class="tag"></'+r+"></span>"),t.innerHTML=o;var a=t.nextSibling;a.parentNode.removeChild(a),t.parentNode.removeChild(t.nextSibling);var e=n(".dg-right",t);return i.classes.remove(e,"dg-rotate"),i.classes.have(t,"line-wh")&&i.map._dg3(t),t}},i.extend({indexArray:function(e,t){for(var o=0;o<t.length;o++)if(t[o]==e)return o;return-1},inArray:function(e,t){return-1!=this.indexArray(e,t)},isArray:function(e){return"[object Array]"===toString.call(e)},each:function(e,t,o){if(void 0==e.length){for(var n in e)if(t.call(e[n],n,e[n],o)===!1)break}else for(var r=0,i=e.length;i>r&&t.call(e[r],r,e[r],o)!==!1;r++);},position:function(e){for(var t=0,o=0,n=e.clientWidth,r=e.clientHeight,i=e;i&&i!=document.body;)t+=i.offsetLeft,o+=i.offsetTop,i=i.offsetParent;return{left:t,top:o,width:n,height:r}},max:function(e,t){return e>t?e:t},min:function(e,t){return e>t?t:e},preName:function(e){return i.css3Prefix+e},trim:function(e){return e.replace(/^\s+|\s+$/g,"")},createEle:function(e,t,o){var e=document.createElement(e);for(var n in t)e.setAttribute(n,t[n]);return o&&(e.innerHTML=o),e},isFunction:function(e){return"function"==typeof e},filterChildNodes:function(e,t){t=t?t:[1,3,8];for(var o=[],n=e.childNodes,r=0;r<n.length;r++)if(i.inArray(n[r].nodeType,t)){if(3==n[r].nodeType&&""==i.trim(n[r].nodeValue))continue;o.push(n[r])}return o},ajax:function(e,t,o){var n=new XMLHttpRequest,r=o?"POST":"GET";n.open(r,e,!0,"",""),n.setRequestHeader("Accept","text/plain, */*"),n.setRequestHeader("innerUse",!0),n.innerUse=!0,n.onreadystatechange=function(){n&&4==n.readyState&&(t(n),n=null,delete n)},n.send(o?o:null)},bind:function(e,t){return"string"==typeof t&&(t=e[t]),function(){t.apply(e,arguments)}}}),i.map={_dg3:function(e){this.preShadowNode&&this._dg6(this.preShadowNode),this.preShadowNode=e;var t=i.draw._dg1(e),o=i.draw._dg2(t);this._dg7(o),i.classes.add(e,"line-wh"),i.each(r("span",e),function(){i.classes.add(this,"font-wh")})},_dg4:function(e){var t=i.map._dg1(e);if(s.socketReady())s.doLeafStructure(t.join(",")),this._dg7(e),i.scale();else{i.doc.trigger(r("#debuggapBlock .dg-leaf")[0],"tap");for(var o=n("#debuggapTree"),a=0;a<t.length-1;a++){var d=t[a],l=r("li",o)[d];i.draw.add(l),o=l.nextSibling}l=r("li",o)[t[a]],i.map._dg3(l)}},_dg1:function(e){var t,o=[],n=e;do{if(!n.parentNode)break;t=i.filterChildNodes(n.parentNode,[1,3,8,10]);for(var r=0;r<t.length&&t[r]!=n;r++);o.unshift(r),n=n.parentNode}while(n&&9!=n.nodeType);return o},_dg6:function(e){i.classes.remove(e,"line-wh"),i.each(r("span",e),function(){i.classes.remove(this,"font-wh")});var t=n("#debuggapShadow");t&&debuggapNode.removeChild(t),i.each(r(".debuggapLine"),function(){debuggapNode.removeChild(this)}),this.preShadowNode=null},_dg7:function(e){i.doc.bind(document,"taps",function(e){i.each(r("#debuggapTree,#debuggapScale,#debuggapShadow,#debuggapConfig,.debuggapLine"),function(){debuggapNode.removeChild(this)}),i.doc.unbind(document),e.preventDefault(),e.stopPropagation()});var t=n("#debuggapShadow");t&&debuggapNode.removeChild(t);for(var o=e.getBoundingClientRect(),a=["padding","border","margin"],s=["left","right","top","bottom"],d={},l=0;l<a.length;l++){d[a[l]]=[];var c="";"border"==a[l]&&(c="-width");for(var p=0;p<s.length;p++){var g=a[l]+"-"+s[p]+c;d[a[l]].push(parseInt(i.css(e,g)))}}var u={left:o.left+document.body.scrollLeft,top:o.top+document.body.scrollTop,width:o.width-d.border[0]-d.border[1],height:o.height-d.border[2]-d.border[3]};u.left=Math.ceil(u.left-d.margin[0]),u.top=Math.ceil(u.top-d.margin[2]),u.width=i.max(u.width-d.padding[0]-d.padding[1],0),u.height=i.max(u.height-d.padding[2]-d.padding[3],0);var h=document.createElement("div");i.css(h,{width:u.width+"px",height:u.height+"px",opacity:.5,"background-color":"#3879d9"});for(var l=0;4>l;l++)d.margin[l]+=d.border[l];a.splice(1,1);for(var p=0;p<a.length;p++){var f=a[p];if(d[f][0]+d[f][1]+d[f][2]+d[f][3]!=0){for(var b=document.createElement("div"),v={opacity:.8},l=0;l<s.length;l++){var g="border-"+s[l];v[g]=d[f][l]+"px solid "+this.borderColor[f]}i.css(b,v),b.appendChild(h),h=b}}i.css(h,{position:"absolute",left:u.left+"px",top:u.top+"px"}),h.id="debuggapShadow";var m=debuggapNode.childNodes[0];debuggapNode.insertBefore(h,m);var x=u.width+d.padding[0]+d.padding[1]+d.margin[0]+d.margin[1],y=u.height+d.padding[2]+d.padding[3]+d.margin[2]+d.margin[3];this._dg8(u.left,u.top,x,y)},_dg8:function(e,t,o,n){if(i.each(r(".debuggapLine"),function(){debuggapNode.removeChild(this)}),0!=o&&0!=n){for(var s=i.size().width,d=i.size().height,l=[[e,0,1,t],[e+o-1,0,1,t],[e,t+n,1,d-t-n],[e+o-1,t+n-1,1,d-t-n],[0,t,e,1],[e+o,t,s-e-o,1],[0,t+n-1,e,1],[e+o,t+n-1,s-e-o,1]],c=document.createDocumentFragment(),p=a.lineColor,g=0;g<l.length;g++){var u=l[g],h=document.createElement("div");i.css(h,{left:u[0]+"px",top:u[1]+"px",width:u[2]+"px",height:u[3]+"px",position:"absolute","background-color":p}),i.classes.add(h,"debuggapLine"),c.appendChild(h)}var f=debuggapNode.childNodes[0];debuggapNode.insertBefore(c,f)}},noMap:{html:1,head:1,script:1,style:1,meta:1,title:1,option:1},borderColor:{padding:"#329406",border:"#dd903f",margin:"#c56c0e"},preShadowNode:null},i.console={log:function(){var e=this.createLine();i.inArray(this.focus,["all","log"])||i.css(e,{display:"none"}),i.classes.add(e,"dg-l"),r("td",e)[1].innerHTML=this.concatArg(arguments)},warn:function(){var e=this.createLine();i.inArray(this.focus,["all","warn"])||i.css(e,{display:"none"}),i.classes.add(e,"dg-w"),r("td",e)[0].innerHTML='<div class="dg-warn"></div><div class="dg-type-con">!</div>',r("td",e)[1].innerHTML=this.concatArg(arguments)},error:function(){var e=this.createLine();i.inArray(this.focus,["all","error"])||i.css(e,{display:"none"}),i.classes.add(e,"dg-e"),r("td",e)[0].innerHTML='<div class="dg-error"></div><div class="dg-type-con">x</div>',r("td",e)[1].innerHTML="<span style='color:red'>"+this.concatArg(arguments)+"</span>"},concatArg:function(e){for(var t="",o=0,n=e.length;n>o;o++)t+=" "+e[o];return t},tryCatch:function(e){this.history[0]!=e&&this.history.unshift(e);this.createLine(e);try{e=/(for|while)/.exec(e)?'return new Function("'+e+'")()':"return "+e;var t=new Function(e)();t?"string"==typeof t?t='<span style="white-space:pre;color:#cb4416;">'+t.replace(/\>/g,">").replace(/\</g,"<")+"</span>":"function"==typeof t&&(t='<span style="white-space:pre">'+t+"</span>"):t+="",this.log(t)}catch(o){this.error(o.name+": "+o.message)}},createLine:function(e){var t=document.createElement("tr");return t.innerHTML="<td></td><td></td>",i.each(r("td",t),function(t){1==t&&e?this.innerHTML='<span style="color:blue;">'+e+"</span>":this.innerHTML=""}),i.classes.add(r("td",t)[0],"dg-type"),i.classes.add(r("td",t)[1],"dg-con"),n("table",n("#debuggapConsole .dg-console")).appendChild(t),t},history:[],index:-1,up:function(){this.index++,this.index<this.history.length?n("#debuggapInput").value=this.history[this.index]:this.index--},down:function(){this.index--,this.index<0?(n("#debuggapInput").value="",this.index=-1):n("#debuggapInput").value=this.history[this.index]},go:function(){var e=n("#debuggapInput");e.value&&(this.tryCatch(e.value),this.index=-1,e.value="")},clean:function(){var e=n(".dg-console",n("#debuggapConsole")),t=r("tr",e);i.each(t,function(){this.parentNode.removeChild(this)})},focus:"all",filter:function(e){var t=e.innerHTML;if("clean"==t.toLowerCase())return this.clean(),!0;this.focus=t.toLowerCase(),i.each(r("span",e.parentNode),function(){this==e?i.classes.add(this,"dg-console-focus"):i.classes.remove(this,"dg-console-focus")});var o=t.toLowerCase()[0],a=n(".dg-console",n("#debuggapConsole"));if("a"==o)var s={display:"table-row"};else var s={display:"none"};if(i.each(r(".dg-l,.dg-e,.dg-w",a),function(){i.css(this,s)}),"a"!=o){var d=".dg-"+o;i.each(r(d),function(){i.css(this,{display:"table-row"})})}},overwrite:function(){for(var e=["log","warn","error"],t=0;t<e.length;t++){var r=console[e[t]];!function(e,t){console[t]=function(){e.apply(this,arguments),n("#debuggapConsole")&&i.console[t].apply(i.console,arguments),o(t+"Cmd:"+s._js_p3(arguments[0]))}}(r,e[t])}e=null,r=null,delete e,delete r}},i.event={eventIndex:1,_dg9:function(e,t){var o=e.left+e.width,n=e.top+e.height,r=t.pageX,i=t.pageY;return r>e.left&&i>e.top&&o>r&&n>i?!0:void 0},_dg10:function(e){if(!(this instanceof arguments.callee))return!0;var t=e.parentNode,o=0,n=0,r={};this.bind=function(e,t,o){var n;"string"==typeof e?(n=r[e])?n[t]=o:(n={},n[t]=o,r[e]=n):e.dgEventIndex?(n=r[e.dgEventIndex],n?n[t]=o:(n={},n[t]=o,r[e.dgEventIndex]=n)):(e.dgEventIndex=i.event.eventIndex++,n={},n[t]=o,r[e.dgEventIndex]=n)},this.unbind=function(e){e.dgEventIndex&&r[e.dgEventIndex]&&(r[e.dgEventIndex]=null,delete r[e.dgEventIndex])},this.trigger=function(e,t){var o,n=e.dgEventIndex;(o=r[n])&&o[t].call(e,null)},this.destroy=function(){r=null,e.removeEventListener("touchmove",s,!1),e.removeEventListener("touchend",d,!1),e.removeEventListener("touchstart",a,!1),s=null,d=null,a=null};var a=function(e){var a=e.touches&&e.touches[0]||e,s=a.target;for(n=0;s!=t&&s;){var d=s.dgEventIndex,l=r[d];if(l&&l.scroll){var c=l.scroll;o=0,n=1,c.dgOx=a.pageX,c.dgOy=a.pageY,i.css(c,{"-webkit-transition":""});var p=c.style.WebkitTransform?c.style.WebkitTransform:"translate(0px,0px)",g=p.match(/translate\(([^\)]*)\)/)[1].split(",");return c.dgX=parseInt(g[0]),c.dgY=parseInt(g[1]),!0}if(l&&l.move&&(o=0),l&&l.taps&&l.taps.call(s,e))return!0;s=s.parentNode}},s=function(e){for(var n=e.touches[0],i=n.target;i!=t&&i;){var a=i.dgEventIndex,s=r[a];if(s&&s.scroll){var d=s.scroll;if(o=1,Math.abs(n.pageY-d.dgOy)>Math.abs(n.pageX-d.dgOx))var l="translate("+d.dgX+"px,"+(n.pageY-d.dgOy+d.dgY)+"px) ";else var l="translate("+(n.pageX-d.dgOx+d.dgX)+"px,"+d.dgY+"px) ";return d.style.WebkitTransform=l,e.preventDefault(),!0}if(s&&s.move&&(o=1,e.preventDefault(),e.stopPropagation(),s.move.call(i,e)))return!0;i=i.parentNode}},d=function(e){for(var a=e.changedTouches[0],s=a.target;s!=t&&s;){var d=s.dgEventIndex,l=(s.tagName||"").toLowerCase(),c=r[d]?r[d]:r[l];if(c&&c.tap&&!o){if(1==s.nodeType)var p=i.position(s);else n=1;if((n||i.event._dg9(p,a))&&c.tap.call(s,e))return!0}if(c&&c.scroll&&o){var g=c.scroll;o=0;var u=g.style.WebkitTransform?g.style.WebkitTransform:"translate(0px,0px)",h=u.match(/translate\(([^\)]*)\)/)[1].split(",");g.dgX=parseInt(h[0]),g.dgY=parseInt(h[1]);var f=i.max(g.scrollHeight-parseInt(i.css(g.parentNode,"height")),0),b=i.max(g.scrollWidth-parseInt(i.css(g.parentNode,"width")),0),v="",m="",x=0;if(g.dgY>0?(m="0px",x=1):Math.abs(g.dgY)>f&&(m="-"+f+"px",x=1),g.dgX>0?(v="0px",x=1):Math.abs(g.dgX)>b&&(v="-"+b+"px",x=1),x){v||(v=g.dgX+"px"),m||(m=g.dgY+"px");var y="translate("+v+","+m+")";i.css(g,{"-webkit-transition":"-webkit-transform 0.5s","-webkit-transform":y})}return!0}s=s.parentNode}};e.addEventListener("touchmove",s,!1),e.addEventListener("touchend",d,!1),e.addEventListener("ie"==i.browser?"mousedown":"touchstart",a,!1)}},e.prototype={tryMaxTimes:1,currentTimes:0,readyState:0,timeout:10,_dg11:function(){var e=document.createElement("script");e.src=(0==this.readyState?this.url+"/init":this.url)+"?_d="+(new Date).getTime(),e.id="socket_script",e.onload=i.bind(this,"success"),e.onerror=i.bind(this,"error"),document.head.appendChild(e)},_dg12:function(){var e=document.createElement("script");e.src=this.url+"/close?_d="+(new Date).getTime(),document.head.appendChild(e)},send:function(e){i.ajax(this.url,function(){},e)},success:function(){this._js_p0(),setTimeout(i.bind(this,"getSocketData"),this.timeout)},error:function(){this._js_p0(),this.currentTimes++!=this.tryMaxTimes?setTimeout(i.bind(this,"getSocketData"),this.timeout):(delete localStorage.scriptSocket,this.onclose&&this.onclose())},_js_p0:function(){document.head.removeChild(document.getElementById("socket_script"))},close:function(){}},i.scriptSocket={_dg13:function(){d&&(d.readyState=1,d.onopen())},handle:function(e){d&&d.onmessage({data:e})}},function(){function e(e){var t=e;return"http"!=e.slice(0,4)&&("/"==e.slice(0,1)?t=location.protocol+"//"+location.host+e:"./"==e.slice(0,2)&&(t=(location.protocol+"//"+location.host+location.pathname).replace(/\/.[^\/]*$/,"/")+e.slice(2))),t}var t={},n=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(o,r,i){try{var a=1e3*(new Date).getTime()+Math.floor(1e3*Math.random()),s=e(r);"http"!=s.slice(0,4)&&"file"!=s.slice(0,4)||(this.uniqueId=a,t[a]={method:o,url:s,header:{}})}catch(d){}n.apply(this,arguments)};var r=XMLHttpRequest.prototype.setRequestHeader;XMLHttpRequest.prototype.setRequestHeader=function(e,o){this.uniqueId&&(t[this.uniqueId].header[e]=o),r.apply(this,arguments)};var i=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.send=function(e){function n(){if(!g){g=!0;var e,n;try{e=p.getAllResponseHeaders(),n=p.responseText}catch(r){e="",n=""}if("http"==t[p.uniqueId].url.slice(0,4)){var i=e.split("\r\n");e={};for(var a,s=0;s<i.length;s++)a=i[s],a&&(a=a.split(":"),e[a[0]]=a[1]);var d={host:location.host,times:(new Date).getTime()-c,size:n.length,responseHeaders:e,data:n,id:p.uniqueId,statusCode:p.status};o("resultRequest:"+JSON.stringify(d))}}}function r(){if(p.onreadystatechange){clearInterval(h);var e=p.onreadystatechange;p.onreadystatechange=function(){4==p.readyState&&n(),e&&e()}}}if(this.setRequestHeader("XHR",!0),this.uniqueId){if(this.innerUse)return t[this.uniqueId]=null,delete t[this.uniqueId],void i.apply(this,arguments);if(t[this.uniqueId].body=e,"http"==t[this.uniqueId].url.slice(0,4)){var a=t[this.uniqueId].url.match(/([^:]+):\/\/([^\/\#\?]+)([^?#]*)([^#]*)(.*)/),s=a[2].split(":")[0],d=a[2].split(":")[1]?a[2].split(":")[1]:"",l={method:t[this.uniqueId].method,id:this.uniqueId,requestHeaders:t[this.uniqueId].header,httpVersion:"HTTP/1.1",location:{protocol:a[1],host:s,port:d,hostname:a[2],hash:a[5],search:a[4],pathname:a[3],href:a[0]}};e&&(l.payload=e),o("initRequest:"+JSON.stringify(l))}var c=(new Date).getTime(),p=this,g=!1,u=setInterval(function(){4==p.readyState&&(clearInterval(u),n(),t[p.uniqueId]=null,delete t[p.uniqueId])},5),h=setInterval(function(){r()},0);r(),i.apply(p,arguments)}}}(),i.init={setting:function(){},_dg14:function(){if(!(debuggapNode=n("#debuggapRoot"))){var e=document.createElement("div");e.id="debuggapRoot",document.body.appendChild(e),debuggapNode=e,i.init._dg15(),i.init._dg17(),i.init._dg16(),"ie"==i.browser&&i.css(n("#debuggapBlock"),{display:"none"})}},_dg15:function(){var e=document.createElement("style");e.innerHTML="body{-webkit-text-size-adjust:100%}#debuggapRoot input{font-size:14px;-webkit-appearance:none;}#debuggapRoot .dg-block{white-space:nowrap;margin: 0px;padding: 20px;}#debuggapRoot td{font-family: arial,sans-serif;letter-spacing: 1px;}#debuggapRoot .dg-scale{}#debuggapRoot li{list-style:none;padding-left:15px;position:relative;font-size:15px;font-family:arial,sans-serif;line-height:18px;text-align:left;}#debuggapRoot ul{list-style:none;padding-left:0px;margin:0px;}span.dg-down{display:inline-block;border-left:5px solid transparent;border-right:5px solid transparent;border-top:10px solid #515151;width:0px;height:0px;position:absolute;left:0px;top:3px;}span.dg-right{-webkit-transition:-webkit-transform 0.5s;transition:transform 0.5s;display:inline-block;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:10px solid #515151;width:0px;height:0px;position:absolute;left:0px;top:3px;}span.dg-tap{height:18px;padding:0px 25px;left:-30px;position:absolute;}span.dg-rotate{-webkit-transform:rotate(90deg);transform:rotate(90deg);}#debuggapRoot .tag{color:#a5129f;}#debuggapRoot .attr{color:#994500}#debuggapRoot .val{color:#1a1a7e;}#debuggapRoot .com{color:#236e25;}#debuggapRoot .pre{margin:0px;padding:0px;}#debuggapRoot .font-wh{color:#fff;}#debuggapRoot .line-wh{color:#fff;background-color:#3879d9;}#debuggapTree {position:absolute;}.debuggapFull {background-color:rgba(255,255,255,0.5);position:absolute;left:0px;top:0px;right:0px;bottom:0px;z-index:999;overflow:hidden;}.debuggapFull0 {background-color:rgba(255,255,255,1);position:absolute;left:0px;top:0px;right:0px;bottom:0px;z-index:999;overflow:hidden;}#debuggapRoot .dg-out{background-color: transparent;position: absolute;z-index: 999;top: 20px;right: 20px;border: 2px solid #00abe3;border-radius: 30px;width: 30px;height: 30px;box-sizing: content-box;}#debuggapRoot .dg-inner{width:20px;height: 20px;background: #ccc;margin: 5px;border-radius: 20px;background-color: #00abe3;}#debuggapConsole{display:none;padding:10px;margin:0px;}#debuggapConsole .dg-console{overflow:hidden;border-top:1px solid #ccc;margin-top:2px;}#debuggapConsole .dg-console tr{display:table-row}#debuggapInput {width:100%;line-height:16px;padding:2px;margin:0px;border:1px solid #ccc;outline-style:none;}#debuggapConsole .dg-up{border-left:8px solid transparent;border-bottom:16px solid #515151;border-right:8px solid transparent;width:0px;height:0px;position:absolute;left:0px;top:7px;}#debuggapConsole .dg-go{border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:16px solid #515151;width:0px;height:0px;position:absolute;right:0px;top:2px;}#debuggapConsole .dg-down{border-top:16px solid #515151;border-right:8px solid transparent;border-left:8px solid transparent;width:0px;height:0px;position:absolute;left:0px;top:7px;}#debuggapConsole .dg-upP{width:20px;height:25px;position:absolute;left:0px;top:0px;}#debuggapConsole .dg-downP{width:20px;height:25px;position:absolute;left:25px;top:0px;}#debuggapConsole .dg-goP{width:30px;height:20px;position:absolute;right:0px;top:0px;}#debuggapConsole .dg-type{width:20px;height:16px;text-align:center;position:relative;}#debuggapConsole .dg-con{border-bottom:1px solid #ccc;font-size:11px ! important;word-break:break-all;}#debuggapConsole .dg-error{border:6px solid #d80c15;border-radius:6px;width:0px;height:0px;position:absolute;left:0px;top:1px;}#debuggapConsole .dg-type-con{width:10px;height:10px;position:absolute;left:1px;top:1px;color:#fff;line-height:10px;font-size:14px;}#debuggapConsole .dg-warn{border-left:6px solid transparent;border-bottom:12px solid #f4bd00;border-right:6px solid transparent;width:0px;height:0px;position:absolute;left:0px;top:1px;}#debuggapConsole .dg-console-info{padding:0px 5px;color:#fff;background-color:#a8a8a8;border-radius:10px;margin-right:5px;font-size:14px;}#debuggapConsole .dg-console-focus{background-color:rgb(0,171,227);}#debuggapConfig {padding:10px;margin:0px;}#debuggapConfig .dg-conf-bts{height:30px;overflow:hidden;}#debuggapConfig .dg-conf-left{border-radius:5px;float:left;background-color:rgb(0,171,227);color:#fff;border:0px}#debuggapConfig .dg-conf-right{border-radius:5px;float:right;background-color:rgb(0,171,227);color:#fff;border:0px;}#debuggapBlock {}#debuggapBlock .dg-leaf{width:70px;height:70px;border-radius:30px;text-align:center;line-height:70px;color:#fff;margin:1px;float:left;background-color:rgba(0,171,227,0.7);}#debuggapBlock .dg-flower{width:144px;height:144px;position:absolute;z-index:999;left:50%;top:50%;margin-left:-72px;margin-top:-72px;opacity:0;display:none;-webkit-transition:opacity 0.5s;}#debuggapBlock .dg-center{width:50px;height:50px;position:absolute;left:47px;top:47px;border-radius:50px;text-align:center;line-height:50px;color:#fff;margin:1px;float:left;background-color:rgba(0,171,227,1);}",debuggapNode.appendChild(e)},_dg16:function(){var e=document.createElement("div");e.id="debuggapBlock",e.innerHTML='<div id="debuggapScrim" class="debuggapFull" style="display:none;"></div><div class="dg-flower" class="dg-flower"><div class="dg-leaf" style="border-top-left-radius:0px;">Nodes</div><div class="dg-leaf" style="border-top-right-radius:0px;">Inspect</div><div class="dg-leaf" style="border-bottom-left-radius:0px;">Config</div><div class="dg-leaf" style="border-bottom-right-radius:0px;" >Console</div><div class="dg-center">Close</div></div><div class="dg-out"><div class="dg-inner"></div></div>',debuggapNode.appendChild(e)},_dg17:function(){var e=document.createElement("div");e.id="debuggapConsole",e.innerHTML='<table border=0 cellpadding="0" cellspacing="0" width=100%><tr><td><input type="txt" id="debuggapInput"/></td><td> <div style="position:relative;width:25px;height:22px;"><div class="dg-goP"><div class="dg-go"></div></div></div></td></tr><tr><td colspan=2 ><div style="height:25px;width:100%;position:relative;"><div class="dg-upP"><div class="dg-up"></div></div><div class="dg-downP"><div class="dg-down"></div></div><div style="position:absolute;right:0px;top: 7px;"><span class="dg-console-info dg-console-focus">All</span><span class="dg-console-info">Error</span><span class="dg-console-info">Warn</span><span class="dg-console-info">Log</span><span class="dg-console-info">Clean</span> </div></div></td></tr></table><div class="dg-console"><table border=0 cellpadding="0" cellspacing="0" width=100%></table></div>',debuggapNode.appendChild(e)},_dg18:function(){var e=document.createElement("ul");e.id="debuggapTree",i.classes.add(e,"dg-block");for(var t=0;t<document.childNodes.length;t++){var o=debuggap.draw._dg0(document.childNodes[t]);e.appendChild(o)}debuggapNode.appendChild(e),i.scale(),i.classes.add(n("#debuggapRoot"),"debuggapFull"),i.css(n("#debuggapTree"),{"min-width":debuggap.size.width+"px","min-height":debuggap.size.height+"px"})},_dg19:function(){debuggapNode.removeChild(n("#debuggapTree")),debuggapNode.removeChild(n("#debuggapScale")),i.classes.remove(debuggapNode,"debuggapFull")},_dg20:function(){if(!n("#debuggapConfig")){var e=document.createElement("div");e.id="debuggapConfig",e.innerHTML='<table width="100%" border=0><caption>Config Setting</caption><tr><td>scale color:</td><td><input type="txt" id="scaleColor"/></td></tr><tr><td>line color:</td><td><input type="txt" id="lineColor"/></td></tr></table><div class="dg-conf-bts"><input class="dg-conf-left" type="button" value="reset"/><input class="dg-conf-right" type="button" value="modify"/></div><hr/>click the following button to connect to remote DebugGap<br/><div class="dg-socket-bts"><b>Server</b> : <input type="txt" id="dgSocketHost" style="width:100px"> : <input type="txt" id="dgSocketPort" style="width:50px"> <input class="dg-conf-right" id="dgConnect" type="button" value="Connect"/></div>',debuggapNode.appendChild(e);for(var t in a)n("#"+t)&&(n("#"+t).value=a[t])}},daemon:function(){var e=0,t=setInterval(function(){n("#debuggapRoot")||i.init._dg14(),++e>=10&&(i.start(),clearInterval(t))},200)},_dg21:function(){var e=i._js_p15();return e&&2==e.length&&(localStorage.host=e[0],localStorage.port=e[1],localStorage.protocal="websocket",localStorage.name="debuggap_client",localStorage.expired=(new Date).getTime()+36e5),"ie"==i.browser&&2!=e.length?void alert('Please include debuggap.js with remote address in IE.\nsuch as:\n<script src="debuggap.js?192.168.1.4:11111"></script>'):void(localStorage.expired&&(new Date).getTime()<localStorage.expired&&(i.extend(i.conf,{host:localStorage.host,port:localStorage.port,protocal:localStorage.protocal,name:localStorage.name}),i.initSocket(i.conf)))}},i.ready=function(){debuggap.extend(a,i.conf),i.console.overwrite(),i.init._dg14(),i.init.daemon(),i.init._dg21()},i.start=function(){var e=new i.event._dg10(document);i.doc=e,e.bind(n("#debuggapBlock .dg-out"),"tap",function(){e.unbind(document);var t=n("#debuggapBlock .dg-flower");return 0==i.css(t,"opacity")?(i.css(n("#debuggapScrim"),{display:"block"}),i.css(n(".dg-out"),{display:"none"}),i.css(t,{opacity:1,display:"block"})):i.css(t,{opacity:0},function(e){i.css(e,{display:"none"})},500),!0}),e.bind(n("#debuggapBlock .dg-out"),"move",function(e){var t=e.touches[0],o=t.pageX,n=t.pageY,r=i.size().width-40,a=i.size().height-40;return 10>o?o=10:o>r&&(o=r),10>n?n=10:n>a&&(n=a),i.css(this,{top:n+"px",left:o+"px"}),!0}),e.bind("span","tap",function(){if(i.classes.have(this,"dg-tap")){var e=n(".dg-right",this.parentNode);return i.draw.doAction(e),!0}return i.classes.have(this,"dg-console-info")?(i.console.filter(this),!0):void 0}),e.bind("li","tap",function(){if(i.classes.have(this,"dg-node")){var e=this.innerHTML,t=e.match(/<(.*?)<\/span>/)[1];return i.map.noMap[t]||(i.classes.have(this,"line-wh")?i.map._dg6(this):i.map._dg3(this)),!0}}),e.bind("input","tap",function(){if(this.parentNode&&"dg-conf-bts"==this.parentNode.className){var e=this.value;if("reset"==e)for(var t in a)n("#"+t)&&(a[t]=n("#"+t).value=i.conf[t]);else for(var t in a)n("#"+t)&&(a[t]=n("#"+t).value);return!0}this.parentNode&&"dg-socket-bts"==this.parentNode.className&&"button"==this.type&&(i.extend(i.conf,{host:n("#dgSocketHost").value,port:n("#dgSocketPort").value,protocal:"websocket",name:"debuggap_client"}),localStorage.host=i.conf.host,localStorage.port=i.conf.port,localStorage.protocal=i.conf.protocal,localStorage.name=i.conf.name,localStorage.expired=(new Date).getTime()+36e5,this.value="Connecting",i.initSocket(i.conf))}),e.bind(n("#debuggapScrim"),"tap",function(e){return i.css(this,{display:"none"}),i.css(n("#debuggapBlock .dg-flower"),{opacity:0},function(e){i.css(e,{display:"none"})},500),i.css(n(".dg-out"),{display:"block"}),!0}),e.bind(r("#debuggapBlock .dg-leaf")[0],"tap",function(t){return e.trigger(n("#debuggapBlock .dg-center"),"tap"),i.init._dg18(),e.bind(n("#debuggapRoot"),"scroll",n("#debuggapTree")),!0}),e.bind(r("#debuggapBlock .dg-leaf")[1],"tap",function(t){return e.trigger(n("#debuggapBlock .dg-center"),"tap"),e.bind(n("#debuggapRoot"),"scroll",null),e.bind(document,"taps",function(t){e.unbind(document);var o=t.changedTouches[0].target;i.inArray(o.className,["dg-inner","dg-out"])||i.map._dg4(o),t.preventDefault()}),t&&t.preventDefault(),t&&t.stopPropagation(),
!0}),e.bind(r("#debuggapBlock .dg-leaf")[2],"tap",function(t){e.trigger(n("#debuggapBlock .dg-center"),"tap"),i.classes.add(n("#debuggapRoot"),"debuggapFull0"),i.init._dg20();var o=function(e){try{e=JSON.parse(e),e=e.split(":"),n("#dgSocketHost").value=e[0],n("#dgSocketPort").value=e[1]}catch(t){localStorage.host&&(n("#dgSocketHost").value=localStorage.host,n("#dgSocketPort").value=localStorage.port)}};return o(""),!0}),e.bind(r("#debuggapBlock .dg-leaf")[3],"tap",function(t){return e.trigger(n("#debuggapBlock .dg-center"),"tap"),i.css(n("#debuggapConsole"),{display:"block"}),i.classes.add(n("#debuggapRoot"),"debuggapFull0"),e.bind(n("#debuggapRoot"),"scroll",n("#debuggapConsole .dg-console table")),i.css(n("#debuggapConsole .dg-console"),{height:i.size().height-65+"px"}),!0}),e.bind(n("#debuggapBlock .dg-center"),"tap",function(t){return e.trigger(n("#debuggapScrim"),"tap"),i.each(r("#debuggapTree,#debuggapScale,#debuggapShadow,#debuggapConfig,.debuggapLine"),function(){debuggapNode.removeChild(this)}),i.css(n("#debuggapConsole"),{display:"none"}),i.classes.remove(debuggapNode),!0}),n("#debuggapInput").addEventListener("keypress",function(e){13!=e.which&&13!=e.keyCode||i.console.go()},!1),e.bind(n("#debuggapConsole .dg-upP"),"tap",function(e){i.console.up()}),e.bind(n("#debuggapConsole .dg-goP"),"tap",function(e){i.console.go()}),e.bind(n("#debuggapConsole .dg-downP"),"tap",function(e){i.console.down()})};var s={remoteClientReady:!1,socketReady:function(){return d&&1==d.readyState&&s.remoteClientReady},doReady:function(){console.log("-------------------------------------------------- DebugGap starts --------------------------------------------------")},doInit:function(){this.remoteClientReady=!0,this.preLocalStorage="",this.preSessionStorage="",this.preCookie="";var e="";e+=i.indexArray(document.body.parentNode,i.filterChildNodes(document,[1,3,8,10]))+",",e+=i.indexArray(document.body,i.filterChildNodes(document.body.parentNode,[1,3,8,10])),this.doAllStructure(e),o("deviceInfo:"+navigator.userAgent)},doAllStructure:function(e){var t;t=s._js_p1(e),o("allStructure:"+JSON.stringify(t))},doLeafStructure:function(e){var t,n=e.lastIndexOf(","),r=e.substr(n+1);e=e.substr(0,n),t=s._js_p1(e),o("leafStructure:"+r+";"+JSON.stringify(t))},doGetChildren:function(e){for(var t,n=e.split(","),r=s._js_p1(e);n.length;)t=n.shift(),r=r[t].c;o("addChildren:"+e+";"+JSON.stringify(r))},doGetChildrenV2:function(e){var t=e.slice(0,13);e=e.slice(14);for(var n,r=""==e?[]:e.split(","),i=s._js_p1(e);r.length;)n=r.shift(),i=i[n].c;o("childrenList:"+t+";"+e+";"+JSON.stringify(i))},_js_p1:function(e){for(var t,o=""==e?[]:e.split(","),n=document,r=[],a=r;o.length;){for(var t=i.filterChildNodes(n,[1,3,8,10]),s=parseInt(o.shift()),d=0;d<t.length;d++)if("debuggapRoot"!=t[d].id){var l=this._js_p2(t[d]);r.push(l),d==s&&(n=t[s])}else t.splice(d,1),d--;r=r[s].c}t=i.filterChildNodes(n,[1,3,8,10]);for(var d=0;d<t.length;d++)if("debuggapRoot"!=t[d].id){var l=this._js_p2(t[d]);l&&r.push(l)}return a},_js_p2:function(e){var t={t:e.nodeName.toLowerCase(),c:e.childNodes.length>0?[]:!1};if(1==e.nodeType){t._dg_t=t.t,t.c&&1==e.childNodes.length&&3==e.childNodes[0].nodeType&&e.childNodes[0].nodeValue.length<20&&(t.cs=e.childNodes[0].nodeValue);for(var o=e.attributes,n=0;n<o.length;n++)t.a||(t.a={}),t.a[o[n].name]=o[n].value}else 10==e.nodeType?(t.s="<!DOCTYPE "+e.name+" "+e.publicId+" "+e.systemId+">",delete t.t):(t.s=e.nodeValue,t._dg_t=t.t);return t},doFile:function(e){setTimeout(function(){i.ajax(e,function(t){o("fileCon:"+e+"_dg_"+t.responseText)})},100)},doCmd:function(e){try{var t=new Function("return "+e)();t=this._js_p3(t),o("cmdResult:"+t)}catch(n){var t=n.name+": "+n.message;console.error(t)}},_js_p3:function(e){if(e&&i.inArray(e.nodeType,[1,3,8,9])){var t=i.map._dg1(e);e=s._js_p2(e),e.relation=t,e=JSON.stringify(e)}else if("[object Array]"==Object.prototype.toString.call(e))try{e=JSON.stringify(e)}catch(o){e=this._js_p4(e),e=JSON.stringify(e)}else"[object Object]"==Object.prototype.toString.call(e)&&(e=this._js_p4(e),e=JSON.stringify(e));return e},_js_p4:function(e){var t,o=Object.keys(e),n={};e.length&&(n=[]);for(var r=0,a=o.length;a>r;r++)if(t=o[r],e[t]&&i.inArray(e[t].nodeType,[1,3,8,9])){var d=i.map._dg1(e[t]),l=s._js_p2(e[t]);l.relation=d,n[t]={v:e[t].toString(),element:l}}else e[t]&&"object"==typeof e[t]&&Object.keys(e[t]).length?n[t]=arguments.callee(e[t]):"function"==typeof e[t]?n[t]={v:e[t].toString().match(/[^\n{]+/)[0]+"{...}",tag:"func"}:"[object RegExp]"==Object.prototype.toString.call(e[t])?n[t]={v:e[t].toString(),tag:"reg"}:n[t]=e[t];return n},doFileTree:function(){this._js_p7(location.href.replace(location.hash,""));for(var e=document.scripts,t=0;t<e.length;t++)e[t].src&&"chrome-extension"!=e[t].src.substr(0,16)&&this._js_p5(e[t].src);for(var e=document.styleSheets,t=0;t<e.length;t++)e[t].href&&this._js_p5(e[t].href);var n=[this._sPre,this._sTitle,this._sFiles];o("fileTree:"+JSON.stringify(n))},_js_p5:function(e){e=e.replace(this._sPre,""),e=e.split("/");var t=this._sFiles;if(1==e.length)t.push(e[0]);else{for(var o=0;o<e.length-1;o++){for(var n=e[o],r=t.length,i=!1,a=0;r>a;a++)if("string"!=typeof t[a]&&t[a][n]){t=t[a][n],i=!0;break}if(!i){var s=e.slice(o,-1);t=this._js_p6(t,s);break}}t.push(e[e.length-1])}t.sort(function(e,t){return e>t?1:-1})},_js_p6:function(e,t){for(var o=0;o<t.length;o++){var n={};n[t[o]]=[];var r=e.push(n),i=e;e=e[r-1][t[o]],i.sort(function(e,t){var o="string"==typeof e,n="string"==typeof t;return o&&n?e>t?-1:1:o?1:n?-1:Object.keys(e)[0]>Object.keys(t)[0]?-1:1})}return e},_js_p7:function(e){this._sPre=e.substring(0,e.lastIndexOf("/")+1),this._sFiles=[],this._sTitle=e.substring(e.lastIndexOf("/")+1)},preLocalStorage:"",doLocalStorage:function(){var e=this._js_p8(localStorage);e!=this.preLocalStorage&&(this.preLocalStorage=e,o("localStorage:"+e))},preSessionStorage:"",doSessionStorage:function(){var e=this._js_p8(sessionStorage);e!=this.preSessionStorage&&(this.preSessionStorage=e,o("sessionStorage:"+e))},_js_p8:function(e){var t=250,o={};for(var n in e)o[n]=e[n].substr(0,t),e[n].length>t&&(o[n]+="...");return JSON.stringify(o)},preCookie:"",doCookie:function(){var e=document.cookie;e!=this.preCookie&&(this.preCookie=e,o("cookie:"+e))},doDelLocalStorage:function(e){localStorage[e]=null,delete localStorage[e]},doDelSessionStorage:function(e){sessionStorage[e]=null,delete sessionStorage[e]},doDelCookie:function(e){var t=new Date;t.setTime(t.getTime()-1e4),document.cookie=e+"=0; expires="+t.toGMTString()},doCacheFile:function(e){var t=e.indexOf("_dg_");if(!(1>t)){var o=e.substring(0,t),n=e.substring(t+4),r=o.substring(o.lastIndexOf(".")+1);"js"==r?this._js_p9(o,n):"css"==r&&this._js_p10(o,n)}},_js_p9:function(e,t){n('script[_src="'+e+'"]')&&n('script[_src="'+e+'"]').remove(),n("#debuggapRoot").appendChild(i.createEle("script",{_src:e},t))},_js_p10:function(e,t){var o=null;o=n('style[_href="'+e+'"]')?n('style[_href="'+e+'"]'):s.deepFinder("link",e),o.parentNode.insertBefore(i.createEle("style",{_href:e},t),o),o.remove()},doRelationToEle:function(e){e=e.split(",");var t=i.draw._dg2(e);1==t.nodeType&&(i.doc.trigger(n("#debuggapBlock .dg-center"),"tap"),i.map._dg7(t),i.scale())},doGetCalculateCss:function(e){e=e.split(","),e=i.draw._dg2(e),this._js_p11(e)},_js_p11:function(e){var n=t(e);o("calculateCss:"+JSON.stringify(n))},_js_p12:function(e){i.map._dg7(e),this._js_p11(e)},doAddCssForElement:function(e){var t=e.split(";"),o=i.draw._dg2(t[0].split(",")),n=o.getAttribute("style");n=n?n.replace(/;*$/,";"):"",o.setAttribute("style",n+t[1]),this._js_p11(o)},doRemoveCssForElement:function(e){var t=e.split(";"),o=i.draw._dg2(t[0].split(",")),n=i.trim(o.getAttribute("style"));n=n.replace(/^;+|;+$/g,""),n=n.split(";"),n.splice(parseInt(t[1]),1),n=n.join(";"),o.setAttribute("style",n),this._js_p11(o)},doReplaceCssForElement:function(e){var t=e.split(";"),o=i.draw._dg2(t[0].split(",")),n=i.trim(o.getAttribute("style"));n=n.replace(/^;+|;+$/g,""),n=n.split(";"),n[t[1]]=t[2],n=n.join(";"),o.setAttribute("style",n),this._js_p11(o)},styleCache:{},doActiveCssForElement:function(e){var t=e.split(";"),o=i.draw._dg2(t[0].split(",")),n=i.trim(o.getAttribute("style"));if(n=n.replace(/^;+|;+$/g,""),n=n.split(";"),n&&n[t[1]]){if("active"==t[2]){var r=new RegExp("/\\*+([^*]+)\\*+/");n[t[1]]=n[t[1]].replace(r,"$1")}else n[t[1]]="/*"+n[t[1]]+"*/";n=n.join(";"),o.setAttribute("style",n)}this._js_p11(o)},doReplaceClassItem:function(e){var t=e.split(";"),o=i.draw._dg2(t[0].split(",")),n=t[1].split(":"),r=decodeURIComponent(t[2]);if(n&&"undefined"!=typeof n[1]){var a=document.styleSheets[n[0]],s=n[1];if(3==n.length){var d=this._js_p13(a.cssRules[s]);d[n[2]]=r;var l=a.cssRules[s].cssText.match(/@\s*media\s+[^{]+/);r=l[0]+"{\n"+d.join("\n")+"\n}"}"ie"==i.browser?(a.deleteRule(s),a.insertRule(r,s)):(a.removeRule(s),a.insertRule(r,s))}this._js_p11(o)},_js_p13:function(e){var t=[],o=e.cssRules;if(o)for(var n=0,r=o.length;r>n;n++)t.push(o[n].cssText);return t},doGetPrompt:function(e){for(var t=e.substr(0,e.indexOf(":")),n=e.substr(e.indexOf(":")+1),r=n.split("."),i=window,a=r.length,s=0;a-1>s;s++)try{i=i[r[s]]}catch(d){o("prompt:"+t+":"+JSON.stringify({msg:d.message}))}try{var l=[],c=new RegExp("^"+r[a-1]);for(var s in i)c.test(s)&&l.push(s);o("prompt:"+t+":"+JSON.stringify(l))}catch(d){}},doCleanInspect:function(){i.doc.trigger(n("#debuggapBlock .dg-center"),"tap")},doStartInspect:function(){this.doCleanInspect(),i.doc.bind(document,"taps",function(e){i.doc.unbind(document),o("closeInspect:",!0);var t=e.changedTouches&&e.changedTouches[0].target||e.target;i.inArray(t.className,["dg-inner","dg-out"])||i.map._dg4(t),e.preventDefault()})},doCloseInspect:function(){i.doc.unbind(document),this.doCleanInspect()}};i.extend(s,{deepFinder:function(e,t){for(var o="script"==e?"src":"href",n=r(e),i=0;i<n.length;i++)if(n[i][o]==t)return n[i];return null}});var d;i.extend({socketBuffer:[],socketTimeout:0,socketSendStop:1,_js_p14:function(){if(i.socketBuffer.length>0){var e=i.socketBuffer.shift();e=encodeURIComponent(e),setTimeout(function(){d.send(e);var t=Math.ceil(e.length/50);t>5e3?t=5e3:50>t&&(t=50),i.socketTimeout=t,0==i.socketBuffer.length?(i.socketSendStop=1,t>500&&(i.socketTimeout=t)):i._js_p14()},i.socketTimeout)}},_js_p15:function(){for(var e,t=[],o=document.scripts,n=0,r=o.length;r>n;n++)if(e=o[n].src.match(/\?(.*)/),e&&2==e.length){t=e[1].split(":");break}return t},decodeMessage:function(e){for(var t=[],o=0;o<e.length;o+=2)t.push(parseInt(e.charCodeAt(o).toString(16).substr(1,1)+e.charCodeAt(o+1).toString(16).substr(1,1),16));for(var n=t.splice(0,4),r=0,i="",o=0;o<t.length;o++)i+=String.fromCharCode(n[r++%4]^t[o]);return i},distributeMessage:function(e){e=decodeURIComponent(e);var t=e.indexOf(":");if(!(1>t)){var o=e.substring(0,t),e=e.substring(t+1),n="do"+o[0].toUpperCase()+o.substring(1);try{s[n](e)}catch(r){console.error(r.message)}}},initSocketMethod:function(e){e.onopen=function(t){e.send(encodeURIComponent("initClient:"+i.version+"_debuggap_"+navigator.userAgent+"_debuggap_"+location.href)),n("#dgConnect")&&(n("#dgConnect").value="Connect")},e.onmessage=function(e){i.distributeMessage(e.data)},e.onclose=function(e){i.scriptSocketFlag&&(n("#dgConnect")&&(n("#dgConnect").value="Connect"),console.error("Please check your network,client could not talk with server!"))}},scriptSocketFlag:0,initSocket:function(t){this.scriptSocketFlag=0;var o="ws://"+t.host+":"+t.port;t.name&&(o+="/"+t.name);var n=0;try{1==localStorage.scriptSocket?n=1:d=new WebSocket(o,t.protocal)}catch(r){console.log(r)}if(!n&&d||(d=new e(t),this.scriptSocketFlag=1,1==localStorage.scriptSocket),this.initSocketMethod(d),1!=localStorage.scriptSocket){var i=this;setTimeout(function(){i.scriptSocketFlag=1,d&&1!=d.readyState&&(localStorage.scriptSocket=1,d=new e(t),i.initSocketMethod(d))},3e3)}}}),function(){/loaded|complete/.test(document.readyState)?setTimeout(i.ready,10):setTimeout(arguments.callee,10)}(),i.inherit({}),i.extend(s,{_js_p9:function(e,t){var o=s.filterCon(t);o.length?s.setPrototype(o):(n('script[_src="'+e+'"]')&&n('script[_src="'+e+'"]').remove(),n("#debuggapRoot").appendChild(i.createEle("script",{_src:e},t)))},filterCon:function(e){var t=0,o=[];do{var n=e.indexOf("enyo.kind");if(-1!=n){e=e.replace("enyo.kind","");for(var r=[],i=t;i<e.length;i++){var a=e.charCodeAt(i);if(123==a)r.push(i);else if(125==a){if(r.length<1){alert("remote debug error");break}if(1==r.length){r.push(i),t=i+1;break}r.pop()}}2==r.length?o.push(e.substring(r[0],r[1]+1)):alert("remote debug error")}}while(-1!=n);return o},setPrototype:function(e){for(var t=0;t<e.length;t++){var o=new Function("return "+e[t])(),n=o.name?o.name:o.kind?o.kind:null;if(n){var r=enyo.getPath(n);for(var a in o)i.isFunction(o[a])&&(r.prototype[a]=o[a])}}}})}();