first commit
This commit is contained in:
82
app_vue/node_modules/@vue/component-compiler-utils/dist/compileStyle.js
generated
vendored
Normal file
82
app_vue/node_modules/@vue/component-compiler-utils/dist/compileStyle.js
generated
vendored
Normal file
@ -0,0 +1,82 @@
|
||||
"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));
|
||||
}
|
Reference in New Issue
Block a user