mirror of
https://github.com/react/react-native-devtools-frontend.git
synced 2026-10-10 21:54:47 +08:00
This reverts commit 1e08ee816b.
Reason for revert: tree is closed due to errors https://ci.chromium.org/ui/p/devtools-frontend/builders/ci/Stand-alone%20Linux/8169/overview
Original change's description:
> Update stylelint to 14.0.1
>
> This also upgrades PostCSS to 8.3.11.
>
> DISABLE_THIRD_PARTY_CHECK=Updating Stylelint configuration
> R=szuend@chromium.org
>
> Bug: none
> Change-Id: I606540b03509d7c6e73f3d490327cd4174e03d31
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3259541
> Reviewed-by: Simon Zünd <szuend@chromium.org>
> Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Bug: none
Change-Id: Icb1c02b41dbccc3b4fc5760f5dd0b78eca078b61
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3263399
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Alex Rudenko <alexrudenko@chromium.org>
Commit-Queue: Alex Rudenko <alexrudenko@chromium.org>
59 lines
1.9 KiB
JavaScript
59 lines
1.9 KiB
JavaScript
/* eslint-disable no-param-reassign */
|
|
|
|
const tokenizer = require('postcss/lib/tokenize');
|
|
const Input = require('postcss/lib/input');
|
|
|
|
module.exports = {
|
|
isInlineComment(token) {
|
|
if (token[0] === 'word' && token[1].slice(0, 2) === '//') {
|
|
const first = token;
|
|
const bits = [];
|
|
let last;
|
|
|
|
while (token) {
|
|
if (/\r?\n/.test(token[1])) {
|
|
// If there are quotes, fix tokenizer creating one token from start quote to end quote
|
|
if (/['"].*\r?\n/.test(token[1])) {
|
|
// Add string before newline to inline comment token
|
|
bits.push(token[1].substring(0, token[1].indexOf('\n')));
|
|
|
|
// Get remaining input and retokenize
|
|
let remainingInput = token[1].substring(token[1].indexOf('\n'));
|
|
remainingInput += this.input.css.valueOf().substring(this.tokenizer.position());
|
|
|
|
// Replace tokenizer to retokenize the rest of the string
|
|
this.input = new Input(remainingInput);
|
|
this.tokenizer = tokenizer(this.input);
|
|
} else {
|
|
// If the tokenizer went to the next line go back
|
|
this.tokenizer.back(token);
|
|
}
|
|
break;
|
|
}
|
|
|
|
bits.push(token[1]);
|
|
last = token;
|
|
token = this.tokenizer.nextToken({ ignoreUnclosed: true });
|
|
}
|
|
|
|
const newToken = ['comment', bits.join(''), first[2], first[3], last[2], last[3]];
|
|
|
|
this.inlineComment(newToken);
|
|
return true;
|
|
} else if (token[1] === '/') {
|
|
// issue #135
|
|
const next = this.tokenizer.nextToken({ ignoreUnclosed: true });
|
|
|
|
if (next[0] === 'comment' && /^\/\*/.test(next[1])) {
|
|
next[0] = 'word';
|
|
next[1] = next[1].slice(1);
|
|
token[1] = '//';
|
|
this.tokenizer.back(next);
|
|
return module.exports.isInlineComment.bind(this)(token);
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
};
|