From 8aa64c714f615db747605f6d79fcc043e9ee8e57 Mon Sep 17 00:00:00 2001 From: Katerina Koukiou Date: Mon, 26 Apr 2021 19:38:15 +0200 Subject: [PATCH] fix(postcss-merge-longhand): mergeLonghand should not apply to CSS variables (#1057) Fixes #1051 --- packages/postcss-merge-longhand/src/__tests__/borders.js | 7 +++++++ packages/postcss-merge-longhand/src/lib/decl/borders.js | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/postcss-merge-longhand/src/__tests__/borders.js b/packages/postcss-merge-longhand/src/__tests__/borders.js index 13591b47a..39e99bc11 100644 --- a/packages/postcss-merge-longhand/src/__tests__/borders.js +++ b/packages/postcss-merge-longhand/src/__tests__/borders.js @@ -1196,6 +1196,13 @@ test( ) ); +test( + 'Should preserve border rule with only custom properties #1051', + passthroughCSS( + 'h1{border-color: var(--a) var(--b) var(--c) var(--d);border-style:solid;border:var(--fooBar));}' + ) +); + test( 'should overwrite some border-width props and save fallbacks and preserve case #648 2', processCSS( diff --git a/packages/postcss-merge-longhand/src/lib/decl/borders.js b/packages/postcss-merge-longhand/src/lib/decl/borders.js index f5cf63960..6817af391 100644 --- a/packages/postcss-merge-longhand/src/lib/decl/borders.js +++ b/packages/postcss-merge-longhand/src/lib/decl/borders.js @@ -55,7 +55,7 @@ function getLevel(prop) { const isValueCustomProp = (value) => value && !!~value.search(/var\s*\(\s*--/i); function canMergeValues(values) { - return !values.some(isValueCustomProp) || values.every(isValueCustomProp); + return !values.some(isValueCustomProp); } function getColorValue(decl) {