diff options
Diffstat (limited to 'node_modules/postcss-minify-font-values/src/lib/minify-font.js')
| -rw-r--r-- | node_modules/postcss-minify-font-values/src/lib/minify-font.js | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/node_modules/postcss-minify-font-values/src/lib/minify-font.js b/node_modules/postcss-minify-font-values/src/lib/minify-font.js deleted file mode 100644 index 9e1ed2b8..00000000 --- a/node_modules/postcss-minify-font-values/src/lib/minify-font.js +++ /dev/null @@ -1,90 +0,0 @@ -'use strict'; -const valueParser = require('postcss-value-parser'); -const keywords = require('./keywords'); -const minifyFamily = require('./minify-family'); -const minifyWeight = require('./minify-weight'); - -/** - * Adds missing spaces before strings. - * - * @param toBeSpliced {Set<number>} - * @param {import('postcss-value-parser').Node[]} nodes - * @return {void} - */ -function normalizeNodes(nodes, toBeSpliced) { - for (const index of toBeSpliced) { - nodes.splice( - index, - 0, - /** @type {import('postcss-value-parser').SpaceNode} */ ({ - type: 'space', - value: ' ', - }) - ); - } -} - -/** - * @param {string} unminified - * @param {import('../index').Options} opts - * @return {string} - */ -module.exports = function (unminified, opts) { - const tree = valueParser(unminified); - const nodes = tree.nodes; - - let familyStart = NaN; - let hasSize = false; - const toBeSpliced = new Set(); - - for (const [i, node] of nodes.entries()) { - if (node.type === 'string' && i > 0 && nodes[i - 1].type !== 'space') { - toBeSpliced.add(i); - } - - if (node.type === 'word') { - if (hasSize) { - continue; - } - - const value = node.value.toLowerCase(); - if ( - value === 'normal' || - value === 'inherit' || - value === 'initial' || - value === 'unset' - ) { - familyStart = i; - } else if (keywords.style.has(value) || valueParser.unit(value)) { - familyStart = i; - } else if (keywords.variant.has(value)) { - familyStart = i; - } else if (keywords.weight.has(value)) { - node.value = minifyWeight(value); - familyStart = i; - } else if (keywords.stretch.has(value)) { - familyStart = i; - } else if (keywords.size.has(value) || valueParser.unit(value)) { - familyStart = i; - hasSize = true; - } - } else if ( - node.type === 'function' && - nodes[i + 1] && - nodes[i + 1].type === 'space' - ) { - familyStart = i; - } else if (node.type === 'div' && node.value === '/') { - familyStart = i + 1; - break; - } - } - - normalizeNodes(nodes, toBeSpliced); - familyStart += 2; - - const family = minifyFamily(nodes.slice(familyStart), opts); - - tree.nodes = nodes.slice(0, familyStart).concat(family); - return tree.toString(); -}; |
