diff options
Diffstat (limited to 'node_modules/postcss-ordered-values/src/rules/flexFlow.js')
| -rw-r--r-- | node_modules/postcss-ordered-values/src/rules/flexFlow.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/node_modules/postcss-ordered-values/src/rules/flexFlow.js b/node_modules/postcss-ordered-values/src/rules/flexFlow.js new file mode 100644 index 00000000..5948fbdc --- /dev/null +++ b/node_modules/postcss-ordered-values/src/rules/flexFlow.js @@ -0,0 +1,36 @@ +'use strict'; +// flex-flow: <flex-direction> || <flex-wrap> + +const flexDirection = new Set([ + 'row', + 'row-reverse', + 'column', + 'column-reverse', +]); + +const flexWrap = new Set(['nowrap', 'wrap', 'wrap-reverse']); + +/** + * @param {import('postcss-value-parser').ParsedValue} flexFlow + * @return {string} + */ +module.exports = function normalizeFlexFlow(flexFlow) { + let order = { + direction: '', + wrap: '', + }; + + flexFlow.walk(({ value }) => { + if (flexDirection.has(value.toLowerCase())) { + order.direction = value; + return; + } + + if (flexWrap.has(value.toLowerCase())) { + order.wrap = value; + return; + } + }); + + return `${order.direction} ${order.wrap}`.trim(); +}; |
