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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/sdk/CSSRule.js

Issue 2466123002: DevTools: reformat front-end code to match chromium style. (Closed)
Patch Set: all done Created 4 years, 1 month 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 4 /**
5 /** 5 * @unrestricted
6 * @constructor 6 */
7 * @param {!CSSAgent.Value} payload 7 WebInspector.CSSValue = class {
8 */ 8 /**
9 WebInspector.CSSValue = function(payload) 9 * @param {!CSSAgent.Value} payload
10 { 10 */
11 constructor(payload) {
11 this.text = payload.text; 12 this.text = payload.text;
12 if (payload.range) 13 if (payload.range)
13 this.range = WebInspector.TextRange.fromObject(payload.range); 14 this.range = WebInspector.TextRange.fromObject(payload.range);
14 }; 15 }
15 16
16 WebInspector.CSSValue.prototype = { 17 /**
17 /** 18 * @param {!WebInspector.CSSModel.Edit} edit
18 * @param {!WebInspector.CSSModel.Edit} edit 19 */
19 */ 20 rebase(edit) {
20 rebase: function(edit) 21 if (!this.range)
21 { 22 return;
22 if (!this.range) 23 this.range = this.range.rebaseAfterTextEdit(edit.oldRange, edit.newRange);
23 return; 24 }
24 this.range = this.range.rebaseAfterTextEdit(edit.oldRange, edit.newRange ); 25 };
25 } 26
26 }; 27 /**
27 28 * @unrestricted
28 /** 29 */
29 * @constructor 30 WebInspector.CSSRule = class {
30 * @param {!WebInspector.CSSModel} cssModel 31 /**
31 * @param {{style: !CSSAgent.CSSStyle, styleSheetId: (string|undefined), origin: !CSSAgent.StyleSheetOrigin}} payload 32 * @param {!WebInspector.CSSModel} cssModel
32 */ 33 * @param {{style: !CSSAgent.CSSStyle, styleSheetId: (string|undefined), origi n: !CSSAgent.StyleSheetOrigin}} payload
33 WebInspector.CSSRule = function(cssModel, payload) 34 */
34 { 35 constructor(cssModel, payload) {
35 this._cssModel = cssModel; 36 this._cssModel = cssModel;
36 this.styleSheetId = payload.styleSheetId; 37 this.styleSheetId = payload.styleSheetId;
37 38
38 if (this.styleSheetId) { 39 if (this.styleSheetId) {
39 var styleSheetHeader = cssModel.styleSheetHeaderForId(this.styleSheetId) ; 40 var styleSheetHeader = cssModel.styleSheetHeaderForId(this.styleSheetId);
40 this.sourceURL = styleSheetHeader.sourceURL; 41 this.sourceURL = styleSheetHeader.sourceURL;
41 } 42 }
42 this.origin = payload.origin; 43 this.origin = payload.origin;
43 this.style = new WebInspector.CSSStyleDeclaration(this._cssModel, this, payl oad.style, WebInspector.CSSStyleDeclaration.Type.Regular); 44 this.style = new WebInspector.CSSStyleDeclaration(
44 }; 45 this._cssModel, this, payload.style, WebInspector.CSSStyleDeclaration.Ty pe.Regular);
45 46 }
46 WebInspector.CSSRule.prototype = { 47
47 /** 48 /**
48 * @param {!WebInspector.CSSModel.Edit} edit 49 * @param {!WebInspector.CSSModel.Edit} edit
49 */ 50 */
50 rebase: function(edit) 51 rebase(edit) {
51 { 52 if (this.styleSheetId !== edit.styleSheetId)
52 if (this.styleSheetId !== edit.styleSheetId) 53 return;
53 return; 54 this.style.rebase(edit);
54 this.style.rebase(edit); 55 }
55 }, 56
56 57 /**
57 /** 58 * @return {string}
58 * @return {string} 59 */
59 */ 60 resourceURL() {
60 resourceURL: function() 61 if (!this.styleSheetId)
61 { 62 return '';
62 if (!this.styleSheetId) 63 var styleSheetHeader = this._cssModel.styleSheetHeaderForId(this.styleSheetI d);
63 return ""; 64 return styleSheetHeader.resourceURL();
64 var styleSheetHeader = this._cssModel.styleSheetHeaderForId(this.styleSh eetId); 65 }
65 return styleSheetHeader.resourceURL(); 66
66 }, 67 /**
67 68 * @return {boolean}
68 /** 69 */
69 * @return {boolean} 70 isUserAgent() {
70 */ 71 return this.origin === CSSAgent.StyleSheetOrigin.UserAgent;
71 isUserAgent: function() 72 }
72 { 73
73 return this.origin === CSSAgent.StyleSheetOrigin.UserAgent; 74 /**
74 }, 75 * @return {boolean}
75 76 */
76 /** 77 isInjected() {
77 * @return {boolean} 78 return this.origin === CSSAgent.StyleSheetOrigin.Injected;
78 */ 79 }
79 isInjected: function() 80
80 { 81 /**
81 return this.origin === CSSAgent.StyleSheetOrigin.Injected; 82 * @return {boolean}
82 }, 83 */
83 84 isViaInspector() {
84 /** 85 return this.origin === CSSAgent.StyleSheetOrigin.Inspector;
85 * @return {boolean} 86 }
86 */ 87
87 isViaInspector: function() 88 /**
88 { 89 * @return {boolean}
89 return this.origin === CSSAgent.StyleSheetOrigin.Inspector; 90 */
90 }, 91 isRegular() {
91 92 return this.origin === CSSAgent.StyleSheetOrigin.Regular;
92 /** 93 }
93 * @return {boolean} 94 };
94 */ 95
95 isRegular: function() 96 /**
96 { 97 * @unrestricted
97 return this.origin === CSSAgent.StyleSheetOrigin.Regular; 98 */
98 } 99 WebInspector.CSSStyleRule = class extends WebInspector.CSSRule {
99 }; 100 /**
100 101 * @param {!WebInspector.CSSModel} cssModel
101 /** 102 * @param {!CSSAgent.CSSRule} payload
102 * @constructor 103 */
103 * @extends {WebInspector.CSSRule} 104 constructor(cssModel, payload) {
104 * @param {!WebInspector.CSSModel} cssModel 105 super(cssModel, payload);
105 * @param {!CSSAgent.CSSRule} payload
106 */
107 WebInspector.CSSStyleRule = function(cssModel, payload)
108 {
109 WebInspector.CSSRule.call(this, cssModel, payload);
110 106
111 this._reinitializeSelectors(payload.selectorList); 107 this._reinitializeSelectors(payload.selectorList);
112 this.media = payload.media ? WebInspector.CSSMedia.parseMediaArrayPayload(cs sModel, payload.media) : []; 108 this.media = payload.media ? WebInspector.CSSMedia.parseMediaArrayPayload(cs sModel, payload.media) : [];
113 }; 109 }
114 110
115 /** 111 /**
116 * @param {!WebInspector.CSSModel} cssModel 112 * @param {!WebInspector.CSSModel} cssModel
117 * @param {string} selectorText 113 * @param {string} selectorText
118 * @return {!WebInspector.CSSStyleRule} 114 * @return {!WebInspector.CSSStyleRule}
119 */ 115 */
120 WebInspector.CSSStyleRule.createDummyRule = function(cssModel, selectorText) 116 static createDummyRule(cssModel, selectorText) {
121 {
122 var dummyPayload = { 117 var dummyPayload = {
123 selectorList: { 118 selectorList: {
124 selectors: [{ text: selectorText}], 119 selectors: [{text: selectorText}],
125 }, 120 },
126 style: { 121 style:
127 styleSheetId: "0", 122 {styleSheetId: '0', range: new WebInspector.TextRange(0, 0, 0, 0), sho rthandEntries: [], cssProperties: []}
128 range: new WebInspector.TextRange(0, 0, 0, 0),
129 shorthandEntries: [],
130 cssProperties: []
131 }
132 }; 123 };
133 return new WebInspector.CSSStyleRule(cssModel, /** @type {!CSSAgent.CSSRule} */(dummyPayload)); 124 return new WebInspector.CSSStyleRule(cssModel, /** @type {!CSSAgent.CSSRule} */ (dummyPayload));
134 }; 125 }
135 126
136 WebInspector.CSSStyleRule.prototype = { 127 /**
137 /** 128 * @param {!CSSAgent.SelectorList} selectorList
138 * @param {!CSSAgent.SelectorList} selectorList 129 */
139 */ 130 _reinitializeSelectors(selectorList) {
140 _reinitializeSelectors: function(selectorList) 131 /** @type {!Array.<!WebInspector.CSSValue>} */
141 { 132 this.selectors = [];
142 /** @type {!Array.<!WebInspector.CSSValue>} */ 133 for (var i = 0; i < selectorList.selectors.length; ++i)
143 this.selectors = []; 134 this.selectors.push(new WebInspector.CSSValue(selectorList.selectors[i]));
144 for (var i = 0; i < selectorList.selectors.length; ++i) 135 }
145 this.selectors.push(new WebInspector.CSSValue(selectorList.selectors [i])); 136
146 }, 137 /**
147 138 * @param {string} newSelector
148 /** 139 * @return {!Promise.<boolean>}
149 * @param {string} newSelector 140 */
150 * @return {!Promise.<boolean>} 141 setSelectorText(newSelector) {
151 */ 142 var styleSheetId = this.styleSheetId;
152 setSelectorText: function(newSelector) 143 if (!styleSheetId)
153 { 144 throw 'No rule stylesheet id';
154 var styleSheetId = this.styleSheetId; 145 var range = this.selectorRange();
155 if (!styleSheetId) 146 if (!range)
156 throw "No rule stylesheet id"; 147 throw 'Rule selector is not editable';
157 var range = this.selectorRange(); 148 return this._cssModel.setSelectorText(styleSheetId, range, newSelector);
158 if (!range) 149 }
159 throw "Rule selector is not editable"; 150
160 return this._cssModel.setSelectorText(styleSheetId, range, newSelector); 151 /**
161 }, 152 * @return {string}
162 153 */
163 /** 154 selectorText() {
164 * @return {string} 155 return this.selectors.select('text').join(', ');
165 */ 156 }
166 selectorText: function() 157
167 { 158 /**
168 return this.selectors.select("text").join(", "); 159 * @return {?WebInspector.TextRange}
169 }, 160 */
170 161 selectorRange() {
171 /** 162 var firstRange = this.selectors[0].range;
172 * @return {?WebInspector.TextRange} 163 if (!firstRange)
173 */ 164 return null;
174 selectorRange: function() 165 var lastRange = this.selectors.peekLast().range;
175 { 166 return new WebInspector.TextRange(
176 var firstRange = this.selectors[0].range; 167 firstRange.startLine, firstRange.startColumn, lastRange.endLine, lastRan ge.endColumn);
177 if (!firstRange) 168 }
178 return null; 169
179 var lastRange = this.selectors.peekLast().range; 170 /**
180 return new WebInspector.TextRange(firstRange.startLine, firstRange.start Column, lastRange.endLine, lastRange.endColumn); 171 * @param {number} selectorIndex
181 }, 172 * @return {number}
182 173 */
183 /** 174 lineNumberInSource(selectorIndex) {
184 * @param {number} selectorIndex 175 var selector = this.selectors[selectorIndex];
185 * @return {number} 176 if (!selector || !selector.range || !this.styleSheetId)
186 */ 177 return 0;
187 lineNumberInSource: function(selectorIndex) 178 var styleSheetHeader = this._cssModel.styleSheetHeaderForId(this.styleSheetI d);
188 { 179 return styleSheetHeader.lineNumberInSource(selector.range.startLine);
189 var selector = this.selectors[selectorIndex]; 180 }
190 if (!selector || !selector.range || !this.styleSheetId) 181
191 return 0; 182 /**
192 var styleSheetHeader = this._cssModel.styleSheetHeaderForId(this.styleSh eetId); 183 * @param {number} selectorIndex
193 return styleSheetHeader.lineNumberInSource(selector.range.startLine); 184 * @return {number|undefined}
194 }, 185 */
195 186 columnNumberInSource(selectorIndex) {
196 /** 187 var selector = this.selectors[selectorIndex];
197 * @param {number} selectorIndex 188 if (!selector || !selector.range || !this.styleSheetId)
198 * @return {number|undefined} 189 return undefined;
199 */ 190 var styleSheetHeader = this._cssModel.styleSheetHeaderForId(this.styleSheetI d);
200 columnNumberInSource: function(selectorIndex) 191 console.assert(styleSheetHeader);
201 { 192 return styleSheetHeader.columnNumberInSource(selector.range.startLine, selec tor.range.startColumn);
202 var selector = this.selectors[selectorIndex]; 193 }
203 if (!selector || !selector.range || !this.styleSheetId) 194
204 return undefined; 195 /**
205 var styleSheetHeader = this._cssModel.styleSheetHeaderForId(this.styleSh eetId); 196 * @override
206 console.assert(styleSheetHeader); 197 * @param {!WebInspector.CSSModel.Edit} edit
207 return styleSheetHeader.columnNumberInSource(selector.range.startLine, s elector.range.startColumn); 198 */
208 }, 199 rebase(edit) {
209 200 if (this.styleSheetId !== edit.styleSheetId)
210 /** 201 return;
211 * @override 202 if (this.selectorRange().equal(edit.oldRange)) {
212 * @param {!WebInspector.CSSModel.Edit} edit 203 this._reinitializeSelectors(/** @type {!CSSAgent.SelectorList} */ (edit.pa yload));
213 */ 204 } else {
214 rebase: function(edit) 205 for (var i = 0; i < this.selectors.length; ++i)
215 { 206 this.selectors[i].rebase(edit);
216 if (this.styleSheetId !== edit.styleSheetId) 207 }
217 return; 208 for (var media of this.media)
218 if (this.selectorRange().equal(edit.oldRange)) { 209 media.rebase(edit);
219 this._reinitializeSelectors(/** @type {!CSSAgent.SelectorList} */(ed it.payload)); 210
220 } else { 211 super.rebase(edit);
221 for (var i = 0; i < this.selectors.length; ++i) 212 }
222 this.selectors[i].rebase(edit); 213 };
223 } 214
224 for (var media of this.media) 215
225 media.rebase(edit); 216 /**
226 217 * @unrestricted
227 WebInspector.CSSRule.prototype.rebase.call(this, edit); 218 */
228 }, 219 WebInspector.CSSKeyframesRule = class {
229 220 /**
230 __proto__: WebInspector.CSSRule.prototype 221 * @param {!WebInspector.CSSModel} cssModel
231 }; 222 * @param {!CSSAgent.CSSKeyframesRule} payload
232 223 */
233 /** 224 constructor(cssModel, payload) {
234 * @constructor
235 * @param {!WebInspector.CSSModel} cssModel
236 * @param {!CSSAgent.CSSKeyframesRule} payload
237 */
238 WebInspector.CSSKeyframesRule = function(cssModel, payload)
239 {
240 this._cssModel = cssModel; 225 this._cssModel = cssModel;
241 this._animationName = new WebInspector.CSSValue(payload.animationName); 226 this._animationName = new WebInspector.CSSValue(payload.animationName);
242 this._keyframes = payload.keyframes.map(keyframeRule => new WebInspector.CSS KeyframeRule(cssModel, keyframeRule)); 227 this._keyframes = payload.keyframes.map(keyframeRule => new WebInspector.CSS KeyframeRule(cssModel, keyframeRule));
243 }; 228 }
244 229
245 WebInspector.CSSKeyframesRule.prototype = { 230 /**
246 /** 231 * @return {!WebInspector.CSSValue}
247 * @return {!WebInspector.CSSValue} 232 */
248 */ 233 name() {
249 name: function() 234 return this._animationName;
250 { 235 }
251 return this._animationName; 236
252 }, 237 /**
253 238 * @return {!Array.<!WebInspector.CSSKeyframeRule>}
254 /** 239 */
255 * @return {!Array.<!WebInspector.CSSKeyframeRule>} 240 keyframes() {
256 */ 241 return this._keyframes;
257 keyframes: function() 242 }
258 { 243 };
259 return this._keyframes; 244
260 } 245 /**
261 }; 246 * @unrestricted
262 247 */
263 /** 248 WebInspector.CSSKeyframeRule = class extends WebInspector.CSSRule {
264 * @constructor 249 /**
265 * @extends {WebInspector.CSSRule} 250 * @param {!WebInspector.CSSModel} cssModel
266 * @param {!WebInspector.CSSModel} cssModel 251 * @param {!CSSAgent.CSSKeyframeRule} payload
267 * @param {!CSSAgent.CSSKeyframeRule} payload 252 */
268 */ 253 constructor(cssModel, payload) {
269 WebInspector.CSSKeyframeRule = function(cssModel, payload) 254 super(cssModel, payload);
270 {
271 WebInspector.CSSRule.call(this, cssModel, payload);
272 this._reinitializeKey(payload.keyText); 255 this._reinitializeKey(payload.keyText);
273 }; 256 }
274 257
275 WebInspector.CSSKeyframeRule.prototype = { 258 /**
276 /** 259 * @return {!WebInspector.CSSValue}
277 * @return {!WebInspector.CSSValue} 260 */
278 */ 261 key() {
279 key: function() 262 return this._keyText;
280 { 263 }
281 return this._keyText; 264
282 }, 265 /**
283 266 * @param {!CSSAgent.Value} payload
284 /** 267 */
285 * @param {!CSSAgent.Value} payload 268 _reinitializeKey(payload) {
286 */ 269 this._keyText = new WebInspector.CSSValue(payload);
287 _reinitializeKey: function(payload) 270 }
288 { 271
289 this._keyText = new WebInspector.CSSValue(payload); 272 /**
290 }, 273 * @override
291 274 * @param {!WebInspector.CSSModel.Edit} edit
292 /** 275 */
293 * @override 276 rebase(edit) {
294 * @param {!WebInspector.CSSModel.Edit} edit 277 if (this.styleSheetId !== edit.styleSheetId || !this._keyText.range)
295 */ 278 return;
296 rebase: function(edit) 279 if (edit.oldRange.equal(this._keyText.range))
297 { 280 this._reinitializeKey(/** @type {!CSSAgent.Value} */ (edit.payload));
298 if (this.styleSheetId !== edit.styleSheetId || !this._keyText.range) 281 else
299 return; 282 this._keyText.rebase(edit);
300 if (edit.oldRange.equal(this._keyText.range)) 283
301 this._reinitializeKey(/** @type {!CSSAgent.Value} */(edit.payload)); 284 super.rebase(edit);
302 else 285 }
303 this._keyText.rebase(edit); 286
304 287 /**
305 WebInspector.CSSRule.prototype.rebase.call(this, edit); 288 * @param {string} newKeyText
306 }, 289 * @return {!Promise.<boolean>}
307 290 */
308 /** 291 setKeyText(newKeyText) {
309 * @param {string} newKeyText 292 var styleSheetId = this.styleSheetId;
310 * @return {!Promise.<boolean>} 293 if (!styleSheetId)
311 */ 294 throw 'No rule stylesheet id';
312 setKeyText: function(newKeyText) 295 var range = this._keyText.range;
313 { 296 if (!range)
314 var styleSheetId = this.styleSheetId; 297 throw 'Keyframe key is not editable';
315 if (!styleSheetId) 298 return this._cssModel.setKeyframeKey(styleSheetId, range, newKeyText);
316 throw "No rule stylesheet id"; 299 }
317 var range = this._keyText.range; 300 };
318 if (!range)
319 throw "Keyframe key is not editable";
320 return this._cssModel.setKeyframeKey(styleSheetId, range, newKeyText);
321 },
322
323 __proto__: WebInspector.CSSRule.prototype
324 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698