summaryrefslogtreecommitdiff
path: root/node_modules/postcss-minify-font-values/src/lib/minify-font.js
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:10:59 +0800
committerlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:41:44 +0800
commitfc87c009806dcc98867f6b58efe29b042aa01dee (patch)
tree8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/postcss-minify-font-values/src/lib/minify-font.js
parent3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff)
node: updatemain
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.js90
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();
-};