Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: chrome_linux64/resources/inspector/ScriptFormatterWorker.js

Issue 310483004: Roll reference builds to 35.0.1916.114. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/reference_builds/
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome_linux64/resources/inspector/ScriptFormatterWorker.js
===================================================================
--- chrome_linux64/resources/inspector/ScriptFormatterWorker.js (revision 273864)
+++ chrome_linux64/resources/inspector/ScriptFormatterWorker.js (working copy)
@@ -10,6 +10,11 @@
String.prototype.lineEndings=function()
{if(!this._lineEndings){this._lineEndings=this.findAll("\n");this._lineEndings.push(this.length);}
return this._lineEndings;}
+String.prototype.lineCount=function()
+{var lineEndings=this.lineEndings();return lineEndings.length;}
+String.prototype.lineAt=function(lineNumber)
+{var lineEndings=this.lineEndings();var lineStart=lineNumber>0?lineEndings[lineNumber-1]+1:0;var lineEnd=lineEndings[lineNumber];var lineContent=this.substring(lineStart,lineEnd);if(lineContent.length>0&&lineContent.charAt(lineContent.length-1)==="\r")
+lineContent=lineContent.substring(0,lineContent.length-1);return lineContent;}
String.prototype.escapeCharacters=function(chars)
{var foundChar=false;for(var i=0;i<chars.length;++i){if(this.indexOf(chars.charAt(i))!==-1){foundChar=true;break;}}
if(!foundChar)
@@ -17,7 +22,7 @@
result+="\\";result+=this.charAt(i);}
return result;}
String.regexSpecialCharacters=function()
-{return"^[]{}()\\.$*+?|-,";}
+{return"^[]{}()\\.^$*+?|-,";}
String.prototype.escapeForRegExp=function()
{return this.escapeCharacters(String.regexSpecialCharacters());}
String.prototype.escapeHTML=function()
@@ -83,11 +88,24 @@
leadZero(this.getHours())+
leadZero(this.getMinutes())+
leadZero(this.getSeconds());}
-Object.defineProperty(Array.prototype,"remove",{value:function(value,onlyFirst)
-{if(onlyFirst){var index=this.indexOf(value);if(index!==-1)
-this.splice(index,1);return;}
-var length=this.length;for(var i=0;i<length;++i){if(this[i]===value)
-this.splice(i,1);}}});Object.defineProperty(Array.prototype,"keySet",{value:function()
+Date.prototype.toConsoleTime=function()
+{function leadZero2(x)
+{return(x>9?"":"0")+x;}
+function leadZero3(x)
+{return(Array(4-x.toString().length)).join('0')+x;}
+return this.getFullYear()+"-"+
+leadZero2(this.getMonth()+1)+"-"+
+leadZero2(this.getDate())+" "+
+leadZero2(this.getHours())+":"+
+leadZero2(this.getMinutes())+":"+
+leadZero2(this.getSeconds())+"."+
+leadZero3(this.getMilliseconds());}
+Object.defineProperty(Array.prototype,"remove",{value:function(value,firstOnly)
+{var index=this.indexOf(value);if(index===-1)
+return;if(firstOnly){this.splice(index,1);return;}
+for(var i=index+1,n=this.length;i<n;++i){if(this[i]!==value)
+this[index++]=this[i];}
+this.length=index;}});Object.defineProperty(Array.prototype,"keySet",{value:function()
{var keys={};for(var i=0;i<this.length;++i)
keys[this[i]]=true;return keys;}});Object.defineProperty(Array.prototype,"rotate",{value:function(index)
{var result=[];for(var i=index;i<index+this.length;++i)
@@ -119,16 +137,16 @@
var low=0;var high=this.length-1;for(;;){var pivotPosition=this.partition(comparator,low,high,Math.floor((high+low)/2));if(pivotPosition===k)
return this[k];else if(pivotPosition>k)
high=pivotPosition-1;else
-low=pivotPosition+1;}}});Object.defineProperty(Array.prototype,"lowerBound",{value:function(object,comparator)
+low=pivotPosition+1;}}});Object.defineProperty(Array.prototype,"lowerBound",{value:function(object,comparator,left,right)
{function defaultComparator(a,b)
{return a<b?-1:(a>b?1:0);}
-comparator=comparator||defaultComparator;var l=0;var r=this.length;while(l<r){var m=(l+r)>>1;if(comparator(object,this[m])>0)
+comparator=comparator||defaultComparator;var l=left||0;var r=right!==undefined?right:this.length;while(l<r){var m=(l+r)>>1;if(comparator(object,this[m])>0)
l=m+1;else
r=m;}
-return r;}});Object.defineProperty(Array.prototype,"upperBound",{value:function(object,comparator)
+return r;}});Object.defineProperty(Array.prototype,"upperBound",{value:function(object,comparator,left,right)
{function defaultComparator(a,b)
{return a<b?-1:(a>b?1:0);}
-comparator=comparator||defaultComparator;var l=0;var r=this.length;while(l<r){var m=(l+r)>>1;if(comparator(object,this[m])>=0)
+comparator=comparator||defaultComparator;var l=left||0;var r=right!==undefined?right:this.length;while(l<r){var m=(l+r)>>1;if(comparator(object,this[m])>=0)
l=m+1;else
r=m;}
return r;}});Object.defineProperty(Array.prototype,"binaryIndexOf",{value:function(value,comparator)
@@ -136,10 +154,13 @@
{var result=new Array(this.length);for(var i=0;i<this.length;++i)
result[i]=this[i][field];return result;}});Object.defineProperty(Array.prototype,"peekLast",{value:function()
{return this[this.length-1];}});(function(){function mergeOrIntersect(array1,array2,comparator,mergeNotIntersect)
-{var result=[];var i=0;var j=0;while(i<array1.length||j<array2.length){if(i===array1.length){result=result.concat(array2.slice(j));j=array2.length;}else if(j===array2.length){result=result.concat(array1.slice(i));i=array1.length;}else{var compareValue=comparator(array1[i],array2[j])
-if(compareValue<0){if(mergeNotIntersect)
-result.push(array1[i]);++i;}else if(compareValue>0){if(mergeNotIntersect)
-result.push(array2[j]);++j;}else{result.push(array1[i]);++i;++j;}}}
+{var result=[];var i=0;var j=0;while(i<array1.length&&j<array2.length){var compareValue=comparator(array1[i],array2[j]);if(mergeNotIntersect||!compareValue)
+result.push(compareValue<=0?array1[i]:array2[j]);if(compareValue<=0)
+i++;if(compareValue>=0)
+j++;}
+if(mergeNotIntersect){while(i<array1.length)
+result.push(array1[i++]);while(j<array2.length)
+result.push(array2[j++]);}
return result;}
Object.defineProperty(Array.prototype,"intersectOrdered",{value:function(array,comparator)
{return mergeOrIntersect(this,array,comparator,false);}});Object.defineProperty(Array.prototype,"mergeOrdered",{value:function(array,comparator)
@@ -254,6 +275,15 @@
return this._hasProtoKey;return Object.prototype.hasOwnProperty.call(this._map,key);},size:function()
{return this._size;},clear:function()
{this._map={};this._size=0;delete this._hasProtoKey;delete this._protoValue;}}
+var StringSet=function()
+{this._map=new StringMap();}
+StringSet.prototype={put:function(value)
+{this._map.put(value,true);},remove:function(value)
+{return!!this._map.remove(value);},values:function()
+{return this._map.keys();},contains:function(value)
+{return this._map.contains(value);},size:function()
+{return this._map.size();},clear:function()
+{this._map.clear();}}
function loadXHR(url,async,callback)
{function onReadyStateChanged()
{if(xhr.readyState!==XMLHttpRequest.DONE)
@@ -263,20 +293,10 @@
xhr.onreadystatechange=onReadyStateChanged;xhr.send(null);if(!async){if(xhr.status===200)
return xhr.responseText;return null;}
return null;}
-function StringPool()
-{this.reset();}
-StringPool.prototype={intern:function(string)
-{if(string==="__proto__")
-return"__proto__";var result=this._strings[string];if(result===undefined){this._strings[string]=string;result=string;}
-return result;},reset:function()
-{this._strings=Object.create(null);},internObjectStrings:function(obj,depthLimit)
-{if(typeof depthLimit!=="number")
-depthLimit=100;else if(--depthLimit<0)
-throw"recursion depth limit reached in StringPool.deepIntern(), perhaps attempting to traverse cyclical references?";for(var field in obj){switch(typeof obj[field]){case"string":obj[field]=this.intern(obj[field]);break;case"object":this.internObjectStrings(obj[field],depthLimit);break;}}}}
var _importedScripts={};function importScript(scriptName)
{if(_importedScripts[scriptName])
return;var xhr=new XMLHttpRequest();_importedScripts[scriptName]=true;xhr.open("GET",scriptName,false);xhr.send(null);if(!xhr.responseText)
-throw"empty response arrived for script '"+scriptName+"'";var baseUrl=location.href;baseUrl=baseUrl.substring(0,baseUrl.lastIndexOf("/"));var sourceURL=baseUrl+"/"+scriptName;eval(xhr.responseText+"\n//# sourceURL="+sourceURL);}
+throw"empty response arrived for script '"+scriptName+"'";var baseUrl=location.origin+location.pathname;baseUrl=baseUrl.substring(0,baseUrl.lastIndexOf("/"));var sourceURL=baseUrl+"/"+scriptName;self.eval(xhr.responseText+"\n//# sourceURL="+sourceURL);}
var loadScript=importScript;function CallbackBarrier()
{this._pendingIncomingCallbacksCount=0;}
CallbackBarrier.prototype={createCallback:function(userCallback)
@@ -285,7 +305,9 @@
this._outgoingCallback();},_incomingCallback:function(userCallback)
{console.assert(this._pendingIncomingCallbacksCount>0);if(userCallback){var args=Array.prototype.slice.call(arguments,1);userCallback.apply(null,args);}
if(!--this._pendingIncomingCallbacksCount&&this._outgoingCallback)
-this._outgoingCallback();}};(function(window){window.CodeMirror={};(function(){"use strict";function splitLines(string){return string.split(/\r?\n|\r/);};function StringStream(string){this.pos=this.start=0;this.string=string;this.lineStart=0;}
+this._outgoingCallback();}}
+function suppressUnused(value)
+{};(function(window){window.CodeMirror={};(function(){"use strict";function splitLines(string){return string.split(/\r?\n|\r/);};function StringStream(string){this.pos=this.start=0;this.string=string;this.lineStart=0;}
StringStream.prototype={eol:function(){return this.pos>=this.string.length;},sol:function(){return this.pos==0;},peek:function(){return this.string.charAt(this.pos)||null;},next:function(){if(this.pos<this.string.length)
return this.string.charAt(this.pos++);},eat:function(match){var ch=this.string.charAt(this.pos);if(typeof match=="string")var ok=ch==match;else var ok=ch&&(match.test?match.test(ch):match(ch));if(ok){++this.pos;return ch;}},eatWhile:function(match){var start=this.pos;while(this.eat(match)){}
return this.pos>start;},eatSpace:function(){var start=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos)))++this.pos;return this.pos>start;},skipToEnd:function(){this.pos=this.string.length;},skipTo:function(ch){var found=this.string.indexOf(ch,this.pos);if(found>-1){this.pos=found;return true;}},backUp:function(n){this.pos-=n;},column:function(){return this.start-this.lineStart;},indentation:function(){return 0;},match:function(pattern,consume,caseInsensitive){if(typeof pattern=="string"){var cased=function(str){return caseInsensitive?str.toLowerCase():str;};var substr=this.string.substr(this.pos,pattern.length);if(cased(substr)==cased(pattern)){if(consume!==false)this.pos+=pattern.length;return true;}}else{var match=this.string.slice(this.pos).match(pattern);if(match&&match.index>0)return null;if(match&&consume!==false)this.pos+=match[0].length;return match;}},current:function(){return this.string.slice(this.start,this.pos);},hideFirstChars:function(n,inner){this.lineStart+=n;try{return inner();}
@@ -495,38 +517,41 @@
var local=CodeMirror.copyState(state.localMode,state.localState);return{token:state.token,localMode:state.localMode,localState:local,htmlState:CodeMirror.copyState(htmlMode,state.htmlState)};},token:function(stream,state){return state.token(stream,state);},indent:function(state,textAfter){if(!state.localMode||/^\s*<\//.test(textAfter))
return htmlMode.indent(state.htmlState,textAfter);else if(state.localMode.indent)
return state.localMode.indent(state.localState,textAfter);else
-return CodeMirror.Pass;},electricChars:"/{}:",innerMode:function(state){return{state:state.localState||state.htmlState,mode:state.localMode||htmlMode};}};},"xml","javascript","css");CodeMirror.defineMIME("text/html","htmlmixed");;WebInspector={};FormatterWorker={};WebInspector.CodeMirrorUtils={createTokenizer:function(mimeType)
+return CodeMirror.Pass;},electricChars:"/{}:",innerMode:function(state){return{state:state.localState||state.htmlState,mode:state.localMode||htmlMode};}};},"xml","javascript","css");CodeMirror.defineMIME("text/html","htmlmixed");;WebInspector={};FormatterWorker={createTokenizer:function(mimeType)
{var mode=CodeMirror.getMode({indentUnit:2},mimeType);var state=CodeMirror.startState(mode);function tokenize(line,callback)
{var stream=new CodeMirror.StringStream(line);while(!stream.eol()){var style=mode.token(stream,state);var value=stream.current();callback(value,style,stream.start,stream.start+value.length);stream.start=stream.pos;}}
-return tokenize;},convertTokenType:function(tokenType)
-{if(tokenType.startsWith("js-variable")||tokenType.startsWith("js-property")||tokenType==="js-def")
-return"javascript-ident";if(tokenType==="js-string-2")
-return"javascript-regexp";if(tokenType==="js-number"||tokenType==="js-comment"||tokenType==="js-string"||tokenType==="js-keyword")
-return"javascript-"+tokenType.substring("js-".length);if(tokenType==="css-number")
-return"css-number";return null;},overrideModeWithPrefixedTokens:function(modeName,tokenPrefix)
-{var oldModeName=modeName+"-old";if(CodeMirror.modes[oldModeName])
-return;CodeMirror.defineMode(oldModeName,CodeMirror.modes[modeName]);CodeMirror.defineMode(modeName,modeConstructor);function modeConstructor(config,parserConfig)
-{var innerConfig={};for(var i in parserConfig)
-innerConfig[i]=parserConfig[i];innerConfig.name=oldModeName;var codeMirrorMode=CodeMirror.getMode(config,innerConfig);codeMirrorMode.name=modeName;codeMirrorMode.token=tokenOverride.bind(null,codeMirrorMode.token);return codeMirrorMode;}
-function tokenOverride(superToken,stream,state)
-{var token=superToken(stream,state);return token?tokenPrefix+token:token;}}}
-WebInspector.CodeMirrorUtils.overrideModeWithPrefixedTokens("css","css-");WebInspector.CodeMirrorUtils.overrideModeWithPrefixedTokens("javascript","js-");WebInspector.CodeMirrorUtils.overrideModeWithPrefixedTokens("xml","xml-");;var FormatterParameters;var onmessage=function(event){var data=(event.data);if(!data.method)
+return tokenize;}};var FormatterParameters;var onmessage=function(event){var data=(event.data);if(!data.method)
return;FormatterWorker[data.method](data.params);};FormatterWorker.format=function(params)
{var indentString=params.indentString||" ";var result={};if(params.mimeType==="text/html"){var formatter=new FormatterWorker.HTMLFormatter(indentString);result=formatter.format(params.content);}else if(params.mimeType==="text/css"){result.mapping={original:[0],formatted:[0]};result.content=FormatterWorker._formatCSS(params.content,result.mapping,0,0,indentString);}else{result.mapping={original:[0],formatted:[0]};result.content=FormatterWorker._formatScript(params.content,result.mapping,0,0,indentString);}
postMessage(result);}
FormatterWorker._chunkCount=function(totalLength,chunkSize)
{if(totalLength<=chunkSize)
return 1;var remainder=totalLength%chunkSize;var partialLength=totalLength-remainder;return(partialLength/chunkSize)+(remainder?1:0);}
-FormatterWorker.outline=function(params)
-{const chunkSize=100000;const totalLength=params.content.length;const lines=params.content.split("\n");const chunkCount=FormatterWorker._chunkCount(totalLength,chunkSize);var outlineChunk=[];var previousIdentifier=null;var previousToken=null;var previousTokenType=null;var currentChunk=1;var processedChunkCharacters=0;var addedFunction=false;var isReadingArguments=false;var argumentsText="";var currentFunction=null;var tokenizer=WebInspector.CodeMirrorUtils.createTokenizer("text/javascript");for(var i=0;i<lines.length;++i){var line=lines[i];tokenizer(line,processToken);}
+FormatterWorker.javaScriptOutline=function(params)
+{var chunkSize=100000;var totalLength=params.content.length;var lines=params.content.split("\n");var chunkCount=FormatterWorker._chunkCount(totalLength,chunkSize);var outlineChunk=[];var previousIdentifier=null;var previousToken=null;var previousTokenType=null;var currentChunk=1;var processedChunkCharacters=0;var addedFunction=false;var isReadingArguments=false;var argumentsText="";var currentFunction=null;var tokenizer=FormatterWorker.createTokenizer("text/javascript");for(var i=0;i<lines.length;++i){var line=lines[i];tokenizer(line,processToken);}
+function isJavaScriptIdentifier(tokenType)
+{if(!tokenType)
+return false;return tokenType.startsWith("variable")||tokenType.startsWith("property")||tokenType==="def";}
function processToken(tokenValue,tokenType,column,newColumn)
-{var convertedType=tokenType?WebInspector.CodeMirrorUtils.convertTokenType(tokenType):null;if(convertedType==="javascript-ident"){previousIdentifier=tokenValue;if(tokenValue&&previousToken==="function"){currentFunction={line:i,column:column,name:tokenValue};addedFunction=true;previousIdentifier=null;}}else if(convertedType==="javascript-keyword"){if(tokenValue==="function"){if(previousIdentifier&&(previousToken==="="||previousToken===":")){currentFunction={line:i,column:column,name:previousIdentifier};addedFunction=true;previousIdentifier=null;}}}else if(tokenValue==="."&&previousTokenType==="javascript-ident")
+{if(isJavaScriptIdentifier(tokenType)){previousIdentifier=tokenValue;if(tokenValue&&previousToken==="function"){currentFunction={line:i,column:column,name:tokenValue};addedFunction=true;previousIdentifier=null;}}else if(tokenType==="keyword"){if(tokenValue==="function"){if(previousIdentifier&&(previousToken==="="||previousToken===":")){currentFunction={line:i,column:column,name:previousIdentifier};addedFunction=true;previousIdentifier=null;}}}else if(tokenValue==="."&&isJavaScriptIdentifier(previousTokenType))
previousIdentifier+=".";else if(tokenValue==="("&&addedFunction)
isReadingArguments=true;if(isReadingArguments&&tokenValue)
argumentsText+=tokenValue;if(tokenValue===")"&&isReadingArguments){addedFunction=false;isReadingArguments=false;currentFunction.arguments=argumentsText.replace(/,[\r\n\s]*/g,", ").replace(/([^,])[\r\n\s]+/g,"$1");argumentsText="";outlineChunk.push(currentFunction);}
-if(tokenValue.trim().length){previousToken=tokenValue;previousTokenType=convertedType;}
+if(tokenValue.trim().length){previousToken=tokenValue;previousTokenType=tokenType;}
processedChunkCharacters+=newColumn-column;if(processedChunkCharacters>=chunkSize){postMessage({chunk:outlineChunk,total:chunkCount,index:currentChunk++});outlineChunk=[];processedChunkCharacters=0;}}
postMessage({chunk:outlineChunk,total:chunkCount,index:chunkCount});}
+FormatterWorker.CSSParserStates={Initial:"Initial",Selector:"Selector",Style:"Style",PropertyName:"PropertyName",PropertyValue:"PropertyValue",AtRule:"AtRule",};FormatterWorker.parseCSS=function(params)
+{var chunkSize=100000;var lines=params.content.split("\n");var rules=[];var processedChunkCharacters=0;var state=FormatterWorker.CSSParserStates.Initial;var rule;var property;var UndefTokenType={};function processToken(tokenValue,tokenTypes,column,newColumn)
+{var tokenType=tokenTypes?tokenTypes.split(" ").keySet():UndefTokenType;switch(state){case FormatterWorker.CSSParserStates.Initial:if(tokenType["qualifier"]||tokenType["builtin"]||tokenType["tag"]){rule={selectorText:tokenValue,lineNumber:lineNumber,columNumber:column,properties:[],};state=FormatterWorker.CSSParserStates.Selector;}else if(tokenType["def"]){rule={atRule:tokenValue,lineNumber:lineNumber,columNumber:column,};state=FormatterWorker.CSSParserStates.AtRule;}
+break;case FormatterWorker.CSSParserStates.Selector:if(tokenValue==="{"&&tokenType===UndefTokenType){rule.selectorText=rule.selectorText.trim();state=FormatterWorker.CSSParserStates.Style;}else{rule.selectorText+=tokenValue;}
+break;case FormatterWorker.CSSParserStates.AtRule:if((tokenValue===";"||tokenValue==="{")&&tokenType===UndefTokenType){rule.atRule=rule.atRule.trim();rules.push(rule);state=FormatterWorker.CSSParserStates.Initial;}else{rule.atRule+=tokenValue;}
+break;case FormatterWorker.CSSParserStates.Style:if(tokenType["meta"]||tokenType["property"]){property={name:tokenValue,value:"",};state=FormatterWorker.CSSParserStates.PropertyName;}else if(tokenValue==="}"&&tokenType===UndefTokenType){rules.push(rule);state=FormatterWorker.CSSParserStates.Initial;}
+break;case FormatterWorker.CSSParserStates.PropertyName:if(tokenValue===":"&&tokenType["operator"]){property.name=property.name.trim();state=FormatterWorker.CSSParserStates.PropertyValue;}else if(tokenType["property"]){property.name+=tokenValue;}
+break;case FormatterWorker.CSSParserStates.PropertyValue:if(tokenValue===";"&&tokenType===UndefTokenType){property.value=property.value.trim();rule.properties.push(property);state=FormatterWorker.CSSParserStates.Style;}else if(tokenValue==="}"&&tokenType===UndefTokenType){property.value=property.value.trim();rule.properties.push(property);rules.push(rule);state=FormatterWorker.CSSParserStates.Initial;}else if(!tokenType["comment"]){property.value+=tokenValue;}
+break;default:console.assert(false,"Unknown CSS parser state.");}
+processedChunkCharacters+=newColumn-column;if(processedChunkCharacters>chunkSize){postMessage({chunk:rules,isLastChunk:false});rules=[];processedChunkCharacters=0;}}
+var tokenizer=FormatterWorker.createTokenizer("text/css");var lineNumber;for(lineNumber=0;lineNumber<lines.length;++lineNumber){var line=lines[lineNumber];tokenizer(line,processToken);}
+postMessage({chunk:rules,isLastChunk:true});}
FormatterWorker._formatScript=function(content,mapping,offset,formattedOffset,indentString)
{var formattedContent;try{var tokenizer=new FormatterWorker.JavaScriptTokenizer(content);var builder=new FormatterWorker.JavaScriptFormattedContentBuilder(tokenizer.content(),mapping,offset,formattedOffset,indentString);var formatter=new FormatterWorker.JavaScriptFormatter(tokenizer,builder);formatter.format();formattedContent=builder.content();}catch(e){formattedContent=content;}
return formattedContent;}
@@ -536,7 +561,7 @@
FormatterWorker.HTMLFormatter=function(indentString)
{this._indentString=indentString;}
FormatterWorker.HTMLFormatter.prototype={format:function(content)
-{this.line=content;this._content=content;this._formattedContent="";this._mapping={original:[0],formatted:[0]};this._position=0;var scriptOpened=false;var styleOpened=false;var tokenizer=WebInspector.CodeMirrorUtils.createTokenizer("text/html");function processToken(tokenValue,tokenType,tokenStart,tokenEnd){if(tokenType!=="xml-tag")
+{this.line=content;this._content=content;this._formattedContent="";this._mapping={original:[0],formatted:[0]};this._position=0;var scriptOpened=false;var styleOpened=false;var tokenizer=FormatterWorker.createTokenizer("text/html");function processToken(tokenValue,tokenType,tokenStart,tokenEnd){if(tokenType!=="tag")
return;if(tokenValue.toLowerCase()==="<script"){scriptOpened=true;}else if(scriptOpened&&tokenValue===">"){scriptOpened=false;this._scriptStarted(tokenEnd);}else if(tokenValue.toLowerCase()==="</script"){this._scriptEnded(tokenStart);}else if(tokenValue.toLowerCase()==="<style"){styleOpened=true;}else if(styleOpened&&tokenValue===">"){styleOpened=false;this._styleStarted(tokenEnd);}else if(tokenValue.toLowerCase()==="</style"){this._styleEnded(tokenStart);}}
tokenizer(content,processToken.bind(this));this._formattedContent+=this._content.substring(this._position);return{content:this._formattedContent,mapping:this._mapping};},_scriptStarted:function(cursor)
{this._handleSubFormatterStart(cursor);},_scriptEnded:function(cursor)
@@ -752,12 +777,12 @@
return token;throw"Unknown token type "+uglifyToken.type;}};FormatterWorker.CSSFormatter=function(content,builder)
{this._content=content;this._builder=builder;this._lastLine=-1;this._state={};}
FormatterWorker.CSSFormatter.prototype={format:function()
-{this._lineEndings=this._lineEndings(this._content);var tokenize=WebInspector.CodeMirrorUtils.createTokenizer("text/css");var lines=this._content.split("\n");for(var i=0;i<lines.length;++i){var line=lines[i];tokenize(line,this._tokenCallback.bind(this,i));}
+{this._lineEndings=this._lineEndings(this._content);var tokenize=FormatterWorker.createTokenizer("text/css");var lines=this._content.split("\n");for(var i=0;i<lines.length;++i){var line=lines[i];tokenize(line,this._tokenCallback.bind(this,i));}
this._builder.flushNewLines(true);},_lineEndings:function(text)
{var lineEndings=[];var i=text.indexOf("\n");while(i!==-1){lineEndings.push(i);i=text.indexOf("\n",i+1);}
lineEndings.push(text.length);return lineEndings;},_tokenCallback:function(startLine,token,type,startColumn)
{if(startLine!==this._lastLine)
-this._state.eatWhitespace=true;if(/^css-property/.test(type)&&!this._state.inPropertyValue)
+this._state.eatWhitespace=true;if(/^property/.test(type)&&!this._state.inPropertyValue)
this._state.seenProperty=true;this._lastLine=startLine;var isWhitespace=/^\s+$/.test(token);if(isWhitespace){if(!this._state.eatWhitespace)
this._builder.addSpace();return;}
this._state.eatWhitespace=false;if(token==="\n")
@@ -765,7 +790,7 @@
this._builder.addNewLine();this._state.afterClosingBrace=false;}
var startPosition=(startLine?this._lineEndings[startLine-1]:0)+startColumn;if(token==="}"){if(this._state.inPropertyValue)
this._builder.addNewLine();this._builder.decreaseNestingLevel();this._state.afterClosingBrace=true;this._state.inPropertyValue=false;}else if(token===":"&&!this._state.inPropertyValue&&this._state.seenProperty){this._builder.addToken(token,startPosition,startLine,startColumn);this._builder.addSpace();this._state.eatWhitespace=true;this._state.inPropertyValue=true;this._state.seenProperty=false;return;}else if(token==="{"){this._builder.addSpace();this._builder.addToken(token,startPosition,startLine,startColumn);this._builder.addNewLine();this._builder.increaseNestingLevel();return;}
-this._builder.addToken(token,startPosition,startLine,startColumn);if(type==="css-comment"&&!this._state.inPropertyValue&&!this._state.seenProperty)
+this._builder.addToken(token,startPosition,startLine,startColumn);if(type==="comment"&&!this._state.inPropertyValue&&!this._state.seenProperty)
this._builder.addNewLine();if(token===";"&&this._state.inPropertyValue){this._state.inPropertyValue=false;this._builder.addNewLine();}else if(token==="}"){this._builder.addNewLine();}}}
FormatterWorker.CSSFormattedContentBuilder=function(content,mapping,originalOffset,formattedOffset,indentString)
{this._originalContent=content;this._originalOffset=originalOffset;this._lastOriginalPosition=0;this._formattedContent=[];this._formattedContentLength=0;this._formattedOffset=formattedOffset;this._lastFormattedPosition=0;this._mapping=mapping;this._lineNumber=0;this._nestingLevel=0;this._needNewLines=0;this._atLineStart=true;this._indentString=indentString;this._cachedIndents={};}
« no previous file with comments | « chrome_linux64/resources/inspector/ResourcesPanel.js ('k') | chrome_linux64/resources/inspector/SourcesPanel.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698