3 const cssSyntax = require("./css-syntax");
9 function defaultConfig (opts, lang) {
11 if (lang === "scss" || lang === "sass" || lang === "less") {
12 syntax = require("postcss-" + lang);
13 } else if (lang === "sugarss") {
14 syntax = require("sugarss");
16 syntax = cssSyntax(opts);
21 function getSyntax (opts, lang) {
23 lang = opts.from && /\.(\w+)(?:\?.+)?$/.exec(opts.from);
25 lang = lang[1].toLowerCase();
26 lang = extname[lang] || lang;
32 let config = opts.syntax.config;
35 return defaultConfig(opts, lang);
38 if (typeof config === "function") {
39 config = config(opts, lang);
43 config = config[lang] || config.css || config;
44 if (typeof config === "string") {
45 config = require(config);
48 return defaultConfig(opts, lang);
51 return Object.assign(cssSyntax(opts), config);
54 module.exports = getSyntax;