diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2023-10-14 15:05:55 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2023-10-14 15:05:55 +0800 |
| commit | c06f7ee0a40255214c477e13d9b956a7e07c2900 (patch) | |
| tree | f5982a568ef8fab865d0142e71c7494fea3e4c1b /node_modules/postcss-ordered-values/src/lib/getValue.js | |
| parent | 3fd9400d4dccc25aa29b5702216732e0b7542073 (diff) | |
postcss,(plugins): nanocss, postcss-preset-env
Diffstat (limited to 'node_modules/postcss-ordered-values/src/lib/getValue.js')
| -rw-r--r-- | node_modules/postcss-ordered-values/src/lib/getValue.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/node_modules/postcss-ordered-values/src/lib/getValue.js b/node_modules/postcss-ordered-values/src/lib/getValue.js new file mode 100644 index 00000000..6d94d4e2 --- /dev/null +++ b/node_modules/postcss-ordered-values/src/lib/getValue.js @@ -0,0 +1,36 @@ +'use strict'; +const { stringify } = require('postcss-value-parser'); + +/** + * @param {import('postcss-value-parser').Node[][]} values + * @return {string} + */ +module.exports = function getValue(values) { + return stringify(flatten(values)); +}; +/** + * @param {import('postcss-value-parser').Node[][]} values + * @return {import('postcss-value-parser').Node[]} + */ +function flatten(values) { + /** @type {import('postcss-value-parser').Node[]} */ + const nodes = []; + for (const [index, arg] of values.entries()) { + arg.forEach((val, idx) => { + if ( + idx === arg.length - 1 && + index === values.length - 1 && + val.type === 'space' + ) { + return; + } + nodes.push(val); + }); + + if (index !== values.length - 1) { + nodes[nodes.length - 1].type = 'div'; + nodes[nodes.length - 1].value = ','; + } + } + return nodes; +} |
