generated from dellevin/template
1
This commit is contained in:
31
node_modules/postcss-merge-longhand/src/lib/minifyWsc.js
generated
vendored
Normal file
31
node_modules/postcss-merge-longhand/src/lib/minifyWsc.js
generated
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
'use strict';
|
||||
const parseWsc = require('./parseWsc.js');
|
||||
const minifyTrbl = require('./minifyTrbl.js');
|
||||
const { isValidWsc } = require('./validateWsc.js');
|
||||
|
||||
const defaults = ['medium', 'none', 'currentcolor'];
|
||||
|
||||
/** @type {(v: string) => string} */
|
||||
module.exports = (v) => {
|
||||
const values = parseWsc(v);
|
||||
|
||||
if (!isValidWsc(values)) {
|
||||
return minifyTrbl(v);
|
||||
}
|
||||
|
||||
const value = [...values, '']
|
||||
.reduceRight((prev, cur, i, arr) => {
|
||||
if (
|
||||
cur === undefined ||
|
||||
(cur.toLowerCase() === defaults[i] &&
|
||||
(!i || (arr[i - 1] || '').toLowerCase() !== cur.toLowerCase()))
|
||||
) {
|
||||
return prev;
|
||||
}
|
||||
|
||||
return cur + ' ' + prev;
|
||||
})
|
||||
.trim();
|
||||
|
||||
return minifyTrbl(value || 'none');
|
||||
};
|
||||
Reference in New Issue
Block a user