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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/audits2/lighthouse/renderer/dom.js

Issue 2894113002: Revert of DevTools: Roll Lighthouse binary to 2.0.0-alpha.7 (Closed)
Patch Set: Created 3 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 unified diff | Download patch
OLDNEW
1 /** 1 /**
2 * Copyright 2017 Google Inc. All rights reserved. 2 * Copyright 2017 Google Inc. All rights reserved.
3 * 3 *
4 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License. 5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at 6 * You may obtain a copy of the License at
7 * 7 *
8 * http://www.apache.org/licenses/LICENSE-2.0 8 * http://www.apache.org/licenses/LICENSE-2.0
9 * 9 *
10 * Unless required by applicable law or agreed to in writing, software 10 * Unless required by applicable law or agreed to in writing, software
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 resetTemplates() { 94 resetTemplates() {
95 this.findAll('template[data-stamped]', this._document).forEach(t => { 95 this.findAll('template[data-stamped]', this._document).forEach(t => {
96 t.removeAttribute('data-stamped'); 96 t.removeAttribute('data-stamped');
97 }); 97 });
98 } 98 }
99 99
100 /** 100 /**
101 * @param {string} text 101 * @param {string} text
102 * @return {!Element} 102 * @return {!Element}
103 */ 103 */
104 convertMarkdownLinkSnippets(text) { 104 createSpanFromMarkdown(text) {
105 const element = this.createElement('span'); 105 const element = this.createElement('span');
106 106
107 // Split on markdown links (e.g. [some link](https://...)). 107 // Split on markdown links (e.g. [some link](https://...)).
108 const parts = text.split(/\[(.*?)\]\((https?:\/\/.*?)\)/g); 108 const parts = text.split(/\[(.*?)\]\((https?:\/\/.*?)\)/g);
109 109
110 while (parts.length) { 110 while (parts.length) {
111 // Pop off the same number of elements as there are capture groups. 111 // Pop off the same number of elements as there are capture groups.
112 const [preambleText, linkText, linkHref] = parts.splice(0, 3); 112 const [preambleText, linkText, linkHref] = parts.splice(0, 3);
113 element.appendChild(this._document.createTextNode(preambleText)); 113 element.appendChild(this._document.createTextNode(preambleText));
114 114
115 // Append link if there are any. 115 // Append link if there are any.
116 if (linkText && linkHref) { 116 if (linkText && linkHref) {
117 const a = /** @type {!HTMLAnchorElement} */ (this.createElement('a')); 117 const a = /** @type {!HTMLAnchorElement} */ (this.createElement('a'));
118 a.rel = 'noopener'; 118 a.rel = 'noopener';
119 a.target = '_blank'; 119 a.target = '_blank';
120 a.textContent = linkText; 120 a.textContent = linkText;
121 a.href = (new URL(linkHref)).href; 121 a.href = (new URL(linkHref)).href;
122 element.appendChild(a); 122 element.appendChild(a);
123 } 123 }
124 } 124 }
125 125
126 return element;
127 }
128
129 /**
130 * @param {string} text
131 * @return {!Element}
132 */
133 convertMarkdownCodeSnippets(text) {
134 const element = this.createElement('span');
135
136 const parts = text.split(/`(.*?)`/g); // Split on markdown code slashes
137 while (parts.length) {
138 // Pop off the same number of elements as there are capture groups.
139 const [preambleText, codeText] = parts.splice(0, 2);
140 element.appendChild(this._document.createTextNode(preambleText));
141 if (codeText) {
142 const pre = /** @type {!HTMLPreElement} */ (this.createElement('code'));
143 pre.textContent = codeText;
144 element.appendChild(pre);
145 }
146 }
147
148 return element; 126 return element;
149 } 127 }
150 128
151 /** 129 /**
152 * @return {!Document} 130 * @return {!Document}
153 */ 131 */
154 document() { 132 document() {
155 return this._document; 133 return this._document;
156 } 134 }
157 135
(...skipping 21 matching lines...) Expand all
179 findAll(query, context) { 157 findAll(query, context) {
180 return Array.from(context.querySelectorAll(query)); 158 return Array.from(context.querySelectorAll(query));
181 } 159 }
182 } 160 }
183 161
184 if (typeof module !== 'undefined' && module.exports) { 162 if (typeof module !== 'undefined' && module.exports) {
185 module.exports = DOM; 163 module.exports = DOM;
186 } else { 164 } else {
187 self.DOM = DOM; 165 self.DOM = DOM;
188 } 166 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698