wishthis/node_modules/rtlcss/lib/directive-parser.js

44 lines
1 KiB
JavaScript
Raw Normal View History

2022-01-21 08:28:41 +00:00
module.exports = function (comment) {
var pos = 0
var value = comment.text
var match = value.match(/^\s*!?\s*rtl:/)
var meta
if (match) {
meta = {
'source': comment,
'name': '',
'param': '',
'begin': true,
'end': true,
'blacklist': false,
'preserve': false
}
value = value.slice(match[0].length)
pos = value.indexOf(':')
if (pos > -1) {
meta.name = value.slice(0, pos)
// begin/end are always true, unless one of them actually exists.
meta.begin = meta.name !== 'end'
meta.end = meta.name !== 'begin'
if (meta.name === 'begin' || meta.name === 'end') {
value = value.slice(meta.name.length + 1)
pos = value.indexOf(':')
if (pos > -1) {
meta.name = value.slice(0, pos)
value = value.slice(pos)
meta.param = value.slice(1)
} else {
meta.name = value
}
} else {
meta.param = value.slice(pos + 1)
}
} else {
meta.name = value
}
}
return meta
}