Files
react-native-devtools-frontend/node_modules/stylelint/lib/utils/beforeBlockString.js
T
Mathias Bynens 79e2cf0633 Add stylelint dependency
This also adds CC-BY-4.0 to the list of accepted licenses.

DISABLE_THIRD_PARTY_CHECK=update dependencies

Bug: chromium:1083142
Change-Id: I8612de2fba52dae32eeb71af79d5aacfde52142b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2220097
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
2020-06-11 06:20:04 +00:00

55 lines
961 B
JavaScript

'use strict';
/** @typedef {import('postcss').Rule} Rule */
/** @typedef {import('postcss').AtRule} AtRule */
/**
* @param {Rule | AtRule} statement
* @param {{
* noRawBefore?: boolean
* }} options
*
* @returns {string}
*/
module.exports = function (statement, options = {}) {
let result = '';
/** @type {Rule | undefined} */
let rule; /*?: postcss$rule*/
/** @type {AtRule | undefined} */
let atRule; /*?: postcss$atRule*/
if (statement.type === 'rule') {
rule = statement;
}
if (statement.type === 'atrule') {
atRule = statement;
}
if (!rule && !atRule) {
return result;
}
const before = statement.raws.before || '';
if (!options.noRawBefore) {
result += before;
}
if (rule) {
result += rule.selector;
}
if (atRule) {
result += `@${atRule.name}${atRule.raws.afterName || ''}${atRule.params}`;
}
const between = statement.raws.between;
if (between !== undefined) {
result += between;
}
return result;
};