in packages/plugin-rax-compat/src/lib/transform-styles.ts [125:184]
data: parse(parsedQuery, rule).styles,
});
}
});
return {
styles,
fontFaceRules,
mediaRules,
};
};
const genStyleContent = (parsedData, parsedQuery) => {
const { fontFaceRules, mediaRules } = parsedData;
const styles = processPrefersColorScheme(mediaRules, parsedData.styles, parsedQuery.taskName);
const fontFaceContent = getFontFaceContent(fontFaceRules);
const mediaContent = getMediaContent(mediaRules, parsedQuery);
const warnMessageOutput = parsedQuery.log ? getWarnMessageOutput() : '';
resetMessage();
return `${parsedQuery.theme ? globalCSSVariable({ styles, globalCSSVarName: GLOBAL_CSS_VAR }) : ''}
var _styles = ${stringifyData(styles, parsedQuery.theme)};
${fontFaceContent}
${mediaContent}
${warnMessageOutput}
module.exports = _styles;
`;
};
const getWarnMessageOutput = () => {
const errorMessages = getErrorMessages();
const warnMessages = getWarnMessages();
let output = '';
if (errorMessages) {
output += `
if (process.env.NODE_ENV !== 'production') {
console.error('${errorMessages}');
}
`;
}
if (warnMessages) {
output += `
if (process.env.NODE_ENV !== 'production') {
console.warn('${warnMessages}');
}
`;
}
return output;
};
const getMediaContent = (mediaRules, parsedQuery) => {
let content = '';
mediaRules.forEach((rule) => {
// Weex no need to process prefers-color-scheme media
if (parsedQuery.taskName !== 'weex' || !isPrefersColorScheme(rule.key)) {
content += `
if (window.matchMedia && window.matchMedia('${rule.key}').matches) {