MCPcopy
hub / github.com/postcss/postcss / raw

Method raw

lib/parser.js:490–523  ·  view source on GitHub ↗
(node, prop, tokens, customProperty)

Source from the content-addressed store, hash-verified

488 }
489
490 raw(node, prop, tokens, customProperty) {
491 let token, type
492 let length = tokens.length
493 let value = ''
494 let clean = true
495 let next, prev
496
497 for (let i = 0; i < length; i += 1) {
498 token = tokens[i]
499 type = token[0]
500 if (type === 'space' && i === length - 1 && !customProperty) {
501 clean = false
502 } else if (type === 'comment') {
503 prev = tokens[i - 1] ? tokens[i - 1][0] : 'empty'
504 next = tokens[i + 1] ? tokens[i + 1][0] : 'empty'
505 if (!SAFE_COMMENT_NEIGHBOR[prev] && !SAFE_COMMENT_NEIGHBOR[next]) {
506 if (value.slice(-1) === ',') {
507 clean = false
508 } else {
509 value += token[1]
510 }
511 } else {
512 clean = false
513 }
514 } else {
515 value += token[1]
516 }
517 }
518 if (!clean) {
519 let raw = tokens.reduce((all, i) => all + i[1], '')
520 node.raws[prop] = { raw, value }
521 }
522 node[prop] = value
523 }
524
525 rule(tokens) {
526 tokens.pop()

Callers 3

atruleMethod · 0.95
declMethod · 0.95
ruleMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected