Initial commit
This commit is contained in:
51
node_modules/postcss-scss/lib/scss-stringifier.js
generated
vendored
Normal file
51
node_modules/postcss-scss/lib/scss-stringifier.js
generated
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
let Stringifier = require('postcss/lib/stringifier')
|
||||
|
||||
class ScssStringifier extends Stringifier {
|
||||
comment(node) {
|
||||
let left = this.raw(node, 'left', 'commentLeft')
|
||||
let right = this.raw(node, 'right', 'commentRight')
|
||||
|
||||
if (node.raws.inline) {
|
||||
let text = node.raws.text || node.text
|
||||
this.builder('//' + left + text + right, node)
|
||||
} else {
|
||||
this.builder('/*' + left + node.text + right + '*/', node)
|
||||
}
|
||||
}
|
||||
|
||||
decl(node, semicolon) {
|
||||
if (!node.isNested) {
|
||||
super.decl(node, semicolon)
|
||||
} else {
|
||||
let between = this.raw(node, 'between', 'colon')
|
||||
let string = node.prop + between + this.rawValue(node, 'value')
|
||||
if (node.important) {
|
||||
string += node.raws.important || ' !important'
|
||||
}
|
||||
|
||||
this.builder(string + '{', node, 'start')
|
||||
|
||||
let after
|
||||
if (node.nodes && node.nodes.length) {
|
||||
this.body(node)
|
||||
after = this.raw(node, 'after')
|
||||
} else {
|
||||
after = this.raw(node, 'after', 'emptyBody')
|
||||
}
|
||||
if (after) this.builder(after)
|
||||
this.builder('}', node, 'end')
|
||||
}
|
||||
}
|
||||
|
||||
rawValue(node, prop) {
|
||||
let value = node[prop]
|
||||
let raw = node.raws[prop]
|
||||
if (raw && raw.value === value) {
|
||||
return raw.scss ? raw.scss : raw.raw
|
||||
} else {
|
||||
return value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = ScssStringifier
|
||||
Reference in New Issue
Block a user