PHP 8.2.30
Preview: terminal-highlight.js Size: 1.37 KB
//proc/thread-self/root/home/byroehnu/.trash/node_modules11/postcss/lib/terminal-highlight.js

'use strict'

let pico = require('picocolors')

let tokenizer = require('./tokenize')

let Input

function registerInput(dependant) {
  Input = dependant
}

const HIGHLIGHT_THEME = {
  ';': pico.yellow,
  ':': pico.yellow,
  '(': pico.cyan,
  ')': pico.cyan,
  '[': pico.yellow,
  ']': pico.yellow,
  '{': pico.yellow,
  '}': pico.yellow,
  'at-word': pico.cyan,
  'brackets': pico.cyan,
  'call': pico.cyan,
  'class': pico.yellow,
  'comment': pico.gray,
  'hash': pico.magenta,
  'string': pico.green
}

function getTokenType([type, value], processor) {
  if (type === 'word') {
    if (value[0] === '.') {
      return 'class'
    }
    if (value[0] === '#') {
      return 'hash'
    }
  }

  if (!processor.endOfFile()) {
    let next = processor.nextToken()
    processor.back(next)
    if (next[0] === 'brackets' || next[0] === '(') return 'call'
  }

  return type
}

function terminalHighlight(css) {
  let processor = tokenizer(new Input(css), { ignoreErrors: true })
  let result = ''
  while (!processor.endOfFile()) {
    let token = processor.nextToken()
    let color = HIGHLIGHT_THEME[getTokenType(token, processor)]
    if (color) {
      result += token[1]
        .split(/\r?\n/)
        .map(i => color(i))
        .join('\n')
    } else {
      result += token[1]
    }
  }
  return result
}

terminalHighlight.registerInput = registerInput

module.exports = terminalHighlight

Directory Contents

Dirs: 0 × Files: 52

Name Size Perms Modified Actions
3.33 KB lrw-r--r-- 2026-02-28 11:42:44
Edit Download
471 B lrw-r--r-- 2026-02-28 11:42:20
Edit Download
1.71 KB lrw-r--r-- 2026-02-28 11:42:44
Edit Download
203 B lrw-r--r-- 2026-02-28 11:42:20
Edit Download
13.74 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
10.40 KB lrw-r--r-- 2026-02-28 11:42:22
Edit Download
6.36 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
3.32 KB lrw-r--r-- 2026-02-28 11:42:22
Edit Download
3.81 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
495 B lrw-r--r-- 2026-02-28 11:42:22
Edit Download
1.91 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
654 B lrw-r--r-- 2026-02-28 11:42:22
Edit Download
162 B lrw-r--r-- 2026-02-28 11:42:46
Edit Download
1.47 KB lrw-r--r-- 2026-02-28 11:42:26
Edit Download
4.40 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
6.04 KB lrw-r--r-- 2026-02-28 11:42:26
Edit Download
4.89 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
13.24 KB lrw-r--r-- 2026-02-28 11:42:28
Edit Download
1.39 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
1.20 KB lrw-r--r-- 2026-02-28 11:42:28
Edit Download
9.49 KB lrw-r--r-- 2026-02-28 11:42:28
Edit Download
1.54 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
2.56 KB lrw-r--r-- 2026-02-28 11:42:30
Edit Download
13.78 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
9.41 KB lrw-r--r-- 2026-02-28 11:42:32
Edit Download
135 B lrw-r--r-- 2026-02-28 11:42:46
Edit Download
1.12 KB lrw-r--r-- 2026-02-28 11:42:32
Edit Download
14.37 KB lrw-r--r-- 2026-02-28 11:42:32
Edit Download
1.02 KB lrw-r--r-- 2026-02-28 11:42:44
Edit Download
11.04 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
2.83 KB lrw-r--r-- 2026-02-28 11:42:34
Edit Download
980 B lrw-r--r-- 2026-02-28 11:42:42
Edit Download
1.78 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
3.89 KB lrw-r--r-- 2026-02-28 11:42:34
Edit Download
3.33 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
1.70 KB lrw-r--r-- 2026-02-28 11:42:34
Edit Download
4.31 KB lrw-r--r-- 2026-02-28 11:42:48
Edit Download
745 B lrw-r--r-- 2026-02-28 11:42:34
Edit Download
2.27 KB lrw-r--r-- 2026-02-28 11:42:48
Edit Download
1.21 KB lrw-r--r-- 2026-02-28 11:42:36
Edit Download
2.90 KB lrw-r--r-- 2026-02-28 11:42:48
Edit Download
569 B lrw-r--r-- 2026-02-28 11:42:36
Edit Download
1.38 KB lrw-r--r-- 2026-02-28 11:42:48
Edit Download
8.03 KB lrw-r--r-- 2026-02-28 11:42:36
Edit Download
165 B lrw-r--r-- 2026-02-28 11:42:48
Edit Download
213 B lrw-r--r-- 2026-02-28 11:42:36
Edit Download
91 B lrw-r--r-- 2026-02-28 11:42:36
Edit Download
1.37 KB lrw-r--r-- 2026-02-28 11:42:36
Edit Download
6.38 KB lrw-r--r-- 2026-02-28 11:42:36
Edit Download
256 B lrw-r--r-- 2026-02-28 11:42:38
Edit Download
2.92 KB lrw-r--r-- 2026-02-28 11:42:48
Edit Download
739 B lrw-r--r-- 2026-02-28 11:42:38
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).