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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/sass/SASSSupport.js

Issue 2570263002: DevTools: introduce API for the Common.FormatterWorkerPool. (Closed)
Patch Set: address comments Created 4 years 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 Sass.SASSSupport = {}; 4 Sass.SASSSupport = {};
5 5
6 /** 6 /**
7 * @param {string} url 7 * @param {string} url
8 * @param {string} content 8 * @param {string} content
9 * @return {!Promise<!Sass.SASSSupport.AST>} 9 * @return {!Promise<!Sass.SASSSupport.AST>}
10 */ 10 */
11 Sass.SASSSupport.parseSCSS = function(url, content) { 11 Sass.SASSSupport.parseSCSS = function(url, content) {
12 var text = new Common.Text(content); 12 var text = new Common.Text(content);
13 var document = new Sass.SASSSupport.ASTDocument(url, text); 13 var document = new Sass.SASSSupport.ASTDocument(url, text);
14 14
15 return Common.formatterWorkerPool.runTask('parseSCSS', {content: content}).the n(onParsed); 15 return Common.formatterWorkerPool.parseSCSS(content).then(onParsed);
16 16
17 /** 17 /**
18 * @param {?MessageEvent} event 18 * @param {!Array<!Common.FormatterWorkerPool.SCSSRule>} rulePayloads
19 * @return {!Sass.SASSSupport.AST} 19 * @return {!Sass.SASSSupport.AST}
20 */ 20 */
21 function onParsed(event) { 21 function onParsed(rulePayloads) {
22 if (!event)
23 return new Sass.SASSSupport.AST(document, []);
24 var data = /** @type {!Array<!Object>} */ (event.data);
25 var rules = []; 22 var rules = [];
26 for (var i = 0; i < data.length; ++i) { 23 for (var i = 0; i < rulePayloads.length; ++i) {
27 var rulePayload = data[i]; 24 var rulePayload = rulePayloads[i];
28 var selectors = rulePayload.selectors.map(createTextNode); 25 var selectors = rulePayload.selectors.map(createTextNode);
29 var properties = rulePayload.properties.map(createProperty); 26 var properties = rulePayload.properties.map(createProperty);
30 var range = Common.TextRange.fromObject(rulePayload.styleRange); 27 var range = Common.TextRange.fromObject(rulePayload.styleRange);
31 var rule = new Sass.SASSSupport.Rule(document, selectors, range, propertie s); 28 var rule = new Sass.SASSSupport.Rule(document, selectors, range, propertie s);
32 rules.push(rule); 29 rules.push(rule);
33 } 30 }
34 return new Sass.SASSSupport.AST(document, rules); 31 return new Sass.SASSSupport.AST(document, rules);
35 } 32 }
36 33
37 /** 34 /**
(...skipping 620 matching lines...) Expand 10 before | Expand all | Expand 10 after
658 mapping.set(oldProperty.name, newProperty.name); 655 mapping.set(oldProperty.name, newProperty.name);
659 mapping.set(oldProperty.value, newProperty.value); 656 mapping.set(oldProperty.value, newProperty.value);
660 if (oldProperty.name.text.trim() !== newProperty.name.text.trim()) 657 if (oldProperty.name.text.trim() !== newProperty.name.text.trim())
661 addChange(T.NameChanged, oldRule, newRule, oldPropertyIndex, newPropertyIn dex); 658 addChange(T.NameChanged, oldRule, newRule, oldPropertyIndex, newPropertyIn dex);
662 if (oldProperty.value.text.trim() !== newProperty.value.text.trim()) 659 if (oldProperty.value.text.trim() !== newProperty.value.text.trim())
663 addChange(T.ValueChanged, oldRule, newRule, oldPropertyIndex, newPropertyI ndex); 660 addChange(T.ValueChanged, oldRule, newRule, oldPropertyIndex, newPropertyI ndex);
664 if (oldProperty.disabled !== newProperty.disabled) 661 if (oldProperty.disabled !== newProperty.disabled)
665 addChange(T.PropertyToggled, oldRule, newRule, oldPropertyIndex, newProper tyIndex); 662 addChange(T.PropertyToggled, oldRule, newRule, oldPropertyIndex, newProper tyIndex);
666 } 663 }
667 }; 664 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698