| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 | "use strict";var __importDefault = (this && this.__importDefault) || function (mod) {    return (mod && mod.__esModule) ? mod : { "default": mod };};Object.defineProperty(exports, "__esModule", { value: true });exports.doCompileStyle = exports.compileStyleAsync = exports.compileStyle = void 0;const postcss = require('postcss');const trim_1 = __importDefault(require("./stylePlugins/trim"));const scoped_1 = __importDefault(require("./stylePlugins/scoped"));const styleProcessors_1 = require("./styleProcessors");function compileStyle(options) {    return doCompileStyle(Object.assign(Object.assign({}, options), { isAsync: false }));}exports.compileStyle = compileStyle;function compileStyleAsync(options) {    return Promise.resolve(doCompileStyle(Object.assign(Object.assign({}, options), { isAsync: true })));}exports.compileStyleAsync = compileStyleAsync;function doCompileStyle(options) {    const { filename, id, scoped = true, trim = true, preprocessLang, postcssOptions, postcssPlugins } = options;    const preprocessor = preprocessLang && styleProcessors_1.processors[preprocessLang];    const preProcessedSource = preprocessor && preprocess(options, preprocessor);    const map = preProcessedSource ? preProcessedSource.map : options.map;    const source = preProcessedSource ? preProcessedSource.code : options.source;    const plugins = (postcssPlugins || []).slice();    if (trim) {        plugins.push(trim_1.default());    }    if (scoped) {        plugins.push(scoped_1.default(id));    }    const postCSSOptions = Object.assign(Object.assign({}, postcssOptions), { to: filename, from: filename });    if (map) {        postCSSOptions.map = {            inline: false,            annotation: false,            prev: map        };    }    let result, code, outMap;    const errors = [];    if (preProcessedSource && preProcessedSource.errors.length) {        errors.push(...preProcessedSource.errors);    }    try {        result = postcss(plugins).process(source, postCSSOptions);        // In async mode, return a promise.        if (options.isAsync) {            return result                .then((result) => ({                code: result.css || '',                map: result.map && result.map.toJSON(),                errors,                rawResult: result            }))                .catch((error) => ({                code: '',                map: undefined,                errors: [...errors, error.message],                rawResult: undefined            }));        }        // force synchronous transform (we know we only have sync plugins)        code = result.css;        outMap = result.map;    }    catch (e) {        errors.push(e);    }    return {        code: code || ``,        map: outMap && outMap.toJSON(),        errors,        rawResult: result    };}exports.doCompileStyle = doCompileStyle;function preprocess(options, preprocessor) {    return preprocessor.render(options.source, options.map, Object.assign({        filename: options.filename    }, options.preprocessOptions));}
 |