diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2026-05-18 23:10:59 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2026-05-18 23:41:44 +0800 |
| commit | fc87c009806dcc98867f6b58efe29b042aa01dee (patch) | |
| tree | 8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/csso/lib/index.js | |
| parent | 3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff) | |
node: updatemain
Diffstat (limited to 'node_modules/csso/lib/index.js')
| -rw-r--r-- | node_modules/csso/lib/index.js | 131 |
1 files changed, 0 insertions, 131 deletions
diff --git a/node_modules/csso/lib/index.js b/node_modules/csso/lib/index.js deleted file mode 100644 index 66ccf2b8..00000000 --- a/node_modules/csso/lib/index.js +++ /dev/null @@ -1,131 +0,0 @@ -import { version } from './version.js'; -import * as syntax from './syntax.js'; -import * as utils from './utils.js'; - -const { parse, generate, compress } = syntax; - -function debugOutput(name, options, startTime, data) { - if (options.debug) { - console.error(`## ${name} done in %d ms\n`, Date.now() - startTime); - } - - return data; -} - -function createDefaultLogger(level) { - let lastDebug; - - return function logger(title, ast) { - let line = title; - - if (ast) { - line = `[${((Date.now() - lastDebug) / 1000).toFixed(3)}s] ${line}`; - } - - if (level > 1 && ast) { - let css = generate(ast); - - // when level 2, limit css to 256 symbols - if (level === 2 && css.length > 256) { - css = css.substr(0, 256) + '...'; - } - - line += `\n ${css}\n`; - } - - console.error(line); - lastDebug = Date.now(); - }; -} - -function buildCompressOptions(options) { - options = { ...options }; - - if (typeof options.logger !== 'function' && options.debug) { - options.logger = createDefaultLogger(options.debug); - } - - return options; -} - -function runHandler(ast, options, handlers) { - if (!Array.isArray(handlers)) { - handlers = [handlers]; - } - - handlers.forEach(fn => fn(ast, options)); -} - -function minify(context, source, options) { - options = options || {}; - - const filename = options.filename || '<unknown>'; - let result; - - // parse - const ast = debugOutput('parsing', options, Date.now(), - parse(source, { - context, - filename, - positions: Boolean(options.sourceMap) - }) - ); - - // before compress handlers - if (options.beforeCompress) { - debugOutput('beforeCompress', options, Date.now(), - runHandler(ast, options, options.beforeCompress) - ); - } - - // compress - const compressResult = debugOutput('compress', options, Date.now(), - compress(ast, buildCompressOptions(options)) - ); - - // after compress handlers - if (options.afterCompress) { - debugOutput('afterCompress', options, Date.now(), - runHandler(compressResult, options, options.afterCompress) - ); - } - - // generate - if (options.sourceMap) { - result = debugOutput('generate(sourceMap: true)', options, Date.now(), (() => { - const tmp = generate(compressResult.ast, { sourceMap: true }); - - tmp.map._file = filename; // since other tools can relay on file in source map transform chain - tmp.map.setSourceContent(filename, source); - - return tmp; - })()); - } else { - result = debugOutput('generate', options, Date.now(), { - css: generate(compressResult.ast), - map: null - }); - } - - return result; -} - -function minifyStylesheet(source, options) { - return minify('stylesheet', source, options); -} - -function minifyBlock(source, options) { - return minify('declarationList', source, options); -} - -export { - version, - utils, - - // main methods - minifyStylesheet as minify, - minifyBlock, - - // css syntax parser/walkers/generator/etc - syntax -}; |
