You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
495 B
26 lines
495 B
"use strict"; |
|
const stringify = require("./stringify"); |
|
const parse = require("./parse"); |
|
|
|
const defaultConfig = { |
|
postcss: "css", |
|
stylus: "css", |
|
babel: "jsx", |
|
xml: "html", |
|
}; |
|
|
|
function initSyntax (syntax) { |
|
syntax.stringify = stringify.bind(syntax); |
|
syntax.parse = parse.bind(syntax); |
|
return syntax; |
|
} |
|
|
|
function syntax (config) { |
|
return initSyntax({ |
|
config: Object.assign({}, defaultConfig, config), |
|
}); |
|
} |
|
|
|
initSyntax(syntax); |
|
syntax.config = defaultConfig; |
|
module.exports = syntax;
|
|
|