Files
react-native-devtools-frontend/node_modules/postcss-less/lib/nodes/inline-comment.js
T
Alex Rudenko 6c0f161c95 Revert "Update stylelint to 14.0.1"
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>
2021-11-05 06:32:31 +00:00

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;
}
};